GameWith Developer Blog

GameWith のエンジニア、デザイナーが技術について日々発信していきます。

GameWithのリプレイスについて vol.1 ~概要編~ #GameWith #TechWith

こんにちは!Incremental Stream Team です!

GameWithは「ゲームをより楽しめる世界を創る」ために、日々成長しています。

3年後5年後のさらなる成長を見据えて、GameWithをリプレイスすることを決断しました。

Incremental Stream Team とは

GameWithサービス開発部内で構成されるWebエンジニアのチームです。

リプレイスは我々 Incremental Stream Team が主導して行っております。

我々は、既存サービスの開発から派生し、これまでの開発とは全く新しいアーキテクチャを採用して始動しました。

既存サービスに対して追加的(Incremental)なマイクロリリースを繰り返して(Stream)、リプレイス済の領域がやがてメインストリーム化するイメージで命名しました。

現在のGameWithのアーキテクチャ

フロントエンドはライブラリとしてjQueryを採用しています。

サーバーサイドはこの前のブログでも紹介をしましたが、PHP7を使っていて、フレームワークとしてFuelPHPを利用しています。

PHP7へのバージョンアップはこちらの記事を御覧ください。

tech.gamewith.co.jp

インフラはAWSのEC2を利用しています。

GameWithのサービスは全てのコードが1つのリポジトリで管理されているモノリシックな状態です。

これにより複数のチームが一つのリポジトリに対して日々たくさんの変更をしており、リリースタイミンングや開発による他への影響の考慮が欠かせないという問題があります。

リプレイスのアーキテクチャ

今後の事業組織単位での成長を加速しやすくためにマイクロサービスアーキテクチャのように、ゲーム攻略、ゲームを探す、SNSという事業単位でサービスを分けることにしました。

Backend For Frontendとサーバーサイドを分けたのは、事業を跨いだ柔軟なデータの連携をしやすくするためです。

f:id:tiwu:20191017192516p:plain

インフラ構成

AWS ECS + AWS Fargateを採用しました。

一貫した開発環境の保証、Middleware管理の容易さ、属人性の排除というメリットが有るためコンテナ技術を利用したかったためです。

aws.amazon.com

AWS Fargate は、Amazon ECS とともに使用して Amazon EC2 インスタンスでサーバーまたはクラスターを管理する必要なくコンテナを実行できるテクノロジーです。AWS Fargate を使用すると、コンテナを実行するために仮想マシンのクラスターをプロビジョニング、設定、スケールする必要がありません。これにより、サーバータイプの選択、クラスターをスケールするタイミングの決定、クラスターのパッキングの最適化を行う必要がなくなります。

上記公式サイトの記述の通り、今まで自分たちで実施していたEC2インスタンス周りの作業をAWSが行ってくれるということも採用の理由の一つです。

サーバーサイド

Golang、Scala、Kotlin、PHPが候補にありましたが、最終的にGolangを採用しました。

サービス分割による内部通信のオーバーヘッドを減らすため、gRPCでの通信を考慮しPHPは不採用となりました。

また、コンテナベースのインフラ構成の際にGolangは余計なミドルウェアを必要とせずに実行ファイルをコンテナに配置するだけで実行されることで、軽量で高速な起動と高パフォーマンスを実現できると考えGolangに決めました。

Golangは言語の縛りが強く、書き手によって差異が生まれにくいのも採用の理由の1つです。

フロントエンド

Nuxt.jsとTypeScriptを採用しました。

採用理由としてはマークアップ言語感覚で書けるSFC(Single File Component)が、学習コストの低さと既存のコードの移行のしやすさが決め手でした。

また、開発者コミュニティが活発なことも理由として大きいです。

型とトランスパイルによる実行時エラーを防ぐため、TypeScriptを採用しました。

TypeScript採用による学習コストがあがる懸念点もありましたが、開発規模の大きさを考えた結果3年後5年後のメリットが大きいと判断しました。

チーム体制

リプレイスはエンジニア3人体制で実施しています。

開発はスクラム開発をしており、2週間スプリントで回っています。

ZenHubというGitHubの拡張サービスのスクラムカンバンを利用してIssueを管理しています。

スクラム開発はMangaWithで培った経験を元に行っています。

MangaWithでのチーム開発についてはこちらの記事を御覧ください。

tech.gamewith.co.jp

また、リプレイスチームは新たな試みとして、週に1回程度コワーキングスペースに行き、チームでリモートワークをしています。

