2008-11-01から1ヶ月間の記事一覧
ゲーム開発会社Sharendipitous Moments社のブログに最近投稿された(リンク)「私達はFlashに乗り換えます。その理由は…」というエントリを皮切りにJavaが、Flexのような、RIA技術に負けてしまうのではないかという議論が始まった。 InfoQ: JavaはFlexに負けて…
1. カバレッジはしっかりとしたテストが書かれている状況でのみ意味を持つ。役に立たないくだらないテストが書かれることを防ぐことはできない。 2. カバレッジはテストが通過した行/分岐を測定しているだけに過ぎない。 3. カバレッジはテストが不十分かど…
Anyway, read Guido's take and especially the comments. Here is one I found particularly interesting, from David Pollak, the creator of Lift: But, unlike my Ruby code, [with Scala] I only need 50%-60% test coverage (vs. 95% coverage) to hav…
Oracle Technology Day in 大阪 BEA&Oracle合併後初の大阪での技術者セミナー OracleとBEAが合併して初の関西イベント。 コミュニティもOTNとdev2devが合併した感じ。 『Oracle Coherence』が特に興味深かった。 ハードウェアとJVMを横断した共有メモリ領域…
よく「○○はしないようにしてる」という行動を制限する考えがある。 カラオケには行かないようにしてる、みたいな。 ここではカラオケはどうでもよくて。 それが犯罪であったりとてもお金や時間がかかったり健康を害するものでないなら、そんな窮屈な考え方は…
開発者の中にはMacはまだ開発用としては遅く、チューニングも充分ではないと感じている人もおり、仮想メモリシステムのページングのパフォーマンスの悪さや、デフォルトのネットワークファイルシステムのAFSに対する不満などを耳にする機会が多いという。 ス…
ドコモが「グーグル携帯」 無償ソフト採用、低価格で09年発売 http://www.nikkei.co.jp/news/sangyo/20081119AT1D140B418112008.html 404 ないわー Not Found ってか「グーグル携帯」ってなんか違うよ日経さん。 902SHが2年以上経ったので機種変したいけど、…
組織として整えるべきは目標管理制度ではなく、その会社の社員の行動がどうあるべきかと、実際の行動に対する評価(フィードバック)をどうするのかってことだ、と言いたい。 会社は目標じゃなくて行動をマネジメントしろ - 今日とは違う明日 禿同。超禿同。…
僕は株式会社クロノスに所属しているんですが、「クロノスエンジニアの会」略して「エン会」という社内デブサミを3ヶ月前開催しました。 デブサミと言えるほど大きなものでもないんですけど。 第1回では先輩社員が主にセッションしたから若手社員には少し内…
IT企業を襲う「優秀なプロマネ不足」の打開策 − @IT自分戦略研究所 via kwoutPMの話だけでなくIT企業の人事問題を的確に捉えてる。 IT業界における技術の変化は非常に早く、同じ技術を使って同じ仕事をしていては、いずれ給与に見合う価値を発揮できなくな…
今から話すことは僕個人が考える、一般的な意味での会社論だけど。働きやすい会社とは、プライベートな事情を気軽に持ち込める会社だと考えてる。 持ち込む個人は申し訳ないという意識を強く持つことなく、持ち込まれる組織は嫌々受け入れるという無言の圧力…
オンリーワンは誤解されている言葉だと思う。 その誤解とは、SMAPの『世界にひとつだけの花』でいうと NO.1 にならなくてもいい もともと特別な Only one の「もともと特別」の部分に特に感じる。 これは(おそらく歌詞の真意ではないと思うが)「何もしなくて…
Scalaでクロージャする超簡単なサンプル。 package sample object ClosureSample extends Application { def makeCounter() = { var count = 0; () => { count += 1 count } } var count = 100; val counter = makeCounter() println(counter()) println(cou…
って自分自身の引用でも今までトラバ飛んでたっけ?? 1ヶ月前の時点だとそうじゃなかった気がするけど。。。
とてもエントリが多くの回にわたったので、まとめます。 One Div Zero: Monads are Elephants Part 1 モナドについて調べていく(7) - Fight the Future じゅくのblog モナドについて調べていく(8) - Fight the Future じゅくのblog モナドについて調べていく…
One Div Zero: Monads are Elephants Part 4の翻訳続き。長かった連載もこれで最後です。 Ladies and Gentleman I Present the Mighty IO Monad(みなさん、すばらしいIOモナドを紹介します) The IOAction.apply factory method takes an expression of type …
まるごとJavaScript & Ajax ! Vol.1を読み返してCPSを学んでみる。 def sumIterTrump(i: Int, part: Int, cont: Int => Unit): Function2[Int, Int, Function0[Int]] = { if (i > 10) { cont(part) null } else { println("progress " + i + "/10") sumIterT…
CPSを学ぶためにまるごとJavaScript & Ajax ! Vol.1を引っ張り出してきたけど、その前に末尾再帰を学ぶ。 末尾再帰とは 末尾再帰(まつびさいき)とは、プログラミング手法のひとつで、再帰のある関数またはプロシージャのおこなうべき最後のステップが、関…
うおっ!こんなイベントがあったのか! 関西初のアジャイルソフトウェア技術者の交流イベントとして、11月24日に「関西アジャイルナイト2008 」を開催します。 関西アジャイルナイト2008 in 京橋 (eXtreme Gadget (エクストリーム ガジェット) ポケットに入…
One Div Zero: Monads are Elephants Part 4の翻訳続き。 That Darn Property 3(最悪の特性3) The 3rd property said that the world can only be in one state at any given moment in time. I haven't solved that one yet and here's why it's a problem3…
One Div Zero: Monads are Elephants Part 4の翻訳。 今回からパート4です。 ずっと気になっていた、IOとモナドの関係に入りました。 Until you experience an adult elephant first hand you won't really understand just how big they can be. If monads …
One Div Zero: Monads are Elephants Part 3の翻訳続き。 これでパート3は終了。 The Second Zero Law: M to Zero in Nothing Flat(第2のゼロの法則:すぐにMをゼロにする) The reverse of the zero identity law looks like thisゼロの同一法則を逆にすると…
One Div Zero: Monads are Elephants Part 3の翻訳続き。 The First Monad Law: Identity(第一のモナド則:同一性) The first and simplest of the monad laws is the monad identity lawモナド則の最初の、そしてもっとも単純な法則はモナドの同一性の法則…
One Div Zero: Monads are Elephants Part 3の翻訳続き。 ついにモナド則まできました。 Functors and Monads, Alive, Alive Oh(ファンクターとモナドはまだまだ続く) As you may have guessed by now all monads are functors so they must follow the func…
One Div Zero: Monads are Elephants Part 3の翻訳続き。 ファンクターが出てきました。 WTF - What The Functor?(ファンクターとは何か?) Usually articles that start with words like "monad" and "functor" quickly devolve into soup of Greek letters…
One Div Zero: Monads are Elephants Part 3の翻訳。 今回からパート3。 偶然見つけた割には本当に良質の記事だと思います。モナドって説明読んでも全然わからない!って人は僕と一緒にこの記事読んで勉強していきましょう! In this series I've presented …
One Div Zero: Monads are Elephants Part 2の翻訳続き。 Filtering "For"(「for」のフィルタリング) So far our monads have built on a few key concepts. These three methods - map, flatMap, and forEach - allow almost all of what "for" can do.これ…
One Div Zero: Monads are Elephants Part 2の翻訳続き。 なぜかはわからないけど、この翻訳で自分がレベルアップしているように感じる。 自分に足りない基礎概念の理解が深まっているような。。。そんな感覚。 Now With More Expression(さらに式を増やして…
One Div Zero: Monads are Elephants Part 2の翻訳。 今回からパート2のエントリです。 衝撃的ですが、これはパート4まであるようです。 またこのBlogの著者はScala Blogのグループに属しているそうです。 どうりでわかりやすいわけだ。。。 In part 1, I in…
One Div Zero: Monads are Elephants Part 1の翻訳続き。 パート1はこれで終わり。 Conclusion for Part I(パート1の結論) Scala monads must have map and flatMap methods. Map can be implemented via flatMap and a constructor or flatMap can be imple…