Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Hacking (My) Home Akira Matsuda
Slide 2
Slide 2 text
self • GitHub: amatsuda • Twitter: @a_matsuda
Slide 3
Slide 3 text
Asakusa.rbओ࠵ͯ͠·͢
Slide 4
Slide 4 text
No content
Slide 5
Slide 5 text
աڈͷେߐށRubyձٞ • 01 => جௐߨԋ • 02 => Dave Thomas͔ͬͯ͠ͳ͍ (͚ͲDaveݺΜͩͷΦϨΦϨ) • 03 => جௐߨԋ
Slide 6
Slide 6 text
04 (Date.today) • Ebi & Aaron • aamine • ko1 & Yuki Sasada • zzak • hone • Kawamoto • ...
Slide 7
Slide 7 text
No technical talk from me today!
Slide 8
Slide 8 text
Actually, no code in the slides!
Slide 9
Slide 9 text
ʮੜ׆ൃදձʯ
Slide 10
Slide 10 text
My next technical talk will be at RailsConf 2014 • At Chicago • Next week
Slide 11
Slide 11 text
ʮAsakusa.rbͷ ୈ256ճͷmeetupʯ
Slide 12
Slide 12 text
ઙ.rbཱϝϯόʔ • amatsuda => ઙ • kakutani => ྆ࠃ • ko1 => ຊॴޗ࠺ڮ
Slide 13
Slide 13 text
ઙ.rbཱϝϯόʔ • amatsuda => ઙ • kakutani => ྆ࠃ • ko1 => ຊॴޗ࠺ڮ Ͳ͔ͬӈͷ΄͏
Slide 14
Slide 14 text
TBH I do no more live in ઙ • amatsuda => ઙ ࠜ • kakutani => ྆ࠃ • ko1 => ຊॴޗ࠺ڮ
Slide 15
Slide 15 text
Life in ઙ • 2004ʹఆՁ3,800ສԁͷ ৽ஙϚϯγϣϯΛߪೖ • 10ؒډॅ • ϚϯγϣϯݱࡏିͰӡ༻த
Slide 16
Slide 16 text
ച٫ʁିʁ
Slide 17
Slide 17 text
ച٫ʹ͋ͨͬͯ • ࢿ࢈ධՁֹͷݟੵΓ
Slide 18
Slide 18 text
2012࣌ • 3,500ສԁ (by େखۜߦܥۚ༥ػؔ)
Slide 19
Slide 19 text
ࢿ࢈ՁͷݮΓֹ • 2004: 3800ສ • 2012: 3500ສ • => 37.5ສ / year • => 3.125ສ / month
Slide 20
Slide 20 text
Α͋͘Δޡղ (1)
Slide 21
Slide 21 text
ିऩೖ • 18.5ສ / month • 18.5ສ * 12 = 222ສ / year • 3800.0ສ / 222ສ = 17.117...
Slide 22
Slide 22 text
ି݅ͷݪࢿճऩ17
Slide 23
Slide 23 text
େՈ͞ΜΛͬͯΈͯ Θ͔ͬͨ͜ͱ • Ոͱ͔ཧඅͱ͔ͷઃఆ͖ͯͱ͏ • ΒΕΔ͜ͱΛݟࠐΜͩՁ֨ઃఆ
Slide 24
Slide 24 text
େՈۀ·ͱΊ • ࢿ࢈ՁͷݮΓ: 3.125ສ / month • ିऩೖ: 18.5ສ / month
Slide 25
Slide 25 text
Α͋͘Δޡղ (2) • ෆಈ࢈Λങͬͯ͠·͏ͱ Ҿͬӽͤͳ͘ͳΔʁ
Slide 26
Slide 26 text
ઙʹ10ॅΜͩͷͰ Ҿͬӽͯ͠Έ·ͨ͠ɻ
Slide 27
Slide 27 text
લճϚϯγϣϯ͔ͩͬͨΒ ࠓށݐͯʹͯ͠Έ·ͨ͠ɻ
Slide 28
Slide 28 text
ށݐͯ vs. Ϛϯγϣϯ • ށݐͯͷ΄͏͕͍Ζ͍Ζ͍͠ • ށݐͯͷ΄͏͕͍Ζ͍Ζࣗ༝͕ߴ͍
Slide 29
Slide 29 text
ށݐͯͷ΄͏͕͍͠ • ษڧ͠ͳ͖Ό͍͚ͳ͍͜ͱ͕ଟ͍ • εςʔΫϗϧμʔ͕ଟ͍
Slide 30
Slide 30 text
ϚϯγϣϯߪೖλΠϜϥΠϯ • ݅બఆ • आۚ & ܖ • ɺೖډ
Slide 31
Slide 31 text
ށݐͯߪೖλΠϜϥΠϯ • ͷܖ • आۚ • ͷߪೖ • ݐͷܖ • आۚ • ݐͷߪೖ • ɺೖډ
Slide 32
Slide 32 text
ͷߪೖ
Slide 33
Slide 33 text
ͷબఆ • ॅΈ͍ͨҬΛܾΊΔ • ͏ͪͷ߹ʮ୩ࠜઍʯʹݶఆ • ͦͷҬͷͷෆಈ࢈ΛճΔ • Πϯλʔωοτ(جຊతʹ)ʹཱͨ ͳ͍
Slide 34
Slide 34 text
आۚ
Slide 35
Slide 35 text
ۚ༥ػ͍ؔΖ͍Ζ • ࢢۜ • ۜ • ৴ୗۜߦ • ωοτۜߦ • ৴ۚ • Ώ͏ͪΐ
Slide 36
Slide 36 text
ʮࣗ༝ۀʯआ͕͍ۚ͠ • αϥϦʔϚϯ͕͏Β·͍͠Ͱ͢ • ʮࣾձత৴༻ʯॏཁ
Slide 37
Slide 37 text
ʮࣗ༝ۀʯͲͷΑ͏ʹ ධՁ͞ΕΔ͔ʁ
Slide 38
Slide 38 text
ʮࣾձత৴༻ʯͷௐࠪ • They use Internet!
Slide 39
Slide 39 text
ʮࣾձత৴༻ʯ on the net • ஶ࡞ • Rails3ϨγϐϒοΫɺHead First Rails • ݞॻ͖ • φκͷऔకɺϑΣϩʔۀ • ߨԋ • ͍ΖΜͳࠃͰͬͨΓͯ͠Δ • ΠϯλϏϡʔ • Δͼ·ɺଜ͞Μɺߴڮ৴པ͞Μ
Slide 40
Slide 40 text
Δͼ·͍͢͝ʂ • ৴ୗۜߦͷ୲ऀ͕Δͼ·ͷ ΠϯλϏϡʔಡΜͰͯϏϏͬͨʂ
Slide 41
Slide 41 text
2ͭͷੈքଓ͖ͩͬͨʂ • RubyίϛϡχςΟͰͷϓϨθϯε্ => ݱ࣮ࣾձͰͷ৴༻্ • ʑͷίϛοτͷੵΈॏͶ => RubyίϛϡχςΟͰͷϓϨθϯε্
Slide 42
Slide 42 text
ͭ·Γɺ • RubyͷίʔυΛॻ͚आ͕ۚͰ͖Δʂ
Slide 43
Slide 43 text
ݐΛݐͯΔ
Slide 44
Slide 44 text
γεςϜ։ൃʹࣅ͍ͯΔ
Slide 45
Slide 45 text
๏ͷબఆ • • మࠎ • RC • etc.
Slide 46
Slide 46 text
మࠎ vs. • ॏްɺେن vs. খճΓɺࣗ༝ • ੩తܕ͚ݴޠ vs. ಈతݴޠ • JEE vs. LL
Slide 47
Slide 47 text
ݐங • ࡏདྷ • 2 x 4ɹ • ֤ࣾಠࣗͷ৭ʑ
Slide 48
Slide 48 text
࡞Γํ͍Ζ͍Ζ • εΫϥον • ϑϧελοΫϑϨʔϜϫʔΫɹ • ࣗࣾFWɺࣗࣾϥΠϒϥϦ
Slide 49
Slide 49 text
εςʔΫϗϧμʔ͍Ζ͍Ζ • ചΓͷෆಈ࢈ • ॴ༗ऀ • ϋεϝʔΧʔ • ઃܭ࢜ • σβΠφʔ • େ • ۜߦ
Slide 50
Slide 50 text
ϓϩϚωʁ
Slide 51
Slide 51 text
ϓϩϚωʁ • ސ٬ == ϓϩϚω
Slide 52
Slide 52 text
ϓϩϚωʁ • ސ٬ == ϓϩϚω • ՈΛݐͯΔͱϓϩϚωۀ͕ ܦݧͰ͖·͢ʂ
Slide 53
Slide 53 text
ઃܭ
Slide 54
Slide 54 text
ʮιʔείʔυ: ιϑτΣΞͷઃܭਤ Έ͍ͨͳͷʯ
Slide 55
Slide 55 text
ͱ͍͏͜ͱɺ
Slide 56
Slide 56 text
ઃܭਤ == ιʔείʔυΈ͍ͨͳͷ • ઃܭ࢜ͷݸੑ͕ग़Δ • ઃܭ࢜ͷ͍͕͍ͬͯ͜Δ • ಡΜͰָ͍ͯ͠ʂ
Slide 57
Slide 57 text
ઃܭϑΣʔζ • ͏ͪͷ߹ 4ʙ5ϲ݄͙Β͍ (ि2ʙ3ճ͙Β͍ଧͪ߹Θͤ) • ଧͪ߹Θͤฏͷޕલத͕͓͢͢Ί • ઃܭCAD()Ͱ • ଧͪ߹ΘͤPCͷը໘Λݟͳ͕Β • ຖճଧͪ߹Θͤޙʹ࠷৽൛ͷઃܭਤ͕ࢴͰΒ͑Δ
Slide 58
Slide 58 text
ઃܭਤ • ຖճຖճຖճຖճɺʮࢴͰʯ
Slide 59
Slide 59 text
ʮσʔλͰ͘Εʯ • ͑ͬʁ • ͑ͬʁ • ʮͦΜͳ͜ͱΛݴΘΕͨͷॳΊͯͩʯ
Slide 60
Slide 60 text
ʮσʔλͰ͘Εʯ • ΦʔϓϯͳCADϑΥʔϚοτͱ͔͋Δ ͡ΌΜ • ͦΜͳΦϞνϟʹରԠͯ͠·ͤΜ…
Slide 61
Slide 61 text
ΥʔλʔϑΥʔϧ vs. ΞδϟΠϧ
Slide 62
Slide 62 text
ΥʔλʔϑΥʔϧͳͱ͜Ζ • ܖͷ࣌Ͱͯ͢ͷఔ͕ܾΊΒΕͨ ఔද͕Ͱ͖͍ͯΔ • ͪΌΜͱఔදʹԊ࣮͕ͬͯਐΜͰɺ ͪΌΜͱೲظʹϞϊ͕͕͋Δʂ
Slide 63
Slide 63 text
ΥʔλϑΥʔϧΛࢧ͑Δٕज़ • ྺ࢙ͱܦݧʹཪଧͪ͞Εͨ ਫ਼ͷߴ͍ݟੵΓ • దͳϘϦϡʔϜͷόοϑΝ
Slide 64
Slide 64 text
ΞδϟΠϧͳͱ͜Ζ • ࣮࣮தʹ݁ߏઃܭόά͕ݟ͔ͭΔ • ࣮͕ਐΉʹ࿈Εͯސ٬͔Β ৽ͨͳཁ͕͋Ε͜Εग़ͯ͘Δ
Slide 65
Slide 65 text
ΞδϟΠϧͳͱ͜Ζ • ͍͍ͩͨݱͰ͍͍۩߹ʹٵऩͯ͠ Ͳ͏ʹ͔ղܾͯ͘͠ΕΔ • Embrace Changes!
Slide 66
Slide 66 text
ݐஙۀքਐΜͰ͍Δ • ΥʔλʔϑΥʔϧͬΆ͞ͱΞδϟΠϧ ͬΆ͕͞ͱͯྑ͍όϥϯεͰಉډ
Slide 67
Slide 67 text
࣮ϑΣʔζ • ओ୲ͷେ1ਓ • جૅɺࠨɺΫϩεɺ֎ߏɺ ͳͲͳͲ৭ʑ
Slide 68
Slide 68 text
࣮ϑΣʔζ • γεςϜ։ൃͰͨͱ͑ΔͳΒɺ αʔόʔଆͷίʔυ΄΅1ਓͰॻ͍ͯɺ ΫΤϦɺJSɺϚʔΫΞοϓɺetc. ʹपΓΛৼΔΠϝʔδ
Slide 69
Slide 69 text
ઃܭ͕ݟΕΔޣຯ • ෦ࡐ͕ѲɺબఆͰ͖Δ • ϑϩʔϦϯάɺλΠϧɺนࡐɺυΞɺ૭ɺ Ϋϩεɺ෩࿊ɾΩονϯɾτΠϨɺࣨɺ etc. • ސ٬͕bundleͯ͠Δgemͱ͔ʹ·Ͱ ޱग़͠Ͱ͖ΔΠϝʔδ
Slide 70
Slide 70 text
(ϓϩάϥϚʔతʹ)໘ന͍෦ࡐ • ਓײηϯαʔ͖র໌ • ిಈεΫϦʔϯ
Slide 71
Slide 71 text
ਓײηϯαʔ͖র໌ • ηϯαʔ + র໌ ͷ all in one
Slide 72
Slide 72 text
ྫ͑ɺτΠϨͷ߹ • ୭͔͕τΠϨʹೖΔ • => ηϯαʔ͕ಇ͍ͯిؾ͕͘ • τΠϨ͔Βग़Δ • => ిؾ͕ফ͑Δ
Slide 73
Slide 73 text
ͱ͍͏͜ͱɺ • ηϯαʔͷ͕औΕΕɺτΠϨͷ ۭ͖ঢ়گ͕ϦϞʔτͰѲͰ͖Δʂ
Slide 74
Slide 74 text
ʮηϯαʔͷAPIͳ͍ͷʁʯ • ʁ • ʮͦΜͳ͜ͱΛݴΘΕͨͷॳΊͯͩʯ • વͦΜͳͷͳ͍
Slide 75
Slide 75 text
ݱঢ় • ݐஙݱ෦ࡐϝʔΧʔ·Ͱ ϓϩάϥϚʔͷ͕ಧ͍͍ͯͳ͍ • ͍ΖΜͳ෦ࡐ͕APIΛఏڙͯ͘͠ΕΔ Α͏ʹͳͬͨΒͬͱՈ͕ศརʹͳΔ ͣʂ
Slide 76
Slide 76 text
Ideas • ਓ͕͍ۙͮͨ͜ͱΛݕ͢Δݰؔ • ਓ͕͍ͬͯΔ͜ͱΛݕ͢Δচ֊ஈ • ૭Λ։͚ΔAPI • υΞΛ։͚ΔAPI
Slide 77
Slide 77 text
Hacking My Home
Slide 78
Slide 78 text
৭ʑHackͰ͖ΔΞΠςϜ • IRKit • Future Home Controller
Slide 79
Slide 79 text
IRKit • ֎ઢΛ௨͍ͯ͡Ζ͍ΖϋοΫ͢Δ ָ͍ͭ͠
Slide 80
Slide 80 text
IRKit • ҙͷ֎ઢϦϞίϯ͔ΒIRKitʹ֎ઢ ৴߸Λૹग़ • => IRKitʹऔΓࠐΜͰJSONͰอଘ • IRKitʹHTTPͰҙͷJSONΛૹΓ͚ͭΔ • => IRKit͔Β֎ઢ৴߸ͱͯ͠ૹग़
Slide 81
Slide 81 text
༻ྫ • ϦϏϯάϧʔϜͷిಈεΫϦʔϯΛɺ ৗ࣌ىಈ͍ͯ͠ΔMacMini͔Β curlίϚϯυͰ։ด • ͜ΕΛcronͰຖே൩ࣗಈ࣮ߦ
Slide 82
Slide 82 text
Demo
Slide 83
Slide 83 text
༻ྫ(not implemented yet) • Թηϯαʔͱ࿈ಈͯ͠ɺ ॵ͘ͳͬͨΒউखʹΤΞίϯΛ͚ͭΔ ʗॵ͘ͳ͘ͳͬͨΒউखʹফ͢ • ຖܾ·ͬͨ࣌ؒʹRoombaΛىಈͯ͠ উखʹআ͢Δ
Slide 84
Slide 84 text
Conclusion • Hack home everyday, and that'll buy you a house.
Slide 85
Slide 85 text
Conclusion (2) • ͓͏ͪΛݐͯΑ͏ʂ • Programmableͳ෦ࡐΛબ΅͏ʂ • ຖͷΒ͠ΛϋοΫ͠Α͏ʂ