コワーキングスペースでのチームリモートワークは、新鮮で気分転換にもなり、同僚との心的距離も自然と縮まる作用があると感じました。

f:id:tiwu:20191017192731j:plain

リプレイスプロセス

安全なリプレイス作業を行うため、カナリアリリースを行なっています。

既存のGameWithに対して、FeatureToggleの機能を実装し、

  • UIコンポーネント
  • ページ
  • ゲームタイトル
  • 閲覧端末

などの要素からカナリアリリース対象かの判定を行うことで実現しています。

例えば、現在はPCで見た時に、KH3の攻略ページの左側のメニューがリプレイスされており、Nuxt.jsのコンポーネントが表示されています。

https://gamewith.jp/kingdomhearts3/

f:id:tiwu:20191017193050p:plain
赤く囲っているところがNuxt.jsのコンポーネントです

f:id:tiwu:20191017192938p:plain
UIコンポーネント単位に分けた図

徐々にNuxt.jsのUIコンポーネントの適応範囲を広げ、最終的にページ全てNuxt.jsにする方針で現在はリプレイス作業を行っています。

最後に

リプレイスの作業中も、現行のGameWithは日々成長しています。

現行の成長を妨げることなく上手く共存しながら、安全にリプレイスできるよう進めています。

そのために、理想の技術設計だけにとらわれずGameWithの事業成長を見越した設計を心がけています。

今回のブログはリプレイスの概要を紹介しました。

次回のリプレイスのブログでは各技術について深ぼって紹介をしたいと思います!

GameWithのDeveloper向けTwitterアカウントも開設しました。
もくもく会の告知やブログの更新情報などを発信するので良かったらフォロー宜しくお願いします!

twitter.com

Vue Fes Japan 2019にスポンサーとして協賛します&オンラインAMA配信をします #vuefes #GameWith #TechWith

こんにちは。GameWithのエンジニアのtiwuです。

Vue Fes Japan 2019

この度、Vue Fes Japan 2019にスポンサーとして協賛することになりました!

vuefes.jp

GameWithはREFRESHMENTスポンサーとして参加者にドリンクやお菓子などのリフレッシュ提供します。

当日は自分がブースに立っていると思うのでぜひお会いしましょう!

オンラインAMA配信

また、Vue Fes Japan × GameWithでオンラインAMAの配信を弊社スタジオから行うことが決定しました!

f:id:tiwu:20191009104613p:plain

普段聞けないようなことが聞ける貴重な機会なのでとても楽しみです!

現在質問を募集中とのことなのでどしどし質問を投稿しましょう!

詳細は下記noteをご覧ください。

note.mu

最後に

台風接近についての開催対応は下記noteに記載されているので参加者の方はご確認ください。

note.mu

無事開催されることを祈っています。

GameWithでは一緒に働く仲間を募集中です!

毎月もくもく会なども開催しているので、気軽に連絡ください!

twitter.com

GameWith iOS もくもく会 #15 開催しました #GameWith #TechWith #gamewith_moku2

こんにちは!
GameWithのiOSエンジニアのkyamです。
9月26日(木)にGameWith主催で第15回目のもくもく会を開催しました!

GameWith iOS もくもく会 #15

gamewith.connpass.com

今回はテーマとしてiOSを採用しました。 実は今までiOSのもくもく会はGameWithで開催したことがなかったため、今回が初めての開催となりました。

それでも今回は社内1人、社外7人の計8人が集まってくれました!

当日の流れ

f:id:keeetaka:20190930141449p:plain

最初にお知らせ、次に自己紹介と今日のもくもく内容を発表して、軽食を挟みながら2時間程もくもくし、最後に進捗の発表という流れで開催しました!

進捗発表

以下がメンバーの取り組んだ内容です。

  • SwiftUIのTutorialと企画のアイデア詰め
  • リリースしたばかりの個人アプリのiOS13の対応(Dark Modeなど)
  • アニメーションの作成
  • macOS Catalina 10.15 beta 9のDLとSwiftUI
  • WebView周りの技術調査
  • CircleCIの挙動確認
  • 通信周りの勉強、QiitaAPIを使ったモック作成

といった様々なテーマの取り組みのもくもく会でした!

最後はせっかくなので20分ほど質問タイムという形式をとりGameWithについてざっくばらんに質問していただく時間をとりました。

挙がった質問としては、

  • 自分の所属している価値検証チームとはどのようなものなのか(自己紹介で所属している旨を話しました)
  • 企画はどのように生まれるのか
  • 新規事業のクローズ判断について

