Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
当たり前だと思うなよ!!/fjordbootcamp-LT20200822
Search
yokki12
August 20, 2020
Programming
0
780
当たり前だと思うなよ!!/fjordbootcamp-LT20200822
FjordBootCamp LT 2020.8.22
yokki12
August 20, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
Package Management Learnings from Homebrew
mikemcquaid
0
230
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
140
AIと一緒にレガシーに向き合ってみた
nyafunta9858
0
250
Data-Centric Kaggle
isax1015
2
780
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
380
AtCoder Conference 2025
shindannin
0
1.1k
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
AI & Enginnering
codelynx
0
120
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
720
Grafana:建立系統全知視角的捷徑
blueswen
0
330
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
5
760
並行開発のためのコードレビュー
miyukiw
0
290
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
How to Ace a Technical Interview
jacobian
281
24k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
320
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
Designing Experiences People Love
moore
144
24k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Statistics for Hackers
jakevdp
799
230k
Fireside Chat
paigeccino
41
3.8k
Chasing Engaging Ingredients in Design
codingconduct
0
110
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
170
Transcript
ͨΓલͩ ͱࢥ͏ͳ ΑʂʂFjordBootCamp LTձ 2020.8.22 @yokki
ͳͥͳΒɺࠓճͷͷલఏ͔ͩΒ ࠷ॳʹݴ͍·͕͢ɺ ࣗݾհ ͍Ͱ͢
͚ɾ͍ɾ Εɾ͖ ݩূ݊ձࣾOL ͓ख͍ʹߦͬͨؔ࿈ձࣾͷݚڀॴͰ UNIXʹग़ձ͍ɺͲϋϚΓ͢Δ viେ͖!! ࣌ɺѪಡॻO'Reilly ॳΊͯͬͨϒϥβMosaic
http://www.ncsa.illinois.edu/news/press#mosaic ςΩετͱը૾Λಉ͡ ը໘Ͱදࣔͤ͞Δ͜ͱ ͕Ͱ͖Δੈքॳͷϒϥ β NSCA Mosaic
࣌ಡ Μͩຊ
UNIX࣌ɹ ࠷ޙͷهԱ ՈͰ͏༻్͕ݟ͔ͭΒͳ͍ɺɺ ▸ ύιίϯͰಈ͘UNIX͕͋ΔΒ͍͠ɻ ͦΕɺFreeBSDͱLinux ▸ WebΞϓϦͱ͍͑ɺPerlCGI ▸ ϗʔϜϖʔδʹಈ͖Λ͚ͭΔͳΒɺ
Java Applet
࣌ࣗͰ࡞ͬ ͨϗʔϜϖʔδ ͷҙॻ͖ JavaScript͕ॳΊ࣮ͯ͞Εͨ ▸Netscape 2.0Ҏ্ɻ ▸ࣸਅ͕ଟ͍ͷͰɺؾʹload͍ͯͩ͘͠͞ɻ
աڈ͔Βདྷͨ ਓؒͰ͢ ཁ͢Δʹ
UNIX࣌Λܦͯɺɺɺ ݱࡏɺձܭ࢜ 2લʹMacΛങ͍ɺษڧձʹߦ͖࢝ΊΔ ʙʙ͍ϒϥϯΫʂ ؾ͍ͮͨΒϓϩάϥϛϯάϒʔϜʂʁ ؒ100ճ ͚ɾ͍ɾ Εɾ͖
▸ MacUNIXʂʂ ▸ Linux͕ੈք੍͠ͱΔɺɺɺ ▸ VimʁʮmʯͬͯԿʁ ▸ JavaScriptͷdocument.writeͲ͜ʹߦͬͨ ͷʁ ▸
HTMLͷ<blink>λά͏͑ͳ͍ͷʁ ͍Ζ͍Ζ ڻ͖·͠ ͨ ͏Ұੜձ͑ͳ͍ ͱࢥ͍ͬͯͨٽ ͍ͯ͏͔CSSͬͯԿʁ
ϋϯζΦϯηϛφʔͱΒʹߦ͖·ͨ͠ ԿͰօʮΤϯδχΞʯʹͳΓ͍ͨͷʁ ͍Ζ͍Ζ ڻ͖·͠ ͨ ▸ Railsͷܝࣔ൘ΞϓϦʹσʔλϕʔεͬͯɺେ ͛͞ͳʂʂ͜ΜͳͷCSVͰे͡ΌͶʁ ▸ ͍ͯ͏͔ϓϩάϥϛϯά͖ͰͬͯΔਓ
Ͳ͜ʹ͍Δͷʁ ▸ GEEKͳਓ͏ੜଉͯ͠ͳ͍ͷʁ
ͱ͍͏Θ͚Ͱ FjordBootCamp ʹͨͲΓண͖·ͨ͠ɺɺ ֶश༰ʹʮUNIXʯʮviʯͬͯॻ͍ͯ͋Δʂ
ਓੜͰΓଛͶͨ େ͖ͳ͜ͱΛɺ Ͱࠓ͍ͬͯ·͢ʂʂ FjordBootCamp
͜ΜͳਓؒΛड͚ೖΕͯͩ͘͞Δ ʹɺײँͷؾ࣋ͪͰ͍ͬ ͺ͍Ͱ͢ɺɺɺ ଵଦɾؾɾၗຫʹࣗ৴͕͋Γ·͢ʂ FjordBootCamp
͏͜͜ͰऴΘΓͰ͍͍ͷͰɺɺɺ ͦͯ͠ ࠓճͷ ຊ
ൃ RESTʹؔ͢ΔهࣄΛಡΜͰ͍ͨͱ͖ɺ ͜Μͳ෦ʹ͕ࢭ·Γ·ͨ͠ ͪͳΈʹ͜ͷ3&45ͱ͍͏ߟ͑ํ3PZ'JFMEJOHͱ͍͏ํ͕ʹൃදͨ͠จͰॳΊͯ ఏএ͞Εͨͷͩͦ͏Ͱ͢ɻจʹ3&45Λ࣮ݱ͢ΔͨΊʹҎԼͷ੍Λຬͨ͢ඞཁ ͕͋Δͱॻ͔Ε͍ͯ·͢ɻ ʙதུʙ ݱঢ়ͷΣϒγεςϜͰͨΓલͷΑ͏ͳ͜ͱ·Ͱॻ͔Ε͓ͯΓɺ ݱঢ়ͷΣϒγεςϜͰͨΓલͷΑ͏ͳ ͜ͱ·Ͱॻ͔Ε͓ͯΓɺ
ΞϥαʔΤϯδχΞ͞ΜͱΒͷϒϩά
ม ͜ͷ͓ͬ͞Μɺࠓ͞ΒԿ ͨΓલͷ͜ͱॻ͍ͯΜͷʁ ʢέΔʙʣ ݱঢ়ͷΣϒγεςϜͰͨΓલͷΑ͏ͳ ͜ͱ·Ͱॻ͔Ε͓ͯΓɺ
ϒνΕ·ͨ͠ അࣛʔΜʂʂ
͓લٕज़ऀͷ͘͠Εͷͤ͘ʹɺ ԿͰ࠷ॳ͔Βଘࡏͨ͠ͱͰࢥͬ ͍ͯΔͷ͔ʁ ٕज़ΛੜΈग़ͨ͠ਓͷϦεϖΫτ ͳ͍ͷ͔ʁ
അࣛʔΜʂʂ
શʹ
্هݫີ͔ͭݹ͍ લͷ ఆٛͰ͋Γɺ ͞Βʹ͜Μͳ͜ͱ ม ̎̌લʁ;ͬΔʙʂ ʢϓϓοʣ
͜ΜͳͷࠓࢀߟʹͳΒͶʔΑʂ
·ͨϒνΕ·ͨ͠ അࣛʔΜʂʂ
͓લٕज़ऀͷ͘͠Εͷͤ͘ʹɺ ̎̌Ͱ͜͜·Ͱੈքதʹ͕ͬͨ ٕज़Λ͍͢͝ͱࢥΘͳ͍ͷ͔ʁ ͓લͦΜͳٕज़ੜΈग़ͤΔͷ͔ʁ
അࣛΜ͕ʂʂ
Γ
ͨΓલ͡Ό ͳ͍ΜͩΑʂʂ
ͨΓલ͡Όͳ ͔ͬͨࠒͷ͜ͱ Λɺհ͠·͢ ͪͳΈʹRESTͷͰͳ͍Ͱ͢
1992ɺੈքͷWEBαΠτͷ10ݸɻ ຊ̍ݸʂ http://www.ibarakiken.gr.jp/www/first/index.html
Πϯλʔωοτͷྺ࢙ ੈքॳͷWebαΠτੜ 1984 1991 1992 ଜҪ७ࢯ͕ݸਓతʹܚጯେֶͱ ౦ژۀେֶΛଓ 1996 JPυϝΠϯ໊1ສ݅ಥഁ https://ja.wikipedia.org/wiki/JUNET
https://www.nic.ad.jp/timeline/ ຊॳͷWebαΠτੜ 2000 RESTจൃද ຊͷΠϯλʔωοτͷ Webͳͥޭͨ͠ͷ͔ CERN KEK
࣌ɺ ຊͷΠϯλʔωοτݚڀ ։ൃͷ࠷ઌʹ͍ͨํʑʹ ΑΔࣥච 1994ɺWindows95ൃചલ ຊͰWWW͕Ұൠʹ ීٴ͢Δલ
WIDE Project ΠϯλʔωοτࢀՃͷखҾ͖ ΠϯλʔωοτΞϓϦέʔγϣϯ ɹ1. ిࢠϝʔϧ ɹ2. ωοτχϡʔε ɹ3. Anonymous
FTPͱArchie ɹ4. ใϒϥβ ɹɹ4.1 WAIS ɹɹ4.2 Gopher ɹɹ4.3 ·ͱΊ ࣍ WWW͕ͳ͍ʂʂʂ
গ͚ͩ͠հ͞Ε͍ͯ·ͨ͠ ͠, ͋ͳ͕ͨWWWʹΞΫηε͢ΔखஈΛ͏ ͜ͱ͕Ͱ͖ͨΒ ʢMosaic, tkWWW, emacs্ͷw3-modeͳͲʣ, ҎԼͷURLͰද͞ΕΔϦιʔεʹΞΫηε͢Δ͜ ͱΛקΊΔ. http://www.ntt.jp/WHATSNEW
ҎԼུ ࣌ͷWebϒϥβʂʁ
ͭ·Γ͜ͷ࣌ɺΠϯλʔωοτʹ ࠇ͍ը໘ɺςΩετϕʔε ͰΞΫηε͢Δͷ͕ී௨ʂʂ Πϯλʔωοτ্ͷใΛऔͬͯ͘Δʹɺ͋ͪͪ͜ͷFTP αʔόʔʹஔ͍ͯ͘Ε͍ͯΔϑΝΠϧΛݟ͚ͭͯɺϑΝΠϧ సૹ͢Δ͔͠ͳ͔ͬͨɺɺ ϦϯΫΛͨͲͬͯͲ͜Ͱ͍͚Δ WWW͕ੈքதʹ·Δͷ͜ͷޙʂʂ World Wide
Web
% ftp ଓ͍ͨ͠αʔό Name: ftp Password: ࣗͷϝʔϧΞυϨε ʙFTPαʔόʹଓʙ ftp> ftp>
dir ʙϑΝΠϧҰཡͷදࣔʙ ftp> get औಘ͍ͨ͠ϑΝΠϧ໊ Transfer complete. ͪͳΈʹFTPͷΓ͔ͨ ͜Ε͕࣌ͷΠϯλʔωοτͰͷใऔಘͷ;ͭ͏ͷΓ͔ͨ
͜ͷΑ͏ͳঢ়گ͔Βɺ WWWͳͥ͜Μͳʹޭͨ͠ͷ͔ʁ ͱ͍͏2000ͷRoy FieldingͷRESTจ ·ͰɺΘ͔ͣɺɺɺ
΄Μͷ20લɺ ࠇ͍ը໘ͷॅਓ͚ͨͪͩͷͷͩͬͨ Πϯλʔωοτ͕ɺࠓੈքதͷ ɾ͋ΒΏΔϋʔυΣΞ ɾ͋ΒΏΔOS ɾ͋ΒΏΔݴޠ Ͱಉ༷ʹ͑ΔΑ͏ʹͳͬͨɺɺ ຊޠͱ͔
ݱࡏͷศརͳΠϯλʔωοτϥΠϑ͕͋Δͷɺઌਓͨͪͷ ܙͱͱۤ࿑ͷ͓͔͛Ͱ͢ɻ ࠓͷঢ়گ͕ɺ ͨΓલ͡Ό ͳ͍ΜͩΑʂʂ
͝੩ௌ͋Γ ͕ͱ͏͟͝ ͍·ͨ͠
͓·͚
6OJYѪ͕ߴͯ͡ϙΤϜॻ͖·ͨ͠ ˎ༮গͷࠒͷهԱˎ ·ΘΓͷ͓ʹ͍͞Μ͕ͨͪΏʹͬ͘͢ͱ͍͏͖͔͍Λ͔͍ͭͬͯ ·ͨ͠ Μ͖ΐ͏ͳͷ͔͠͝ͱͳͷ͔͋ͦͼͳͷ͔Θ͔Γ·ͤΜ͕ͱͯ ͨͷͦ͠͏Ͱͨ͠ ͔͋͏ΜͱΛͭͬͯ͘ΒͬͨͷͰ͓ʹ͍͞Μͨͪͷ·ͶΛͯ͠ Ζ͙ΒΉͱ͍͏ͷΛ͔͍ͯΈ·ͨ͠ ͓Β͍Γʔͱ͍͏Ͳ͏Ϳͭͷ͕͔͍͑ͯ͋Δ΄Μ͕͖͢Ͱͨ͠ Ώʹͬ͘͢͢͜͠ͷ͡Λ͏ͪ͜Μ͚ͩͩͰͨ͘͞Μ͠͝ͱΛ
ͯ͘͠ΕΔɺͱͯ͑Β͍͖͔͍Ͱ͢