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
『pixivエンジニアが教えるプログラミング入門』出版記念特別編基調講演
Search
Kaneko Tatsuya
March 27, 2015
Programming
2.1k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
『pixivエンジニアが教えるプログラミング入門』出版記念特別編基調講演
https://pixiv.doorkeeper.jp/events/22399
基調講演
Kaneko Tatsuya
March 27, 2015
More Decks by Kaneko Tatsuya
See All by Kaneko Tatsuya
キャリアを充実させる『カギ』に!PR TIMES CTO金子達哉から学ぶアウトプット術 / output_method
catatsuy
0
710
ISUCONの情報共有にはこれ!notify_slack!/isucon_notify_slack
catatsuy
1
1.1k
ISUCON6本選のベンチマークでconsulを使用してクラスタを構築した話 / isucon6-night
catatsuy
2
1.4k
ユニクロの レジから学ぶ Goroutine #yapc8oji #yapc8ojiA /uniqlo_golang
catatsuy
6
2.4k
社内ISUCONオープニング/private-isu-opening
catatsuy
0
10k
ピクシブ社内広告サーバーでのGoの開発・運用 #gocon /p_ads_server_gocon2015
catatsuy
10
11k
fluentdで大量のログを Google BigQueryに送ってみた #fluentdmeetup /send_a_log_to_bigquery_with_fluentd
catatsuy
1
4.4k
ピクシブ広告サーバー開発・運用の軌跡 2015春インターン講義資料
catatsuy
17
12k
シェルスクリプトをServerspecとVagrantで継続的インテグレーションする
catatsuy
8
2.5k
Other Decks in Programming
See All in Programming
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.7k
AI時代のTerminal環境を UNIX哲学で設計・運用する
yasunori0418
1
350
GraphQL の onError と Nullability のこれから
quramy
0
210
高橋メソッドでCVE解説シリーズ 〜CVE-2026-112816〜
hakkadaikon
0
230
React Native経験者が Flutterを30⽇間触って驚いたこと
3saito
0
160
graphql-ruby を Spinel で速くしようとした話
mtsmfm
0
140
まずはコードより業務と向き合う:テーブル解体のためにPdMを呼んだ話
sakawe_ee
0
190
우리의 Nitro Modules는 당신의 Turbo Modules보다 아름답다
l2hyunwoo
0
260
AI時代のIaC入門 〜なぜインフラをコードで管理したいのか?〜 / Introduction to IaC in the AI Era
akihisaikeda
6
1.4k
TanStack Vue Query と Pinia Colada から学ぶ非同期状態の型設計
aoshi
0
630
Vapor Mode でアクセシビリティは 壊れないか検証した話
fuqda
1
330
Python Lambdaにおけるテストしやすい設計とAI支援の活用 / Designing Testable Python Lambda Functions with AI
kitano_yuichi
1
300
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4.6k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
1
300
A designer walks into a library…
pauljervisheath
211
25k
KATA
mclloyd
PRO
35
16k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
670
How to Think Like a Performance Engineer
csswizardry
28
2.9k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
Raft: Consensus for Rubyists
vanstee
143
7.9k
Designing for Performance
lara
612
70k
Rails Girls Zürich Keynote
gr2m
96
14k
Making Projects Easy
brettharned
120
6.8k
Transcript
ʰQJYJWΤϯδχΞ͕ڭ͑Δϓϩάϥϛϯάೖʱ ग़൛ه೦ಛผฤ جௐߨԋ ϐΫγϒΠϯϑϥDBUBUTVZ
ࣗݾհ • catatsuy ͱ͍͏ ID ͰΠϯλʔωοτ্Ͱ׆ಈ • ͔͍ͨͭͬͯݺΕ͍ͯΔ • ຊ໊ۚࢠୡ࠸Ͱࠓճͷຊͷஶऀ
• 2013/9ʹେֶΛଔۀޙʹϐΫγϒೖࣾ • ΠϯϑϥͰमߦத • ࠂαʔόʔͷΠϯϑϥ୲ʹ • ISUCON4४༏উ
ࣄͷൃ • ඇΤϯδχΞͷ৽ଔʹ͚ͯϓϩάϥϛϯάݚमΛ͢Δ͜ͱʹ • ඇΤϯδχΞͷ৽ଔʹϓϩάϥϛϯάݚमΛߦ͍·ͨ͠ - pixiv engineering blog http://inside.pixiv.net/entry/2014/04/28/140859
• ͜ͷϒϩάެ։ޙʹւࣾ͞Μ͔Βॻ੶Խͷ͕ձࣾܦ༝Ͱࣗʹ • ձࣾͷ݅ͱͯ͠ݸਓͱͯ͠ࣄΛड͚Δ͜ͱͱձࣾͷใʹཱͭ༰ ʹ͢Δ͜ͱΛڍ͛ΒΕΔ • ͜ΕΛར༻࣮ͯ͠ࡍͷpixivͷ։ൃʹབྷΊͨͳͲΛຊͷதʹΓࠐΉ ͜ͱ͕ՄೳʹͳΓ࣮༻తͳ༰ʹ • ʰ΅͘ͷ͔Μ͕͍͖͑ͨ͞ΐ͏ͷ…ʱͬͯλΠτϧͩͱചΕͳͦ͞͏w
ຊͷେࡶͳ༰ • ʰMacͰ࣮ࡍʹಈ͘ը૾ߘܝࣔ൘Λ࡞Δʱͱ͍͏ඪʹ͚ͯͻͨ͢Βඞ ཁͳࣝΛղઆ͢Δ • ࣮ࡍʹࣾͰߦͬͨϓϩάϥϛϯάݚमͱ΄΅ಉ༰ • UNIXίϚϯυɾRubyɾSQLiteɾGitɾJavaScriptɾjQueryͳͲΛ͏ • ֶੜΠϯλʔϯͩͱ͜ͷϨϕϧͰΒͳ͍ਓ͍Δ
• RubyΛͬͨཧ༝ࣾͰ࠾༻ྫ͕ଟ͍ͷͱMacͰඪ४Ͱ͑Δ͜ͱ ͱSinatra͕͑ΔͷͰબ • SQLiteMacͰඪ४Ͱ͑Δ͜ͱͱSQLҎ֎ͷ෦ͰΜͰཉ͘͠ͳ͔ͬ ͨͷͰબ
ͳͥը૾ߘܝࣔ൘͔ • ݚमͷςʔϚΛߟ͑Δ্Ͱ͔ࣾΒग़ͨΞΠσΟΞ • େม͕ͩpixivʹ௨͡Δͱ͜Ζ͋Γɼ͓͠Ζ͍ͱஅ • id:naoya͞Μͷݴ༿Λࢥ͍ग़ͨ͠ • ʰπʔϧͱͯ͠ͷιʔγϟϧϝσΟΞ͍ͬͯ͏ͷɺ͔ͭͯͷʮܝࣔ൘ʯ͕15 ͘Β͍͔͚ͯܗΛม͚͑ͨͩͩͱࢥ͏ʱ
• ݩͯͳɾGREEͷϓϩάϥϚ ҏ౻͕ޠΔɺιʔγϟϧϝσΟΞͷޭࡑɻ ʦલฤʧ | CAREER HACK http://careerhack.en-japan.com/report/detail/34 • WebΞϓϦΛ࡞Δ্ͰجຊతͳࣝʢHTMLɾCSSɾSQLɾαʔόʔαΠυϓϩ άϥϛϯάetcʣ͕શͯඞཁͰςʔϚͱͯ͠ద
ී௨ͷϓϩάϥϛϯάݚमͱҧ͏ͱ͜Ζ • ී௨ͷϓϩάϥϛϯάݚमۀతͳͷͰ͓٬༷ͷύιίϯͰແཧΓʹͰձ ͕ࣾٻΊΔͷΛಈ͔ͯ͠ݚम༰ΛऴΘΒͤΔͷ͕త • ۀతʹਖ਼͍͕͠ɼڥߏஙͰ΄ͱΜͲͷ࣌ؒΛͬͯ͠·͏ • େਓΛ࣮֬ʹશһݚम༰ΛऴΘΒͤΔͨΊʹ؆୯ͳ༰ʹͤ͟ΔΛಘͳ͍ • ࣾͷݚमͷతඇΤϯδχΞͷਓ͕ͨͪ͜Ε͔ΒΤϯδχΞͱࣄΛ͢Δʹ͋
ͨͬͯࣄʹࢧো͕ग़ͳ͍Α͏ʹ͢Δ͜ͱ͕త • ϐΫγϒࣾͰඇΤϯδχΞͰGitɾHTMLɾCSS͏͜ͱ͕͋Δ • ٕज़తͳ༻ޠͳͲͰ໘৯Β͏͜ͱ͕ͳ͍Α͏ʹ͍ͨ͠ • ͜Ε͔ΒҰॹʹࣄΛ͢ΔਓୡͷͨΊ؆୯ͳ༰͔͠Βͳ͚ΕෆརӹΛ͜ ͏ΉΔͷࣗͨͪ
ͩ͜Θͬͨͱ͜Ζ • ࣮ࡍʹखݩͰಈ͍ͯɼ࣮ࡍͷWebΞϓϦΛ࿈ͤ͞Δ͜ͱ • ࣮ࡍͷWebΞϓϦͱ͋·Γʹ͔͚Ε͍ͯΔͱΔؾ͕ແ͘ͳΔ • ڥߏஙΛ࠷খݶʹͯ͠ϓϩάϥϛϯά͚ͩʹۤ͠ΉΑ͏ʹ • ΄ͱΜͲͷਓڥߏஙͰͭ·͍ͣͯϓϩάϥϛϯά͕ݏ͍ʹͳΔ •
XSSɾSQLΠϯδΣΫγϣϯͳͲηΩϡϦςΟΛଥڠͤͣΓࠐΉ • ࣄΛ͢Δ্Ͱग़ͯ͘ΔͷͰ͍ͬͯͯཉ͍͠ • ࣮ࡍʹϢʔβʔ͕ߘ͢Δը૾ߘܝࣔ൘ͳΒ໘͢Δ • جຊతͳ༰ΛͩΒͩΒڭ͑ͳ͍ • ࠷ॳʹڭ͑ͨ͜ͱجຊతʹը૾ߘܝࣔ൘Λ࡞Δ࣌ʹશ෦ग़ͯ͘ΔΑ͏ʹ
͖͋ΒΊͨͱ͜Ζ • WindowsͰͷڥߏங • ॳ৺ऀ͕ҰਓͰઈରͰ͖ͳ͍͠ɼϓϩάϥϛϯάͷڥಛघͩͱࢥΘΕͨ͘ͳ͍ • UNIXίϚϯυΛڭ͍͑ͨ • ϞϯελʔϚγϯ •
GitΛͬͨ։ൃաఔ • ։ൃͨ͜͠ͱ͕ͳ͍ਓʹ࣮ײ͕ͳ͍ • ͨͩͰ͍͑͞͠ϓϩάϥϛϯάաఔͷதʹΓࠐΊΔࣗ৴͕ͳ͔ͬͨ • RubyͷγϯϘϧͳͲࡉ͔͍આ໌ • ಈ͘ͱ͍͏ײಈΛ༩͑ΒΕΕΑ͠ͱͨ͠
͖͋ΒΊͨͱ͜Ζ • AmazonͷϨϏϡʔ • ߥΕΔ͜ͱఆࡁΈ • ͦΜͳ͜ͱΑΓ͔Γ͍͢ͷΛఏڙ͍ͨ͠ • ചΓ্͛ •
ͨ͘͞ΜചΓ͍ͨͳΒWindows͚ʹΠϯετʔϧաఔͷεΫγϣΛష Γ·ͬͯ͘దͳ༰Λॻ͘ํ͕͍͍ • ͜Ε͔ΒҰॹʹࣄΛ͢Δਓʹ͚ͯ࡞ͬͨ༰ͷॻ੶ԽͳͷͰͦΜͳ͘ ͩΒͳ͍༰ʹͨ͘͠ͳ͍ • ֶͼ͍ͨਓ͕ຊʹֶͼ͍ͨ༰Λॻ͖͍ͨ
࣭λΠϜ ʢπΠʔτېࢭ͋ΔΑʂʣ