などビジネス的なものも多かった気がします。

最後に

参加していただいた皆様ありがとうございました!
iOSをこれから始めようと思っている方、始めたばかりの方、がっつり業務で触っている方など色々な方が参加されて雰囲気もよく開催できたかなと思えます。
10月以降も開催していく予定なので、興味のある方は是非参加してください。

告知1

もくもく会終了後も話したのですが、GameWith iOSもくもく会参加者用のslackワークスペースを作成しようと思います。
作業中に気軽に質問などを投げることができ、誰でも返答できるようにし、誰に聞いたらいいかわからないといった状況を無くし、参加者にとって勉強会自体の効率をよりあげたり、勉強会後のコミュニケーションを高めたいという意図からです。

告知2

GameWithのDeveloper向けTwitterアカウントを開設しました。 もくもく会の告知やブログの更新情報などを発信するので良かったらフォロー宜しくお願いします!

twitter.com

5年以上PHP5で運用されていたFuelPHPで動くGameWithをPHP7.3にバージョンアップしました! #GameWith #TechWith

はじめに

こんにちは!GameWithのサーバサイドエンジニアのkuromokaと、神崎です!

今月約1年かけて進めていた、GameWithのPHP7.3へのバージョンアップが完了しました!GameWithはリリースから5年以上PHP5系で運用されていましたが、ようやくPHP7.3にすることができました。

今回のブログでは、このバージョンアップを行うにあたっての具体的な作業内容やバージョンアップ前と後でのパフォーマンス比較などについてお話します。

実はPHP Conference 2019に同様のテーマでセッションの申込みをしたのですが、残念ながら不採用だったためブログ形式にしました。

fortee.jp

チーム構成

バージョンアップ作業は途中の入れ替わりなどありつつ、おおよそ以下のような5人チームでした。

  • サーバサイドエンジニア:2人
  • インフラエンジニア:1人
  • ディレクター:1人
  • チームリーダー:1人

バージョンアップ前のシステム構成

  • PHP5.6
  • FuelPHP 1.6
  • Ubuntu 14.04

バージョンアップ後のシステム構成

  • PHP7.3
  • FuelPHP 1.6(魔改造)
  • Ubuntu 18.04

FuelPHPについては、バージョンアップ中は最新のPHP7系には対応していなかったため、既存の1.6を魔改造をして対応させました。

なぜPHP7にあげようとしたか?

以下のような理由で、PHP7へのバージョンアップを決めました。

  • PHP5.6のセキュリティサポートが2018年12月末までのため

  • 長年の機能追加によりパフォーマンスが低下し、サービスが不安定になる状態が頻発するようになっていた。そのためPHP7にすることでパフォーマンスが向上して、サービスの安定稼働が見込めると考えたため

PHP7のバージョンアップまでのスケジュール

2018年10月にPHP7バージョンアップチームを結成しました。結成当初はサーバサイドエンジニアとインフラエンジニアの2人体制でスキマ時間に取り組んでいましたが、他チームとの兼任で他の作業が忙しかったこともあり、思うように作業が進みませんでした。

そこで2019年1月頃に入社をした私たち2人が2019年4月頃にバージョンアップチームにJOINすることになり、週に最低1日はバージョンアップチームとしての作業を行う時間を確保してもらうようにしました。

その後は順調に作業が進められるようになり、2019年9月に全ての作業が完了しました。

PHP7の作業方針

タスクの管理は、GitHubのProjectsを利用しカンバンスタイルで管理しました。

ソースの管理は、リポジトリから新規ブランチを切って、そのブランチのコードをPHP5.6並びにPHP7.3両方に互換性のある書き方に修正する形で作業を進めました。

理由として、GameWithで動いているサーバ(WEBサーバ・管理画面サーバ・デプロイサーバなど)のソースコードは既存のリリースフローの都合上、基本的にすべて同じリポジトリかつ同じブランチのため、ソースコードもすべて同じになるためです。

PHP7.3のみに対応したコードを書いてしてしまうと「PHP7.3のサーバでは動くけどPHP5.6のサーバでは動かない」といった状態が発生する可能性があり、各サーバごとに段階的にバージョンアップを進めることができなくなります。そのため上記の方法で作業を進めました。

具体的な作業内容

PHP5.6からPHP7.3の変更点の列挙

https://www.php.net/manual/ja/migration70.php https://www.php.net/manual/ja/migration71.php https://www.php.net/manual/ja/migration72.php https://www.php.net/manual/ja/migration73.php

