WEBエンジニア初心者がWEBエンジニア勉強会で学べること

Webプログラミング

WEBエンジニア勉強会#08@渋谷 に参加してきました!

WEB初心者(オンラインプログラミングスクールで学習済みだが未経験)ですが、「初心者でも参加できるWEBエンジニアのための勉強会」と明記してあったので試しに行ってみました!LT内容を見る限り、わかりそうにないんだけど。。

タイムテーブル
No 時間 イベント(LT)
1 20分 WEBページのバックグラウンド処理「Service Worker」入門
2 20分 Pythonで始める筋トレ(競技プログラミング)
3 10分 Spinnakerを利用した自動カナリー分析
4 10分 すぐ効く、クライアントも喜ぶ「WEBレシピ」(LT内容変更)
5 10分 FirebaseとUnityでゲームアプリ開発
6 5分 httpモジュールから始めるNode.js入門
7 5分 GAS連携でさくっと作れるSlack Bot

サーバサイド/フロントサイドの仕事されている方が大半でした。

WEB開発を始めて1年以内の方が、意外と多かったです。



1. Service Worker

15分くらいは、全くついていけませんでした笑 その後、結局「Service Worker」は何ができるのかというところで、プッシュ通知ができるというのと、位置情報なども取得できるというところで、急に話しが頭に入ってきました。

自分はオンラインプログラミングスクールでRuby on Railsの勉強が終わったところで、これからオリジナルサービスを作るなりして身に着けようとしているところですが、仮にいいサービスを作れたとして、レスポンシブ対応でスマホに対応させたとしても、プッシュ通知等ができないので、ネイティブアプリはやはりエンジニアを雇って作ってもらう (か、自分でネイティブアプリも覚える…) なりしなければいけないと思っていました。

が、「Service Worker」とそれに附随するツールを使うことで、ネイティブアプリと同等または近いことができて、ネイティブアプリまで覚えなくて済むようになるみたいで、ちょっといいこと聞いたなと思いました。

インストールしたくなったら、この辺を読めば良さそうです。

2. 競技プログラミング

コーディングってスラスラ出てこないですよね、そんな時は筋トレが必要!プログラミングの筋トレには、AtCoderという競技プログラミングがよいとのこと!ライブコーディングしてくれました!ライブコーディングのいいところは、即興でコーディングするからエラーになったりもするんだけど、「おっ、そうか!数値型と文字型を足してたからエラーになってたんだね!どちらも文字型にして・・・」といったトラブルシューティングな物をその場で体験できるのがとてもいいです!

自分もその場でやってみようと思ったものの、ほぼRails (フレームワーク) を勉強してたから、実はRubyあまりわからない。。今日のところは断念。。最近、プログラミングがしたかったんだけど、Rails ってプログラミングしてる感なくない?という疑問が湧きつつあったので、Railsがある程度身に着いたら、Rubyを頑張りたいと思った今日この頃でした。

3. 自動カナリア分析

ここもよくわからないながらにググってみたら、ははぁなるほどーと理解できました。登壇者が伝えたかったことは別なことなのでしょうが、小規模でリリースされて観察後、問題なければ大規模にデプロイされるという手法があることを学んだだけでいい収穫でした。

新規リリースはまず、本番環境全体に対していきなりデプロイされるのではなく、ごく一部のユーザーだけに利用されるように小さな割合でリリースされます。そしてしばらくその振る舞いが観察され、問題がないと判断されてから大規模にデプロイされるのです。

一般に、このような試験的なリリースを小規模に行うこと、あるいはその対象となるリリースは「Canary Release」(カナリアリリース)と呼ばれています。

これはかつて炭鉱夫が、炭鉱のなかで一酸化炭素や有毒ガスが発生した場合にそれをいち早く察して逃げるため、そうした変化に弱いカナリアを鳥かごに入れて炭鉱に持ち込んだことに由来すると言われています。カナリアリリースは、そのリリースになにか問題があった場合にいち早く気づくためのものなのです。

カナリアリリース分析ツール「Kayenta」

5. Slack Bot

新人に、業務内容を覚えてもらう為にドキュメントを読んでもらったりしますが、Slack Botに聞けるとスマートだよねってことで、確かJSとかでサクッと作れるよって話しだったと思います。

デモが面白かったですね!もし業務内容としてポケモンの種類と内容を覚えなければいけない場合を想定して、「一覧」とボットに質問するとポケモンの「一覧」が表示され、ポケモン、または他のモンスターの詳細を知りたければ、そのモンスターの名前を質問すれば答えてくれました(動画収めておけばわかりやすかったのですが)。元データはスプレッドシートから拾ってきてるみたいですが、ボットに聞けた方がレスポンスが早くていいですね!

結論

WEBエンジニア初心者にはやはりわからないことが多い(何言っているかわからない)。けど、気になるキーワードを拾えたり、抑えられるので、それだけでも参加する価値はあると思いました!