Kindle Unlimited で何が起こるのか?
2016年8月、ついに日本でもKindle Unlimitedが開始されました。Kindle Unlimited は月額980円でKindleストアで販売されている本の一部が読み放題になるプランです。このプランの登場により、本とそれを取りまく環境がどのように変化する可能性があるのでしょうか。
本の価値が変わり、webページと同じになる。
Kindle Unlimited が一般的に普及すると、本の価値そのものが変化する可能性があります。
本というのは、インターネット上にあるwebページと異なり、一般的に購入して読むものであるため、読者はあくまでその本に強い拘りや関心がある人に限られます。しかし、Kindle Unlimitedでは、購入というプロセスが無いため、そこまで強い興味がない人であっても、本の内容を目にする新たな可能性が生まれます。
極論を言ってしまうと、この新たな可能性は本がwebページと等価になると言えます。
その結果、どういうことが起こるのでしょか?
書籍もネットによってバズる可能性が高まる。それも異常なまでに。
インターネットでは、バズが発生すると、そのページのPVは劇的にアップします。例えば、このサイトのPVは記事が何も更新されていないときで、1日200〜500PV程度ですが、記事がバズると10万PVほどまで高まり、その差は500倍ほどになります。
本の場合、ネットでバズればもちろん売り上げがアップしますが、あくまで強い興味がなければ購入に至りません。それは、バズの元ネタを知るだけでなく、その本の内容そのものに興味がなければ、購入してもあまり得を感じられないためです。そのため、webページほどのインプレッションは生まれませんでした。
しかし、Kindle Unlimited が本格的に普及すると、本の内容そのものに強い興味がない人であっても、とりあえず、バズの元となった箇所だけを拾い読みできるようになります。
そのため、これまで購入に至らなかった層、つまりwebサイトで言うところのURLが流れてきたからたまたま記事を目にするようなライトな層からもインプレッションを得られるようになるというわけです。
本の販売戦略が変わる。
こうして、本の購入層(正確に言えば購入していない)が変化するということは、その販売戦略も変化する可能性があります。
Kindle Unlimited はページの閲覧数に応じて報酬が支払われる仕組みになっています。web業界にいる人であれば、ピンとくるかと思いますが、この報酬の仕組みはサイトの広告に似ています。
すなわち、あくまでPVを得られさえすれば、報酬を獲得できるようになるわけですから、実行すべき販売戦略は、一般的なwebマーケティングの手法にのっとり、ネットでバズをおこし十分な認知を作ってから、ネット広告でしっかりと刈り取りを行うことに他なりません。そして、PVを恒久的に獲得するために、広告を打ち続けることが大事になります。
まとめ。
昨年ごろから米国では電子書籍の販売が減少傾向にあるというニュースがあり、日本でKindle Unlimitedが開始されたとしても、それが一般層まで普及するには遠い道のりのように思えます。
そのため、上記で述べたように、本の価値や販売戦略の変化が一般的となり、十分な市場規模となるにはまだまだ時間がかかるでしょう。個人的には電子書籍の可能性や利便性は感じていますが、複数のプラットフォームが乱立している現状に購入意欲を削がれているのが現状です。
Kindle Unlimited もあくまでAmazon一社による取り組みであるため、市場規模は小ぶりと言わざろう得ません。しかし、これまでと異なる新たな本の可能性が生まれたことには違いありません。
コンテンツ制作者は、この可能性を十分に理解した上で、制作を行っていく必要があるでしょう。
rubocop-auto-correct パッケージが .rubocop.yml をサポートしました。
Rubocop を利用して自動的にコードを修正してくれる rubocop-auto-correct が @rfocosi さんの PR によって .rubocop.yml ファイルをサポートしました。
例えば、このような感じで最初は文字列リテラルはシングルクオートが優先されますが、
.rubocop.yml に EnforcedStyle: double_quotes をセットしてあげてファイルを保存すると、
.rubocop.yml の設定が有効になり、シングルクオートがダブルクオートに修正されます。
.rubocop.yml を設定していて修正され過ぎて辛かった人も、これで大丈夫かと思います。
Atom について詳しく学びたい方は好評発売中のAtom実践入門をご覧ください。
Atom実践入門──進化し続けるハッカブルなエディタ (WEB+DB PRESS plus)
- 作者: 大竹智也
- 出版社/メーカー: 技術評論社
- 発売日: 2016/07/14
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (4件) を見る
本を書きたい人に贈る、Atom実践入門を出版するまでの経緯。
7月14日に発売されたAtom実践入門ですが、お陰様で発売初日はAmazonの総合ランキングで133位まで到達することができました。これは、以前出版したEmacs実践入門の最高位を上まわる結果で、幸先の良い滑り出しとなりました。まずは、ここで御礼申し上げます。
今日は、たまに質問される「どうやったら書籍を出版できるんですか?」という質問に回答すべく、この書籍が出版されるまでの経緯を紹介したいと思います。なお、Emacs実践入門のときの出版の経緯も過去に書いています。
最初の企画は個人の電子出版。
この本を書きはじめたきっかけは、2014年の夏頃、Atomに触れてみたとき面白いと思ったので、どうせ調べるのであれば、本でも書こうかと思ったのがきっかけです。僕は以前から、どうせ何を学ぶのであれば、せっかくなら本を書けるくらいまで詳しくなることを目指しており、そのメソッドに従いました。
ただ、本を書けるようになるまでと言っても実際に紙の本を出版するまでは考えていませんでした。そこで、いまの時代は電子による個人出版が可能なので、せっかくなのでそれを試してみようと思いました。
本は既に書いたことがあるため、その経験を使って、まずはターゲットを決め、アウトラインを作成し、そして自分でAtomを触って勉強しながらとりあえず1章を書いてみました。
1章を書いたとき、誰かに感想を聞いてみたと思った僕は、どうせなら以前お世話になった技術評論社の担当編集さんから意見を貰ってみようと思ってコンタクトを取りました。
編集さんからの3つの提案。
ご相談の内容は、「現在Atomに興味があり、個人で電子出版をしてみようかと思っているのですが、ご感想や現在の電子書籍の市場についての意見をお聞かせいただけませんか?」という感じでした。
書き上げたゲラを事前にお渡しして、編集さんと再会して意見を聞いたところ「これは面白そうですね」という嬉しい意見を頂きました。そして、もし良ければ技術評論社で出版しませんか?というオファーもいただきました。
そのときの提案は次の3つです。
- 技術評論社からいきなり書籍を出す
- 技術評論社のWEB+DB PRESSで特集を書き、その後、技術評論社から書籍を出す
- 技術評論社のWEB+DB PRESSで特集を書き、その後、個人の電子出版で書籍を出す
編集さんのオススメはこの中の『2』と『3』で、いきなり書籍を出す前に、WEB+DB PRESSの特集を書くことで市場の評価を聞いてみるのはどうでしょうか?というものでした。
考えた結果『2』を選択したわけですが、その理由としては「WEB+DB PRESS plus シリーズが好きだから」であり、また「編集の池田さんと一緒に仕事をすることで、より質の高い本を読者にお届けできる」からでした。
かくして、4年ぶりに書籍執筆という戦いが幕を開け、壮絶な戦いの結果、企画から約2年の歳月を経てようやく世に出すことができたというわけです。
まとめ
今回、結果として持ち込みという形になったわけですが、きっかけは『まずとりあえず書いてみる』というアクションがあったからに他なりません。とりあえずモノがあって、人から評価してもらえる状態にあったからこそ、話がスムーズに進んで出版に至ったわけです。
もし、技術評論社さんからのオファーがなくても、僕は電子による個人出版をしていたわけですから、いまの時代、とりあえず書いてみてもそれが無駄になることは決っしてありません。
なので、もし出版をしてみたいと思う人はぜひまずは何か書いてみることをオススメします。もし技術評論社さんから出版してみたいと思う人は僕でよければ編集さんにお伺いしてみることは可能ですので、いつでもご連絡ください。
それではまた。
Atom実践入門──進化し続けるハッカブルなエディタ (WEB+DB PRESS plus)
- 作者: 大竹智也
- 出版社/メーカー: 技術評論社
- 発売日: 2016/07/14
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (4件) を見る
Atom実践入門、それはエディタの使い方と同時にWeb技術の現在が学べるまったく新しいエディタの本。
2016年7月14日、私にとって『Emacs実践入門』以来4年ぶり2冊目となる書籍『Atom実践入門』が発売されることとなりました。
去年、WEB+DB PRESS Vol.86にてAtom特集を書いたので、もしやと思った勘の鋭い方もおられたかもしれませんが、実はそのときから本書の執筆を行っており、この度ようやく上梓することができたというわけです。
本書は私にとって2冊目の書籍であると同時に、2冊目のエディタの本でもあります。またしてもエディタの本を書いてしまったわけで、これについては色々と思うところがあるのですが、それについてはまた今度詳しく書きたいと思います。本日は、この本に込められた思いについて語っていきます。
はじめてのエディタを使う人にとってベストな解説書を目指して。
エディタの本は、基本的にプログラミングを書く人に向けた書籍です。Emacs実践入門のときは、Emacsという歴史があり、そして癖もある素敵なエディタを、どうすれば思い通りに使いこなせるようになるのかという課題と向き合い、自分の体験を元にできる限り分かりやすく解説することに腐心しました。
しかし、メインの対象読者はあくまでエディタを既に利用したことのある人であり、つまり、既にEmacsを利用したことのある人や、Emacsへの乗り換えを検討している人でした。そのため、エディタの使い方というよりは、Emacsの使い方を中心に解説を行っていました。
ですが、今回のAtomの場合は、はじめてエディタを利用する人をメインの対象読者としました。そのため、エディタとはそもそもどんなソフトなのか、そして何ができるのか? そういったところから丁寧に解説を行いました。
ただ、それでけではただのエディタ解説書止まりです。私としては、読者の方がこの本を読むことで、エディタの使い方だけではなく、それ以上の価値を会得して欲しいという思いがありました。
そこで、AtomというWeb技術によって作られた現時点で最もモダンと言えるアーキテクチャを持つエディタの解説をすることにより、読者は現在のWebエンジニアリングの主流やWeb開発についても学ぶことができ、本書を読み終えたときには、Web開発について一通りの知識を得ることができる本にすれば、エディタの解説書を越えた唯一無二の書籍を作ることができるのではないかと思い、そんな裏目的を持って執筆に取り組みました。
エディタのテクニックだけでなく、Web技術の基礎知識も同時に学べる書籍にしたい。
目次を見てもらうと分かりますが、なんと6章は「Chrome Developer Toolsの使い方とAtomのDOM」となっており、Web開発者にとって必須と言えるDevToolsの解説をしっかりと行なっています。
個人的に、ここまで詳細なDevToolsの解説は、書籍として初めてなのでは?と思っており、これだけでも読む価値があると思っています。
もちろん、これは名目上、Atomのパッケージ開発を行うために必須となるデバッグツールを使いこなせるようになるために解説を行ったわけですが、裏目的としては、Web開発にとって必ず役に立つという理由で詳細に解説を行なっています。
まとめ。
このように本書では、Atomの使い方だけでなく、WEB技術についての解説も行いましたので、Web開発の教科書のような読み物として十分な面白さを盛り込めたのではないかと思っています。
また、付録のコアパッケージリファレンスなど、ばりばりAtomを使っている人にとっても価値のある情報を収録できたかと思います。
本書には、ここで打ち明けた目的以外にも、これまでに執筆経験を元に様々な工夫をこらしていますので、おいおい紹介していきたいと思います。
というわけで、みなさん本書に興味を持たれましたら、ぜひご一読をお願いします。
Atom実践入門──進化し続けるハッカブルなエディタ (WEB+DB PRESS plus)
- 作者: 大竹智也
- 出版社/メーカー: 技術評論社
- 発売日: 2016/07/14
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (4件) を見る
Emacsによって極限まで鍛えられた小指でMacBookを使うとこうなる。
2014年の年明けに購入して以来、約2年間利用し続けている僕のMacBookですが、最近、キーボードの「A」の文字が消えてしまいました。
「A」以外はまったく問題ないことから、左小指の力が関係していることはあきらかでしょう。
左小指と言えば思い当たる節がひとつあります。それはEmacsです。
現在は、EmacsだけではなくAtomも利用してますが、Emacsを使い続けた僕の小指は、どうやら常人の小指の力を越え、「ザ・ハンド」のような能力が身についてしまったようです。
みなさん、小指を痛めるときがあるかもしれませんが、それの痛みを乗り越えた先には、いつか「ザ・ハンド」がその身に宿りますので、その日がくるまで自分の小指を信じて、鍛え続けましょう。
日本のWebエンジニアの大半が、変化に対応しきれなくなっている件について。
先週書いた10年のツケを支払ったフロント界隈におけるJavaScript開発環境(2016年4月現在)。という記事がまずまずの反響を得たのですが、僕の予想とは異なり、「こんなに多くのツールやフレームワークを必要とする現状はおかしい」といった、状況批判の意見が多く集まりました。
Mediumなど海外メディアでは、もはやこの種のツールを組み合わせたフロントエンド開発が当たり前として受け入れらており、この半年間ほどは「実際にどの組み合わせがベストか」という議論が行われていました。そして、そういった議論もようやく落ち着きを見せ、おおよそ僕が書いたような組み合わせに帰結しつつあります。
そのため、まさか「フロントは変化が激し過ぎる」とか「保守が大変そう」などといったような、1年くらい前に言われていた意見が、いまだに多くを占めるとは、まったく予想していなかったというのが正直な意見です。ひと昔まえであれば、「面白そう」とか、「もっと便利なツールがあるよ」といったポジティブな意見が中心だった気がします。
確かに、これまでの開発環境と大きく異なるため、「まだまだ対応するのは難しい」という意見は良く分かります。しかし、「対応」と「キャッチアップ」は別であり、普通にキャッチアップをしていれば、この流れは不可逆であり「今後、元に戻ることはない」と確信していなのは、むしろヤバいと感じることでしょう。
しかし、はてブやTwitter、Facebookのコメントを見る限りでは、素人ではなく、現在Webの仕事をしている人ですら、「流れが早くてついて行けない」「もう少し様子を見ておいた方が良さそう」といった日和見な意見を述べており、「日本のエンジニアは大丈夫なのかな?」と僕は不安を覚えてしまいました。
なぜ、変化への対応がここまで遅いのか。
「なぜ、変化への対応がここまで遅いのか」という理由を考えてみて、「プログラミングが好きではない職業エンジニアが増えている」などが思い浮んだのですが、根本となる最大の理由は「英語しかドキュメントがない」ためだという結論に至りました。
この組み合わせが異常、というのはやってみると実際そんなことない。React と Redux 以外はただのツールなので、どれも半日あれば使いこなせるようになる
id:naoya さんもこのように言っていますが、僕もReactとReduxは慣れるのに時間がかかるものの、それ以外は、単なるメソッドや、ツールでしかないで、習得するまでたいして時間がかかるものではないと思います。なので、難しいという意見の大半は、おそらくまだ試していないのではないかと思います。
では、実際に試すと、どの程度の期間で習得できるものなのか、ちょうど良い例があるので紹介しましょう。
英語ができれば、プログラミング初心者でも4ヶ月で React + Redux + Electron でアプリが作れる。
Urai Masato君いう若者がいます。彼はTOEIC940点の文系大学生プログラマによるブログというブログを書いており、タイトルからも分かる通り、文系大学の学生で「英語はできるけど、プログラミングはまったくの素人」という学生でした。
そんな彼は、僕の友人が経営する語学学校サウスピークに去年の夏頃に留学し、TOEIC940点という素晴しいスコアをマークしました。そして、日本に帰国してから、就職まで時間があるのでプログラミングの勉強をしようと思ったとき、僕の友人に相談したのをきっかけに僕と出会いました。
僕は近年「プログラマは英語必須というけれど、プログラミングを覚えてから英語を勉強するよりも、英語を覚えてからプログラミングの勉強をした方が圧倒的に学習効率が良いのではないか」と考えていました。そんなとき、彼と出会った僕は、僕の考えを検証できる良い機会だと思ったので、彼に対して、次のような提案をしました。
- 僕は直接教えずに課題を出す
- 課題は英語で書かれた技術記事やチュートリアル
- 課題をやったら必ずブログを書く
- 僕はブログを見てフィードバックをする
- 勉強したい分野があれば、僕に提案をする
- 提案を見て、勉強した方が良い内容であれば、最適な英語の記事を紹介する
彼はこの提案に対して「ぜひ、やってみたい」と答えたので、去年の11月頃から「英語でプログラミングを学ぶと、どれくらいの早さで学習できるのか?」という実験がスタートしました。
その結果は、
- 文系大学生がJavaScriptを始めて約一ヶ月経って思うこと
- 文系大学生がプログラミングを始めて2ヶ月経って思うこと
- 文系大学生がプログラミングを始めて3ヶ月経って思うこと
- 文系大学生がプログラミングを始めて四ヶ月経って思うこと
という記事にまとめられていますが、主にJavaScriptを中心に学習した結果、
- 1ヶ月目でGitの使い方、JSの基本文法、ES6の文法など
- 2ヶ月目でGitHubの使い方、Markdown、React、CoffeeScript、Atomパッケージの作成チュートリアル、gulp、browserify、Babelなど
- 3ヶ月目でJSON API、THE TWELVE-FACTOR APP、自作のAtomパッケージの公開、自作のNodeモジュールの公開など
- 4ヶ月目でOAuth認証、Redux、Electronによるデスクトップアプリケーション開発など
といった風に、本当にプログラミングをまったく書いたことのない状態から、4ヶ月でElectronを使ってはてなブログに記事を投稿できるデスクトップアプリケーションを自作するまで成長しました。
僕が言うのもなんですが、これは異常に早いと言っても良いのではないでしょうか?僕は正直、危機感を覚えたくらいです。
彼に英語記事の課題を与えてみて分かったことは、
- とにかく記事を読んで理解するのが異常に早い
- 学習したい分野を自分から率先して見付け出し、しかもそれが的外れではない
ということです。記事を読む早さは、本当にびびるくらい早く、例えば、ブラウザのレンダリングの仕組みを学んでもらおうと思ってConstructing the Object Modelという記事を与えると、半日もかからず読んで理解するという感じです。そんなわけで、予想を大きく上まわるスピードで学習課題を消化されたため、新しい課題を探すのがとても大変でした。
他にも、UNIX/Linuxコマンドを英語で学習すると、pwd は「Print Working Directory」の略なので、そのまま英語の意味からコマンド名を覚えることができるなど、様々なメリットがありました。
再現性がないため、純粋な比較は難しいのですが、僕がこれまで教えた経験からの判断によると、やはり「英語を先に学んでからプログラミングを勉強した方が、圧倒的にプログラミングの学習効率が高い」という結論に至りました。
この経験は自分の中で新しい確信と素晴しい価値観を生み出しました。そこで、Urai君のような若者をもっと育たいと思いサウスピークに相談してみたところ快諾を得たので、今年度からまったく新しくエンジニア育成プロジェクトをやってみることにしました。
英語でWebエンジニアリングを学ぶ、サウスピーク「光速Webエンジニアプラン」
世の中にはITブートキャンプと呼ばれる短期間でITスキルを学ぶサービスや、IT留学プランなる英語とプログラミングを同時に学ぶサービスがあります。
しかし、今回企画した「光速Webエンジニアプラン」は、それらとは違い、まずはスラスラと英文が読めるまで本気で英語を勉強してもらい、その後でプログラミングの勉強を開始します。これは、先に述べた通り、プログラミング学習には、英語を読めることが、圧倒的なアドバンテージを生むためです。
このアドバンテージをイメージ図にしてみると上記のようになります。Aの場合は半年間の学習アドバンテージがありますが、英語をスラスラ読めるBでは、情報量に圧倒的な差があるため、個人差はありますが、Aの3倍のスピードで成長したとします。
そうすると、半年遅れにも関わらず、Bはプログラミングの学習を開始して3ヶ月後にAを抜き去ってしまいます。そして、新しい技術が増え続けるIT業界では、英語による情報の格差が縮まることはなく、逆に開く一方であるため、2年後、3年後には、とても比較ができないほどの差が生まれることになります。
このプラン詳細は、1年で最先端Webエンジニアになれる、サウスピーク光速Webエンジニアプラン【先着10名、5月末まで】をご確認ください。
最後に、4月9日に技術評論社から、僕も寄稿した仕事ですぐ役立つ Vim&Emacsエキスパート活用術という本が発売されましたので、興味のある方はぜひどうぞ。
仕事ですぐ役立つ Vim&Emacsエキスパート活用術 (SoftwareDesign別冊)
- 作者: Software Design編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2016/04/09
- メディア: 大型本
- この商品を含むブログ (2件) を見る
10年のツケを支払ったフロント界隈におけるJavaScript開発環境(2016年4月現在)。
2015年はCSSが普及した以来となる10年に1度のフロントエンド大変革期で、それまでのツケが一気に回ってきたと個人的に感じていました。目まぐるしく状況が変化していきましたが、2016年になり、個人的にだいぶ落ち着いてきたと感じているので、ここらへんでまとめておきたい思います。
最初に結論を書いておくと、
『React + Redux + react-router + material-ui + axios + ES2015 + Babel + webpack + ESLint + Airbnb JavaScript Style Guide』
という組み合わせが、いま僕の採用しているJavaScriptの環境です。
主要ライブラリは React
去年、一気に普及したReactは、今年に入っても絶好調です。他のライブラリや、Angular 2など、色々と騒がれていましたが、去年1年間で個人的に当面はReactに完全決着したと思っています。数年前は、jQueryが使えないとフロントの仕事は難しいと言われていましたが、これからはReactが使えないとフロントの仕事は難しいと言われることになるでしょう。
Reactはブラウザで動作するアプリケーション以外にも、React Nativeによるモバイルアプリ開発も行えますので、今後ますます成長していきそうです。
アプリケーションフレームワークは Redux
Reactで本格的にアプリケーションを開発する場合はフレームワークが必要です。Reactの普及にともなって、Fluxや、Fluxxorなど様々なフレームワークが乱立しましたが、現在首位に立っているのは、Reduxだと感じています。
僕も最初はFluxで開発していたのですが、その後、Reduxが登場し、評判が良いので全面書き換えを行ったのですが、その便利さがとても良く分かりました。Fluxではdispatch, store, actionなどの処理を結構地道に実装していく必要があったのですが、Reduxの場合、Fluxのときと比べて50%くらいのコード量で同じ機能を実装できました。
まだ、完全決着とはいかないかもしれませんが、これから開発される方は、とりあえず Redux で始めてみるのが良いと思います。
ルーティングは react-router
React + Redux アプリでルーティングが必要な場合は、Redux と同じコミュニティで開発されている react-routerを選択しておけば、まず間違いないでしょう。最近、v2 がリリースされたので、これから利用しはじめる場合は、そちらを利用しましょう。
UIフレームワークは material-ui
UIは好み応じて選択すれば良いと思いますが、オススメは個人的に React を本格的に利用するようになったきっかけとなるのが material-ui です。Google の Material Designを React コンポーネントによって再現したフレームワークで、フロントアプリ開発が爆速になります。
見た目とかそういうのではなく、とにかくHTMLとCSSを一切書かずに、用意されたコンポーネントをばんばん配置していくだけで、アプリケーションができていくため、UI設計に完全にフォーカスできるのが最大の利点だと思っています。
HTTP Request は axios
axiosを利用する前は、superagentを利用していたのですが、Promise ベースの方が楽なので乗り換えました。superagentのときと比べて、XHRまわりで悩まされなくなりました。
記述は ES2015(ES6)
JSは書きにくい、という意見から、CoffeeScript、TypeScriptなどのAltJSを採用するプロジェクトも多くなりましたが、去年ES2015がリリースされたお陰で、本家へ原点回帰する流れができたような気がします。
後述するBabelなどビルド環境が整ったお陰で、積極的にES2015の構文が利用できるようになった事も大きいのですが、実際にES2015を書いてみると、とても書き心地が良く、これが普及要因だと思っています。
個人的には、これからJavaScriptを覚えたいという人は、最初からES2015で覚える方が良いでしょう。
ビルド環境は Babel + webpack
ビルド環境についても、色々な動きがありました。トランスパイラは、BabelがReactをサポートしたことなどもあり、完全に一本化した感がありますが、ビルド処理は、Grunt、Gulp、Browserify、webpackなどのツールを、どの組み合わせで選択すれば良いのか、本当によく分かりませんでした。
ただ、最近は海外を中心に webpackに一本化する動きが広がってきており、僕もこの流れに乗っています。開発サーバーもwebpack-dev-serverを利用すれば、簡単に用意できるところも実にナイスです。
文法・構文チェックは ESLint + Airbnb JavaScript Style Guide
ES2015やReactを利用して開発するということは、大袈裟に言えば、必要となる構文知識が単純なJavaScriptの3倍になると言えます(大袈裟)。せっかく新しい構文、新しいライブラリを利用して開発するのであれば、新しい構文に早く慣れたいものです。そこで役に立つのが、ESLint + Airbnb JavaScript Style Guideの組み合わせです。
ESLintは、厳しめの構文チェッカで、設定が多いことでも有名でしたが、最近はプラグイン形式で第三者が作成した設定を簡単にインポートすることができるようになり、とても使いやすくなりました。
中でも、Airbnb JavaScript Style Guideは、ES2015とReactの構文を、かなり前のめりでサポートするように設定されているため、警告に従って修正していれば、古いスタイルの記述が強制的にどんんどん新しくなっていき、速攻で新しい構文を学習できるため、とても助けられました。
Atomを利用している場合は、linter + linter-eslintのプラグインを入れておくと良いでしょう。
テストは…
テストはまだどれが良いのか決まっていません。なんとなく、jsdom + chai + mocha を利用してみたりしていますが、Rubyもテストについては揺れていますので、一本化は難しいのかもしれません。
まとめ
去年1年はフロント回りの激しい流れに、多くの方が翻弄されたのではないかと思いますが、個人的には落ち着いてきたように見えてきました。
学習コストは一気に跳ね上がりましたが、逆に言えば、Webの進化が激しい中、10年前からほぼ変っていなかったフロント回りの技術が、いよいよ時代に追い付かなければならなくなり、去年みたいな大変革が起きたと思えば、とても自然な流れと言えます。
流石に今後は、去年のような激しい変化は起きないと思いますので、フロント回りを静観しておられたかたは、ぜひ今年で一気に追い付くと良いでしょう。
追記
これからの時代を支えるエンジニアを育成する1年で最先端Webエンジニアになれる、サウスピーク光速Webエンジニアプラン【先着10名、5月末まで】という事業をやってみることにしました。興味のある方はぜひこちらもご欄ください。