まずは公式の移行マニュアルをすべて読み、変更点を列挙しました。

エラーの修正

初めはUnitテストで起きたエラーの修正を行いました。

その後、integrityというソフトや、Seleniumで動かしているE2Eテストで起きたエラーを修正しました。

sort系関数の変更

PHP7からソートアルゴリズムが変わったため、sort系の関数の結果がPHP5と同じ順番になるような互換関数を作りました。ソートアルゴリズム変更の影響を受けそうな利用箇所については、作った互換関数に置き換えてテストコードで同じ並び順が保証されるようにしました。 https://www.php.net/manual/ja/migration70.incompatible.php#migration70.incompatible.other.sort-order

インフラ作業

今回バージョンアップに伴い、インスタンスを新しく作り直しました。古いインスタンス(c4)のPHPのバージョンアップをあげることもできましたが、コストパフォーマンスの良いインスタンス(c5)を利用したかったため作り直すことにしました。

本番でWEBサーバを置き換えるときは最初1台だけPHP7にしたインスタンスをELBに紐付けて、問題がないことを確認してから残りのインスタンスも入れ替えるような方法を取りました。

リリース後に起きた問題点

以下のような対応漏れがいくつか発生しましたが、幸いサービスが止まったり見えなくなるような事態はありませんでした。

感想

以前までは多いときに1日3回ほどサービスが止まることもありましたが、PHP7.3へバージョンアップしたことでほぼ発生しなくなりサービスの安定稼働を実現できるようになりました。また、パフォーマンス向上によって起動するサーバの台数を減らせたり、コストパフォーマンスの良いインスタンスを利用できるようになったため、運用コストを大幅に削減することができました。

作業中はUnitテストやE2Eテストで既存の動作を担保できたのは大きい点で、心理的安全性が高い状態で作業ができました。

入社して2,3ヶ月後にバージョンチームにJOINをしたので、ドメイン知識が少なかったりシステムが複雑だっため構成の把握に苦労したこともありました。幸いリーダーのドメイン知識が高かったのでバージョンアップをやりきる事ができました。

バージョンアップ前と後でのパフォーマンス比較

GameWithは毎回サーバでHTMLをレンダリングしているため、今回のバージョンアップのパフォーマンス影響がダイレクトにでました。

Auditsのスコアや、Latency・CPU使用率が大幅に改善されました!

f:id:tiwu:20190925111004p:plain
バージョンアップ前

f:id:tiwu:20190925111033p:plain
バージョンアップ後

f:id:kuromoka16:20190925200655p:plain
Latencyのグラフです。PHP7.3のサーバが増えるにしたがって改善されています。
最終的にはphp5.6の時よりも2倍ほど速くなっています。

f:id:kuromoka16:20190925201902p:plain
CPU使用率のグラフです。紫がPHP5.6・青がPHP7.3で、PHP7.3のほうが低くなっています。
サーバー台数が同じ場合のcpu使用率は半分くらいまで落ちました。

今後の展望

  • PHP7の新機能の利用
  • インスタンスのスペックのさらなる最適化
  • サーバ台数のさらなる最適化
  • PHP7.4にバージョンアップ!?

最後に

まだまだ書ききれなかったエピソードがたくさんあるので、良かったらもくもく会などで会いに来てください!

GameWithのDeveloper向けTwitterアカウントを開設しました。

もくもく会の告知やブログの更新情報などを発信するので良かったらフォロー宜しくお願いします!

twitter.com

UX MILK Fest 2019に参加してきました!UX初心者デザイナーの振り返りレポート #uxmilk_fest #GameWith #TechWith

「デジタルなUXに関わる全ての人のためのUXデザインフェス」にデザイナーが行ってきた

こんにちは!GameWithデザイナーのfukiです。

前回の記事でもお伝えしました、GameWithがスポンサーとして協賛したイベント「UX MILK Fest 2019」に参戦してきましたので、今回は振り返りレポートを書いていきたいと思います!

イベントのUXが良い!

早速会場に足を踏み入れると、そこには芝生のカーペットが敷かれたおしゃれな素敵空間が広がっていました....!

木の椅子が並ぶ後ろにはラグが敷かれたエリアもあり、リラックスしながらお話が聞けたり休憩できたりしました。適度にゆるやかな空間がまさに「フェス」という感じで、肩肘張らずに過ごすことができました。

f:id:fukiworks:20190920150109j:plain

会場にはスポンサーのロゴが掲出されていました!感謝!

f:id:fukiworks:20190920145601j:plain

