LINEでフロントエンド開発を担当しています。プログラミング言語に興味を持っています。
この記事はLINE Advent Calendar2018の16日目の記事です。 こんにちは!LINEでフロントエンド開発を担当しているJunと申します。最近のフロントエンド世界は面白いことがいっぱいで全部把握できないくらいですが、個人的に一番興味があるのは機械学習です。今日はWEBフロントエンドでの機械学習というテーマで、TensorFlow.jsを使って簡単な機械学習を実装してみた経験について書きます。 TensorFlow TensorFlowはオープンソース機械学習フレームワークです。機械学習でよく使われるモデルや関数などを抽象化しているので、アプリケーションプログラマでも簡単に機械学習を実装することができます。 そして今年の中旬頃、TensorFlowのJavaScript portのTensorFlow.jsが公開されました。最近AppleのCore MLやGoogleのML Kitなど、クライアントで機械学習モデルを動かすことが一般的になってきていると思いますが、TensorFlow.jsはブラウザ上で機械学習モデルを動かすものとなっています。WEB環境で直接機械学習を動
こんにちは、LINEでフロントエンド開発を担当しているJunです。この記事はLINE Engineering Blog「夏休みの自由研究 -Summer Homework-」の4日目の記事になります。 この記事ではJavaScript ecosystemの一つ、module bundlerについて書きたいと思います。まずmodule bundlerという概念について簡単に紹介し、その後module bundlerが実際どう動くのかについて自作module bundlerを書いた経験と共に説明します。 Module bundler? Moduleシステムは大きいコードベースをmoduleと呼ばれる単位に分割できるようにする構造のことです。JavaScriptは長い間moduleシステムを持っていませんでしたが、2009年Node.jsがCommonJSというmoduleシステムを使い始めて以来、JSでもmodule化したコードを書くのが普通になりました。そしてECMAScript 2015でJS言語仕様に新しいmoduleシステム、ES Modulesが含まれるようになり、もはやmodu
こんにちは!LINEでフロントエンド開発を担当しているJunと申します。この記事はLINE Advent Calendar 2017の4日目の記事です。今日はMessaging APIのNode.js版SDKの開発について書きたいと思います。Node.js版SDKのv1.0がリリースされてもう半年以上、今更感がすごくありますが、開発前から今にかけて面白かったことや工夫したことをいろいろ紹介します。 開発のはじまり Node.js版の開発が始まろうとしていた当時、Messaging API SDKが対応している言語プラットフォームは以下の6つでした。 Java Perl Ruby Go PHP Python 各SDKの開発は担当のチームがあるわけではなく、その言語に興味を持っている社内の人がボランティアで開発していました。そしてNode.jsはどんな感じだったのかというと… (社内WikiのMessaging API FAQから) …という感じでしたね。SDK開発自体はもちろん誰でも参加できる雰囲気ですが、そのプラットフォームの経験があまりないと後のメ
こんにちは、LINEでフロントエンド開発を担当しているJunです。 2016年10月24日~28日の5日間、「LINE Haskellブートキャンプ」というプログラムがLINEの渋谷オフィスにて開催されました。今回の記事では、同プログラムに参加した感想を書きたいと思います。 Haskellとは Haskellは、柔軟性、合成可能性(composability)、安全性を維持しつつ、高性能のソフトウェアの作成を可能にする現代的なアプリケーションプログラミング言語です。ここ最近、Facebookやスタンダードチャータードなど複数の企業でHaskellを導入して商用利用の可能性を検証した例が増えており、数多くの言語・ライブラリがHaskellの方法論を借用して業界から注目を集めています。 LINEでも勉強会を立ち上げてHaskellを学習したり、社内サービスをHaskellで開発したりするなど、Haskellへの関心が高まっています。こうした中、5日間にわたって開かれた「LINE Haskellブートキャンプ」は、Haskellに興味のあるエンジニア同士が集まってHaskellに入門してみ