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
突如見知らぬ言語に出会ってしまった俺達は
Search
moznion
July 03, 2016
Technology
8.9k
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
突如見知らぬ言語に出会ってしまった俺達は
YAPC Hachioji 2016の資料です
moznion
July 03, 2016
More Decks by moznion
See All by moznion
ブラウザアプリの継続的パフォーマンスモニタリング (序) / Continuous Browser Application Performance Monitoring; Act 1
moznion
0
120
reFACToring
moznion
1
1.3k
cccccc
moznion
1
2.6k
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
16
16k
「データ無い! 腹立つ! 推論する!」から 「データ無い! 腹立つ! データを作る」へ チームでデータを作り、育てられるようにするまで / How can we create, use, and maintain data ourselves?
moznion
11
7.6k
避けられないI/O待ちに対処する: Rails アプリにおけるSSEとasync gemの活用 / Tackling Inevitable I/O Latency in Rails Apps with SSE and the async gem
moznion
4
9.3k
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
470
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
7
5.2k
Chrome Extension Techniques from Hell
moznion
1
330
Other Decks in Technology
See All in Technology
Adaptive Warehouse を今すぐ導入すべき理由と迷ったときの判断基準
__allllllllez__
0
200
深夜のクラウド懺悔室 1:29:300 or 1:0:0
kazzpapa3
1
240
GoCon2026 - Open Source, Open World
sanposhiho
4
3.4k
株式会社シーエーシー エンジニア向け会社紹介資料
cac
0
57k
GoにおけるFFIのこれまでとこれから
goccy
5
2.5k
AI活用の現在地、 ちゃんと見えてますか?/XPfest-2026
visional_engineering_and_design
0
200
Multica × 長期記憶:40個のミニプロジェクト管理
eiei114
1
250
Omarchy Quattro の日本語設定周り
simosako
2
150
AI時代、データエンジニアが一番おもろい
genshun9
0
180
AIで仕事のやり方を変える
matsu7874
3
1.1k
『止めない』を設計する — 制約の中で、事業の根幹を支える判断
hiroyaterui
0
270
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
5
25k
Featured
See All Featured
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.8k
What's in a price? How to price your products and services
michaelherold
247
13k
Heart Work Chapter 1 - Part 1
lfama
PRO
9
36k
Believing is Seeing
oripsolob
1
210
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
240
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
320
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Building the Perfect Custom Keyboard
takai
2
870
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
230
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
600
Measuring & Analyzing Core Web Vitals
bluesmoon
9
990
Transcript
ಥݟΒ͵ݴޠʹ ग़ձͬͯ͠·ͬͨԶୡ @moznion
͜Μʹͪ
@moznion
͜͜Ͱ࣭
ࠓೖ͔ͬͯΒ৽͍͠ݴޠ ͬͯΔͧʙʙʙʙͬͯਓ
ࠓೖ͔ͬͯΒ(झຯͰ) ৽͍͠ݴޠ ͬͯΔͧʙʙʙʙͬͯਓ
ԹײΘ͔Γ·ͨ͠
ಥݟΒ͵ݴޠʹ ग़ձͬͯ͠·ͬͨԶୡ @moznion
@moznion
ࠓճ͢͜ͱ ·ͨͦͷλʔήοτ
ϓϩάϥϛϯά ݴޠͷֶͼํʹ͍ͭͯ ݸਓతʹࢥ͏͜ͱ ·͍ͨͬͯΔ͜ͱͷհ
ϓϩάϥϛϯά ॳֶऀͷਓ
͋Δ͍ποίϛΛ ೖΕ͍ͨਓ
dan the question OK!
ࠓճ͞ͳ͍͜ͱ
໊: ҟৗͳྗ
ຊ
ͷલʹ……
ͷલʹ…… ࠓ͙͢ΫϦοΫ
ͳͥ৽͍͠ݴޠΛ Δͷ͔ʁ
None
ຖগͳ͘ͱҰͭͷݴޠΛֶश͢Δ: ݴޠ͕ҟͳΔͱɼಉ͡ Ͱҧͬͨղܾํ๏͕࠾༻͞Ε·͢ɽͭ·Γɼ͍͔ͭ͘ͷ ҟͳͬͨΞϓϩʔνΛֶश͢Δ͜ͱʹΑΓɼ෯͍ࢥߟ͕Ͱ͖ ΔΑ͏ʹͳΔΘ͚Ͱ͢ɽ͜ΕʹΑͬͯɼ͵͔ΔΈʹ·ͬͯ͠ ·͏ࣄଶΛආ͚Δ͜ͱ͕Ͱ͖ΔΑ͏ʹͳΓ·͢ɽ
ͳΔ΄Ͳ
Ͳ͍ͬ͜ཧ༝ͳͲແ͘ Δ߹/Β͞ΕΔ ߹͋Δ
৭ʑ͋Γ·͢ ৭ʑͬͯΈ·͠ΐ͏
ͱͳʹ͔……
ݟ·͢
Erlang: rabbitmq-server/src/rabbit_router.erl
Clojure: ring/ring-core/src/ring/middleware/resource.clj
Perl: Plack/lib/Plack/Request.pm
C: h2o/src/main.c
Ͳ͏Ͱ͔͢ (৭ʑͳײ͕͋Γ·͢)
ݟ֮͑ͷ͋Δͷ ͋·Γා͘ͳ͍
ڪා = ແ
Δͱ͍͏͜ͱ ڪාΛࠀ͢Δ͜ͱ
ڪාΛࠀͯ͠ࢀΓ ·͠ΐ͏
ڪාΛࠀ͍ͯ͘͠ͱ ͲΜͲΜݴޠΛͬͯ ͍͚Δ
ݟΒ͵ݴޠΛֶͿ࣌Ͳ͏͢ Δ͔
߹Λߟ͑·͠ΐ͏
ۚ͋Δ ࣌ؒ͋Δ ۚ͋Δ ࣌ؒͳ͍ ۚͳ͍ ࣌ؒ͋Δ ۚͳ͍ ࣌ؒͳ͍ ۚ ࣌ؒ
ۚ͋Δ ࣌ؒ͋Δ
ຊΛಡΉͷָ ࣗવͱମܥֶ͚ͮͯͿ ͜ͱ͕Ͱ͖Δ
ͨͩಡΉ͚ͩͰແӹ खΛಈ͔͢ͷ͕؊ਛ
खΛಈ͔͞ͳ͍ܥͷ ຊ୯ͳΔಡΈͳͷ Ͱ͋Μ·͑ͳ͍
ͳΜ͔ίϐϖͯ͠ ಈ͔ͤΔిࢠ൛ศར
ͨͩ͠ͳΔ͘৽͠ ͍ຊΛ͍·͠ΐ͏
ۚͳ͍ ࣌ؒ͋Δ
࠷ۙྑ͍࣌ʂ
ͪΌΜͱͨ͠ݴޠͩͱ νϡʔτϦΞϧ͕ॆ࣮ ͯ͠Δ
e.g. A Tour of Go https://tour.golang.org/ The Rust Programming Language
https://doc.rust-lang.org/book/ README.html
Πϯλʔωοτ্ʹ αʔυύʔςΟͳ ใ͕๛ʹ͋Δ
͜͜Ͱ ikura ͞Μͷ ϗʔϜϖʔδͷਤ
None
୯७ʹίϐϖͯ͠ࡁ· ͤΔͷΊ·͠ΐ͏
ෳͷใΛরΒ͠ ߹Θͤ·͠ΐ͏
ՄೳͳݶΓ৽͍͠ ใιʔεʹ ͨΓ·͠ΐ͏
܁Γฦ͠ʹͳΓ·͕͢ खΛಈ͔͠·͠ΐ͏
ಈըίϯςϯπͳͲ ྑͦ͞͏
e.g. coursera https://www.coursera.org/ υοτΠϯετʔϧ http://dotinstall.com/
) > ΞυόΠε͕1ݸ͋ͬͯɼڭࡐ͕ಈըͳ ͷͰɼ෮श͠ʹ͍͘ɽ͜Ε෮शͰ͖ͳ͍͠ ͲΜͲΜΕ͍ͯ͘ͷͰͬͯؾ͍ͯɼ 3ि͘Β͍͔Βɼಈըݟͳ͕ΒϝϞͱͬ ͓ͯ͘Α͏ʹͨ͠Βཱͭײ͡ʹͳͬͨɽ hitode909ͷه/Courseraͷػցֶशͷίʔεͨ͠ http://blog.sushi.money/entry/2016/04/09/101854
ۚ͋Δ ࣌ؒͳ͍
None
ۚͰͲ͏ʹͳΒΜ ͖͋ΒΊΖʂʂʂʂʂ
ֶͿࣄ͕తͰͳ͍ ߹
ਓޏͬͨ΄͏͕ྑ͍ Ͱ͢Α
ͱ͍͏Θ͚Ͱ ࣗવͱۚͳ͍ϧʔτ Ҡߦ͠·͢
ۚͳ͍ ࣌ؒͳ͍
ͳΓ;Γߏ͍ͬͯΒΕͳ͍ ਓʹ㘤͖·͠ΐ͏
ਓૣ͍
͜͏͍͏࣌ʹ ίϛϡχςΟʹ ଐͯ͠Δͱྑ͍Ͱ͢ΑͶ
ೖͬͯͳ͍߹ ίϛϡχςΟʹ ೖΓ·͠ΐ͏
͍ͣΕͷ߹Ͱ ݴ͑Δ͜ͱ
ͦͷݴޠಛ༗ͷػೳ ੈք؍Λ֮͑Δ͜ͱʹ ྗ͢Δ
ྫ͑ go ͱ͔ clojure ͳΒ ฒྻϓϩάϥϜͷٕ๏ Scala ͱ͔ Haskell ͱ͔ͳΒڧྗͳܕγε
ςϜΛجௐͱͨ͠വϓϩάϥϜͷٕ๏ Java C# ͳΒΦϒδΣΫτࢦͷٕ๏ ͳͲͳͲ
৭ʑͳੈք؍Λͬ ͓ͯ͘ͱࣅͨػೳʹ ग़ձͬͨ࣌ʹͬͨ ͔ͿΕΔ
ڪා͠ͳ͘ͳΔ
REPLͰษڧ͢Δͷ ΛΊΔ
ϓϩμΫγϣϯͰ REPLΘΜ (ͪΖΜ։ൃதͷಈ࡞֬ೝ ͱ͔ͰΊͬͪΌ͏͚Ͳ)
ͳΜ͔ແཧ
γϯλοΫεϋΠϥΠτ ͕ແ͍
࠶ݱͤ͞ϏϦςΟ ͷࠩ
ίʔυͷશΛ ͔ͭΈʹ͍͘ งғؾ͕Θ͔Βͳ͍
IDE͍·͠ΐ͏
·͋·ౖ͋Βͳ͍Ͱ
ੲVimҰຊͰྑ͍ͱ ࢥͬͯͨ ͓ΕΕΔΜͩͱ ࢥͬͯͨ
ੲ˓̋ (͜͜ʹ͖ͳΤ σΟλͷ໊લΛೖΕ·͠ΐ ͏)ҰຊͰྑ͍ͱࢥͬͯͨ ͓ΕΕΔΜͩͱࢥͬͯͨ
ےਸഈ (Կಉ͡ίʔυΛ ॻ͘ͱ֮͑Δͧ) ͷ࣌
Կॻ͘ඞཁ͋Δ ίʔυΛॻ͘ඞཁ ແ͍ʂʂʂʂʂ IDEʹॻ͔ͤΖʂʂ
IDE͕ਖ਼͍͠ίʔυ ʹಋ͍ͯ͘ΕΔͷ͕ ॏཁ
ؒҧ͑ͨίʔυΛԿว Կวॻ͘ͷѱ ਖ਼͍͠ίʔυΛॻ͍ͨ ΄͏͕ྗʹͳΔ
ຊ࣭Λֶͼ͍͢
ͱ͍͑ ·͋VimͰྑ͍ͱ ࢥ͍·͢
IDEͳ͍ݴޠͰେৎ (Padre͞Μ͓ݩؾͰ͔͢)
ਖ਼͍͠ίʔυΛॻ͘ࣄ Λॿ͚ͯ͘ΔπʔϧΛ ͏
੩తղੳ (Perl::Lint͞Μ͓ݩؾͰ͔͢)
ਖ਼͍͠ίʔυελΠ ϧʹಋ͍ͯ͘ΕΔ gofmt, check style, code sniffer and etc
όάͷগͳ͍ίʔυ ʹಋ͍ͯ͘ΕΔ golint, findbugs and etc
͜ΕΒ྆ऀ݉Ͷ͍ͯΔ ߹͋Δ perl-critic, rubocop, js-[hl]int and etc
͍ͬͯ͘͏ͪʹਖ਼͍͠ (ਖ਼ ͦ͏) ͳίʔυ͕Θ͔ͬͯ͘ Δ, ॻ͚ΔΑ͏ʹͳͬͯ͘Δ
ΤσΟλʹΈࠐΜͰɼϦ ΞϧλΠϜతʹૉૣ͍ϑΟʔ υόοΫΛಘΔͱͳ͓Α͍
ਖ਼͍͠ίʔυΛॻ͘ࣄΛ ॿ͚ͯ͘ΔπʔϧΛ࡞Δ ͘͠ॲཧܥΛ࡞Δ
e.g. Perl࡞Λܾҙ ʮਂ͘ཧղ͍ͨ͠ͳΒ࡞Δʯͱ͍͏ Ϟο τʔͷͱɺֶͿͳΒ࡞ֶͬͯͼ͍ͨʂ Ͳ͏ͤͳΒɺεΫϦϓτݴޠք࠷ͷPerlΛ ࡞Γ͍ͨ Perlͱग़ձ͍ɺPerlΛ࡞Δ/@goccy http://www.slideshare.net/goccy/perlperl
ͦ͏͍͏͜ͱΛΔͱཧղ ͕ਂ·Δͱ͍͏߹͕ ͋Γ·͢ (Perl::Lint ͞Μ͓ݩؾͰ͔͢)
৽͍͠ݴޠΛΔͱ͖ ʹඞͣॻ͘ͷΛ ܾΊΔ
ಉ͡ͷΛҧ͏ݴޠͰͨ͘ ͞Μॻ͍ͯΈΔ
ಉ͡ͷΛॻ͘͜ͱͰݴޠ ͷࠩҟ͕ݟ͘͢ͳΔ ಘखෆಘखΛ͔ͭΊΔΑ͏ ʹͳΔ
ΰʔϧ໌֬ʹఆ·Δ ޭମݧʹܨ͕Δ
yes ίϚϯυΫϩʔϯͱ͔ ख࢝Ίʹ؆୯ͰΓ͢ ͍
ͭ·Βͳ͍ʁ
Web Application Framework ͱ͔ॻ͘ͱ໘ന͍
template engine ໘ന͍Ͱ ͢Ͷ
ίϛϡχέʔγϣϯ ͠·͠ΐ͏
̍ਓͰΔͱ٧·Δ
͍
·ͱΊ
ͱʹ͔͘ॻ͖·͠ΐ͏
Q?