タグ

ブックマーク / nowokay.hatenablog.com (26)

  • 形式仕様記述Alloyを試してみる - きしだのHatena

    試してみるよ。 とりあえず商品をまとめたセット商品についての仕様を書いてみる。 まず商品の定義 module exec/shohin sig Shohin{} pred show{ } run show sigはJavaとかのclassだと思えばだいたいOK。 なんか商品がみっつ出た。 じゃあ、セット商品を定義してみる。 sig SetShohin{ bundle: set Shohin } おー、同じ商品が3つのセットに含まれてしまった。Alloyさんイヤらしいとこついてくる。 ということで、ひとつの商品は多くてもひとつのセットにしか含まれない、っていう制約を加えます。 fact { all s: Shohin | lone bundle.s } 書き下ろすと「すべての商品について、商品をbundleとして持つのはたかだか1つ」になるんですけど、この、フィールドを左に書く書き方は通常のプ

  • 九州大学医学部のほうから来たKさんの開発した「ゴーストfor文」がものすごい - きしだのはてな

    九州大学医学部のほうから来たKさん*1が開発した「ゴーストfor文」がものすごい。 普通の大人なら、1分で指定回数繰り返すfor文が書けるようになる。 やりかたは下の図を見てね。 変数iを使って5回繰り返す場合 ・iを①、②、④に入れる ・5を③に入れる ・答えは for(i = 0; i < 5; i++) これでインド人に勝てます! なお、普通に書いてるだけじゃないかという批判にKさんは Cなどでfor文の書き方を知っている人はいっぱいいます。でも、Cをやってこなかった文系学生だって一杯いるのです。そういう人がお魚のイラストで簡単にfor文が書けるようになればそれでいいじゃないですか。 などと反論しているようです。 参考:東大医学部現役合格生の開発した「ゴースト暗算」がものすごい - Togetter *1:東京からみた場合

    九州大学医学部のほうから来たKさんの開発した「ゴーストfor文」がものすごい - きしだのはてな
    udzura
    udzura 2011/12/31
    魚のイラストかかわいい
  • アルゴリズムの勉強のしかた - きしだのHatena

    この記事で、アルゴリズムの勉強はアルゴリズムカタログを覚えることじゃないよということを書きました。 プログラムの理論とはなにか アルゴリズムの勉強というのは、スポーツで言えば腕立て伏せや走り込みみたいな基礎体力を養うようなもので、「ソートなんか実際に自分で書くことないだろう」とかいうのは「サッカーは腕つかわないのに腕立ていらないだろう」とか「野球で1kmも走ることなんかないのに長距離の走り込みいらないだろう」とか言うようなものです。 Twitterでアルゴリズムの勉強とはなにかと尋ねられて、「アルゴリズムの基的なパターンを知って、それらの性質の分析のしかたをしって、いろいろなアルゴリズムでどのように応用されているか知って、自分が組むアルゴリズムの性質を判断できるようになることだと思います。 」と答えたのですが、じゃあ実際どういうで勉強すればいいか、ぼくの知ってるからまとめてみました。

    アルゴリズムの勉強のしかた - きしだのHatena
    udzura
    udzura 2011/09/25
    全部読むのは辛いな~ 図書館などを当たってみるか、。
  • 2010-11-25 - きしだのはてな - 技術力をあげたいプログラマが読んでおかないと話にならない本10冊

    ここにあげたじゃなくてもいいので、同じ分野でなにか読むとか、に書いてあるほど詳しくなくてもそれなりに知識をもっておくべき。 アルゴリズムクイックリファレンス 作者: George T. Heineman,Gary Pollice,Stanley Selkow,黒川利明,黒川洋出版社/メーカー: オライリージャパン発売日: 2010/04/26メディア: 単行(ソフトカバー)購入: 11人 クリック: 656回この商品を含むブログ (72件) を見る まずはアルゴリズム。クイックって書いてあるけどぜんぜんクイックじゃないw。各言語で書かれた入門書を読んでもいいと思う。 実際のプログラムにアルゴリズムの知識を活かすということを知りたいならプログラミングコンテストチャレンジブックがおすすめ。 プログラミングの基礎 ((Computer Science Library)) 作者: 浅井健一

    2010-11-25 - きしだのはてな - 技術力をあげたいプログラマが読んでおかないと話にならない本10冊
    udzura
    udzura 2010/11/25
    あれ、12冊ありますよ
  • Twitterはなぜ成功したか - きしだのはてな

    (Twitterに書いたこと、まとめ) twitterが成功した理由を単に「シンプルだから」と言ってしまうのは、認識が浅いと思うようになった。シンプルなものならほかにもたくさんあったはずなのに、なぜTwitterが成功したのかという理由にならない twitterの成功の理由を「シンプルだから」というのは、googleの成功の理由を「UIがシンプルだったから」と言ってるような、なんか表面しか見てない話に思う。 twitterはインフラになろうとしていて、だからシンプルにする必要やAPIを公開して自由に使えるようにする必要があったと思うのですよ。 twitterの成功の理由は、この形態のインフラが必要だと気づいて、初期の実装をし、その重要性を説得力のある説明をして資金を集めることができからだと思う。 Twitterにハマれない人がいるというのは、Twitterはinternetの上に構築された

    Twitterはなぜ成功したか - きしだのはてな
    udzura
    udzura 2009/11/13
    大事なのはインターネット力ですね
  • PHPの価値が相対的に落ちてJavaの価値があがっていく 2009-10-19 - きしだのはてな

    2000年あたり、PHP4やJSP1.0が出たころ、PHPよりもJavaがよいと言っても、「Javaは動かせる安いサーバーがない」ということで、サーバーの確保が容易なPerlPHPが使われました。 Javaを使うには、一台まるごと借りれる割高なレンタルサーバーで、自力でTomcatなどをインストールする必要がありました。そういった状況はしばらく続き、「PHPならば安く借りれるサーバーがたくさんある」ということから、PHPがよく使われるようになりました。 PHPの普及初期では、サーバーの確保が容易なことがPHP採用の大きな理由のひとつだったと思います。 こういう状況は最近まで続いたけど、Amazon EC2のおかげで「Javaは動かせる安いサーバーがない」という問題は解決してきました。Amazon EC2を借りても自力でTomcatなどをインストールする問題がありましたが、HerokuやS

    PHPの価値が相対的に落ちてJavaの価値があがっていく 2009-10-19 - きしだのはてな
    udzura
    udzura 2009/10/20
    ここでRuby信者の割り込みに期待