タグ

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

  • 理想の開発環境 - mixi engineer blog

    たんぽぽグループの森です。 一日の半分近くを机に座ってすごすエンジニアにとって、快適な開発環境は切実な問題です。 外界からうけるストレスを極力排除し、効率よくフロー状態にはいることと、フロー状態を長く維持することはとても重要です。 お前は今までに購入したキーボードの数をおぼえているのか?と突っ込まれてもしかたが無いキーボード遍歴を重ねましたが、KINESISに出会い キーボードに関してはまぁまぁ満足することができました。 机・椅子・マウス・ディスプレイとまだまだ欲望は果てしないのですが、今回のミクシィ社の引越しに伴い、エンジニアの机と椅子にオカムラ社のクルーズ&アトラスが選定され、机と椅子に関してもかなりの満足度を得ることができたので自慢報告します。 クルーズ&アトラスの御紹介 クルーズ&アトラスはオカムラ社が販売している低座・後傾姿勢を特徴としたパーソナルワークステーションです。 2

    理想の開発環境 - mixi engineer blog
    teppeis
    teppeis 2014/05/17
    「クルーズ&アトラスがずらーと並ぶ姿は壮観です」
  • 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章 変数オブジェクト
  • 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
    teppeis
    teppeis 2013/11/16
    “OAuth 2.0におけるCSRF対策を目的とした拡張仕様”
  • JaSST'13 Tokyo に参加して、考えたこと - mixi engineer blog

    こんにちは。 「アサシンクリード3」というタイトルから、てっきり3部作だと思って、シリーズをプレイし始めたところ、実は5部作だったという事実を知って、軽く戦慄している品質管理部門の柿崎です。ちなみに2までクリアしました。 先日、国内最大級のソフトウェアテストシンポジウムである「JaSST'13 Tokyo」に参加して来たので、レポートします。 と、思ったのですが、既に素敵なレポートがあちらこちらに存在するので、シンポジウムを通して見えてきた、ミクシィの品質保証、QAチームを取り巻く状況を書いてみたいと思います。 テストの自動化 ここ数年、「テストの自動化」はホットなキーワードであり続けています。今年のシンポジウムでも、幾つかテスト自動化に関するセッションが開かれていました。 自分の参加したセッションでは、テスト自動化の難しさや、自動化を担えるエンジニア像について議論が交わされていました。世

    JaSST'13 Tokyo に参加して、考えたこと - mixi engineer blog
    teppeis
    teppeis 2013/03/17
    「テストのコモディティ化」「テスト自動化や、ピアレビューの活用について取り上げましたが、これはテストがQAチームだけの活動ではない」
  • iOSクライアントアプリとスクラム開発環境下での受け入れテストについて - mixi engineer blog

    はじめまして。 iOSクライアントアプリ, Windows8クライアントアプリのQAを担当している、品質管理グループの菅原です。 今回は、私が普段行なっているiOSクライアントアプリの受け入れテストについて、ご紹介します。 これまでのmixiの受け入れテストは、ウォーターフォール開発に合わせた手法で行ってきました。そんな中、2012年8月のユニット制移行に伴い、スクラム開発を導入するユニットが増え、私の参加しているユニットでもスクラム開発が導入されました。 スクラム開発環境下では、従来の手法では対応できないことが多く、テスト実行前、テスト実行中、テスト完了後の各フェーズにおいて、試行錯誤を重ねています。 テスト実行前・テスト準備 テスト準備は、基的にリファイメントとスプリント計画から得られるユーザーストーリーと、大まかな仕様の把握のみに留めています。 ウォーターフォール開発の受け入れテス

    iOSクライアントアプリとスクラム開発環境下での受け入れテストについて - mixi engineer blog
  • ミクシィの技術研修について - mixi engineer blog

    こんにちは。道路に飛び出したに向かって危ないって叫ぼうとしたら思わず「ニャーッ!!」って叫んでしまった技術技術支援グループのtakaiです。 ちなみには無事でした。よかったですね。 さて、今回はミクシィで実施している技術研修について紹介しようと思います。 大事なこと ミクシィの技術研修は主に新卒のエンジニア職向けに実施しています。 肝心なコンセプトは既に部長が書いてしまいましたが大事なことなのでもう1度言います。 現在ミクシィでは以下のコンセプトのもと、技術研修を行なっています。 関係各所、チーム、チーム横断でのタスクに関して 迷惑をかけずに自分で判断できる/あるいは正しく判断を仰げる状態までの成長現状の技術的問題点や課題を把握し、改善策や改善のためのプランニングができる各項目への知識体系の羅針盤を提供して、自学自習によってより高度な領域まで発展することができる 「ミクシィでしか使え

    ミクシィの技術研修について - mixi engineer blog
  • ミクシィの総合職向け技術研修について - mixi engineer blog

    こんにちは。梅雨ということで達を洗ってさっぱりした技術技術支援グループの高井です。 ちなみに、洗った直後のからは恨みがこもった目で睨まれておりましたが、乾いたらフワフワになりまんざらでもなさそうです。 今回はミクシィで12年度新卒の総合職向けに実施した技術研修についてご紹介します。新卒のエンジニア職向け技術研修については前回書いた記事にてご紹介していますのでそちらをご参照下さい。 大事なこと 総合職向け技術研修のコンセプトは Web業界で働くための基礎教育 です。 このコンセプトを考えるに至るまでに以下3点の課題がありました。 職種の幅が広い Webサービスの基礎が漠然としている 「ミクシィでしか使えないこと」の教育は最小限に抑える 各課題を細かく見ていきます。 職種の幅が広い ミクシィで言うところの総合職とはミクシィのサービス企画や広告企画を考えたり、広告商品周りのセールスプランナ

    ミクシィの総合職向け技術研修について - mixi engineer blog
    teppeis
    teppeis 2012/06/19
    mixiは総合職向けにデータ分析の研修もやってるんだ。素晴らしい。
  • プランニング・ポーカーで始める楽しい見積り - mixi engineer blog

    こんにちは、UX統括部の横幕です。すっかり春になって、桜を眺めるのが気持ち良いですね。 最近、社内で活発に「デイリースクラム」が行われるようになりました。 日々、チームメンバーの持っているタスクの進捗を確認し合うことで、スケジュール感の共有・調整、あるいは、チームメンバー同士でタスクの振り分けを見なおしたりなどができ、チームの有機的な動きを作ることが出来るようになってきています。 さて、そんななかで、今回は、プロジェクトを進める上で、また日々のデイリースクラムをする上で重要な「タスクの見積り」についてお話しようと思います。 これが実際のPlanning Pokerです。アメリカのMountain Goat社が企画発売し、ライセンスしています。 1. 見積る前に 1-1. 計画を立てよう タスクの見積りをする前に、何をするのか、その計画を立てていきます。 ・フィーチャーを考える フィーチャー

    プランニング・ポーカーで始める楽しい見積り - mixi engineer blog
  • ヘッドマウントディスプレイの衝撃 - mixi engineer blog

    こんにちは、たんぽぽグループの森です。 尊敬するエンジニアはカナヅチひとつで何でも作れるバイキンマンです。 前回、「ヘッドマウントディスプレイで仕事してみた」という記事でSonyのHMZ-T1というヘッドマウントディスプレイ(以下HMD)をご紹介しました。 この記事を書いた後、一ヶ月間HMDをつけて仕事をしてみました。 いろいろなメリットとデメリットがわかりましたのでそれについて記したいと思います。 またデメリットの改善点についてもお伝えします。 メリットとデメリット メリット まわりが見えないので集中できる。話しかける人も減った気がする。 天井の明かりがまったく気にならない 目が疲れにくい。会社帰りに外を歩いていて遠くがクッキリ見えます。(個人の感想です!) デメリット 画面が狭い ヘッドフォンがつけられない(HMZ-T1のヘッドフォンはオープンエアなのでオフィスでは使えないのです)

    ヘッドマウントディスプレイの衝撃 - mixi engineer blog
  • 絵文字だョ! 符号化文字集合(後編) - mixi engineer blog

    同僚の女性からクッキーをすすめられても、「サードパーティークッキーは拒否します」とキッパリお断り申し上げたiPhoneアプリ開発担当の七尾です。というか、どう考えてもホワイトデーの(ry さて先週に引き続き、iOS開発でUnicode絵文字を扱う際の注意点について書いていこうと思います。 Combining Character/結合文字 サロゲートペアの他にも同様に気をつけなければいけないのが、結合文字です。 アルファベットに対しての修飾文字を付けたり、数字を四角で囲ったりした文字があります。 そういった文字は結合文字と呼ばれ、iPhoneで入力できる文字でいうと、 1を四角で囲った文字 = 0x31 0x20E3 2を四角で囲った文字 = 0x32 0x20E3 というようになります。 結合文字の文字数を取りたい場合は、特定の修飾文字を読み飛ばせば良いだけなので、 以下のようにさらっと対

    teppeis
    teppeis 2012/04/06
    囲み文字と国旗文字
  • 絵文字だョ! 符号化文字集合(前編) - mixi engineer blog

    先日取り上げて頂いたテック総研のインタビューでは残念ながら時間の都合で、ろくろを回す事が出来なかった、iPhoneアプリ開発担当の七尾です。いやー残念。 先日お伝えしたAppleカラー絵文字文字コード表にUnicodeコードポイント、UTF-8、SoftBankUnicodeも追加したので、お知らせします。 iOS Emoji - GitHub Pages ついでに各種変換処理なども書いたり、Unicodeの仕様を調べたりしたので、文字コードのおさらいとして、いくつかUnicode絵文字を扱う上での注意点についても、メモしておこうと思います。と思ったら結構な分量になってしまったので、前半と後半に分けてお送りします。 UnicodeSet そもそも絵文字ってどこからどこまで?という問いに答えてくれるのが、UnicodeSetです。 よく使われるものだと\p{Han}(漢字の範囲を示す)だとか

    絵文字だョ! 符号化文字集合(前編) - mixi engineer blog
    teppeis
    teppeis 2012/04/06
    NSStringでのサロゲートペア対応
  • 新社会人のためのバグレポートの基本 - mixi engineer blog

    はじめまして、品質管理部門の柿崎です。 最近、Skyrim にハマってしまい、人生一回休みになりかけています。 季節は春ということで、新社会人になられる方も多いと存じます。 新社会人が会社勤めをするようになって、初めて書くビジネス文書といえば...... そうですね!「バグレポート」ですね。 今回はバグレポートの基について書きたいと思います。 近年、開発現場ではバグトラッキングシステムが定着し、ドッグフーディングのような社内テストを行う現場も増え、テスト担当者以外の方でもバグレポートを提出する機会が増えています。そして前衛的なバグレポートによって、プログラマ達が理不尽かつ不可解なバグ地獄に叩き込まれる機会も増えています。 バグレポートは諸刃の剣です。 良いバグレポートはアプリケーションの問題を速やかに解決まで導きますが、反対にダメなレポートは現場に混乱をもたらします。 良いバグレポートを

    新社会人のためのバグレポートの基本 - mixi engineer blog
    teppeis
    teppeis 2012/03/21
    「二度と”おかしい”って単語を口にするんじゃねえ!」w
  • なぜ @kotarok さんは mixin より extend を推すのか - mixi engineer blog

    こんにちは。最近、実は JavaScript よりも Perl が好きなたんぽぽグループの大形です。 Perl の、仕様書など無いところがたまりません。勉強しても勉強しても...。いえ、今回は Perl の話ではありませんでした。 一昨日の土曜日ですが、会社にお金を出して貰って、 SwapSkills さんの『CSSを便利に使うための LESS入門』にお邪魔してきました。 何を隠そう、いや、隠すことは何も無いのですが、私は今「クライアントサイドのバックエンド担当」として働かせていただいてます。つまるところ、デザイナさんやコーダさんが日々目の前の案件と戦い続けている中で、一歩引いたところからお助けユーティリティを作ったり、俯瞰して工程を見直してみたり、デザインにおける継続テストの仕組みを考えたり、新しく何かの役に立ちそうなものをどこからか引っ張ってきたりするお仕事です。 そんなお仕事の一環と

    なぜ @kotarok さんは mixin より extend を推すのか - mixi engineer blog
    teppeis
    teppeis 2012/02/22
    「サイト毎に最適化したコンポーネントを定義設計した上で、そこに要素を「適用させる」こと」
  • キーボードとアジャイル開発 - mixi engineer blog

    やぁ、たんぽぽグループの森だよ。 先日の昼休みにnaohiro.ohgataから「キミのblogは文章が短すぎるんだよ。もっと読者を楽しませなきゃ」と言われたんだ。naohiro.ohgataは皆が一目置いているJavaScriptのスペシャリストで、僕も尊敬 している。だから今日は翻訳シリコンバレーっぽい口調で書いてみようと思う。 僕が初めてキーボードというモノを触ってから30年以上たっていると思う。その時はキーボードには何の興味も無くて、コンピュータに命令を伝えるためのただの付属品だった。もちろんタッチタイピングなんかできなくて、自己流でポチポチとキーボードを打ってたんだ。今思い返すと笑っちゃうんだけど自分ではそれなりに早いつもりでいまさらタッチタイピングを覚えるなんてバカらしいとか思ってた。実際まわりの人も似たようなポチポチタイピングで、その中では一番早くてちょっとしたもんだと勘違

    キーボードとアジャイル開発 - mixi engineer blog
    teppeis
    teppeis 2011/11/08
  • きっと何者にも成れないモジュールたちに告げる~静的解析、しましょうか~ - mixi engineer blog

    たんぽぽグループのhirokiです。たんぽぽグループとはmixi内の「刺身にたんぽぽをのせる仕事をなくす」ことを目的とした技術者集団です。 「あれは、たんぽぽではない用菊である」 「スーパーの生鮮品バックヤードが片手間にやってるよ。」 というご批判・ご指摘をうけ、今後は「道路に片方だけの軍手を落とす仕事をなくす」ことを目的としていこうかなどの検討を重ねました結果、「細けぇこたぁいいんだよ。」という結論に至ったことをこの場を借りてご報告させていただきます。今後ともたんぽぽグループを御ひいきによろしくお願いいたします。 と、ご報告をさせていただいたところで、題にはいります。 YAPC::Asia Tokyo 2011 先日Perlのお祭りことYAPC::Asia Tokyo 2011においてLTをさせていただきました。その資料のご紹介とちょっとした解説をさせていただきます。 静的解析、し

    きっと何者にも成れないモジュールたちに告げる~静的解析、しましょうか~ - mixi engineer blog
    teppeis
    teppeis 2011/10/24
    技術的負債
  • Apache Solr を利用した検索パッケージ Anuenue - mixi engineer blog

    研究開発グループの takahi-i です。 先日名前だけご紹介したAnuenue というツールをご紹介させていただきます。Anuenue は Apache Solr のラッパーであり、検索クラスタの構築と運用を容易にする目的で制作されました。 稿では始めに Apache Solr を選択した理由について述べ、その後、このツールを開発した背景とその目的をご紹介させていただきます。後半では実際に Anuenue を用いて検索クラスタを立ち上げます。 なぜ Apache Solr を採用したのか 昨年の秋、弊社の検索エンジンを置き換えるという計画が社内で策定され、ベースとなる検索エンジンの選定のために多くの OSS 検索エンジンを比較検討しました。このとき重視したのは一台の検索パフォーマンスと同時に、保守の容易さと、開発コミュニティの規模です。 検索エンジンの保守性に関して特に重要と考えたの

    Apache Solr を利用した検索パッケージ Anuenue - 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
    teppeis
    teppeis 2011/07/05
  • 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
    teppeis
    teppeis 2011/06/03
    「(Jenkinsテストの)IO 待ちが多かったので /dev/shm に Subversion のワーキングコピーを置きました」
  • mixi Engineers’ Blog » Tokyo Tyrantによる耐高負荷DBの構築

    連休中はWiiのマリオカートをやりまくってやっとVR7000越えたmikioです。愛車はマッハ・バイクとインターセプターです。さて今回は、分散ハッシュデータベースサーバTokyo Tyrantでmixiの最終ログイン時刻を管理するようにした時の苦労話を書きます。 ログイン処理は負荷地獄 mixiでは、全てのユーザについて、各々の最終ログイン時刻を管理しています。「マイミクシィ一覧」や「お気に入り」などの画面で、友人が近い時間にログインしていてコミュニケーションがとりやすい状態にあるかどうか確認できるようにするためです。 mixiのほぼ全てのページはログインしないと見られないページなので、ほぼ全てのページにアクセスされるたびにログイン確認が行われます。したがって、最終ログイン時刻はほぼ全てのページにアクセスされる度に更新されることになります。mixiの中で最も重いデータベースのひとつとして「

    mixi Engineers’ Blog » Tokyo Tyrantによる耐高負荷DBの構築