サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Switch 2
tech.naver.jp
LINE技術戦略室のYoichiroです。今回の記事では、先日発表させていただきましたLINE BusinessConnectの技術的な話を少ししてみようと思います。 LINE BusinessConnectとは? まずは、LINE BusinessConnectとは何かを説明しましょう。簡単に言うと「プログラムで自動応答可能な公式アカウントを作れます」というものです。 今までの公式アカウントやLINE@は、それを運営するスタッフの方々が管理用に提供されているCMSから何かメッセージを投稿することで、そのメッセージがユーザに届けられています。そういう意味では「人間」が発しているメッセージですね。 これに対して、LINE BusinessConnectの場合は、ユーザが送信したメッセージを受け取り、その内容に応じて自動的にそのユーザに返事を送信する、という処理を行うプログラムが作れるようにな
FirefoxOS版LINEは、2013年下半期に開発を開始し、2014年2月にリリースされました。FirefoxOS LINEは、現在世界19カ国で使用されており、Firefox Marketplaceでのダウンロード数が多いアプリの1つです。また、多くのユーザーが好意的なレビューを書いており、人気アプリTOP 7の中で唯一星4つの評価を維持しています。 このようにユーザーから好評を得ているFirefoxOS LINEは、決して簡単に作られたものではありません。FirefoxOS LINEがどのようにスタートし、またどのように開発されたのか、性能向上のためにどんなことをしてきたのか、開発に携わる中で経験したことをどうやって共有しているのかについて紹介します。 WebOSのスタート 2013年、MWC 2013で注目されたのはWebOSの登場でした。FirefoxOS(以下FXOS)、Ti
こんにちは。今回はITサービスセンターより、インフラ運営の観点から急増するLINEインフラの課題と対応について記させていただきます。 はじめに 先日開催したLINE Developer Conference(インフラ編)には大勢の方にいらしていただきました。カンファレンスでは、LINEサービスが始まってから約2年の間に我々はどういった方法でインフラ運営を行い、またどんなことに悩んできたのかを、システム、データベース、ネットワークの観点からそれぞれ発表させていただきました。 カンファレンスはLINE株式会社が様々な技術をどのように使い、どのように運用を行っているのか。現在どのような技術的なことに取り組んでいるのか日本のエンジニアの皆さんに知っていただくために開催されました。結果としてインフラ編では150名の定員に対して430名のご応募をいただいたとのことでLINEサービスに対する関心の高さを
[日本語バージョン] Hi there. My name is Hayaishi, and I’m part of the Technology Strategy Department here at LINE. I’d like to share a few details about the development process of the iOS version of the LINE app in this blog entry. The Development Environment for the iOS LINE App Managing the Source Code We manage our source code with Git. We also use GitHub Enterprise as our Git repository browser wh
[English version] はじめまして、LINE技術戦略室のhayaishiです。 趣味は自転車と言っていますが最近は全く乗っていません。 この記事では、LINEのiOSアプリ開発に関することをいくつかご紹介させていただこうと思います。 LINEのiOSアプリ開発環境 ソースコード管理 ソースコードはgitで管理しています。gitのリポジトリブラウザとしてGithub Enterpriseを利用しており、Githubでお馴染みのPull Requestなどを活用して開発を進めています。 また、LINEのiOSアプリのタスクについてはGithub Enterpriseとは別のチケット管理システムを利用しておりそちらのステータスと連携して開発者、QA、プランナー間の開発状況の共有を行っています。 Gitでの開発フローについて LINEのiOSアプリはgithub-flowの様に
こんにちは。LINEで品質向上を担当しているソクチャンです。 この文では、LINEが全世界にサービスを拡大する過程において、どのようにユーザーの立場から品質を測定し、改善しているのかについての取り組みをご紹介します。しかし、ここに書いた取り組みはごく一部であり、実際にはすべての開発者、企画者、さらには事業担当者もユーザーの立場から、各自努力をしていると思います。LINEの競合に影響のない小さな範囲で書いてみます。 LINEは2011年6月、日本でサービスを開始して以来、現在では4億人に近いユーザーが使用するメッセンジャーとなっています。他のどのサービスよりも急速に成長しているだけに、LINEも数多くのユーザーの品質問題を経験してきました。人間が自分の生まれたところ以外で生きるためには、考えや話す方法を変えなければならないように、LINEも生まれた日本を脱し、他の国でもうまく動作するために
皆さんお元気ですか?LINEサーバー開発室でサーバ開発を担当している崔珉秀と申します。 この記事ではLINEのサーバーの開発とリリースプロセスについて述べたいと思います。 LINEの開発者はどんな形で開発しているのか、サービスに変更事項をどのように適用しているのか、お互い協力してより良い開発環境を得るためにどんな努力をしているのかをお伝えする機会になったらいいなと思います。 ここで述べるリリースプロセスは、LINEのサーバ開発の流れとソース管理システムの運用方法、そして本番環境に変更事項を適用するまでの過程です。 LINEのServer Applicationはその役割とシステムの構成によって複数のServer Applicationに分かれて構成されています。 例えばNetwork通信及びProtocolなどを担当するApplication、messagingやsocial graph
Introduction In a previous post,* we gave an overview of how we came to adopt the networking protocol “SPDY” for use with the messaging service offered on LINE. This time we would like to go into detail about the various features that SPDY has to offer. *Adopting SPDY in Line – Part 1: An Overview, http://tech.naver.jp/blog/?p=2381 Discussion Security In the previous post, we mentioned that under
Greetings, this is the LINE Security Center. LINE has grown into a global messaging app enjoyed by people from all around the world. We are proud to say that LINE not only offers incredible ease of use, but also a secure environment where users’ information is kept safe and secure. Our Security Practices Meet World Class Standards LINE maintains world-class data centers to safeguard user informati
暑さもやわらいできたような気配がしてきました。皆様いかがお過ごしでしょうか。 久しぶりのブログ更新です。UIT 富田です。 今回はCSSでのレイアウトをより柔軟にしてくれるflexboxについて解説します。 flexboxは大幅な仕様の変更が過去に2度もあり、各ブラウザとそのバージョンによって実装している仕様が異なるため、後方互換をきっちり対応しようとすると、gradientと並んで2大考えるのをやめたくなるプロパティとなっております。 しかしflexboxを利用することで、現時点ではCSSだけでの対応が難しかったり、複数のプロパティを複雑に組み合わせる必要があるレイアウト(例えば一番大きい高さに揃えた要素を横に並べたり、子要素を上下左右中央位置したりといったもの)が、容易に利用できるようになるという大きなメリットもあり、使えるならば使っていきたいプロパティでもあります。 にも関わらずf
こんにちは、こんばんわ、お久しぶりです。 NHN Japan ウェブサービス本部開発1室UITチーム 吉田徹生(@teyosh)と申します。 3ヶ月ぶりの登場です。 AngularJSって何?という方は第一回目の記事[Angular JSを使おう]を御覧ください。 さて、3ヶ月の間にstableは1.0.5と順調にアップデートしております。 ちゃんとアップデートがされると使っていても安心できます。 今回はAngularJSを利用していると気になるng-clickやng-repaeatなどAttributeに設定されているものについてです。 これはdirectiveの拡張でAngularが機能を設定してくれます。 Hello, World 以下のようなコードがあるとします。 <div ng-app='hello'> <div ng-controller='helloCtrl'> <
こんにちは.サービス開発2チームの中村です. 先日1/23に行われた日本最大級のHadoopユーザー会イベント,「Hadoop Conference Japan 2013 Winter at 東京ビッグサイト」にて,私,中村と同チームの大平が講演させていただきました. 中村の方からは,まずLINEのサービスやストレージの要件と現在の1億ユーザーを支えるHBaseで扱う規模感を共有しました.後半では,HBaseのサービス投入から1年経過して,我々のために作ったもの・得られたノウハウについて少しだけ紹介しました. ポイントは,HBaseをリアルタイムサービスのストレージとして採用し,ノンストップ環境の中でどのように可用性の高いストレージの構築を目指しているか,という点です.このために,HBaseが備えるレプリケーションやリージョンの自動管理機能などは使用せず,自分たちのサービスに特化させた方法
あけましておめでとうございます。NAVERまとめのフロントエンドを担当している縣です。初詣で引いた大吉のおみくじを握りしめながら今年も張り切っていこうと思います。 今回はJavaScriptの遅延ロードの仕組みをNAVERまとめに導入した際のお話を紹介します。 遅延ロードの検討 昨年NAVERまとめのまとめ閲覧ページや、まとめ編集ページでのJavaScriptファイルの読み込みを遅延ロード化する作業をしました。元々はページ読み込み時に全て読み込ませていましたが、JavaScriptファイルが巨大になってきてパース・実行に時間がかかるようになったことから遅延ロードを検討することになりました。 遅延ロードの利点というとJavaScriptファイルの読み込み・実行によるブラウザのレンダリング停止を防ぐのはもちろんですが、どのファイルがいつどこで必要になるかを明確にすることもでき、依存関係を動的
We are constantly striving to improve the user experience of Line. Given the nature of Line as a communication tool, one way to do this is to reduce the time it takes to send and receive messages. Making the connection to our servers more efficient is one way to accomplish this. Until recently, Line had been using HTTP to transmit messages. HTTP, well known for its use in web browsers, has its str
こんにちは。検索サービス開発4チームでメッセージアプリのLINEのiPhoneアプリ開発を 担当している金泰敬(キム テギョン)です。 今回説明させて頂きたい主題はLINEのモデル側を支えているCore Dataです。 Core Dataは、MacOS XのベースFrameworkであるCocoaのMVC構造のうち、 Model側を担当しているFrameworkです。 Core Dataを利用するとデータモデルの設計、オブジェクトのデータの読み取り、書き込み、管理などを簡単に行うことができます。 現在、LINEではCore Dataを利用してメッセージ、トーク、グループ、ユーザーなどを管理しています。 例えば、相手のメッセージが到着するとまずコアのデータからSqliteDBに格納します。 そして保存されたメッセージに関連しているトークでも更新が行われます。 もしそのメッセージが
UITチーム 清水大輔 (@tori3_jp)です。 2012年も残り僅かとなりましたが、年の瀬をいかがお過ごしでしょうか。 Backbone.js Advent Calendar 2012の10日目のエントリーとなります。 先月、DailyJSというJavaScript関連のトピックを配信しているサイトに Backbone.jsの次期リリースに関する記事が投稿されていました。 今回はこの中からBackbone.jsの次期リリースで予定されている変更点について紹介したいと思います。 Backbone.$ Backboneで扱うjQuery互換ライブラリへのエイリアスが変更されます。 ローカル変数$を参照していたものがBackbone.$に変更されます。 - var $ = root.jQuery || root.Zepto || root.ender; + Backbone.$ =
歳晩の候、皆様におかれましてはますますのご繁栄の事とお喜び申し上げます。 NHN Japan ウェブサービス本部開発1室UITチーム(長い) 富田(@a_t)です。 CSS Preprocessor Advent Calendar 2012の3日目、css書くのに便利だからといって盲目的にcompass使ってないでちょっとは中でなにをしているか知っておいてもよかろうもん ということで タイトルのとおり、compassがベンダープリフィックスの制御をどのように行なっているかについて書きます。compassのソースをまだ一度も見たことがない人向けの内容です。 sassについてよくしらない、というかたは過去の記事をよむとわかるかもしれません。 CSS3関連のmixinはなにをしてるか compassのCSS3関連のミックスインは、引数に値を渡してあげるだけで、しちめんどくさいベンダープリ
こんにちは、こんばんわ NHN Japan ウェブサービス本部開発1室UITチーム 吉田徹生(@teyosh)と申します。 前回の続きでAngularJSについて紹介していきたいと思います。 AngularJSって何?という方は前回の記事[Angular JSを使おう]を御覧ください。 ここ数年でJavaScriptのコードは膨大に増えてきていると感じています。 出来うる限りバグを少なくしよう、保守をしやすくしようと様々なライブラリーやデザインパターンが導入されてきています。 それに伴い、JavaScript界隈にもテストを重視する様になってきて、クオリティも上がってきていると思います。 さて、JavasScriptのテストといえばQunit、Jasmine、Mocha、seleniumなどを挙げられると思います。 今回はそれらとは少し違うAngular JSのために作られたTes
こんにちは、こんばんわ NHN Japan ウェブサービス本部開発1室UITチーム 吉田徹生(@teyosh)と申します。 最近ではJavaScriptのMVCフレームワークが雨後のタケノコのようにたくさん出てきています。 先日Quirks ModeがJavaScript Libraryの利用状況をアンケートが公開していました。 backbone.jsやknockout.jsなど、MVCライブラリもランクインしてきました。 その中で今回はAngularJSを紹介しようと思います。 まずは、Angular JSについて AngularJS(アンギュラージェイエス)は、Googleとコミュニティによって開発されているオープンソースのJavaScriptフレームワークである。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としている。MIT L
今年はさだまさしさんのデビュー40周年ということで、記念コンサート「さだまつり」も絶賛開催中の折も折、残暑も厳しい中皆様いかがお過ごしでしょうか。大平です。 さだまさし氏は経験の豊富な方ですので彼の歌や発言から学ぶことは (…) 続きを読む »
今年はさだまさしさんのデビュー40周年ということで、記念コンサート「さだまつり」も絶賛開催中の折も折、残暑も厳しい中皆様いかがお過ごしでしょうか。大平です。 さだまさし氏は経験の豊富な方ですので彼の歌や発言から学ぶことは大変多いのですが、個人的に非常に感銘を受けているのは「歌はコンサートで成長する」という言葉です。歌い手として、「歌」という作品を作って公開・販売するだけが仕事ではなく、実際にコンサートなどでお客さんに届け、お客さんの反応を参考にしたり日々の演奏活動の中で試行錯誤を繰り返して、内容をブラッシュアップし洗練させていく過程を指して先の言葉があるのだと思います。実際にさだまさし氏の曲はCDに収録されているものと実際にライブで演奏されるものとでアレンジが大きく異なり、かつ作品としても質が向上しているものが少なからず存在します。 …あまりさだまさしの話を続けると本当に上長に叱られますの
皆様、お久しぶりです。 NHN Japan ウェブサービス本部の「キョウ」と申します。 前回の「初心者向けschema.org講座」に引き続き、 今回は「Schema.orgをパーツ化しリッチスニペットを実装する」方法についてお話しようと思います。 「Schema.orgで実装すると時間がかかる!」 「Schema.orgの為に工数はかけられない」 そんな方にお勧めです。 目次 1. 最近のSchema.orgについて(2012年6月) 2. Schema.orgのマークアップ方法について考えてみる 3. [対応案1] <meta>と<link>のみでSchema.orgを定義する(没案) 4. [対応案2] Schema.orgマークアップ専用のTable要素を用意 5. 最速実装する為のワークフロー 6. 今日のまとめ 7. 最後に ※ Naverの業務内容とは直接は関係ござい
満足度上位にあるものだけをチョイスし、シリーズ別に集計した結果 (★があるほど上位、★なしはランキング外) デザインや画面、音質などは明確に人気のあるシリーズがあるようですが、バッテリーに関しては意見が分かれ、ずば抜けて評価の高いものがないようですね。 ここでちょっと掘り下げてみましょう。 はて、省電力とは? +は電力を蓄積するもの、-は電力を消費するもの (+)バッテリー容量 (-)画面 (-)CPU (-)通信 (-)アプリ (+)バッテリー容量 Androidの場合、バッテリー容量はバッテリーの裏側に記載されていますが、なかなかあけてみませんね。 現在は1500~1800Ahが主流となっているようです。もっともスマートフォンでバッテリー容量の大きかったのが、今年の4月にdocomoから発売されたGalaxy noteで2500mAhですが、これは画面が大きいということもあります。
こんにちは、開発1室UITチーム 清水@tori3_jpです。 さて、今回はLINEのスマートタブレット向けブラウザ版でも採用したJavaScriptのMVC FrameworkであるBackbone.jsについて紹介したいと思います。 この数年でブラウザの高速化やHTML5の機能の実装が進むにつれHTML/CSS/JavaScriptでよりネイティブアプリケーションに近い表現がブラウザ上で可能になりつつあり、それにともない開発はより複雑になってきています。 jQuery pluginなど使えば短いコードで様々な機能を手軽に実装できますが、規模が大きくなるにつれcallbackが増え、徐々に見通しの悪いコードになりがちです。また、DOMとデータの分離が難しくなることも問題となってきます。 そこで、Javaなどで広く使われているデザインパターンの1つであるMVCパターンで構造化された設計
Hi, I’m Shunsuke Nakamura (@sunsuk7tp). Just half a year ago, I completed the Computer Science Master’s program in Tokyo Tech and joined to NHN Japan as a member of LINE server team. My ambition is to hack distributed processing and storage systems and develop the next generation’s architecture. In the LINE server team, I’m in charge of development and operation of the advanced storage system whi
こんにちは開発チームの崔珉秀と申します。 今回はnginxというウェブサーバーについて話をさせて頂きます。 nginxは最近数年の間けっこう人気が高くなっています。特によく使われているApacheやLighttpdなどのウェブサーバーと性能の面で比較することがよくありまして、優れた性能で単純なstaticファイルを転送するウェブサーバーからCGIサーバー、reverse proxyサーバーなどの様々なウェブリクエスト処理に関わる分野で導入されています。 今日はnginxの性能の比較よりもサーバーの開発者(nginx module)もしくはサーバーの運営者としてのnginxにある仕組の中で一つを紹介したいと存じます。 サーバーの開発や運営をする場合ロジックや設定などの変更により配布の後、サーバーを再起動することがあります。 その再起動の時にウェブサービスとしてリクエストの処理を続けなが
お世話になっております、開発チームの池上です。 最近ちょっとした検索機能にSolrを導入しました。Solrは検索エンジンのミドルウェアでご存知の方も多いと思います。大規模な構成による導入実績が豊富でWeb上にもたくさんの事例がありますが、今回は慎ましい構成の事例を紹介させて頂こうと思います。 使用しているSolrのバージョンは2012年1月時点で最新の3.5.0です。 なお、検索エンジンやSolrに関する基礎的な情報につきましては、有用な解説がすでに多数存在していますので割愛させて頂きます。 今回はつぎの前提条件と要件を意識して構築しました。 前提条件 サーバは極力少なめで ミッションクリティカルな機能ではない データ量はそれほど多くない 要件 更新はある程度頻繁 遅くとも数分以内にはインデックスに更新を反映させたい 一般的なWeb検索のように「いい感じに見つける」よりは「(入力されたキ
NHN Japan ウェブサービス本部の「キョウ」と申します。 NAVERサービスのマークアップ等を担当している、「突っ込みづらいキャラ」で有名な男ですw 今回はマークアップエンジニアやSEOエンジニアの中で注目を集めている、 schema.orgについてご説明させていただきます。 この記事を読んでいる方の中には「schema.org公式サイト(英)」 「schema.org 日本語訳」をご覧になった方も多いと思いますが・・・ 皆様理解できましたか? 正直難易度が高いと思うので、初心者向けに内容を砕いて説明していきます。 目次 1. schema.orgとは? 2. schema.org導入メリットは? 3. schema.org 初心者向けQ&A 4. schema.org実践編 5. 最後に 1. schema.orgとは? 簡単に説明すると、schema.orgの仕様通りにH
度々の登場で恐縮です。大平です。 先日、ご縁がありまして掲題のイベントで発表をさせていただきました。 http://www.10gen.com/events/mongo-tokyo-2012 http://blog.10gen.com/post/16370064130/recap-mongodb-tokyo-2012 この記事では、発表させていただいた資料の公開と、参加しての簡単な感想を書かせていただきます。 発表資料 発表させていただいた資料は以下になります。 以前「MongoDB 勉強会 in Tokyo」で発表させていただいた内容の続編的な話で、技術的に深掘りするというよりも、MongoDBの使用事例・検証事例をいくつかのバリエーションでお話させていただきました。 途中、若干MongoDBをDisる流れになってしまいましたがw、それぞれのプロダクトの良さや欠点がある中、今まで
次のページ
このページを最初にブックマークしてみませんか?
『tech.naver.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く