CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
![3層データバインドを正しく活用しよう(後編)](https://cdn-ak-scissors.b.st-hatena.com/image/square/a69607efb49ab7ac16e3183832b03c18e76b0bda/height=288;version=1;width=512/https%3A%2F%2Fcodezine.jp%2Fstatic%2Fimages%2Farticle%2F6498%2F6498_arena.png)
サーバに対して何台も同じような設定をしていると、そんな刺身にたんぽぽのせるような仕事やってられるかー!となりますよね?特に最近だとクラウドや仮想化技術が身近になってきたので、環境をイメージコピーで構築する手法も増えているのではないかと思いますが、一方で、ハードやOSレベルでも技術が進化していくので、OSより上のレイヤー(ミドルウェアやアプリケーション)とOS以下のレイヤー(ハードウェアやOS)を粗結合にしておくことが重要だと思います。 OSより上のレイヤーのシステムの構成管理を自動化ツールとしてPuppetが有名でしたが、最近だとChefがRubyでスクリプトが書けて便利です。 ChefはChef-server, Chef-client, Chef-solo という3つの構成に分かれています。しかしChef-serverとChef-clientを利用した構成は構成がやや複雑になるので、中央
こんにちは、馬場です。 前回はScalaのDIのパターンとしては最も有名なCake Patternを紹介しました。今回はDIの他のパターンも紹介したいと思います。 Twitter でのScala DI さて、少し前にTwitter がScala のベストプラクティスをgithub上に公開しました。DIについては、以下のように言っていますね(かなり意訳です)。 Scala にmixinの仕組みを導入したのは、伝統的なDIの手法をやめたかったからだと思う。新方式の最たるものが「Cake pattern」だろう。 (略) けど、Scalaを利用するだけで、古典的DI手法の問題点はだいたい解決できると感じる。(略)だから、私たちはあまり継承せずに構造化しようと決めた。その方がモジュール性が高くテストしやすいプログラムができると思うから。 「伝統的なDIの手法」というのは、Springと同じよう
2011-04-23 Akka の作者として益々注目を集めている Jonas Bonér が 2008年に書いた “Real-World Scala: Dependency Injection (DI)” を翻訳しました。翻訳の公開は本人より許諾済みです。翻訳の間違い等があれば遠慮なくご指摘ください。 2008年10月6日 Jonas Bonér 著 2011年4月22日 eed3si9n 訳 さて、実戦での Scala シリーズ第二弾の今回は、Scala を用いた Depenency Injection (DI) の実装をみていきたい。Scala は、備わっている言語機構だけを用いても何通りかの DI を実現できる非常に豊かでディープな言語だが、必要に応じて既存の Java DI フレームワークを使うこともできる。 Triental では、一つの戦略に落ち着くまで三つの異なる方法を試した
東大院生が開発、世界初シャボン玉ディスプレイ! 眼鏡なし3D表示や物体の貫通も可(動画)2012.04.16 21:007,757 東京大学大学院に在籍するメディアアーティスト落合陽一さん、カーネギーメロン大学に在籍するAlexis Oyamaさん、筑波大学大学院に在籍する豊島圭佑さんらによる「Colloidal Display(コロイドディスプレイ)」。 半透明なシャボン膜に超音波を当てて膜を細かく振動させることで、光を乱反射させスクリーンにしてしまうというもの。従来のディスプレイに比べてよりリアルな質感を表現できたり、複数のコロイドディスプレイを重ねれば眼鏡なし3D表示も実現できます。また、やさしくだったら指を突っ込んでかき回すことも可能。 水っぽいディスプレイとかカッコいい。膜を割れにくくするのが課題ですが、より割れにくいシャボン膜も既に開発済みのようです。(落合さん談) びゅイーン
Node.jsでつくったサービスをJenkinsで自動テスト走らせるようにした。gitでpushしたら自動でテストが走って失敗したらメールとかチャットに通知してくれる。便利。 インストール サーバーはUbuntu(v10.04@sakura vps)なのでここに書いてある通りにする。 http://pkg.jenkins-ci.org/debian/ まずキーを取得。 $ wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -次に以下を/etc/apt/sources.listに追加。 deb http://pkg.jenkins-ci.org/debian binary/んでインストール。 $ sudo apt-get update $ sudo apt-get insta
Instagram がどこに買収されたとかは他のニュースサイトにお任せして、Django アプリケーションを正攻法でスケールして "成功" してるのがとても興味深いです。現時点で Instagram Engineering で紹介されていることと TechCrunch にも掲載されたスライドから個人的なメモとしてまとめてみました。 Instagram の哲学は シンプルであること オペレーション負荷を最小化すること すべて装備 とのこと。 Instagram は以下の OSS, サービスで構築されているようです。 >>> OS / ホスティング Ubuntu Linux 11.04 を Amazon EC2 にホスティング。以前のバージョンは高トラフィックになると固まる問題があったようです。運用は 3 人。EC2 にホスティングしている理由は、調査結果によるものではなく、"まだ進化途中だか
技術が日々革新し、目まぐるしく事業環境が変わる米シリコンバレー。その混沌の中で、いかに起業の成功「確度」を上げるか。リース氏は、この古くて新しい難題に取り組むための考え方を本書に示した。昨年9月に米国で出版され、全米のベストセラーとなっている。 その要諦を端的に言えば、短い周期で仮説構築と検証を繰り返しながら、顧客のニーズを満たす製品・サービスを探り当てていくマネジメント論だといえる。 顧客の反応をみながら製品を磨く 顧客のニーズを予想し、長い期間をかけて準備した万全のサービスが、さっぱり受けなかった…。起業経験者や、新規事業開発担当者なら、一度はこうした経験があるだろう。本来なら、その失敗から学び、顧客のニーズを再検証した上で次のサービスにつなげていくべきなのだが、大抵の場合、起業やプロジェクトは、その時点で終了してしまう。自らもこうした失敗体験を持つリース氏は、従来のこのサイクルに疑問
バージョン管理ツールGitの基礎練習です。 Windows XPのコマンドプロンプトでGitの基本的なコマンドを動かしていきます。 Gitを学び始めるきっかけにどうぞ。 (筆者もまだGitを使いこなしているわけではありません。 誤りのご報告、改善提案などは大歓迎です。フィードバックからよろしくお願いします) 目次 はじめに ダウンロードとインストール ファイルをGitの管理下に置きましょう 新しいファイルを追加します 新しいディレクトリを追加します 編集からコミットまでの流れはこんな風に進みます ブランチを使ってみましょう ここまでの作業ログを見ましょう この文書に書かなかったこと 関連リンク 更新履歴 ぜひ、感想をお送りください はじめに Windows XPのコマンドプロンプトで、 バージョン管理ツールGitの基本的なコマンドを動かしてみましょう。 この文書の通りに実行すると、 基本的
バージョン管理ツールSubversionの基礎練習です。 Windows XPのコマンドプロンプトでSubversionの基本的なコマンドを動かしていきます。 Subversionを学び始めるきっかけにどうぞ。 目次 はじめに ダウンロードとインストール リポジトリ用のディレクトリを作ります リポジトリを初期化します 新しいモジュールを作ってインポートします チェックアウトして作業開始 新しいファイルを追加します 新しいディレクトリを追加します 普段の作業はこんな風に進みます ファイル名を変更してみよう この文書に書かなかったこと 関連リンク 更新履歴 ぜひ、感想をお送りください はじめに Windows XPのコマンドプロンプトで、 バージョン管理ツールSubversionの基本的なコマンドを動かしてみましょう。 この文書の通りに実行すると、 基本的なSubversionのコマンドをひと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く