『pixivエンジニアが教えるプログラミング入門』出版記念特別編基調講演

 『pixivエンジニアが教えるプログラミング入門』出版記念特別編基調講演

C0ac34dd3f585ed25b2f79857e5b174d?s=128

Kaneko Tatsuya

March 27, 2015
Tweet

Transcript

  1. ʰQJYJWΤϯδχΞ͕ڭ͑Δϓϩάϥϛϯάೖ໳ʱ ग़൛ه೦ಛผฤ جௐߨԋ ϐΫγϒΠϯϑϥDBUBUTVZ

  2. ࣗݾ঺հ • catatsuy ͱ͍͏ ID ͰΠϯλʔωοτ্Ͱ׆ಈ • ͔͍ͨͭͬͯݺ͹Ε͍ͯΔ • ຊ໊͸ۚࢠୡ࠸Ͱࠓճͷຊͷஶऀ

    • 2013/9ʹେֶΛଔۀޙʹϐΫγϒೖࣾ • ΠϯϑϥͰमߦத • ޿ࠂαʔόʔͷΠϯϑϥ୲౰ʹ • ISUCON4४༏উ
  3. ࣄͷൃ୺ • ඇΤϯδχΞͷ৽ଔʹ޲͚ͯϓϩάϥϛϯάݚमΛ͢Δ͜ͱʹ • ඇΤϯδχΞͷ৽ଔʹϓϩάϥϛϯάݚमΛߦ͍·ͨ͠ - pixiv engineering blog http://inside.pixiv.net/entry/2014/04/28/140859

    • ͜ͷϒϩάެ։ޙʹ੕ւࣾ͞Μ͔Βॻ੶Խͷ࿩͕ձࣾܦ༝Ͱࣗ෼ʹ • ձࣾͷ৚݅ͱͯ͠ݸਓͱͯ͠࢓ࣄΛड͚Δ͜ͱͱձࣾͷ޿ใʹ໾ཱͭ಺༰ ʹ͢Δ͜ͱΛڍ͛ΒΕΔ • ͜ΕΛར༻࣮ͯ͠ࡍͷpixivͷ։ൃʹབྷΊͨ࿩ͳͲΛຊͷதʹ੝ΓࠐΉ ͜ͱ͕ՄೳʹͳΓ࣮༻తͳ಺༰ʹ • ʰ΅͘ͷ͔Μ͕͍͖͑ͨ͞ΐ͏ͷ…ʱͬͯλΠτϧͩͱചΕͳͦ͞͏w
  4. ຊͷେࡶ೺ͳ಺༰ • ʰMacͰ࣮ࡍʹಈ͘ը૾౤ߘܝࣔ൘Λ࡞Δʱͱ͍͏໨ඪʹ޲͚ͯͻͨ͢Βඞ ཁͳ஌ࣝΛղઆ͢Δ • ࣮ࡍʹࣾ಺Ͱߦͬͨϓϩάϥϛϯάݚमͱ΄΅ಉ಺༰ • UNIXίϚϯυɾRubyɾSQLiteɾGitɾJavaScriptɾjQueryͳͲΛ࢖͏ • ֶੜΠϯλʔϯͩͱ͜ͷϨϕϧͰ΋஌Βͳ͍ਓ͸͍Δ

    • RubyΛ࢖ͬͨཧ༝͸ࣾ಺Ͱ΋࠾༻ྫ͕ଟ͍ͷͱMacͰඪ४Ͱ࢖͑Δ͜ͱ ͱSinatra͕࢖͑ΔͷͰબ୒ • SQLite͸MacͰඪ४Ͱ࢖͑Δ͜ͱͱSQLҎ֎ͷ෦෼Ͱ೰ΜͰཉ͘͠ͳ͔ͬ ͨͷͰબ୒
  5. ͳͥը૾౤ߘܝࣔ൘͔ • ݚमͷςʔϚΛߟ͑Δ্Ͱࣾ௕͔Βग़ͨΞΠσΟΞ • େม͕ͩpixivʹ௨͡Δͱ͜Ζ΋͋Γɼ͓΋͠Ζ͍ͱ൑அ • id:naoya͞Μͷݴ༿Λࢥ͍ग़ͨ͠ • ʰπʔϧͱͯ͠ͷιʔγϟϧϝσΟΞ͍ͬͯ͏ͷ͸ɺ͔ͭͯͷʮܝࣔ൘ʯ͕15 ೥͘Β͍͔͚ͯܗΛม͚͑ͨͩͩͱࢥ͏ʱ

    • ݩ͸ͯͳɾGREEͷϓϩάϥϚ ҏ౻௚໵͕ޠΔɺιʔγϟϧϝσΟΞͷޭࡑɻ ʦલฤʧ | CAREER HACK http://careerhack.en-japan.com/report/detail/34 • WebΞϓϦΛ࡞Δ্Ͱجຊతͳ஌ࣝʢHTMLɾCSSɾSQLɾαʔόʔαΠυϓϩ άϥϛϯάetcʣ͕શͯඞཁͰςʔϚͱͯ͠ద౰
  6. ී௨ͷϓϩάϥϛϯάݚमͱҧ͏ͱ͜Ζ • ී௨ͷϓϩάϥϛϯάݚम͸঎ۀతͳ΋ͷͰ͓٬༷ͷύιίϯͰແཧ΍ΓʹͰ΋ձ ͕ࣾٻΊΔ΋ͷΛಈ͔ͯ͠ݚम಺༰ΛऴΘΒͤΔͷ͕໨త • ঎ۀతʹ͸ਖ਼͍͕͠ɼ؀ڥߏஙͰ΄ͱΜͲͷ࣌ؒΛ࢖ͬͯ͠·͏ • େਓ਺Λ࣮֬ʹશһݚम಺༰ΛऴΘΒͤΔͨΊʹ؆୯ͳ಺༰ʹͤ͟ΔΛಘͳ͍ • ࣾ಺ͷݚमͷ໨త͸ඇΤϯδχΞͷਓ͕ͨͪ͜Ε͔ΒΤϯδχΞͱ࢓ࣄΛ͢Δʹ͋

    ͨͬͯ࢓ࣄʹࢧো͕ग़ͳ͍Α͏ʹ͢Δ͜ͱ͕໨త • ϐΫγϒࣾ಺Ͱ͸ඇΤϯδχΞͰ΋GitɾHTMLɾCSS͸࢖͏͜ͱ͕͋Δ • ٕज़తͳ༻ޠͳͲͰ໘৯Β͏͜ͱ͕ͳ͍Α͏ʹ͍ͨ͠ • ͜Ε͔ΒҰॹʹ࢓ࣄΛ͢ΔਓୡͷͨΊ؆୯ͳ಺༰͔͠΍Βͳ͚Ε͹ෆརӹΛ͜ ͏ΉΔͷ͸ࣗ෼ͨͪ
  7. ͩ͜Θͬͨͱ͜Ζ • ࣮ࡍʹखݩͰಈ͍ͯɼ࣮ࡍͷWebΞϓϦΛ࿈૝ͤ͞Δ͜ͱ • ࣮ࡍͷWebΞϓϦͱ͋·Γʹ͔͚཭Ε͍ͯΔͱ΍Δؾ͕ແ͘ͳΔ • ؀ڥߏஙΛ࠷খݶʹͯ͠ϓϩάϥϛϯά͚ͩʹۤ͠ΉΑ͏ʹ • ΄ͱΜͲͷਓ͸؀ڥߏஙͰͭ·͍ͣͯϓϩάϥϛϯά͕ݏ͍ʹͳΔ •

    XSSɾSQLΠϯδΣΫγϣϯͳͲηΩϡϦςΟΛଥڠͤͣ੝ΓࠐΉ • ࢓ࣄΛ͢Δ্Ͱग़ͯ͘ΔͷͰ஌͍ͬͯͯཉ͍͠ • ࣮ࡍʹϢʔβʔ͕౤ߘ͢Δը૾౤ߘܝࣔ൘ͳΒ௚໘͢Δ໰୊ • جຊతͳ಺༰ΛͩΒͩΒڭ͑ͳ͍ • ࠷ॳʹڭ͑ͨ͜ͱ͸جຊతʹը૾౤ߘܝࣔ൘Λ࡞Δ࣌ʹશ෦ग़ͯ͘ΔΑ͏ʹ
  8. ͖͋ΒΊͨͱ͜Ζ • WindowsͰͷ؀ڥߏங • ॳ৺ऀ͕ҰਓͰઈରͰ͖ͳ͍͠ɼϓϩάϥϛϯάͷ؀ڥ͸ಛघͩͱࢥΘΕͨ͘ͳ͍ • UNIXίϚϯυΛڭ͍͑ͨ • ϞϯελʔϚγϯ໰୊ •

    GitΛ࢖ͬͨ։ൃաఔ • ։ൃͨ͜͠ͱ͕ͳ͍ਓʹ͸࣮ײ͕ͳ͍ • ͨͩͰ͑͞೉͍͠ϓϩάϥϛϯάաఔͷதʹ੝ΓࠐΊΔࣗ৴͕ͳ͔ͬͨ • RubyͷγϯϘϧͳͲࡉ͔͍આ໌ • ಈ͘ͱ͍͏ײಈΛ༩͑ΒΕΕ͹Α͠ͱͨ͠
  9. ͖͋ΒΊͨͱ͜Ζ • AmazonͷϨϏϡʔ • ߥΕΔ͜ͱ͸૝ఆࡁΈ • ͦΜͳ͜ͱΑΓ΋෼͔Γ΍͍͢΋ͷΛఏڙ͍ͨ͠ • ചΓ্͛ •

    ͨ͘͞ΜചΓ͍ͨͳΒWindows޲͚ʹΠϯετʔϧաఔͷεΫγϣΛష Γ·ͬͯ͘ద౰ͳ಺༰Λॻ͘ํ͕͍͍ • ͜Ε͔ΒҰॹʹ࢓ࣄΛ͢Δਓʹ޲͚ͯ࡞ͬͨ಺༰ͷॻ੶ԽͳͷͰͦΜͳ͘ ͩΒͳ͍಺༰ʹͨ͘͠ͳ͍ • ֶͼ͍ͨਓ͕ຊ౰ʹֶͼ͍ͨ಺༰Λॻ͖͍ͨ
  10. ࣭໰λΠϜ ʢπΠʔτېࢭ΋͋ΔΑʂʣ