フリードリンク・フードも大変充実していて、

  • カレー
  • サンドイッチ
  • ジュース
  • お酒!!

を写真も撮らずに全て堪能してしまいました。カレー美味しかった....

どこをとっても主催の方がものすごく来場者のことを考えているのが実感できました。さすがUXイベント!

UX初心者がためになったセッション

今回のイベントのテーマは「UXデザインの解像度を上げる」。

UXってものすごい広い領域を指す言葉なので漠然としてしまいがちですが、どの登壇者の方も一歩踏み込んだ具体的な取り組みについてお話される方が多く、まさにこのテーマを体現しているような素晴らしいセッションばかりでした。

今回はその中でもデザイナーの私(UIデザイナー2年目のUX新人)がとても参考になったセッションをいくつか挙げて振り返ってみたいと思います。

リサーチなしではじめるUXデザイン(合同会社DMM.com 井上 誠さん)

f:id:fukiworks:20190920152536j:plain

ユーザーのことが全くわからない状態でデザインをするのは難しい。でもリサーチをしすぎるとさらに知りたいことがどんどん増えてきて、なかなかデザインに繋がらない....。

そんな時は、自分自身がユーザーに置き換わって、「自分ごと」としてデザインを考えると良いよ!という内容でした。

どんなにリサーチをしても、自分ごとにできていないとデザインにはつながりにくい

リサーチすることが目的ではなく、体験を設計するのがUXデザイナーの仕事であることを忘れない

といった言葉が深く印象に残りました。 もちろんリサーチは大切ですが、自分ごとの主観的な体験にはかなわない....。思い当たる節があります。

自分自身、またチームの仲間を「自分ごと」に持っていくためのコツまで解説していて、実行してみようという気持ちが湧いてきました!

f:id:fukiworks:20190920153023j:plain

BtoBtoCサービスのデザイナーがユーザーに近づくために実施したこと(株式会社ヤプリ 城 由美さん)

スライドを公開してくださってます!

ユーザーの気持ちや要望などが、加工された情報になってデザイナーの元に届いてしまう問題。ユーザーとの距離が離れていると起こるこういった状態への対処法をシェアしてくださいました。

ユーザービリティテストなど「できることを小さく実践する」というのはもちろん勉強になったのですが、一番なるほどと感じたのが「成果を共有すること」についてでした。

成果をデザイナーやチームだけでなく会社に広く公開することで、なぜやるのかであったり次にやることを提示でき、納得感を与えることができます。

そうして納得して腑に落ちてくれた方は、自分たちの業務とのつながりが見えてきて、UXやデザイン業務に対して協力的になってくれるとのこと。

私は別業種、別部署の方と仕事をする機会が度々あり、そのたびに「このデザインはユーザーの為にどう働くの?」というやりとりに難航することがあります。それは効果を裏付ける根拠がなくて、私も自信がなかったから。

私自身が行動して成果を共有すれば、周りの方の意識も変わって、あたらしいしくみが増えてユーザーとの距離が近くなる....!よし、頑張ろう!

コントを使ったワークショップに参加

UX MILK Festではワークショップもいくつか開催され、好きなものを選択して受けることができます。

今回私が選んだワークショップはこちら!

f:id:fukiworks:20190920155620j:plain

株式会社メンバーズ 川田 学さんのワークショップです。

ん〜?なかなかやることがイメージできない....ネタ作りでもするのかしら?と思いながらも、お笑いが好きでコントも好きなのでノリでチョイス!

サンドウィッチマンのコントからモデルパターンを抽出する!

note.mu

ワークショップの詳しい解説は川田さんが書かれた記事をご覧ください!

ここでは私がワークショップを受けた感想をメインに書かせていただきます。

まずワークショップが始まってすぐ、みんなでサンドウィッチマンのコントを5分ぐらい鑑賞しました。無論面白かったので普通に笑ってました。もうこの時点でこのワークショップにしてよかったなと思いました。

その上で川田さんがこのコントを分析して、感情が動いたり笑いが発生するパターン要素を16個まとめてくださいました。

私たちはこの16個のモデルパターンを使って、既存のカフェでの体験をリデザインする、という内容でした。

川田さんの資料がすごすぎて、受講者のみなさんがどよめいていた気がします。これを参考にすれば誰でも1本ネタが書けるんじゃ???

同じチームになった方がとてもお話を優しく聞いてくださる方で、ポンポンアイデアが出て楽しかったです。(昼から飲んでいたチューハイが4缶目に差し掛かってエンジンがかかっていたのもあるかもしれません。リラックスしすぎ!)

