LINE Fukuokaの開発拠点が新しくなりました

こんにちは、LINE株式会社で技術イベントなどを担当しているKushiiです。

LINEでは東京をはじめとして国内では福岡や福島、国外では韓国・台湾・タイなどに開発拠点があり多くのエンジニアたちがコードを書いています。
今回は、LINE Fukuokaがオフィスを移転し、エンジニアたちが働く環境も刷新されましたのでご紹介したいと思います。

場所は博多駅直結のJRJP博多ビル。オフィスエントランスではLINEのキャラクターたちが出迎えてくれます。

安定した love を提供するために

LINE株式会社のmoznionです。

私の所属するチームではLIVEという動画配信サービスを開発しています。芸能人や有名人の生配信やコンサートの様子の中継など様々な映像コンテンツが日々配信されているホットなサービスとなっておりiOS/Androidアプリと共にPCブラウザをサポートしています。
本記事ではこのLIVEにおける連打を支える技術についてご紹介します。

AWS SUMMIT TOKYO 2016参加記録

こんにちは。LINEの鈴木です。

AWS SUMMIT TOKYO 2016が6月1日から3日にかけて開催されました。私は開発環境改善とサービス開発支援に従事していますが、近年のDevOpsにおいて Amazon Web Services (AWS)のサービスや関連事例は見逃すことができません。今回はこのイベントに参加してまいりましたので、弊社におけるDevOpsの実践と比較しながらセッションを振り返ってみたいと思います。
*写真提供: AWSJ

AWS SUMMITとは

その名の通りAWSに関するや事例や活用方法がAWSサービス提供側からだけではなくAWSを利用している企業からも様々な視点から紹介されるカンファレンスです。 私は LINE に入社する前に何度か参加したことがありますが、入社してしばらく経ちますので実に数年ぶりの参加です。General ConferenceとDeveloper Conferenceの2つが並行して行われていましたが、私は主にDeveloper Conferenceのセッションに参加しました。

LINE Trial Bot SDK ができるまで

はじめに

LINE株式会社の松野です。

先日、LINE BOT API Trial Accountが発表され、熱狂的に世界中のデベロッパーに迎えられました。今まで契約を締結した企業デベロッパーしか開発することができなかった LINEのBotアカウントを個人でも簡単に開発できるようになったからです。
そういった中で、なぜ我々がLINE BOT API Trial AccountのSDKを開発するに至ったのか、そしてどうやって1週間でリリースできたのか。その経緯について以下に解説させていただきます。

社内プロジェクト「Armeria」をオープンソース化するために行った6つのステップ

Armeriaは、Java 8およびNetty上に非同期RPC/APIクライアントサーバを実装したものです。LINEは昨年11月、ArmeriaをApache License 2.0のもと、オープンソースとして公開しました。Armeriaは、HTTP/2をセッションレイヤプロトコルとして使用する高性能の非同期Thriftクライアントサーバを構築するために立ち上げたプロジェクトですが、基本的にプロトコル非依存型で拡張性に優れています(例えば、HTTP/2によって静的ファイルを処理すると同時に、Java EE Webアプリケーションを起動することができます)。

今回の記事では、技術的な面にフォーカスするよりは、社内プロジェクトをオープンソース化する過程についてご紹介したいと思います。Armeriaの技術的な情報が知りたい方は、2月にLINE福岡オフィスにて開催された第14回LINE Developer Meetupで発表した資料をご参考ください。

try! Swift 登壇レポート

try! Swift に参加して

こんにちは、LINEでiOSエンジニアを担当しているInami (@inamiy) です。

先日、2016年3月2日〜4日の3日間にかけて、「try! Swift」というSwiftカンファレンスが東京・渋谷で開催されました。 弊社もゴールドスポンサーとして協賛した同イベントですが、総勢500人を超える参加者のうち実に3割近くの方々が海外からの参加で、女性講演者の比率も高く、 これまでのSwift/iOS勉強会ではなかなか見られなかったようなとても国際色豊かで華やかなイベントとなりました。 私は今回、スピーカーとして登壇する貴重な機会をいただき「パーサーコンビネーター in Swift」という関数型言語のテーマについて話しました。
スライド
GitHub
雰囲気
動画

Cocos2d-xにおけるマルチスレッドを利用した並列処理技法―物理演算パフォーマンスの最適化に向けて―

