見出し画像

【12月度】 社内勉強会を開催しました。

こんにちは!ジオロジックでインターンをしているmatzです。

ジオロジックでは、毎月月末に「ジオロジックカンファレンス」という勉強会を行っています。今回は、12月分のエンジニア勉強会、ジオロジックカンファレンスの様子を紹介します。

Vueのなかみ

@kamithon

kamithonさんがVueの内部について話してくれました。

Vueとはジオロジックで使用しているJavaScriptのフレームワークです。Vueは、コンポーネントを定義・登録し、template内にコンポーネント名を記述するだけでhtmlがレンダリングされます。

この仕組みがどう裏で作られているのだろう😮 と気になったのがVueの中身を調べたきっかけだそうです。

内部では、new Vueしたときに、親コンポーネント配下に子コンポーネントがtree状に組み立てられていくのですが、そのtree構造をつくるため、templateにあるhtmlをcompileしてASTを生成していることが分かったそうです。
単純に表示するだけでも、目に見えない場所でVueがものすごく頑張っていることが分かったそうです。

自然言語処理をやってみた

@haru

haruさんがkaggleのデータセットを使い、ツイートが災害に関する内容かどうかを分類する自然言語処理を用いたモデルを実装した話をしてくれました。

自然言語処理のタスクには、形態素解析、構文解析、意味解析、文脈解析があるそうです。
日本語は英語と比べて単語の切れ目が分かりにくいため自然言語処理が難しいそうです。

プロジェクトマネジメントのこころ

@yabooun

スライド

yaboounさんはジオロジック のCTOです。
今回、プロジェクトマネジメントについて話をしてくれました。
会社活動の仕組みからマネジメントの役割を説明し、マネージャに求められる能力を説明してくれました。そして、それぞれの役割から、マネジメントの核とはなにか、どのように実現するのかについて解説しました。


shapeless

@sue

スライド

sueさんがshapelessの話をしてくれました。

shapelessは型クラスと依存型の考え方を取り入れたジェネリックプログラミングのscalaのライブラリです。shapelessを使用すると似たような構造をしているクラスを少ないコードで変換することができます。

DDDで設計されたバックエンドアプリケーションでは、ServiceクラスはRepositoryクラスを通じて、DBと値のやりとりをします。
その際、アプリケーション内部で使われるドメインモデルとDBのテーブルに格納されているレコードは分けてクラスを定義をします。しかし、ドメインモデルとレコードで定義するクラスの構造がほぼ同じで、クラスのフィールドが多くなると双方を変換する処理を書くのが面倒になるときがあります。

shapelessを使うと、クラスに定義されているフィールドが多くなっても、短いコードで双方を変換することができます。

PWA

@kantoku

kanotokuさんがPWAの話をしてくれました。

PWAは progressive web appsの略称です。PWAの特徴は、インストールせずにプッシュ通知やホーム画面にアイコン追加できることだそうです。
kantokuさんがPWAにするメリットについて解説してくれました。

開発者目線
Android・IOS共通
アプリの審査が扶養
表示速度が早い -> SEO対策

ユーザー目線
通信量・データ容量が少ない(キャッシュ)
検索してすぐアクセスができる

他にもkantokuさんが作ったwebサイトのPWA化の流れもシェアしてくれました。

kamithonさん、haruくん、yaboounさん、sueさん、kantokuさん、ありがとうございました!

この記事が気に入ったらサポートをしてみませんか?