まさかの発表者に選抜

最後はなんと代表としてみなさんの前で発表することになりました。声が大きかったからかな....

モデルパターンの「最低、最高」を演出するために、カフェの並び列までは何もせず、スタッフの前に立った時から体験を提供します〜まではまともだったんですが、

肝心の体験がメニューをあみだくじにするとか、おみくじを置くとか、スタッフ全員が違う挨拶をするとかなど、半分大喜利みたいな回答になってしまいました...!みなさんが優しい目で見守ってくださっていたので、なんとか乗り切れました。

アウトプットの質はともかく、モデルパターンや感情曲線など、ある程度ツールが整っていると、ものすごいスピーディにアイデアが出たことに驚きました。

あと、コントを元にしているからか、脳内で想像するカスタマージャーニーが映像で再現されたのが印象的でした。なので文章化しづらい視線の動きや普段はよくみていないちょっとした引っかかりなどにも気づくことができました。実験は大成功だと思います!

まとめ

私は「UX」という言葉が少し苦手でした。あまりにも漠然としていて、どのことを指しているのかわからず不安だったので、進んで使おうと思っていませんでした。

ですが今回このイベントに参加したことで、私の中の「UXデザインの解像度」は確実に上がったと感じています。

どのセッションも共通して感じたのは「ユーザーや、仕事でやりとりする相手に真摯によりそい、最善を届ける努力をすること」が大事であるということです。

難しいことはまだまだわからないですし、プロの方から見たら「何をあたりまえのことを」と思われるかもしれないのですが、これこそがUXデザインの本質なんじゃないかなぁ、と新人ながら自分なりの答えを見つけることができました。

今回得た知識を無駄にしないよう、自分のできることからコツコツとUXデザイン業務を頑張っていこうと思います!

さいごに

GameWithでは一緒に働く仲間を募集中です!

毎月もくもく会なども開催しているので、気軽にご連絡ください!

hrmos.co

UX MILK Fest 2019にスポンサーとして協賛します #uxmilk_fest #GameWith #TechWith

こんにちは。GameWithのエンジニアのtiwuです。

この度、UX MILK Fest 2019にスポンサーとして協賛することになりました!

uxmilkfest2019.studio.design

当日は来場者の方にノベルティが配布されるのですが、弊社からは社内デザイナーが制作したデザインマネージャー採用のお知らせチラシをお渡しいたします。チームが求める人材について熱く語っておりますので、ぜひ目を通していただけますと幸いです...

f:id:tiwu:20190913143156j:plain

当日はGameWithのデザイナーが複数名参加するので、一緒に楽しみましょう!

さいごに

GameWithでは一緒に働く仲間を募集中です!

毎月もくもく会なども開催しているので、気軽に連絡ください!

hrmos.co

GameWith フロントエンド もくもく会 #14 開催しました #GameWith #TechWith #gamewith_moku2

こんにちは。GameWithのエンジニアのtiwuです。

8月29日(木)にGameWith主催で第14回目のもくもく会を開催しました!

GameWith フロントエンド もくもく会 #14

gamewith.connpass.com

今回のテーマも前回に引き続き、僕自身が関心を高く持っているフロントエンドを採用しました。

今回は社内1人、社外7人の合計8人で開催しました!

f:id:tiwu:20190329134140p:plain

もくもく会は最初にお知らせ、次に自己紹介と今日のもくもく内容を発表して、もくもくし、最後に進捗発表という流れで開催しました!

2時間ほどもくもくしたら本日の進捗の発表をしました!

  • Firebase functions + Express + Web Componentsの開発
  • 新しいJSフレームワークの作成
  • enebularを利用したIoT開発
  • ReactのSSRでブログを作成
  • 「JavaScriptコードレシピ集: スグに使えるテクニック278」で勉強
  • PWAのpush通知の実装
  • 画像をフロントで圧縮しFirebaseにアップロード機能の実装
  • Vue.jsを利用したtodo listの実装

といった様々なテーマの取り組みのもくもく会でした!

新しいJSのフレームワークの作成は驚きました!完成が楽しみです!

次回告知

次回は9/26に開催します!次回のテーマはiOSです!

gamewith.connpass.com

最後に

参加していただいた皆様ありがとうございました!

GameWithのDeveloper向けTwitterアカウントを開設しました。

もくもく会の告知やブログの更新情報などを発信するので良かったらフォロー宜しくお願いします!

twitter.com