こんにちは。LINEでモバイルゲームの開発を担当しているSTです。今回は、オープンソースのモバイル向けゲームエンジンの世界シェア1位(25%)を誇るCocos2d-xにおいて、マルチスレッドを利用して並列処理を行う方法をご紹介します。シングルスレッドで動作していた既存の物理演算をマルチスレッド化して並列処理するように構造を改善し、パフォーマンスを向上させる方法について説明します。

マルチスレッドを利用した物理演算の並列処理構造の設計

マルチスレッドを利用した物理演算の並列処理構造を説明する前に、まず既存のシングルスレッドを利用したCocos2d-xのアップデートのループを説明しましょう。

LINE Developer Week 2015

LINE台湾支社でAPI開発とアプリケーション分析を担当しているAugustin Wangと申します。今回は、2015年11月に開かれたLINE Developer Weekについて、レポートしたいと思います。

韓国に到着

いよいよ待ちに待ったLINE Developer Weekの初日です!仁川国際空港からバスで1時間ほど移動して、書峴(ソヒョン)駅にあるLINEの韓国オフィスに到着しました。オフィスには、かわいいLINE FRIENDSのキャラクターと各種グッズが飾られていました。

ここでは、日本と中国から来たたくさんの仲間と出会うことができました。英語・日本語・中国語・韓国語が混ざった会話になっていましたが、LINEのエンジニア同士では言葉の壁を感じることはありませんでした。

LINE Bug Bountyの結果と総括

はじめに

こんにちは。LINEでセキュリティに関する業務を担当しているMJです。以前こちらの記事で、LINE初の試みである「LINE Bug Bounty Program」について紹介いたしましたが、今回、改めて内容を振り返りながら、その結果について書かせていただこうと思います。

LINE Bug Bountyは、8月24日から9月23日までの約1ヶ月間で行われ、その期間に発見した脆弱性を報告してくださった方には、最高で1件20,000米ドル(約240万円)をお支払いするというプログラムです。このような制度は国内ではまだ実施例が少なく、あまり馴染みがないかもしれません。しかし、LINEではユーザーの皆様により安全なサービスを提供したいと考えており、そのための取り組み、制度のひとつとして、今回のBug Bounty Programを実施しました。

本プログラムは我々にとっても初めての試みでありまったくの未知数だったのですが、結果的に194件の報告を受け、XSS、CSRFなど計14件をクリティカルな脆弱性として対応させていただきました。また報告件数の半分以上は日本国外からのものであり、海外のユーザーからの関心も大きかったことは大きな驚きでした。

では、結果の詳細について実際に見ていきましょう。

メッセージの安全性新時代:Letter Sealing

こんにちは。LINEでセキュリティに関する調査、開発を担当しているJIです。

今回の記事では、メッセンジャーアプリにおけるセキュリティについて、中でもネットワークを通じたメッセージの送受信時に想定される問題と、その解決のためにLINE 5.3より追加されたLetter Sealing機能についてご紹介します。

メッセージを安全に渡す方法

秘密情報のやり取りは太古の昔からずっと行われてきたことであり、人々は人通りの少ない場所に隠れて密かに内緒話をしたり、仲間内だけで通じる暗号を使って他人には解読不能にしたりすることで、秘密が漏れないようにしてきました。

しかし、このような方法は相手が近い距離にいる場合に限って使えるものでした。インターネットのような遠距離通信手段が存在しなかった頃は、文字を書いた文書を封筒に入れ、受取人へ人づてに渡す方法しかありませんでした。ただし、人が配達する過程でも、封筒をこっそり開封して中身を盗み見てから元通りに封をしてそのまま届けるという問題が発生しました。また、文書の内容を修正・改ざんして違う内容のものを渡されていたとしても、それを差出人が確認できる方法はありませんでした。そのため、差出人が書いた内容を配達員から安全に守りながら伝達することはとても難しいことでした。

そこで、人々は新しい方法を思いつきました。内容の秘密保持ができないならば、少なくとも誰が文書を作成したのか、誰かが途中で封筒を開封していないか確認できる印をつけるべきだと思うようになったのです。こうして誕生したのがシーリングスタンプ(letter seal)です。これは、伝えたい内容を書いた文書にしっかり封をした後、蜜蝋(wax)のようなもので完全に封印する方法でした。配達員が中身を見るには封蝋を破らなければならないため、受取人は封の状態を見て配達中の盗み見や内容の改ざんの有無を確認することができました。そして、破いた封を元に戻せなくするために、固有の文様が刻印された印璽(シール)を押しました。