Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
まだ40代後半のプログラマの話、あるいは50代プログラマについて考える / railsdm 2019
Search
Masayoshi Takahashi
March 22, 2019
Technology
17k
24
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
まだ40代後半のプログラマの話、あるいは50代プログラマについて考える / railsdm 2019
Railsdm 2019での発表資料です。発表時のものから少しだけ修正しています。
Masayoshi Takahashi
March 22, 2019
Transcript
87 slides
*NBQSPHSBNNFS TUJMMJONZMBUFGPSUJFT BOEIPXUPCFDPNFBBHFE QSPHSBNNFS Ұൠࣾஂ๏ਓຊ3VCZͷձʗגࣜձࣾୡਓग़൛ձ ߴڮٛ ·ͩޙͷϓϩάϥϚͷɺ͋Δ͍ϓϩάϥϚʹ͍ͭͯߟ͑Δ
+JN8FJSJDI IUUQTUXJUUFSDPNKJNXFJSJDI
,FZOPUF5BMLʜ w/PO5FDIOJDBMɹςΫχΧϧͰͳ͍ w3FMFWBOUɹ ʑͷ׆ಈʹ ؔ࿈ੑͷߴ͍ w(PPEɹ͍͍ IUUQTXXXZPVUVCFDPNXBUDI W'*5+.+K"46T 3VCZ$POG:/PU"EWFOUVSFTJO'VODUJPOBM1SPHSBNNJOHCZ+JN8FJSJDI ˞ຊਓ͍͢͝ςΫχΧϧˍʑͷʹཱͨͳ͍ˍώυ͍3VCZͷίʔυͷLFZOPUFΛ͍ͯͨ͠
IUUQTHJUIVCDPNKJNXFJSJDIXZSJLJDPNNJUEGBDGBFBDCEBEBBBDE
ࣗݾհ
ࣗݾհ wߴڮٛ wגࣜձࣾୡਓग़൛ձʢ*5ΤϯδχΞ͚ͷిࢠॻ੶ ͷ੍࡞ɾൢചʣ wҰൠࣾஂ๏ਓຊ3VCZͷձʢϓϩάϥϛϯάݴޠ 3VCZͷར༻ऀɾ։ൃऀͷࢧԉʣ w3VCZྺʴЋ
ͨͷ͍͠3VCZୈ൛ w ͓͔͛͞·ͰΈͳ͞·ʹѪ͞Ε ͯୈ൛͕ࠓिग़·ͨ͠ w ҎԼΓࣺͯΔํ w ʮ͋Μ·Γָ͘͠ͳ͍ʯͱݴΘ ΕͯͭΒ͍ؾ࣋ͪʹͳΔ͜ͱ w
ຊ͕ͨͷ͍͠ͱ͍͏ΑΓ 3VCZͰϓϩάϥϛϯά͢Δ ͜ͱ͕ͨͷ͍͠ͷͰʜʜ IUUQTUBOPTIJJSVCZHJUIVCJP
3VCZ;Γ͕ͳϓϩάϥϛϯά w ;Γ͕ͳϓϩάϥϛϯάγϦʔ ζ࠷৽ץʢͷͣʣ w 3BJMTͷίʔυʢҰ෦ʣʹ; Γ͕ͳ͕ৼΒΕ͍ͯΔઃܭ w ᕒͷʮ͡Ίʹʯ͖ͭ w
ຊจͱ;Γ͕ͳಛʹॻ͍ͯ ͍·ͤΜ w ͋Ε͜Εݴ͏͚ͩ൪ͷ IUUQTCPPLJNQSFTTDPKQCPPLT
ϑΣΞΛ։࠵த ͍ͨͩ·ୡਓग़൛ձαΠτͰ ɺϚΠφϏग़൛ɾΠϯϓϨ εɾΠϯϓϨε3%ɾۙՊ ֶࣾɾ4#ΫϦΤΠςΟϒ͞Μ ͷೖॻλΠτϧΛΦϑ ͱ͔Ͱఏڙ͍ͯ͠·͢ɻ IUUQTUBUTV[JOFDPNTBMFTFCQ
ຊ͞ͳ͍͜ͱ
ຊ ͋·Γ ͞ͳ͍͜ͱ wੲɾઆڭ wٕज़ॻయ w3VCZ,BJHJ wNSVCZ
ੲ w ແବʹ3VCZྺ͕͍ɺ͢ػձ͕ͪΐͪ͘ΐ͋͘Δ w 3VCZUIͱ͔ w ͱ͍͑ɺ3BJMTʮࠓʯΛڧ͘ҙ͍ࣝͯ͠Δʢࢲݟʣ w աڈͷޓੑΛաʹॏࢹ͠ͳ͍ w
ະདྷʹඋ͑ΔͷͰͳ͘:"(/* w աڈະདྷΑΓʮࠓʯͷΛ
આڭ w ͑Β͘ͳͬͨਓ͕ޠΔ͋Γ͕͍͓ͨ w ͦ͏͍͏ҙຯͰʮ͑Β͍ʯਓͰͳ͍ w 3VCZ3BJMTͷίϛολʔͰͳ͍͠ w 3VCZɾ3BJMTΛ͍͘͢͜͝ͳͯ͠ΔΘ͚Ͱͳ͍͠ w
ৗੜ׆ͷಓ۩ͱ͍ͯͬͯ͠Δఔ
ٕज़ॻయ w ٕज़ܥॻ੶ଈചձʢಉਓࢽʴۀࢽʣ w ʢʣାͰٕज़ॻయΛ։࠵༧ఆ w ࠓͷ3VCZ,BJHJͰɺʢඇެࣜʣཱͪಡΈΛ࡞Γ ͍ͨͷͰྑ͔ͬͨΒ͝ڠྗ͍ͩ͘͞ʂ w ͱ͍ٕ͑ज़ॻయͰ3BJMTͬͯͳ͍ͷͰʜ
w αΠτ("&(P 5ZQF4DSJQUʹدͤͯ·͢
3VCZ,BJHJ w ͷؒɾτϥοΫ w -5ઈࢍืूத w IUUQTDGQSVCZLBJHJPSHFWFOUT-5 w ࠓ͔Βͩͱ༵ͷϗςϧ͕औΓͮΒ͍͔ w
IUUQTBNBSZTKUCKQSVCZLBJHJ
NSVCZ w 3VCZΞιγΤʔγϣϯ։ൃॿʮNSVCZͷ লϝϞϦԽͷ࣮ݱʯʢࢁࠜɾߴڮʣ w 3BJMTʹϛϦ͔͢Βͳ͍ w ࣮࣭$ͷ͔͠ͳ͍ w ৄ͘͠3VCZ,BJHJͰ
ຊͷ͓
ϓϩάϥϚࡀఆઆͷྸ͔Β Ҏ্ա͗ͨޙͷϓϩάϥϚੜ׆
ͳͥ͜Μͳ͓ͳͷ͔ w͕͢͞ʹ3BJMTͷͰΩʔϊʔτͱ͔ແཧͦ͏ wฉ͍ͯΔਓͷํ͕ΑͬΆͲ3BJMTৄ͍͠ wฉ͍ͯΔਓΒͳͦ͞͏ͰɺੲΆ͘ͳΒͳͦ͞ ͏ͳωλͱͯ͠ wྸʜʜʁ
·ͩޙͷϓϩάϥϚ
ླࢠ wϑϧελοΫϛϡʔδγϟϯ w ΞϧόϜʮ-PWF QBJOGVM MPWFʯͰ࡞ࢺɾ࡞ۂʢۂ আ͘ʣɺυϥϜεɺϕʔεɺ ΪλʔɺΩʔϘʔυɺϘʔ ΧϧɺίʔϥεɺΞϨϯδɺ ϓϩσϡʔεͷશ෦ΛҰਓ
ଟॏԻͰͬͯͨΓ͢Δ
ʰ·ͩͷঁʱ ʮ·ͩͷঁɺΞϦόΠ͕ཉ͔ͬͨ͠ ɹ·͕ͩࣗঁͩͱࢥ͑Δ͕࣌ؒʯ ʮ·ͩͷঁɺΔ͢ͳ͔ͬͨ ɹ͕ͯΛӽ͑ͨͱ͖ɺ͡Ίͯɺࣝͬͨʯ
ͱ w ·ͩڝ૪ͷقઅ w Λա͗Δͱɺڝ૪͔Βʮ߱ΓΔʯʢ߱Ζ͞ΕΔʣ w ·ͰͷੵͰਐΉ͔ɺ·ͬͨ͘ҧ͏࣠Ͱউෛ͢ Δʢͤ͞ΒΕΔʣ w ͰͰ໘ന͍ʢͱͷ͜ͱʣ
w ˞ݸਓͷҹͰ͢
ࡀϓϩάϥϚʔఆઆ
ࡀҎ্ͷํʁ✋
ࡀϓϩάϥϚʔఆઆ w ࡀ͝ΖͰϓϩάϥϚʔͰͳ͘ͳΔ͜ͱ w ॳग़ɾఏএऀෆ໌͕ͩɺҎલ͔ΒࣅͨΑ ͏ͳ͜ͱݴΘΕ͍ͯͨΒ͍͠ w ྸ෯͕͋Δʮࡀʯʮࡀʯʮࡀʯ
ϓϩάϥϚࡀఆઆ ࡾݪॱʮͷ͢Θ͍ͬͯΔॴʯ ՖΏΊ&10߸ॳग़
ࡾݪॱ ʮΈͩͬ͠ࢠʯͰ༗໊ɻωʔϜ͕ଟ͘ɺ ϖʔδจࣈ͔͠ͳ͍ϖʔδ͋Δ͕ɺ ҰηϦϑ͕ͳ͍ճ͕͋ͬͨΓ͢Δɻ ɹޙظͷʮϜʔϯɾϥΠςΟϯάʯ ʮ4POTʯʮ9%BZʯͰ%%ͱ͍͏ϓϩ άϥϚ͕ग़ͯ͘Δʢલϖʔδͷஉੑʣɻ ɹ݄Ӭɻ࣌ೖखࠔ ͕࡞͕ଟ͔͕ͬͨɺϑΝϯؔऀ ͷ׆ಈʹΑΓݱࡏଟ͘ͷ࡞͕ೖखͰ
͖ΔʢిࢠؚΉʣɻ IUUQTXXXIBLVTFOTIBDPKQDPNJDTMJTU
࠷ۙ൱ఆతͳҙݟ͕ଟ͍ w ࠷ۙࡀͰఆ͠ͳͦ͞͏ͳ͕͋Δ w ա͗ͯΈΜͳී௨ʹϓϩάϥϚͯ͠Δ w େมΑ͍͜ͱ w ଞਓੈ͕ؒྸͰܾΊΔͷͰͳ͘ɺࣗ ͕ࣗͷ߹ͰܾΊΔͷ͕ϕετ
˞ଞਓͷਓੜࢀߟʹͳΒͳ͍ w %))ɺ.BU[ͷΑ͏ͳਓੜΛੜ͖ΒΕΔͷ ຊਓ͚ͩ w ࣗͷਓੜΛੜ͖Δ͔͠ͳ͍ w ͜ͷτʔΫʹฉ͍ͯԼ͍͞
ͱ͍͑Կࡀ·Ͱଓ͚Δͷ͔ w ࡀͱ͔ࡀͱ͔Ͱී௨ʹϓϩάϥϚͯ͠ ͍Δͷ͔ʁ w Կͱͳͦ͘͠͏ͳؾ͕ͯ͘͠Δ
//ࡀϓϩάϥϚʔఆઆ ͷݪҼԿͩͬͨͷ͔
ϓϩάϥϚʔࡀఆઆͷࣄऀʹͳΓ·ͨ͠IUUQTTIJTIJIBUFOBCMPHKQFOUSZ ࠓࡀͷࢲ͕ɺʮϓϩάϥϚʔࡀఆઆʯʹ͍ͭͯɺߟͯ͠ΈΔɻIUUQXXXTNBSUTUZMFCMPHOFUFOUSZ $BSFFS'PS1SPHSBNNFS ࡀʹͳͬͯࢥ͏ʮϓϩάϥϚࡀఆઆʯIUUQTTIJHPUPOPNJSBJDPNZFBSPMESFUJSFNFOU ϓϩάϥϚʔࡀఆઆͷਅ࣮ͱࡀͷนIUUQTPVDIJJUDPNQH ̞̩ਓࡐ͕ෆͱ͍͏ιͱ4&ࡀఆઆͷṖIUUQTXXXXBOUFEMZDPNDPNQBOJFTUSBTICSJFpOHQPTU@BSUJDMFT ϓϩάϥϚࡀఆઆIUUQXXXHDEPSHCMPH పఈݕূʂϓϩάϥϚʔࡀఆઆͷਅ࣮IUUQTXXXPSJPOTDPKQDFPCMPHUSFOESFUJSFNFOUBHFUIFPSZ Զͷߟ͑ΔϓϩάϥϚʔࡀఆઆIUUQEPDTLPNBHBUBPSH ͦΖͦΖʮϓϩάϥϚʔࡀఆઆʯΛపఈഁ͠ͱ͔͘IUUQMBGSFO[FIBUFOBCMPHDPNFOUSZ
ϓϩάϥϚࡀఆઆ෴ͤΔcถϚΠΫϩιϑτͷ։ൃऀͱͳͬͨՏ௨फͷಇ͖ํIUUQTDBSFFSIBDLFOKBQBODPN SFQPSUEFUBJM ϓϩάϥϚఆઆIUUQTKBXJLJQFEJBPSHXJLJϓϩάϥϚϓϩάϥϚఆઆ ϓϩάϥϚʔࡀݶքઆʹ͍ͭͯͲ͏ࢥ͍·͔͢ʁIUUQTKQRVPSBDPNϓϩάϥϚʔࡀݶքઆʹ͍ͭͯͲ͏ࢥ͍·͔͢ ʲ·ͭͱΏ͖ͻΖࢯɹಛผߨԋʳएखΤϯδχΞͷੜଘઓུʹߦ͖ͬͯͨͷͰࢲతϝϞIUUQTRJJUBDPN%"E%:JUFNT CBGBEC σϒαϛʲ"ʳҰੜΤϯδχΞΛָ͠͏ເத͕࠷ߴʂʂEFWTVNJ"IUUQTUPHFUUFSDPNMJ ٕज़ސϒʔϜͷྲྀΕΛΜͩΤϯδχΞϦϯάϚωʔδϟʔϒʔϜɺͱ͍͏ߟIUUQTCMPHLZBOOZNFFOUSZ ʮ͞ΜɺϓϩάϥϚࣙΊΔͬͯΑʯIUUQTNFEJVNDPN!MFTUSSBUTXJUDIJOHDBSFFSTBDF
ࡀఆઆͷݪҼ w ೳྗͷԼ w ମྗͷԼ w ֶशೳྗͷԼ w ूதྗͷԼ w
VOMFBSOJOHͰ͖Δ͔Ͳ͏͔
ࡀఆઆͷݪҼ w ଞͷϝϯόʔͱͷؔੑͷมԽ w Լʹࢦش͞ΕΔ w Լ͔ΒֶͿ w ૬खʹͱͬͯΓͮΒ͘ͳ͍͔Ͳ͏͔
ࡀఆઆͷݪҼ w 4*FSతͳاۀ৫ͷ w ͷਓࡐΛചΓࠐΈͮΒ͍ w ࣌ؒ࿑ಇʹ͍͍͚ͭͯͳ͍ w ୯Ձͱۚͷؔ
ࡀఆઆͷݪҼ w ੜ׆ڥͷมԽ w ݁ࠗɾࢠҭͯɾհޢͳͲ w ͦͷଞࣾձత͕͍ͭͯ͘Δͱɺ࣌ؒͱ Ϟνϕʔγϣϯͷ֬อ͕͘͠ͳΔ w څ༩ͱͷ݉Ͷ߹͍͋Δ
ఆΛڧ͍Δѹྗ w ྸ্͕͕ΔͱʮޙਐΛҭͯΔ͖ʯͱ͍͏ѹྗ͕ ͔͔Γ͘͢ͳΔ w ʮʯ w ࣮ࡍʹతͳৼΔ͍Λ͢Δ͔Ͳ͏͔Ͱͳ͘ɺ ͍ͦͦΔ͚ͩͰωΨςΟϒ w
੮͕༗ݶͳΒʮअຐऀʯʹͳΔ
ѹྗͷରԠ w ѹతͳ࣮ྗͰ͢ w ͖͋ΒΊͯޙਐʹ੮ΛৡΔ w εϧʔྗΛߴΊΔ
ѹతͳ࣮ྗͰ͢ w ɾͰҰൃͯΔͱଓ͖ͦ͏ w εϖγϟϦετతͳϙδγϣϯʹͭ͘ w ʹΑͬͯී௨ʹ͋Γͦ͏ w ྸ্͕͕ΔͱϓϩάϥϛϯάεΩϧͷΈͰ ධՁ͞ΕΔͷͦ͘͢͝͠͏
ϓϩάϥϚʔ IUUQTKBXJLJQFEJBPSHXJLJ·ͭͱΏ͖ͻΖ
ϓϩάϥϚʔ w .BU[ʮϓϩάϥϚʔʯͱͯ͠ධՁ͞Ε͍ͯΔͷ͔ʁ w ϓϩάϥϚʔҎ֎ͷ෦͋Γͦ͏ w ݴޠσβΠφʔ w ίϛϡχςΟcϓϩμΫτ Ϛωʔδϟʔ
w $3VCZʹίʔυͷίϛοτͯ͠ͳͦ͞͏ w NSVCZ݁ߏίʔυΛ͍͍ͬͯͯͨ͡ͷͦ͠͏
ޙਐʹৡΔ w δϣϒνΣϯδ͢Δ w $50ɺٕज़ސʢίʔυॻ͔ͳ͍ํʣ w ΤϯδχΞϦϯάϚωʔδϟʔ w $&0 w
Ϛωδϝϯτʹಀ͛ͳ͍ɺϚωδϝϯτʹ߈ΊΔ
εϧʔྗΛߴΊΔ w ؾʹ͠ͳ͚ΕͲ͏ͱ͍͏͜ͱͳ͍ w Ͱѹྗঃʑʹڧ·ͬͯ͘ΔͷͰ
ϓϩάϥϚʔͷͨΊʹ w ݁ہʮԿͷͨΊʹϓϩάϥϛϯά͢Δͷ͔ʯ ͱ͍͏ࠜຊతͳ͍ʹߦ͖ண͔͟ΔΛಘͳ͍ w ࠷ޙʮԿͷͨΊʹੜ͖͍ͯΔͷ͔ʯͱ͍͏ ͍͕དྷΔ
ԿͷͨΊʹϓϩάϥϛϯά͢Δͷ͔ w ʮੜ׆ͷͨΊʯʮΓߕ൹ʯͰ͋Εɺϓϩ άϥϚʔҎ֎ͷબࢶࢹʹೖΕΔ w ΑΓతʹ߹க͢Δ͜ͱ͕ݟ͔ͭΔ͔ w બࢶ૿͓ͯ͘͠ํ͕ྑ͍
ԿͷͨΊʹϓϩάϥϛϯά͢Δͷ͔ w ʮղܾͷखஈͱͯ͠ʯ w ʮࢲʯ͕ϓϩάϥϛϯάͰղܾͰ͖ΔΑ͏ ͳ͕ৗʹ͋Εɺ͍ͭ·Ͱॏๅ͢Δ w ʮίΞͷۀʯͱݶΒͳ͍
ԿͷͨΊʹϓϩάϥϛϯά͢Δͷ͔ w ʮͨͷ͍͔͠Βʯʮ͖͔ͩΒʯ w खஈͰͳ͘తͰ͋Δ߹ w ͖ͳ͚ͩϓϩάϥϛϯά͢Ε0,
݁ہ͖ͳͷԿͳͷ͔ w ϓϩάϥϛϯά͕͖ͳͷ͔ w ϓϩμΫτ͕͖ͳͷ͔ w લऀͰ͋ΕɺͳΜͱ͔͍ͨ͠
ѹྗͷରԠ w ѹతͳ࣮ྗͰ͢ w ͖͋ΒΊͯޙਐʹ੮ΛৡΔ w εϧʔྗΛߴΊΔ w ޙਐ͕͍ͳ͍ͱ͜Ζʹߦ͘
੮ͷ w ੮͕ݶΒΕΔͳΒɺଞͷͱ͜Ζߦ͜͏ w ڱ͍ۀքͰߟ͑Δͱݫ͍͠ؾ࣋ͪʹͳΔ w ҧ͏ॴߦ͘͜ͱΛߟ͑Δ w ࢲ͔ͨͪΒԕ͍ॴʹधཁ͕͋Δ
8JMMJBN(JCTPO l5IFGVUVSFJTBMSFBEZIFSF JUTKVTUOPUWFSZFWFOMZ EJTUSJCVUFEz ʮະདྷ͢Ͱʹ͜͜ʹ͋Δʕʕ ͨͩวࡏ͍ͯ͠ͳ͍͚ͩͩʯ
8JMMJBN(JCTPO ʹىͬͨ͜4'Ϝʔϒϝ ϯτʮαΠόʔύϯΫʯΛද ͢Δ࡞ՈɻిۭؒʲαΠόʔε ϖʔεʳʹೖʲδϟοΫΠϯʳ ͢Δͭɻ ද࡞ʹʰχϡʔϩϚϯαʔʱ ʰΫϩʔϜऻܸʱʰ͍͋ͲΔʱ ͳͲɻ
IUUQTB[DPNXIZTPGUXBSFJTFBUJOHUIFXPSME
3BJMTثʹͳΔ w ϑϧελοΫ w ͦΕ͚ͩͰ݁͢Δʗ࠷ݶͳΒҰਓͰ࡞ΕΔ w ͋Δఔͷʮܕʯ͕ܾ·͍ͬͯΔ w ଞͷਓʹҾ͖ܧ͍͗͢ʢ͜ͱ͋Γͦ͏ʣ w
ҰਓͰ্ཱͪ͛ɺΈΜͳͰҭͯΔʹ͍ͦ͢͏
ະདྷΛวࡏͤ͞ΔͨΊͷ ࠷ۙͷϓϩάϥϛϯά׆ಈ
࠷ۙͷϓϩάϥϛϯά׆ಈ w ʢ3BJMT͡Όͳ͍͚Ͳʣ3BJMT͍ͷਓʹڵຯ ࣋ͬͯΒ͑ͦ͏ͳ͜ͱ w &16#$IFDL w ੨ۭจݿ
&16#$IFDL
&16#$IFDL w +BWBͷ&16#7BMJEBUPS w )5.--JOU $44-JOUΈ͍ͨͳͭ w ۀքඪ४ w &16#$IFDLΛ௨Βͳ͍ͷյΕͨϑΝΠϧ
w &16#$IFDL͕௨Βͳ͍ͱൢചͰ͖ͳ͍ిࢠॻళɾ ిࢠऔ࣍͋ΔΒ͍͠
&16# w ͬ͘͟Γݴ͏ͱɺ9)5.-ͱ$44ʹϝλσʔλ 9.-ϑΝΠϧ 01'ϑΝΠϧ Λ߹Θͤͯ[JQͰ ݻΊͨͷ w ిࢠॻ੶ͷඪ४ϑΥʔϚοτ w
,JOEMFɺJ#PPL4UPSFɺ,PCPɺIPOUPͳͲͰ ചͬͯΔౕͷݩ͜Ε
&16#$IFDL (JU)VCͷDPOUSJCVUPSTSBOLJOH Ͱͳ͔ͥҐʹ͍Δ ˞+BWB΄ͱΜͲॻ͚·ͤΜ IUUQTHJUIVCDPNXDFQVCDIFDLHSBQITDPOUSJCVUPST
&16#$IFDLͷॏཁੑ w ͳͥ&16#όϦσʔλ͕ॏཁͳͷ͔ʁ w ຊ࣭తʹిࢠॻ੶ΞʔΧΠϒ͕ॏཁͰɺ ߃ٱతʹյΕͳ͍͜ͱΛอূ͍ͨ͠
ΞʔΧΠϒ w ిࢠॻ੶ΞʔΧΠϒͰ͖Δͷ͔ w 8FCίϯςϯπΞʔΧΠϒͰ͖Δͷ͔ w ޙʹ։͚Δπʔϧ͕͋Δ͔ w ࢴͳΒલͷจॻͰಡΊΔٕज़ཱ͕֬͞Ε͍ͯΔ w
҆ఆతͳن͕֨ඞཁͳͷͰ w ʮ-JWJOH4UBOEBSEʯͰྑ͍ͷ͔ w &16#8$൛Ͱόʔδϣϯݻఆͯ͠ରԠ͠Α͏ͱͯ͠Δ
&16#$IFDLͷ࣮ w +BWB ߴͳ9.-ٕज़ͱ͍͏θϩײ w 3FMBY/(ͱ͍͏9.-εΩʔϚόϦσʔλ w ෳͷ໊લۭؒͷόϦσʔγϣϯ͕Ͱ͖Δ w ෳ໊લۭؒʹରԠͨ͠εΩʔϚ͕͋Δ
w ṖͷύλʔϯϕʔεεΩʔϚ͋Δ TDIFNBUSPO
&16#$IFDLͷ w ϝϯςύϫʔ͕ѹతʹΓͳ͍ w ࠷৽ͷ༷ʹैͰ͖ͳ͍ w ࡢʮ5IFSFJTDVSSFOUMZBTFWFSF TIPSUBHFPGEFWFMPQFSTXPSLJOHPOUIF UPPM IPXFWFSʯͱ͍͏Ξφϯεग़ͯͨ
w ݱࡏจݴ͕ফ͞ΕɺدΛืूத
ߴݟਅʮ&16#Λऔ Γר͘ݱঢ়ͱࠓޙͷ ՝ʯʢʮ"1- &16#ɺ":ɺຊ ޠॻهٕज़ɺ-$1ɺ ݈શͳωοτऔҾʯ ͰͷൃදࢿྉʣΑΓ IUUQTXXXBQMBCKQTZNQPTJVN
੨ۭจݿ
੨ۭจݿ w ஶ࡞ݖอޢظ͕ؒऴྃͨ͠ίϯςϯπΛத৺ʹɺ ࣗ༝ʹѻ͑ΔίϯςϯπΛूΊͨαΠτɻʮΠ ϯλʔωοτͷਤॻؗʯɻ w ஶ࡞ݖอޢظؒԆʹରͷཱͰҙ ݟද໌Λߦ͍ͬͯͨɻ w ݄։ઃɺݱࡏ
࡞Ҏ্Λऩूɻ
੨ۭจݿͷٕज़ํ໘ w ઐଐͷΤϯδχΞ͍ͳ͍ w ։ൃɾӡ༻ͲͪΒ͍ͳ͍ w ยखؒʁͰ͓ख͍͢Δਓ͕͍ΔʢؚΉࢲʣ w ݩʑ࡞͕͖ͳਓͷू·ΓͰ͋ͬͯɺωοτٕज़ ͷ͖ͳਓͱ͍͏Θ͚Ͱͳ͍
w ͱ͍͏݄͍
੨ۭจݿͷ͘͠Έ UFYU ެ։αʔό $.4 ճόονͰੜɾసૹ͍ͯ͠Δ )5.- XXXBP[PSBHSKQ ެ։ɾະެ։࡞ใ
੨ۭจݿͷ͘͠Έ w ެ։αʔόͱ$.4ʹ͔Ε͍ͯΔ w ެ։αʔόʹ੩త)5.-͔͠ஔ͍͍ͯͳ͍ w ͘͞ΒͷϨϯλϧαʔόΛ༻ w $.4αʔόͰσʔλͷొฤूɺ)5.-ϑΝΠϧ ͷੜɺެ։αʔόͷసૹΛߦ͍ͬͯΔ
w ͘͞ΒͷΫϥυΛར༻
αʔόબఆͷࣄ w ެ։αʔόϝϯςφϯεϑϦʔʹ͍ͨ͠ w Ϩϯλϧαʔόͩͱαʔόཧऀ͕ෆཁʹͳΔ w ྆αʔόͱۃྗࠃʹஔ͖͍ͨ w ஶ࡞ݖอޢظؒࠃʹΑͬͯඍົʹҟͳΔͨΊɺຊ Ͱอޢ͕ऴྃ͞Ε͍ͯΔίϯςϯπ͕ւ֎Ͱอޢ͞
Ε͍ͯΔՄೳੑ͋ΔʢظؒԆલͷίϯςϯπݱࡏ ͰͦΜͳײ͡ʣ
͜͜ͷมߋ w αʔόΛཧαʔό͔ΒΫϥυʹҠ w 04ɾϛυϧΣΞߋ৽ w ϓϩϏδϣχϯάࣗಈԽ w αʔόࢹಋೖ w
$.4ػೳͷߋ৽
੨ۭจݿͱ3VCZ w ੨ۭจݿه๏ϑΝΠϧ͔Β)5.-ͷม w UYUIUNM w ݱࡏΘΕ͍ͯΔ)5.-มث w QVSF3VCZͷ੨ۭจݿه๏QBSTFSʢ͍ͩͿྗٕʣ w
-*- coding:shift_jis -*- w BP[PSBIUNM w ্هΛվͯ͠HFNԽ
੨ۭจݿͱ3VCZ w αʔόϓϩϏδϣχϯά w JUBNBF w $.4αʔόߏங༻ʹ༻
&16#$IFDLͱ੨ۭจݿͷڞ௨ w ΈΜͳͬͯΔ͚Ͳɺྲྀߦ͍ͬͯΔΘ͚Ͱͳ͍ w େ͖͘ϚωλΠζͰ͖͍ͯΔΘ͚Ͱͳ͍ w αʔϏεࣗମܧଓతʹधཁ͕͋Δ w ͰऴΘΔͷͰͳ͍ w
ΤϯδχΞΛܧଓతʹ֬อ͠ଓ͚Δͷ͕͍͠ w ΤϯδχΞʹͱͬͯͷϝϦοτෆ໌֬
੨ۭจݿ͔Βݟ͑Δ՝ w ίϛϡχςΟ্ཱͪ͛࣌ͷத৺ਓ͕͍ͳ͘ ͳΓͭͭ͋Δʗ͍ͳ͘ͳΔ͜ͱ͕͋Δ w Ұछͷʮࣄۀঝܧʯ w ωοτͷੈަΛͲ͏͢Δ͔
ͳؾ࣋ͪ w एͯ͘༗ೳͳΤϯδχΞͷΈͳ͞ΜΛߥ ʹ์ͬͯະདྷΛวࡏ͍ͤͨ͞ w ͦͷํ͕ੈք͕໘ന͘ͳΓͦ͏ͳͷͰ w ͦΕͰΈͳ͞Μ͕ͤʹͳΕΔ͔Ͳ͏͔ ͔Βͳ͍ͷͰ֤ࣗؤுͬͯཉ͍͠
੨ۭจݿ$.4෦ͷϦχϡʔΞϧ w ͦΖͦΖΓ͍ͨʢͱࢥ͍ͭͭҎ্ʜʣ w ݱߦͷૢ࡞ੑ͋·Γม͑ͨ͘ͳ͍ w ࡞ۀ୲ऀͱͷ࿈བྷͦΕ΄ͲີʹͱΕ ͍ͯͳ͍ͨΊɺมߋ͕େ͖͍ͷ·͍ͣ
$.4ߏஙʹԿΛ͏͔ w 4BB4ɺ#BB4తͳͷؾ͕ਐ·ͳ͍ w ΤϯδχΞ͕͍ͳ͍ͱɺڍಈͷมԽʹ߹Θͤͨվम͕ͭΒͦ͏ w ࠃ w ࣗ༝͡Όͳ͍ w
։ൃऀҎ֎ͷਓ͕༰қʹҾ͖ܧ͛Δͷ w ʜʜͬͺΓ;ͭ͏ͷ3BJMTΞϓϦ͘Β͍ʹ͢Δ͖Ͱʢ˞ݸ ਓతͳݟղͰ͢ʣ
3BJMTͰ࠶ߏங w ؾʹ੨ۭจݿͷ$.4Λ3BJMTͰ࡞Γͨ͠ ͍ɺͱ͍͏ϓϩδΣΫτʹڵຯͷ͋Δਓ ͓͕͚͍͚ͨͩΔͱ͏Ε͍͠Ͱ͢ɻ
ΞʔΧΠϒٕज़Πϕϯτ w *OUFSOFU"SDIJWFลΓͷਓΛಡΜͰUFDI DPOGΛՆࠒʹΓ͍ͨɺͱ͍͏͕͋Γ· ͢ w ຊڈΔ༧ఆͩͬͨͷͰ͕͢ɺࠓ ͦ͜Կͱ͔͍ͨ͠
BP[PSBIBDL ੨ۭจݿΛٕज़తʹͨͷ ͠Έ͍ͨਓͷͨΊͷίϛϡ χςΟɻΞʔΧΠϒΠϕ ϯτʹ͍ͭͯTMBDLͰ ʹ͍ͯ͠·͢ɻ IUUQTBP[PSBIBDLPSH IUUQTHJUIVCDPNBP[PSBIBDL
·ͱΊ
·ͱΊ w ɺϓϩάϥϚʔʹ͍ΖΜͳࠔ ͕͋Δ w ࠓ͍ΔॴͰμϝͳΒͲ͔͜ʹߦ͜͏ w 3BJMTͳΒҰਓͰઓ͑Δ w ະདྷΛ͍͛ͯ͜͏
8JMMJBN(JCTPO l5IFGVUVSFJTBMSFBEZIFSF JUTKVTUOPUWFSZFWFOMZ EJTUSJCVUFEz ʮະདྷ͢Ͱʹ͜͜ʹ͋Δʕʕ ͨͩวࡏ͍ͯ͠ͳ͍͚ͩͩʯ
ྑ͍ϓϩάϥϛϯάͱ ྑ͍ਓੜΛ
More Decks by Masayoshi Takahashi
See All by Masayoshi Takahashi
Browser Spec: Testing Hotwire with Ruby
takahashim
1
290
技術書典から見た技術書の生態系について
takahashim
0
140
日本Rubyの会の構造と実行とあと何か / hokurikurk01
takahashim
4
1.7k
Railsアプリケーション開発者のためのブックガイド
takahashim
18
18k
2024年のRailsと自由について考える
takahashim
27
12k
WEB+DB PRESS休刊に寄せて
takahashim
4
2.7k
作品を「つくる」こと
takahashim
0
180
柔軟にカスタマイズできて そこそこ規模の大きい オープンソースRailsアプリって どうすれば作れるんでしょうか…? / omotesandorb 56
takahashim
0
2k
「まだないもの」の育て方 / seccamp2020
takahashim
13
5.4k
Other Decks in Technology
See All in Technology
Agent Harnessはどう作る?事例から学ぶAI Agentの設計思想
sergicalsix
0
260
Intro to Kiro (One agent, every surface) | Kiro: Zero to Hero 01
inariku
PRO
2
110
TSKaigi Sendai 2026 - tsgo時代のTypeScript Playgroundはどう動くか
teamlab
PRO
0
120
Microsoft Entra Kerberos で実現するクラウド デバイス管理
tamaiyutaro
2
660
[dbts2026]数十PBの超巨大データ×AI活用を支えるSnowflakeの実力〜大規模環境におけるアーキテクチャと運用のリアル〜
y_matsubara
0
130
Kiro IDE 入門 (画面の各部から、頼み方、任せ方、戻し方まで) | 目指せ Kiro マスター 02
inariku
PRO
4
200
LLM 基盤と kagent v0 を全部 k8s に入れてみた / Deploy both LLM and kagent v0 in k8s
kota2and3kan
0
130
【dbts2026】AIエージェントの 判断と探索を変える、 データベース エンジニアリング― 既存DBの処理と依存関係から作る、オペレーショナルオントロジー ―
shisyu_gaku
0
280
コードレビューをなくして見えたもの
henteko
0
150
AWS構成から考えるWebセキュリティ ― WordPressの構築経験から考える公開範囲と更新運用【JAWS FESTA 2026 in AKITA】
cscengineer
PRO
2
400
田んぼの見回りをIoTで減らしたい!水位監視から電池駆動カメラまでの試行錯誤
itosoft
1
120
続・ソフトウェアアーキテクトのための意思決定術: Decision Readiness, Revisited — When AI Changes the Economics of Software Architecture
snoozer05
PRO
9
2.9k
Featured
See All Featured
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.4k
Color Theory Basics | Prateek | Gurzu
gurzu
1
520
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
590
So, you think you're a good person
axbom
PRO
2
2.3k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
980
The browser strikes back
jonoalderson
0
1.9k
The Pragmatic Product Professional
lauravandoore
37
7.5k
Accessibility Awareness
sabderemane
1
290