LINE Developer Workshop & Hackathon 2015

こんにちは、新米ソフトウェア開発者のJamesです。

今回は今年1月に開催された開発者向けワークショップ「2015 LINE Developer Workshop」についてレポートしたいと思います。

JavaScriptのクロージャ入門とECMAScript 6のletキーワードによる変数宣言

こんにちはUITチームの手島です。

先日社内のセミナー(勉強会のようなもの)でJavaScriptのクロージャについてお話しさせていただいたので、その内容をblogでご紹介させていただきます。

クロージャ自体はJavaScriptだけが持つ機構ではなく、現在様々なプログラミング言語でサポートされています。最近ではSwiftやJava 8など、クロージャを使える言語が増えてきています。

本記事ではクロージャとは一体なんなのかをJavaScriptの具体的な例を交えて初心者向けに解説します。また、ECMAScript 6のドラフトにあるletキーワードによる変数宣言についても少しご紹介します。

LINEのマイクロサービス環境における分散トレーシング

LINEとマイクロサービス

LINEのアプリは、トークをはじめとして、電話、ショップ、公式アカウントなど、多数のサービスで構成されていますが、これらのサービスはモノリシックな単一のシステムとして開発されているわけではありません。それぞれ独立したシステムとして開発・運用され、お互いにAPIを介してコミュニケーションする、いわゆるSOAやマイクロサービスと呼ばれるアーキテクチャになっています。

本エントリでは、大規模なマイクロサービス環境において、システムのトレーサビリティを向上させるためのLINEバックエンドの取り組みを紹介します。

FluentdとNorikraを使ったLINE BusinessConnectエラー検知&通知の仕組み

LINE技術戦略室のYoichiroです。今回は、徐々に数が増えてきたLINE BusinessConnectのエラー検知とその通知の仕組みについて紹介してみたいと思います。

LINE BusinessConnectって何ですか?

まず「LINE BusinessConnectの技術話」をご覧ください。

「メッセージが届かない」原因は?

LINE BusinessConnectは、今年の2月26日に行った「LINE Showcase 2014 Feb.」イベントで発表されました。既に半年近く経っていますが、いくつかの事例も登場していますので、LINEをお使いの方々に「企業サービスの新しい使い方」を体験していただくことができつつあるのかな、と嬉しく思っています。単なるメッセージングサービスの域を超えて、僕らも「え、そんな使い方がっ!?」と思う機会も多いです。今後もLINE BusinessConnectの事例を楽しみにしていて欲しいと思っています。

さて、LINE BusinessConnectの大きな特徴は、「LINE株式会社だけで開発が完結しない」ということです。LINE BusinessConnectにおけるLINE Platformの役割は「土管」です。その土管から流れてくるLINEユーザからのメッセージを処理するのは、LINE BusinessConnectを使って具体的なサービスを提供する各企業のサーバになります。ユーザが投稿したメッセージやスタンプなどは、文字通りLINE Platformを「右から左に」受け流され、対象の企業のサーバに届けられます。そして、メッセージの内容やスタンプの種類などが解析され、それに応じた返信がその企業のサーバから送られます。

LINE BusinessConnectに対応するための第一歩は、LINE Platformに登録を行い、LINE Platformから企業のサーバに情報を流すための技術的な設定を行うことです。つまり、LINE Platformに企業のサーバのEndpoint URLを登録します。その後、LINE PLatformから各種メッセージや友だち追加されたことなどの通知が送られてくるわけです。順調にいけば、登録したEndpoint URLに対してLINE Platformから接続が行われ、JSON文字列があっさりと流れてきます。

新時代に備える!AngularJSにリマーケティングタグを実装する方法

皆様お久しぶりです。
LINEの天然男子。UITチームのキョウです。

最近、AngularJSで構築したコンテンツに様々なトラッキングコードを入れて
計測を強化する対応を行ったのでご紹介します。

はじめに

現在、様々なJSフレームワークがでていますが「やはりJavaScriptはSEOに弱い」と言う
風潮の影響で、実業務で積極的に使えないのが現状でした。

しかし、2014年5月にGoogleからJavaScriptのインデックスを強化していると言う話が出ています。

Velocity.jsによるフェーズ有りアニメーションの実装

こんにちは&はじめまして、最近脱ペーパードライバーを目指し車の運転を始めたUITチームの手島です。

今回は最近の記事と比べると少し軽めな(?)フロントエンドのお話をさせていただきます。

LINE占い “宇宙兄弟 宇宙占い”特集ページ

先日、LINE占いの中で宇宙兄弟占いという特集ページがリリースされました。この特集は講談社様、コルク様、ロックミー様のご協力をいただいて企画・作成をしました。アプリ内ウェブビューで宇宙兄弟のキャラクター達による占いがおみくじ感覚で楽しめます。

LINEの暗号化について

LINEセキュリティチームです。今回はLINEで利用されている暗号化技術について紹介します。

LINE 3G通信での暗号化有無の確認

LINEについて一般的に誤解されている情報の中には、暗号化方式が弱いため外部に情報が流出する可能性が存在するという点と、wi-fi通信の中ではデータが暗号化されているがモバイルネットワーク(3G、LTE)を使用する場合は暗号化されていない、という点があります。
まず、暗号化が実際に実行されているかどうかについては、これを言葉で説明するのは意味がないので、現在アプリケーションが安全な状態であることを直接目で確認するほうが確実です。

暗号化の有無を確認するにあたって最も一般的に使用されるのは、特定の端末から送信されるネットワークデータをキャプチャーしてこれを観察する方法です。モバイルの場合、インターネット接続時にネットワークデータをキャプチャーするためのPCをVPNのようなサービスを利用して経由させ、データを観察します。Androidの場合は、Shark for root のようなアプリを使用すればパケットをキャプチャーできます。

実際にメッセージを送ってテストをしてみると、暗号化の有無がよくわかります。まず、LTEでスマートフォンからテストメッセージを送信してみましょう。

LINE BusinessConnectの技術話

LINE技術戦略室のYoichiroです。今回の記事では、先日発表させていただきましたLINE BusinessConnectの技術的な話を少ししてみようと思います。

LINE BusinessConnectとは?

まずは、LINE BusinessConnectとは何かを説明しましょう。簡単に言うと「プログラムで自動応答可能な公式アカウントを作れます」というものです。

FireFoxOS版のLINE

FirefoxOS版LINEは2013年下半期に開発を開始し、2014年2月にリリースされました。FirefoxOS LINEは現在世界19カ国で使用されており、Firefox Marketplaceでのダウンロード数が多いアプリの1つです。また、多くのユーザーが好意的なレビューを書いており、人気アプリTOP 7の中で唯一星4つの評価を維持しています。

このようにユーザーから好評を得ているFirefoxOS LINEは、決して簡単に作られたものではありません。FirefoxOS LINEがどのようにスタートし、またどのように開発されたのか、性能向上のためにどんなことをしてきたのか、開発に携わる中で経験したことをどうやって共有しているのかについて紹介します。

急増するLINEインフラの課題と対応

急増するLINEインフラの課題と対応

こんにちは。今回はITサービスセンターより、インフラ運営の観点から急増するLINEインフラの課題と対応について記させていただきます。

はじめに

先日開催したLINE Developer Conference(インフラ編)には大勢の方にいらしていただきました。カンファレンスでは、LINEサービスが始まってから約2年の間に我々はどういった方法でインフラ運営を行い、またどんなことに悩んできたのかを、システム、データベース、ネットワークの観点からそれぞれ発表させていただきました。