タグ

mixiに関するarikuiのブックマーク (8)

  • 第8回 Perlによる大規模システム開発・設計のツボ(3) | gihyo.jp

    技術的負債の「見える化」 どのようなソフトウェアにも設計上のミスはあります。設計時点ではサービスの発展性や日々変わりゆく要件を完全に予測することはできないからです。ある時点で正しい設計も、その次のサービスリリースでは設計上の修正を必要とするかもしれません。これらの変更への粘着性や複雑性のある状態を、「⁠技術的負債」と言います。 mixiでは技術的負債は長らく、コードレビュー技術力の高いエンジニアによる新機能リリース時の修正などで対応を行ってきました。しかし、これまでに紹介した「わかりやすいコードの指針」や「アーキテクチャパターン」をレビューや教育だけで維持することは、ソフトウェアが巨大になり、開発者数が増加するにつれて難しくなります。そのため現在では、ソフトウェアの設計品質評価を自動化するツール群を開発し、それらを用いて技術的負債を見える化し、計画的に解消していく試みを行っています。 コ

    第8回 Perlによる大規模システム開発・設計のツボ(3) | gihyo.jp
  • きっと何者にも成れないモジュールたちに告げる~静的解析、しましょうか~ - mixi engineer blog

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

    きっと何者にも成れないモジュールたちに告げる~静的解析、しましょうか~ - mixi engineer blog
  • 技術的負債の把握と改善を促すために - 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
  • mixiアプリで日記に書くリンクの作り方 - KAYAC engineers' blog

    360度評価真っ最中のagoです。 今日はmixiアプリで「日記に書く」リンクの作り方を紹介したいと思います。 mixiでは非公式ながら外部から日記の入力ページに対して初期値を渡す事が可能になっており、その機能を使ってmixiアプリ内に「日記に書く」リンクを設置することが可能です。 具体的には以下のようなURIにEUCで値を送ることにより、閲覧者の日記入力画面に任意のタイトル、文を初期値として設定できます。 http://mixi.jp/add_diary.pl?id={viewer_id}&diary_title={日記タイトル}&diary_body={日記文} 注意点としては、mixi体側の文字コードにEUCが使用されているため、日記タイトル、日記文はEUCでエスケープする必要があります。 文字列EUCでエスケープするにはEscape Codec Library: ecl.j

    mixiアプリで日記に書くリンクの作り方 - KAYAC engineers' blog
  • OpenLaszloでmixiアプリの開発

    オープンソースのRIA言語「OpenLaszlo」ではFlashやDHTMLなどを使ってアプリケーションを作成できます。また、外部Web APIなどと連携することも可能です。今回はmixiアプリの作り方を簡単なサンプルプログラムを通して説明します。 はじめに 連載では、FlashやDHTMLによるリッチクライアントアプリケーションを作成できるOpenLaszloについて説明していきます。前回は、OpenLaszloでGoogleマップを使う方法について説明しました。今回は、OpenLaszloによるmixiアプリの作り方を、簡単なサンプルプログラムを通して説明していきます。 これまでの記事 第1回 OpenLaszloのインストールと開発環境構築 第2回 OpenLaszloのプログラミングと標準コントロール 第3回 OpenLaszloとサーバーサイド連携 第4回 OpenLaszlo

    OpenLaszloでmixiアプリの開発
  • はじめよう!コンピューターミュージック - mixi engineer blog

    iPhoneゲームの買い過ぎでついにアプリが7ページ目に突入してしまった bonar こと中野恭兵です。今のお気に入りは手軽に遊べる"frenzic"と格派ファンタジーパズル"Aurora Feint" 。最高です。 普段はアプリケーション開発グループ ミュージック開発チームに所属していまして、仕事中は常に mixi Radio 付けっぱなしなわけですが(マイブームは"Monica Uranglass(音が出ます)")、やっぱりコンピューターがある以上、聴くだけでなく自分でも作ってみたいと思うものです。 僕自身弾ける楽器が何もなく、音楽的な教養も無いのですが、まずは最初の一歩を踏み出したいと思い少し調べてみました。 音とは何か 音楽はいろんな音の複雑な合成物なので、音とは何かという部分から考える必要があります。 ご存知の通り、音とは空気の振動です。振動とはつまり一定の周期を持った規則的な

    はじめよう!コンピューターミュージック - mixi engineer blog
  • Pure JavaScript Template Engine その弐 - mixi engineer blog

    どうも、こんにちは。hirokiです。前回は、HTML::Template::ProのJavaScript実装を紹介させていただきました。今回はその実装部においてのちょっとした工夫についてと、Webフロントエンドのパフォーマンスチューニングについて簡単にまとめさせていただきます。 正規表現の話 通常、テキストベースのDSL評価系を作成する際にはyacc/lexなどで文法記述を行うのが定石なんですが、 シンプルな文法であること 構文木の評価からコードジェネレートに方向性を転換した テキストマッチングの回数や高速化のための制御がしやすい などの理由から、HTML Template(JavaScript)では正規表現ベースの文法解釈を行っています。( HTML::Template::Proのyacc文法ファイルをそのまま使えば記述は楽だったのですが...)以下に実際に利用している正規表現を示しま

    Pure JavaScript Template Engine その弐 - mixi engineer blog
  • Pure JavaScript Template Engine - mixi engineer blog

    はじめましてhirokiです。こんにちは。新卒で弊社に入って一年が経過しようとしているので、そろそろエンジニアブロガーの仲間入りをしてみようかと思っています。 今回はJavaScriptのお話です。ハードボイルドなバックエンド側技術のご紹介が多い当ブログですが、スイーツ(笑)なフロントエンド技術おもしろいんだよ!ということをアピってやろうという魂胆です><。 HTML.Template(JavaScript) 弊社では、サーバサイドによるHTMLの出力テンプレートエンジンにCPANモジュールであるHTML::Template::Proを使用しています。今回はそのJavaScript実装をオープンソースとして開発しましたので、紹介をさせていただきます。 HTML::Templateは貧弱で、冗長で、洗練されていないシンタックスでお馴染みのテンプレートエンジンですが、高速で必要以上のロジック

    Pure JavaScript Template Engine - mixi engineer blog
  • 1