この記事はWe Are JavaScripters!【執筆初心者歓迎】 Advent Calendar 2018 の1日目です!

JavaScript の面白さ

JavaScript の面白さは、そのユーザーの多様性にあると自分は感じています。

例えば、JavaScript は、TypeScript で静的な型を与えて大規模なアプリケーションを開発するハードコアな職業エンジニアから、自分のウェブサイトにアニメーションを少し加えたいだけのホビーユーザーや、 Google Action Script を使って表計算ソフトに仕事をさせる営業マンまで、ユーザーが幅が広く、その幅の広さから、JavaScript のコミュニティに多様性が生まれ、結果として JavaScript の面白さになっていると思います。

JavaScript の面白さがユーザーの多様性によるものだとしたら、それをさらに加速させれば、JavaScript はもっと面白くなる。それが 2018 年の活動のコンセプトとしてありました。

そのために今年取り組んだことを紹介させてください。軸は三つあります。

  • 知識の共有
  • コミュニティの形成
  • 話題作り

知識の共有

自分が JavaScript のユーザーの多様性に面白さを感じていることはすでに述べましたが、これを加速させるためには、さらにいろんな人がユーザーになってくれればいいわけです。

そのためには、JavaScript の使い方をわかりやすく共有していく必要があります。いくらいいツールであっても、使い方がわかなければ広まりません。

幸い、現代のツールの大半は丁寧なドキュメントと、チュートリアルがあり、それから GitHub, Slack 等で情報を交換できるので、その点は万全です。

と、言いたいところですが、我々日本人だけは、特殊な状況下に置かれています。

つまり、英語で書かれたドキュメントを読めるユーザーは、ユーザーのマジョリティではない、という問題です。英語を勉強すべきだ、というようなよくある議論をここでするつもりはありません。英語のドキュメントが読めない人がマジョリティの中で、自分が何ができるのか、ということが重要な観点です。

そのためには以下三つのことをしました。

  • 翻訳
  • 記事、チュートリアルの作成
  • 動画コンテンツの作成

翻訳

公式ドキュメントを中心に翻訳しました。

来年は、Gatsby, Netlify を中心としたサイト制作ツールと、それから Node.js によるバックエンド関係の翻訳に力を入れていきたいと思います。

JavaScript でメディアサイト作成の仕事、ブログ作成、バックエンドまでできるようになると、よりユーザーが増えると思うからです。

  1. Storybook for vue.js ドキュメント 日本語翻訳
  2. Netlify ドキュメント 日本語翻訳
  3. Emotion CSS in JS Library ドキュメント 日本語翻訳
  4. 翻訳 Setting up for TDD 「TDD のための環境構築
  5. 翻訳 Vuex の mutation のテスト
  6. 翻訳 Vuex のテスト

記事作成

翻訳の次に重要なのが、技術記事を書くことだと思っています。

今年は Qiita に 29 記事自分のサイトに 40 記事、合計 69 記事を書きました。

また、技術書店にて Sound for Javascripters という WebAudioAPI と WebMIDIAPI を使用して、ブラウザで実行できるシンセの作り方も公開しました。

技術記事として分量があるのは以下の三つで、このあたりから JavaScript おじさんと名乗りだした気がします。

昨年は 137 記事書いたので、ペースは落ちましたが、その分他の活動が増えたので、よしとしたいと思います笑

また、日頃素晴らしい技術記事を書いてくれる皆さま、いつもありがとうございます。

JavaScript 寺子屋シリーズ

JavaScript 寺子屋シリーズという連載をしています。これは、JavaScript の本当に基礎的なところを、1日一問宿題をやってもらうことで身につけてもらうという企画です。

https://uncle-javascript.com/JS%20Terakoya

これを始めた経緯です。

いくつかのハンズオンの講師や、メンターをさせていただいた中で次のことがわかってきました。多くの人は React や Vue といったライブラリでつまづいているのではなく、JavaScript の基本的なシンタックス、それこそアローファンクションや、クラスの書き方、オブジェクトや配列の処理でつまづいているということです。

そしてこういった基礎的なところでつまづくと、せっかく休日を使って参加したハンズオンなのに、得られるものが少なくなってしまう。ということです。もちろん、講師側としても理解してもらうことが喜びなので、それができないというのは解決すべき課題です。

ハンズオンで新しい知識を効率よく身につけるためには、JavaScript の基礎力を上げてきてもらってから、参加してもらう必要があると思いました。

そのために JavaScript 寺子屋はあります。JavaScript の基礎力があれば、新しいツールを使うこともより容易になり、もっと JavaScript を使うのが楽しくなるはずです。

シーズン 1 (A New Hope 編) が今終了したところです。来シーズンは一週間後に始めようと思っていて、配列とオブジェクトの処理から始めたいと思います。

動画コンテンツの作成

どうしても記事だけだと、実際にどういう手順でコーディングをしているのかを伝えることができないという問題がありました。それから、文章で書くとツールの操作は非常に長くなってしまいます。操作をそのまま伝えるには動画が一番だと考えました。

おかげさまで公開した Udemy のコースは 280 名の方に受講いただき、平均評価 4.5 をいただいているので、公開した意義があったなと思います。英語のコースは非常に充実しているのに、日本語のコースはまだまだ少ない状況です。来年も少なくとも一本は公開したいと思います。

React + Redux を使用したモダンフロントエンド開発

コミュニティの形成

やはり、人間は人間なので、コミュニティが重要です。今年ももくもく寺を中心に活動させていただきました。いつもありがとうございます。

もくもく寺の面白いところは、JavaScript と同じで多様なメンバーがいることだと感じています。特定の言語、職域にユーザーに限定されないことで、その多様性が生まれています。また多様なメンバーをまとめるムロさんはすごいと思います。

話題作り

なんか JavaScript ってきているらしいぞ?という盛り上がり感を作ることも大事だと思います。

そのために、エンジニアライブ東京というエンジニアで集まってライブをするイベントに、勝手に JavaScript 代表として参加させていただきました。

当日は、Ruby ユーザーが多かったので「Ruby で音は出ないのか?JavaScript は出ます。」といって、JavaScript で作ったシンセサイザーをその場で手弾きしたりして、JavaScript の存在感を示してきました。そこそこウケたのでよかったと思います。

また JavaScript シンセで作ったアイドルソングもやってきました。なんとリミックス版もあり、あの有名 PHPer である Uncle PHP がしてくれています。

トラックはここから聞けるよ!聞いてね!

来年はですね、Ableton Live との連携でも有名な Max という音楽に特化したプログラミングツールが、Node を実行できるようになったので、これを使って笑いを取っていきたいなと思います。

本当に Node が動きます。npm も使えます。Axios で天気情報をゲットして、Lodash で処理をして、音を鳴らす、なんてこともできるわけです!やるしかない!

https://www.youtube.com/watch?v=QuIcEHJSwz8

来年も JavaScript が面白くなるといいな!

ということで、来年も JavaScript を書いて楽しく生活していきたいと思います!

WeJS をはじめとしたコミュニティを運営されている方、それから技術記事を書いたり、翻訳したりしてくれている方、お疲れ様でした!来年もレッツエンジョイ!