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
1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JavaScriptアルゴリズム本を 技術書典7で頒布しました
pco2699
September 30, 2019
More Decks by pco2699
See All by pco2699
enebular x Hugging Faceで 自然言語処理の全能の神になる
pco2699
0
410
enebular x AutoML Visionで 爆速で画像判定アプリをつくる
pco2699
0
460
enebularで 爆速で機械学習APIをつくる
pco2699
0
220
tsconfig.jsonを完全に理解する
pco2699
1
2.1k
MIDI × MQTT × Twitterで ハッシュタグ自動作曲シンセを作ろう
pco2699
1
1.4k
enebular × MIDI × MQTT ハンズオンの反省をする
pco2699
1
710
MIDIキーボードとenebularをつなげてみよう
pco2699
0
660
Firebase Cloud Messagingで 通知の配信遅延とたたかってみた
pco2699
4
12k
Other Decks in Programming
See All in Programming
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.6k
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
130
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
540
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
320
3Dシーンの圧縮
fadis
1
760
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
890
New "Type" system on PicoRuby
pocke
1
840
dRuby over BLE
makicamel
2
330
エージェンティックRAGにAWSで入門しよう!
har1101
8
1.4k
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
150
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
2
660
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
240
Featured
See All Featured
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
280
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
140
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.3k
Done Done
chrislema
186
16k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Designing for humans not robots
tammielis
254
26k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
71
40k
Paper Plane
katiecoart
PRO
1
51k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
250
30 Presentation Tips
portentint
PRO
1
320
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. 「動的計画法とか今後やりますか?」 =>期待しててください
技術書典に参加した感想 • 自分が書いた本をユーザが目の前で読んで買うか判断する ダイナミックで面白い • 本が売れると嬉しいけど、売れないと苦笑いが止まらない • 売れなくて赤字でも、悔しくて次回も出たい...! ってなる
見本誌もってきました よければ見てみてください