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
810
JavaScriptアルゴリズム本を 技術書典7で頒布しました
pco2699
September 30, 2019
Tweet
Share
More Decks by pco2699
See All by pco2699
enebular x Hugging Faceで 自然言語処理の全能の神になる
pco2699
0
330
enebular x AutoML Visionで 爆速で画像判定アプリをつくる
pco2699
0
410
enebularで 爆速で機械学習APIをつくる
pco2699
0
170
tsconfig.jsonを完全に理解する
pco2699
1
1.8k
MIDI × MQTT × Twitterで ハッシュタグ自動作曲シンセを作ろう
pco2699
1
1.2k
enebular × MIDI × MQTT ハンズオンの反省をする
pco2699
1
550
MIDIキーボードとenebularをつなげてみよう
pco2699
0
550
Firebase Cloud Messagingで 通知の配信遅延とたたかってみた
pco2699
4
11k
Other Decks in Programming
See All in Programming
Formの複雑さに立ち向かう
bmthd
1
810
Introduction to kotlinx.rpc
arawn
0
670
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
320
Immutable ActiveRecord
megane42
0
140
ISUCON14公式反省会LT: 社内ISUCONの話
astj
PRO
0
190
DevinとCursorから学ぶAIエージェントメモリーの設計とMoatの考え方
itarutomy
1
670
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
120
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
520
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
110
Unity Android XR入門
sakutama_11
0
150
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
270
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
490
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.4k
The Pragmatic Product Professional
lauravandoore
32
6.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
410
Producing Creativity
orderedlist
PRO
343
39k
Making Projects Easy
brettharned
116
6k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Gamification - CAS2011
davidbonilla
80
5.1k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
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. 「動的計画法とか今後やりますか?」 =>期待しててください
技術書典に参加した感想 • 自分が書いた本をユーザが目の前で読んで買うか判断する ダイナミックで面白い • 本が売れると嬉しいけど、売れないと苦笑いが止まらない • 売れなくて赤字でも、悔しくて次回も出たい...! ってなる
見本誌もってきました よければ見てみてください