タグ

ブックマーク / mixiengineer.hatenablog.com (40)

  • Char2Vec で文字の特性について調べてみた - mixi engineer blog

    ミクシィ Vantage スタジオのAI・ロボットチームで自然言語処理関連の研究開発に関わっている原(@toohsk)です. Vantage スタジオでは人の感情に寄り添った会話ができるAIの研究開発を通じて,新しいコミュニケーションサービスを生み出そうとしています. 今回, Char2Vec を用いた,文字毎の特性について実験を行いましたので,紹介したいと思います. Word2Vec とは Word2Vec は単語をベクトル表現に変換する方法です. これまでは自然言語処理の分野では単語を扱う場合, one-hot の形式で文章内の単語を表現することが多かったです. しかし,自然言語を機械学習で扱う場合や論文では,最近では必ずといっていいほど Embedding された状態,すなわち単語をベクトルに変換してから機械学習のアルゴリズムに与えています. ではなぜ one-hot の形式ではなく

    Char2Vec で文字の特性について調べてみた - mixi engineer blog
    advblog
    advblog 2017/10/13
  • Amazon EC2 リザーブドインスタンスの利用状況をDatadogで監視する(AWS Summit Tokyo 2017 で発表してきました) - mixi engineer blog

    はじめまして。北村です。 先日行われた AWS Summit Tokyo 2017 で、Datadog 様の EXPO セッション枠の一部を頂いて SNS「mixi」における Datadog 活用事例について紹介させていただきました。 speakerdeck.com 今回は、その発表の中で紹介させていただいた EC2 リザーブドインスタンスの管理・購入を支援する以下の自作ツールについて紹介をしたいと思います。 github.com ツールの概要 先にツールの概要を解説しますと AWSAPI から得られた EC2 インスタンスの稼働状況とリザーブドインスタンス契約情報を集計し 稼働中のインスタンス数 有効なリザーブドインスタンス数 オンデマンドインスタンス数 未使用状態のリザーブドインスタンス数 以上の推移を、Datadog 上でリアルタイムで可視化するというインスタンス集計プログラム

    Amazon EC2 リザーブドインスタンスの利用状況をDatadogで監視する(AWS Summit Tokyo 2017 で発表してきました) - mixi engineer blog
    advblog
    advblog 2017/06/14
  • OpenContrailを勉強してみた - mixi engineer blog

    サービス環境における仮想ネットワーク検討して、OpenContrailは追いかける価値があるのではないかと考えましたので、その過程を書こうと思います。3行でまとめると次のとおりです。 今日時点で使えそうなゲートウエイ実装を考えたときに、OpenContrailは良い選択肢です openvswitchはL2スイッチをエミュレーションしていて、OpenContrailはルータをエミュレーションしています。 macアドレスの隠蔽やmssの調整など、openvswitchではやりづらいこともケアされています。 今日の夜、OpenStack勉強会でOpenContrailの話があるらしいので、負けじと書いてみました。 背景 現在のミクシィのネットワークの悩みはたくさんありますが、特に次の2つの悩みを持っています 大きなL2ネットワークで運用する際の一般的な悩みを抱えている 単一のサービスを動かすこと

    OpenContrailを勉強してみた - mixi engineer blog
    advblog
    advblog 2013/11/15
  • OAuthのセキュリティ強化を目的とする拡張仕様を導入しました - mixi engineer blog

    こんにちは. 研究開発グループ ritouです. だいぶ前の記事で紹介したとおり, mixi Platformは様々なユーザーデータをAPIとして提供するにあたり, リソースアクセスの標準化仕様であるOAuth 2.0をサポートしています. mixi PlatformがOAuth 2.0の最新仕様に対応しました | mixi Engineers' Blog mixi Platformをさらに安全にご利用いただくため, OAuth 2.0におけるCSRF対策を目的とした拡張仕様を検討, 導入しましたので紹介します. OAuth 2.0の認可フローとCSRF エンジニアの方であれば, Webサービスに対するCSRF(Cross-site Request Forgery)をご存知でしょう. CSRF攻撃とは悪意のある外部サービスへのアクセスや特定のURLへの誘導などをきっかけとしてユーザーの意図

    OAuthのセキュリティ強化を目的とする拡張仕様を導入しました - mixi engineer blog
    advblog
    advblog 2013/11/14
  • プログラマではありませんが、プログラマの話をさせてください - mixi engineer blog

    はじめまして。8キロのダイエットに成功しましたが、最近リバウンド気味の土戸と申します。 私は今、弊社イノベーション・センター案件である、Plannah(プランナー)のプロダクトマネージメントとマーケティングに携わっております。 先日我がチームの開発メンバーである衣川から、簡単にPlannahの紹介がありました。多くの方々に記事を読んで頂き、そしてPlannahに関心を持って頂き、大変感謝しております。日は、Plannahの話は割愛させて頂き、ちょっとしたプログラマ話(?)をしたいと思います。 私はプログラミングを職業としているいわゆる"プログラマ"ではありません。ミクシィに新卒入社した2009年からしばらくは営業マンでしたし、その後も今に至るまでサービスディレクターとして勤めてきました。少しさかのぼって、小学校の頃は当時流行っていたGW-BASICでmud gameなどを作ってみたり、大

    プログラマではありませんが、プログラマの話をさせてください - mixi engineer blog
    advblog
    advblog 2013/11/01
  • Cobblerを使ったOSインストールとその後のクラウド化 - mixi engineer blog

    こんにちは。運用部 アプリ運用グループの清水です。趣味の楽器も気づけば20年目を迎えましたが、いっこうに上達している気がしません。 何回かに渡ってOS移行のお話を書いてきましたが、今回は、OSのインストールで使っているCobblerというツールの利用例を中心に紹介したいと思います。 OSインストールを楽にしたい ミクシィでは非常に多くのサーバーを運用しています。それらのサーバーにおいて、OSインストール作業は日常的に行われています。OSのインストールが必要になるケースは、例えば以下のような場合です。 サーバーを購入した サーバーが壊れ、修理した OSをバージョンアップする(移行する) サーバーの役割を変える(クリーンインストールする) VM(Virtual Machine)を作る 当然ながら、OSインストール作業をするために、わざわざデータセンターに行ってCDやDVDといったメディアを使い

    Cobblerを使ったOSインストールとその後のクラウド化 - mixi engineer blog
    advblog
    advblog 2013/08/15
  • mixiのアプリの設計がよく分かるブログ - スマートフォン開発研修教材の補足 - mixi Engineers' Blog

    こんにちは。Android の横幕です。Android が好きすぎて、来る日も来る日もアプリの実装が頭から離れず、毎日7〜8時間ほど睡眠をとっていますが全く疲れがとれた気がしない今日このごろです。はやく iOS のアプリ開発を覚えたいですが、まだ NSLog の使い方を覚えたばかりです。 さて、先日スマートフォン開発研修教材の公開についてでも触れましたが、Android・iOS のアプリ開発を始める人向けのトレーニング資料を公開しましたところ、以下のブログのような反響をいただきましたので、この場でもって回答をさせていただきたいと思います。 mixiのアプリの設計がよくわからない http://yamitzky.hatenablog.com/entry/2013/06/19/173713 に遷移します 設計思想の基は MVC iOS も Android も、フレームワークとしては MVC

    mixiのアプリの設計がよく分かるブログ - スマートフォン開発研修教材の補足 - mixi Engineers' Blog
    advblog
    advblog 2013/07/04
  • Google I/O 2013 報告会 やってみた - mixi engineer blog

    こんにちは、Android の横幕です。 Google I/O 2013 に参加して、綺麗なお姉さんに Google Glass について手取り足取りレクチャーしていただけたので、とてもテンションが上がっています。 去る 2013 年 5 月 28 日、弊社にて、「Google I/O 2013 に行ってきた@ mixi ~行ってる間に社長が代わってた\(^o^)/~」と題して、Google I/O 2013 の報告会を開催致しました。 ATND http://atnd.org/event/mixigoogleio Togetter まとめ http://togetter.com/li/509960 http://togetter.com/li/509928 弊社で大々的に報告会を開催するのは初めてでしたが、非常に多くの方にご参加いただき、大盛況のうちに無事幕を閉じることができました。 今

    Google I/O 2013 報告会 やってみた - mixi engineer blog
    advblog
    advblog 2013/06/07
  • スマートフォン開発研修教材の公開について - mixi engineer blog

    クラフトワークの来日公演3-D CONCERTS 1 2 3 4 5 6 7 8を観にいったら、顔が大きいのか、3Dメガネがきつくて切なかったもりもとです。 株式会社ミクシィでは、新卒入社スタッフをはじめ、これからスマートフォンアプリ開発を行っていく全スタッフを対象に、社内で「スマートフォン開発研修」を始めています。その研修資料をこのたびgithubで公開させていただきました。 mixi-inc/iOSTraining · GitHub https://github.com/mixi-inc/iOSTraining mixi-inc/AndroidTraining · GitHub https://github.com/mixi-inc/AndroidTraining これら文書は、それぞれCC BY-SA 3.0およびApache License 2.0とCC 2.5 Attributi

    スマートフォン開発研修教材の公開について - mixi engineer blog
    advblog
    advblog 2013/05/15
  • ユーザーファーストを実現するmixiの開発プロセス - mixi engineer blog

    デザインユニットUXデザイン担当の酒井です。 mixiでは昨年来、最重要キーワードとして「ユーザーファースト」を掲げ、ユーザー様のご意見やご利用状況に基づいたサービス施策の実現を素早く行えるようになるために、開発プロセスの改善を継続的に行なっています。今回は、この「ユーザーファースト」なmixiを実現するための取り組みについて、具体的にご紹介していきたいと思います。 なぜ今、ユーザーファーストなのか? 昨年11月に開催した『ユーザーファーストウィーク』で笠原社長からもご説明させていただきましたとおり、mixiというサービスが大きく成長したこれまでの数年の間に、いつのまにかユーザー様と私達との間に「ギャップ」が生まれてしまったという強い反省があります。mixiを取り巻く外部環境の変化に対応していく中で、これまでもユーザー様にとっての「心地よいつながり」とは何なのかを真摯に検討し、時流に合わせ

    ユーザーファーストを実現するmixiの開発プロセス - mixi engineer blog
    advblog
    advblog 2013/04/02
  • Android開発の効率を今日から確実に5%改善する方法 - mixi engineer blog

    暖かくなったり寒くなったり視界が真っ黄色になったり忙しい今日この頃ですが、皆様お元気でお過ごしでしょうか。動かないことで定評のある「右の方」raiです。mixiのAndroidクライアントアプリ初回リリース以来の登場です。部署もたんぽぽグループからイノベーションセンターという謎の組織へ移りました。大変ご無沙汰しております。 今回は、ミクシィにおけるAndroidアプリ開発現場で得られた経験から、意外と見えづらい開発プロセス上のボトルネックと、それを「いますぐ」「簡単に」改善できる、素敵なサービスについて簡単にご紹介したいと思います。 はじめに さて、ミクシィもAndroidアプリ開発を始めてから2年半ほどが経ちました。 2年も経つと、結構いろんな課題が見えてきて、それらに対する解決策もいくつか生まれます。 Androidプラットフォーム上での開発そのものに関して言えば、以前のエンジニアブロ

    Android開発の効率を今日から確実に5%改善する方法 - mixi engineer blog
    advblog
    advblog 2013/03/13
  • 続・技術的負債の把握と改善を促すために - mixi engineer blog

    こんにちは, 先日Kansai.pmで発表させて頂いたgoccyこと五嶋@たんぽぽグループです. 今回は, 前回紹介した技術的負債の把握と改善を促すためにの続編として, 僕が作ったPerl5コードのコピペ検出器について紹介させて頂きます. はじめに 今やPerl, Ruby等さまざまな言語で, 便利なライブラリ群やフレームワークを利用できる時代になりました. これらを使うことでソフトウェアの開発コストは格段に下がり, より素早く開発することができるようになっています. しかし, 当初予定されていた機能を実装して, 「よしできたから終わり!」というわけにもいきません. 何か物を生み出せば, 必ずそれを保守・運用するコストが発生します. 開発することが便利になった今, 開発物を保守・運用することを支援するツールも求められています. ですが, 保守や運用, とりわけ保守に関して支援するツールはそ

    続・技術的負債の把握と改善を促すために - mixi engineer blog
    advblog
    advblog 2013/03/12
  • DeployGate無料プラン&配布ページ作成機能をリリースしました! - mixi engineer blog

    みなさんこんにちは!デプロイゲート開発チームのkyoroこと井上恭輔と申します。 私たちはAndroidアプリ開発者向けのプライベート配信サービス「DeployGate」を開発・運営しています。 先日3月4日(月)に、このDeployGateを無料でご利用頂ける『無料プラン(FREE)』と、新機能として最大3万人の方々にアプリをワンクリックで配信できる『配布ページ作成機能』をリリースさせて頂きました。今日はこの場を借りてDeployGateのご案内と、開発に込めた想いなどをご紹介させて頂ければと思います。 私が新卒時代に書いたエントリー「オンラインコーヒーメーカー「萌香たん」とはじめるドキドキ☆コーヒーブレイク」から、実に丸4年ぶりの記事になります。人生というのは当に色々な事があるのだなと実感しています。技術面だけでなく、サービスの企画・運営面の想いなどもお話できればと思っておりますので

    DeployGate無料プラン&配布ページ作成機能をリリースしました! - mixi engineer blog
    advblog
    advblog 2013/03/07
  • Androidの機種依存問題を吸収するプロジェクトAndroid-Device-Compatibilityを公開したお話 - mixi engineer blog

    こんにちは。Androidユニットで開発とスクラムマスターをしています、横幕です。すっかり寒くなって、朝起きるのが辛い季節になりました。 先日、Android(TM)の様々な機種に依存する問題を吸収するためのライブラリプロジェクトをmixi, IncのGitHubリポジトリで公開しました。 今回は、このライブラリプロジェクトを公開するに至った経緯をお話しようと思います。 様々な種類の端末に対応するために乗り越えてきた困難 現在、Androidを搭載した端末には、多種多様なものがあります。 そして、OSのバージョンごとの違いだけでなく、同じAndroidを搭載していても、端末ごとに微妙に挙動が異なることがあります。 mixi公式クライアントアプリでも、端末ごとに微妙に挙動が異なることで発生する問題にいくつか直面してきました。 特定の端末で、文字が9,000文字までしか入力できない EditT

    Androidの機種依存問題を吸収するプロジェクトAndroid-Device-Compatibilityを公開したお話 - mixi engineer blog
    advblog
    advblog 2013/01/22
  • 「インタレストターゲティング」リニューアルの裏側 - mixi engineer blog

    こんにちは。下田@研究開発グループです。 前回は、かなりライトな「行って来ました」記事でしたので、今回はデータマイニング技術の活用事例の一つとして「インタレストターゲティング」という広告商品と、そのリニューアル案件についてご紹介します。 あらまし mixiには「インタレストターゲティング」という広告商品があります。まだ僕が入社する前の2009年に研究開発グループが広告の部署と協力して作成したプロダクトになります。 リリース当初は効果が高く、人気の広告商品の一つだったそうですが、メンテナンス性やオペレーション部分に問題等を抱えており、つい最近、再度広告関係の部署と協力して、バックエンドを作り直し、新しい仕組みをリリースするに至りました。 2012年12月現在、販売している広告商品としては、2009年作のプロダクトが動いていますが、間もなく切り替わる予定となっています。 以下、2009年製の今

    「インタレストターゲティング」リニューアルの裏側 - mixi engineer blog
    advblog
    advblog 2012/12/28
  • mixiのサーバOS移行のお話 - 前回補足&インストール編 - mixi engineer blog

    こんにちは。新しもの好きが集まる運用部アプリ運用グループの清水です。 前回の記事では、多くの反響をいただきました。ありがとうございます。 Twitterや、はてブのほとんどのコメントを読ませていただきました。 みなさんのOSの宗派が垣間見えた気がします。 さまざまなコメントをいただいていた中で、よくある代表的なコメントについて、改めてこの場を借りてお答えしたいと思います。 2012年12月28日追記: 以下のQAにつきまして、いわゆる"ネタ"として書きましたが、誤解を招き、不適切な表現で不快な思いをされた方々へ深くお詫び申し上げます。 また、QAの一部に関わるところですが、OS標準のパッケージを否定するつもりは全くございません。 Linuxを安心して使うことができるのは、Linuxディストリビューションに携わっているデベロッパーの方々の素晴らしい活動や成果によるもの、というのが揺るぎない事

    mixiのサーバOS移行のお話 - 前回補足&インストール編 - mixi engineer blog
    advblog
    advblog 2012/12/27
  • mixi Engineers' JavaScript Advent Calendar 2012をやりました - mixi engineer blog

    はじめまして、課金・プレミアムユニットの尾関です。 イブはクリスマスイベントのありそうなアプリ、ゲームを起動してイベントを回収するという神聖な行いをしていました。 さて、今日は皆さんに「mixi Engineers' JavaScript Advent Calendar 2012」というイベントをご紹介するため、初めてエンジニアブログを書きます。 「mixi Engineers' JavaScript Advent Calendar 2012」はその名の通り、ミクシィのエンジニア24人が12/1~12/24までの毎日、JavaScriptやそれに近い何かについてエントリを書いていくというイベントでした。 執筆者は全員がJavaScript委員会という、JavaScriptが大好きな人達が集う会に所属しています。 このAdvent Calendarをやることになったきっかけは、だんだんと委員

    mixi Engineers' JavaScript Advent Calendar 2012をやりました - mixi engineer blog
    advblog
    advblog 2012/12/25
  • Titanium? いいえ、Triainaです。 - mixi engineer blog

    どうも、5ヶ月ぶりのブログ投稿です、佐野です。僕は2012年8月よりメッセージユニットに加わり、主にiPhone公式クライアントにおけるメッセージ機能の改修に携わっておりました。 mixi Touch(スマートフォンブラウザ版)では2012年10月より一部のユーザに向けてmixiメッセージにおけるリアルタイムコミュニケーションを実現するための新UIを提供しておりました。この機能が近いうちに mixi の iPhone版、Android 版 公式クライアントでも利用できるようになります。 (画面は開発中のイメージです) この新機能は Triaina という自社製のフレームワークによって、iPhone版・Android版共に、WEB版と共通の HTML+JS コードを利用して作られています。 こういうと「Triaina? PhoneGap や Titanium と何が違うの?」とか「Faceb

    Titanium? いいえ、Triainaです。 - mixi engineer blog
    advblog
    advblog 2012/12/21
  • 技術的負債の把握と改善を促すために - mixi engineer blog

    こんにちは. 先日水道を止められて水のありがたみを再確認したgoccyこと五嶋@たんぽぽグループです. 今回は, 先日q_zouさんから紹介のあった技術的負債を減らす取り組みの一環で, 僕が開発したビジュアライザについてご紹介させて頂きます. はじめに 弊社では主な開発言語としてPerlを採用しており, そのソースコード量は数十万行単位に上ります. 自社で開発したライブラリ群はプロジェクトルート下のlib/Mixi/配下に設置されており, 更にその下でサービスや用途毎にNamespaceが分かれています(lib/Mixi/APIやlib/Mixi/Photo, lib/Mixi/Voiceなど). ※以降, 文章中のNamespaceという表現は, これら(lib/Mixi/APIなど)を指すものとします. 来であればNamespace単位で疎結合化されているべきですが, なかなかうまく

    技術的負債の把握と改善を促すために - mixi engineer blog
    advblog
    advblog 2012/12/13
  • 技術的負債を減らす - mixi engineer blog

    こんにちは、システム部長の松岡です。 はじめに 今回はミクシィの物作りの中で、技術的な負債を返済する取り組みの一つについてご紹介します。 ミクシィは2012年8月にユニット制に移行しました。これはユーザーファーストな開発を促進するための挑戦です。 裁量権が各ユニット長に落ちることで早い判断と実施が可能になります。 反面、ソースコードがユニットごとに完全に疎結合しているわけではありませんので、早い判断と実施の結果、他のユニットに迷惑がかかるかもしれません。 いつまでも、どの開発者も困らないような開発を進めていければ、問題ないことですが、これまでの開発で負債として溜まってきた事、今後の進め方次第でいずれ行き詰まる事があるとも考えています。 そこで、負債を解消するため or 未来に積まないための対応が必要となります。 ミクシィはとても技術に理解のある会社です。 私含め経営陣から積極的に負債を返

    技術的負債を減らす - mixi engineer blog
    advblog
    advblog 2012/12/10