タグ

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

  • スマートフォン開発研修教材の公開について - 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
  • 続・技術的負債の把握と改善を促すために - mixi engineer blog

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

    続・技術的負債の把握と改善を促すために - mixi engineer blog
  • 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
  • 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
    hide_o_55
    hide_o_55 2012/12/21
  • Perl Oceanとmixiのチャット機能トライアルの紹介 - mixi engineer blog

    大槻唯が好きすぎて辛いlapis25です.エンジニアブログをはじめて書きます. この記事では,リアルタイムコミュニケーションフレームワークスイート Perl Oceanの紹介と,Perl Oceanを用いて開発した,mixiのチャット機能のトライアルについて紹介したいと思います. XMPP まずは,Perl Oceanのコア技術である,XMPPの概要を軽く説明します. 1990年代後半からYahoo! Messenger,Microsoft LiveやAOL AIMなどさまざまなメッセンジャアプリが開発されていましたが,それらのアプリは独自の仕様によって作られていました.メッセンジャに要求される仕様を標準化するためにJabberが生まれました.Jabberは名前をXMPP(Extensible Messaging And Presence Protocol:拡張可能なメッセージとプレゼンス

    Perl Oceanとmixiのチャット機能トライアルの紹介 - mixi engineer blog
  • 詳細 ECMA-262-3 第8章 評価戦略 - mixi engineer blog

    全国20人の ECMA セオリストのみなさま、おつかれさまです。大形尚弘です。 ついに Dmitry 先生の ES3 シリーズも最終章となりました。この後に ES5 シリーズが5章続きますが、それらは基的に今シリーズの補足として書かれたものですので、ここまでお読みいただいたみなさまは、ほぼ ECMAScript の理論的側面を理解したと言えます。 もしそうでない部分があったとしても、実際に ECMAScript の仕様書をご覧いただければ、これまでとは全く理解度が違っていて、あっという間に足りない知識を補足できると思います。端的に、「仕様が読める」ようになっているはずです。 ES5 であれば、PDF である仕様書を、有志の方が es5.github.com にて「注釈付きの」 HTML 形式で公開し、頻繁に更新されています。注釈の一つはもちろん我らが Dmitry 先生の ES シ

    詳細 ECMA-262-3 第8章 評価戦略 - mixi engineer blog
  • 詳細 ECMA-262-3 第7章2節 OOP: ECMAScript での実装 - mixi engineer blog

    こんにちは。大形尚弘です。 さて、ついに OOP の話も ECMAScript の実装に移ります。乗りに乗った Dmitry 先生が、前節を越えるボリュームを持って、日全国30人(はてなブックマークの平均による導出)の ECMAScript ファンの皆さんに襲いかかります。 正直に言って、私はもう10年以上 JScript 、 JavaScript 、 ActionScript に関わってきましたが、プロトタイプの話は、内部 Prototype プロパティが「どういうわけか」コンストラクタ関数の prototype プロパティと同じ呼び名を与えられていることを発端として、常に混乱を伴ってきました。一度理解したつもりでも、すぐに忘れてしまい、わけが分からなくなってしまうのです。 それはどういうことかというと、一度もしっかり理解していなかったからです。 この節を読めば、それが理解できます。お

    詳細 ECMA-262-3 第7章2節 OOP: ECMAScript での実装 - mixi engineer blog
  • 詳細 ECMA-262-3 第6章 クロージャ - mixi engineer blog

    おつかれさまでございます。東洋大学柏原選手の好きな声優は花澤香菜さんですが、株式会社ミクシィ大形選手の好きな声優は五十嵐裕美さんです。お世話になります。 さて、 Dmitry 先生の ECMA-262-3 シリーズもついに山場、クロージャの章へとやって参りました。「 JavaScript はクロージャが使えて強力」「 JavaScript 理解のキモはクロージャ」などといった売り文句や脅し文句を耳にされたことは無いでしょうか。クロージャがなぜ強力なのか、そしてそれはどのような仕組みに基づくものなのか、これは ECMAScript だけに留まらず、一般的な意味でクロージャを理解できる名章です。どうぞお時間のある時に、気持ちを落ち着けて、ごゆっくりご覧ください。 詳細 ECMA-262-3 シリーズ 第1章 実行コンテキスト 第2章 変数オブジェクト 第3章 this 第4章 スコープチェーン

    詳細 ECMA-262-3 第6章 クロージャ - mixi engineer blog
  • 詳細 ECMA-262-3 第5章 関数 - mixi engineer blog

    あけましておめでとうございます。おつかれさまでございます。先日渋谷の、会社から徒歩5分のところにお引っ越しをし、今年は仕事に燃える、声優では五十嵐裕美さんが好きな、大形尚弘です。 さて、 ECMAScript のセオリストを目指す人々を甘く誘い、そして悟りか眠りのどちらかに確実に到達させる伝説的名著、 Dmitry 先生の ECMA-262-3 シリーズも第5章となりました。今回は関数がテーマです。 今回もまた伝説的に長くなっておりますので、気持ちが落ち着いているとき、時間のあるときに、ごゆっくりお読みいただければ、これまで正確な理由を知らず自分なりのベストプラクティスとして使っていたような書き方に明確な理由付けが与えられ、自信を持った JavaScript 生活につながっていくと思います。それではどうぞ。 詳細 ECMA-262-3 シリーズ 第1章 実行コンテキスト 第2章 変数オブジ

    詳細 ECMA-262-3 第5章 関数 - mixi engineer blog
  • 詳細 ECMA-262-3 第3章 this - mixi engineer blog

    どうもおつかれさまでございます。たんぽぽグループの大形尚弘でございます。好きな言語は Dylan です。好きな声優は五十嵐裕美さんです。 さて、週刊のはずが月刊になってしまった、 Dmitry 先生の ECMA-262-3 シリーズの第3章をお送りします。文中、未だ訳出の終わっていないスコープチェーンや関数の章への参照がありますが、特にスコープチェーンにおいてこの時点である程度理解しておきたいとお感じになる方もいらっしゃるかと思います。その辺りは、以前私個人のブログで翻訳・公開させいただいたコア・JavaScript ( JavaScript. The Core. )でも簡単に触れられておりますので、適宜ご参照ください。 また、章とは全然関係ないのですが、先日 JavaScript Advent Calendar 2011 (オレ標準コース)に参加させていただき、 ECMAScript

    詳細 ECMA-262-3 第3章 this - mixi engineer blog
  • Sinon.JS を使った JavaScript のテスト - mixi engineer blog

    初めましてこんにちは。ソーシャルクライアント開発の tanabe と申します。 今回は?Sinon.JS を使った JavaScript のテスト方法を紹介したいと思います。 Sinon.JS って何? Sinon.JS はノルウェーのエンジニア Christian Johansen さんが書かれた、JavaScript 用のライブラリです。スタブやモック、フェイクオブジェクトの提供に特化していて、QUnit などのテスト用のフレームワークや実行環境に依存しない所が特徴です。Christian Johansen さんは?Test-Driven JavaScript Development の著者でもあり、こちらは近々翻訳版 が登場するようです。 では早速、Sinon.JS を使ったテスト手法をご紹介していきたいと思います。稿ではテストフレームワークは QUnit を採用しています。 時間

    Sinon.JS を使った JavaScript のテスト - mixi engineer blog
  • mixi Engineers' Blog » 詳細 ECMA-262-3 シリーズ・第1章 実行コンテキスト/第2章 変数オブジェクト

    初めましてこんにちは。たんぽぽグループの大形尚弘と申します。好きな言語は Dart です。どうぞよろしくお願いします。 さてもう昨年のことになりますが、私個人のブログにて、 Dmitry A. Soshnikov さんの JavaScript. The Core. という記事を翻訳させていただきましたところ、予想以上の反響をいただきました。 JavaScript の実装部分、例えば今なら HTML5 の色とりどりな API といったキラキラした部分だけでなく、 ECMAScript の仕様そのものに興味のある方が、こんなにいたなんて! と、いうわけで、日では、先日上梓されました『パーフェクト JavaScript 』でのみ触れられているような、 ECMAScript の言語仕様そのものについて、同じく Dmitry さんが書かれた ECMAScript3 および 5 に関する詳細記事シリ

    mixi Engineers' Blog » 詳細 ECMA-262-3 シリーズ・第1章 実行コンテキスト/第2章 変数オブジェクト
  • Jenkins で任意のブランチをテストする - mixi engineer blog

    PHP よりは Xslate が好きな加藤和良です。プログラミング言語のなかでは Scala が好き です。 さて今回も いまからでも間に合う開発者テスト Buildbot で継続的インテグレーション Jenkins はじめました + ほか3つ に引き続き開発者テストの話をします。 テストをリモートで実行したい 最近になって何度か「このブランチのテストを Jenkins で一度だけ実行してもらえませんか?」という相談をうけました。最初はなにか勘違いをされているのかと思い「いや Jenkins がやっている仕事はテストを実行しているだけで、テストは手元でも実行できますよ」と説明していたのですが、話を聞いていると「テストの実行が遅いので Jenkins のホストを使いたい」という意図だということに気づきました。 以前に何度か説明している通り mixi における「ブランチ」は開発版です。安定版に

    Jenkins で任意のブランチをテストする - mixi engineer blog
  • mixi Engineers' Seminar #2のご報告 - mixi engineer blog

    最近iPhoneを手に入れ、ガラケー、AndroidWindows Phone 7、iPhoneと4台持ちになったmilanoです。 こんにちは。 先週、mixi Engineers' Seminar #2を弊社セミナールームにて開催したので、その報告をしにやってまいりました。 前回に引き続き、今回もスマートフォンをテーマとしました。 前回はさらっとした紹介でしたが、今回は実際にスマホアプリを開発している立場からの工夫や思想などのお話をしていただきました。 ということで、当日使われた資料と動画を公開します! 開発者のためのiPhone - Android 開発者のためのiPhoneAndroidアプリ移植のポイント View more presentations from yoski サイドフィード株式会社の赤松洋介さまより、ツイキャス・ビューワーをiPhoneからAndroidに移植

    mixi Engineers' Seminar #2のご報告 - mixi engineer blog
  • mixi Engineers' Blog » スマートフォンブラウザのWebInspectorをリモートで実現するweinreが凄い

    こんにちは、寝過ごして長野まで行きそうになったソーシャルクライアント開発のtakimoこと瀧です。 先週弊社数名がアメリカで行われていたVelocity 2011 - O'Reilly Conferencesに参加しました。 そこではモバイル端末のテストやパフォーマンスについての講演やLTがあったようです。 自分もお土産話を色々聞きたいので詳しくは誰かが書いてくれるはず...です。 その中で気になったプロダクトがあったので紹介したいと思います。 weinre - Web Inspector Remote weinreはFirebug(Firefox)やWebKitのWebInspectorのようなデバッグ機能をリモートで提供してくれるプロダクトです。 iPhoneAndroid(2.1以上)には一応コンソール機能のようなものがありますが 基的には出力だけ ソフトキーボードでデバッグ用

    mixi Engineers' Blog » スマートフォンブラウザのWebInspectorをリモートで実現するweinreが凄い
  • Jenkins はじめました + ほか3つ - mixi engineer blog

    こんにちは。加藤和良です。 まずあの話を書いて、それを前提にあの話を書いて、みたいなキューが筆者の中にはあったのですが、正直キューの先端につまってる話はだんだん個人的な関心および記憶がうすれてきました! 昔のはなしですからね。 というわけで、最近のまとめをさらっと書いて、新しいネタをすぐ書ける状態にリセットしたいと思います。 Jenkins mixi ではバージョン管理システムとして Subversion を使っています。安定した、いつでもリリースできるバージョンを trunk に、開発中の機能は branches 以下に作業ブランチをつくり、レビューや QA などの後に trunk にマージする、という運用です。 Buildbot はこのうち trunk だけを追っていたのですが、徐々に「このブランチBuildbot で追うようにして、結果をこの IRC チャンネルに書きこんでほしい

    Jenkins はじめました + ほか3つ - mixi engineer blog
    hide_o_55
    hide_o_55 2011/06/02
    Test::Synchronizedいいな
  • Flash?いいえ、HTML5です: ファイルのドラッグ&ドロップによるフォトアップロード機能について - mixi engineer blog

    はじめまして。コミュニケーションサービス開発部の澤と申します。コーヒーカレーをこよなく愛する新卒2年目の新米エンジニアで、弊社Webのフロントエンドを主に担当しています。最近はmixiスマートフォン版(mixi Touch)の開発にも精力的に取り組んでいます。 さて、日はPC版のmixiで1つの機能をリリースいたしました。ファイルをWebブラウザにドラッグ&ドロップするだけで写真をmixiフォトにアップロードできるもので、HTML5 File API※1を採用しています。記事ではこの機能について色々とお話をしたいと思います。 なにこれ? 以下では、ドラッグ&ドロップによるアップロード機能を「機能」と呼びます。 百聞は一見にしかずです。機能のプロモーションムービーがありますので、まずはこちらをご覧ください。 動画では下記を説明しています。 従来のアップロード方法からドラッグ&ドロッ

    Flash?いいえ、HTML5です: ファイルのドラッグ&ドロップによるフォトアップロード機能について - mixi engineer blog
  • YAPC::Asia Tokyo 2010 - mixi engineer blog

    実はJapan Perl Association略してJPAの理事だったりするmilanoです。 こんにちは。 さて、Perlと言えば、10/15,16に年に1度の祭典YAPC::Asia Tokyo 2010が行われました。 改めて紹介させていただきますと、YAPC::Asiaというのはmixiでも使われているプログラム言語Perlのカンファレンスです。 Perlを使っている、Perlを愛している人たちが一堂に会し、発表したい人が自由に発表する、そんなイベントです。 今年はミクシィから4人がスピーカーとして発表しました。 そして2名がボランティアとして運営に関わっていました。 イベント終了後時間が経ってしまいましたが、それぞれの発表について、発表者自らの紹介とともに、ブログエントリや発表資料をまとめていきたいと思います。 Inside Mixi by hiroki システム技術部たん

    YAPC::Asia Tokyo 2010 - mixi engineer blog
  • 1