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
JavaScriptアルゴリズム本を 技術書典7で頒布しました
Search
pco2699
September 30, 2019
Programming
1
840
JavaScriptアルゴリズム本を 技術書典7で頒布しました
pco2699
September 30, 2019
Tweet
Share
More Decks by pco2699
See All by pco2699
enebular x Hugging Faceで 自然言語処理の全能の神になる
pco2699
0
350
enebular x AutoML Visionで 爆速で画像判定アプリをつくる
pco2699
0
420
enebularで 爆速で機械学習APIをつくる
pco2699
0
170
tsconfig.jsonを完全に理解する
pco2699
1
1.9k
MIDI × MQTT × Twitterで ハッシュタグ自動作曲シンセを作ろう
pco2699
1
1.3k
enebular × MIDI × MQTT ハンズオンの反省をする
pco2699
1
580
MIDIキーボードとenebularをつなげてみよう
pco2699
0
570
Firebase Cloud Messagingで 通知の配信遅延とたたかってみた
pco2699
4
11k
Other Decks in Programming
See All in Programming
Носок на сок
bo0om
0
1.1k
State of Namespace
tagomoris
5
2.4k
The Missing Link in Angular’s Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
140
Lambda(Python)の リファクタリングが好きなんです
komakichi
4
240
Browser and UI #2 HTML/ARIA
ken7253
2
170
エンジニア向けCursor勉強会 @ SmartHR
yukisnow1823
3
12k
20250429 - CNTUG Meetup #67 / DevOps Taiwan Meetup #69 - Deep Dive into Tetragon: Building Runtime Security and Observability with eBPF
tico88612
0
170
プロダクト横断分析に役立つ、事前集計しないサマリーテーブル設計
hanon52_
3
540
インプロセスQAにおいて大事にしていること / In-process QA Meetup
medley
0
140
AI時代の開発者評価について
ayumuu
0
230
Beyond_the_Prompt__Evaluating__Testing__and_Securing_LLM_Applications.pdf
meteatamel
0
110
読書シェア会 vol.4 『ダイナミックリチーミング 第2版』
kotaro666
0
110
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
462
33k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
GitHub's CSS Performance
jonrohan
1031
460k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
BBQ
matthewcrist
88
9.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Into the Great Unknown - MozCon
thekraken
38
1.7k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Typedesign – Prime Four
hannesfritz
41
2.6k
GraphQLとの向き合い方2022年版
quramy
46
14k
A better future with KSS
kneath
239
17k
Transcript
JavaScriptアルゴリズム本を 技術書典7で頒布しました We Are JavaScripters! vol.36 at SmartHR @pco2699
自己紹介 • 高山 和幸 • @pco2699 • アルゴリズムとTypeScriptがすき
今日 お話しすること/しないこと • 今日 お話しすること ◦ 技術書典7で出した「JavaScriptアルゴリズム本」の内容の話 ◦ 感想・結果などの振り返り •
今日 お話しないこと ◦ JavaScript/TypeScriptなどの技術的に突っ込んだ話
技術書典7に参加しました! • 技術書典とは a. 技術同人誌の即売会! b. たくさんサークルが一斉に本を売ります c. 買いに来る人もたくさん
Nuxt.jsとFirebaseでつくるアルゴリズムミニアプリ • アルゴリズムを知りたい Webエンジニアのための入門書 • アルゴリズムをWebアプリを 作りながら学べる! • 冊子+DLカード ¥1,000
本書を書くきっかけ
本書を書くきっかけ • 本屋に並んでいるアルゴリズムの本 a. 言語がC++, C(たまにPython) b. 作るものが何に役立つのかわからない c. 説明がわかりづらい
本書を書くきっかけ • 本屋に並んでいるアルゴリズムの本 a. 言語がC++, C(たまにPython) b. 作るものが何に役立つのかわからない c. 説明がわかりづらい
これを解決した本がほしかった
a. 言語がC++, C • C++のイメージ: なんだかとっつきづらそう... (注) C++をディスる意図は全くありません。 C++は偉大な言語です。
b. 作るものが何に役立つのかわからない • 実際のアルゴリズムの問題 i番目の配列がi日目の株の値段を表す配列があります。 最大で1回のトランザクション(例: 1個の株を買い、1個の株を売る)が 許されている場合、最大の利益を探すアルゴリズムを設計しなさい。 株を買う前に売ることが出来ない。
b. 作るものが何に役立つのかわからない • 実際のアルゴリズムの問題 i番目の配列がi日目の株の値段を表す配列があります。 最大で1回のトランザクション(例: 1個の株を買い、1個の株を売る)が 許されている場合、最大の利益を探すアルゴリズムを設計しなさい。 株を買う前に売ることが出来ない。 こんなの実際に書くことある!!?
c. 説明がわかりづらい • アルゴリズム独特の用語がたくさんある ビッグオー表記 幅/深さ 優先探索 二分探索 時間計算量 空間計算量
動的計画法 ダイクストラ法 空間計算量
c. 説明がわかりづらい • アルゴリズム独特の用語がたくさんある ビッグオー表記 幅/深さ 優先探索 二分探索 時間計算量 空間計算量
動的計画法 ダイクストラ法 空間計算量 概念を理解すれば実はそんなに難しくない
c. 説明がわかりづらい • 最近は「アルゴリズムをわかりやすく」という コンセプトの本が出てきている
本書はどう解決したか
本書はどう解決したか • 言語がC++, C(たまにPython) • 作るものが何に役立つのかわからない • 説明がわかりづらい
言語はJavaScript Webアプリを作る なにかに例えて説明
言語はJavaScript • (おそらく)初学者が学ぶことが一番多い言語 • ES2015以降であれば、キツくない。 • Jestを使えばテストも簡単
Webアプリを作る • 次を組み合わせれば、Webページを作って公開できる時代! a. フロントエンドフレームワーク(React/Vue/Nuxt) b. 静的ファイルホスティング(Firebase/Netlify)
なにかに例えて説明 • 難しい概念は なにかに例えて説明するとわかりやすい • リスト探索は「数字当てゲーム」に例えて説明
絶対に売れると確信した
技術書典当日...
売上部数 48/100部
割と爆死
振り返り・要因分析 • 技術書典7のユーザ a. 商業誌にないような最新の技術を求めてる人が多い b. 初学者はあまり来ない • 内容・タイトル a.
タイトルから「Nuxt.jsとFirebase」の深堀り本だと思われた b. 今回はリスト探索のみのため、内容が簡単すぎた
振り返り・要因分析 • 実際に聞かれたこと a. 「これって競プロで使えますか?」 => 使えません b. 「Firebaseどのくらい使ってますか?」
=> Hostingのみです。すいません。 c. 「動的計画法とか今後やりますか?」 =>期待しててください
技術書典に参加した感想 • 自分が書いた本をユーザが目の前で読んで買うか判断する ダイナミックで面白い • 本が売れると嬉しいけど、売れないと苦笑いが止まらない • 売れなくて赤字でも、悔しくて次回も出たい...! ってなる
見本誌もってきました よければ見てみてください