2007年11月26日18:15 カテゴリMathLightweight Languages プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10 ぎくっ あなたが一番好きなアルゴリズムを教えてください。 また、その理由やどんな点が好きなのかも教えてください。 - 人力検索はてな なぜぎくってしているかというと、実はすでにアルゴリズム本の発注を受けているからなのだ。いつまでも伏せておくのもなんなので、ここにえいやっとdiscloseしてしまうことにする。 アルゴリズム大募集! C&R研究所 - トップページ その下書きもかねて、そこでも紹介しないわけに行かないメジャーなアルゴリズムをとりあえず10個紹介しておくことにする。 ユークリッドの互除法(Euclidean algorithm) その昔(数百年ほど前)は「アルゴリズム」といえば、「手順一般」を指すのではなく、この「互除法
文書比較(diff)アルゴリズム 前のドキュメント 次のドキュメント ViViの文書比較(diff)機能で使用しているアルゴリズムについて解説する。 これらのアルゴリズムは Myers 氏らの論文によるもので、氏は筆者のためにわざわざ論文をWebサイトで入手可能な形式にしてくださった。この場を借りてお礼申し上げる。 オリジナル論文は以下のWebサイトから入手可能である。 http://www.cs.arizona.edu/people/gene [1] E.W.Myers, "An O(ND) Difference Algorithm and Its Variations", Algorithmica, 1 (1986), pp.251-266 [2] S. Wu, U. Manber, G. Myers and W. Miller, "An O(NP) Sequence Comparis
これはすごい・・・。 TIDEは「Tiny IDE(統合開発環境)」の略らしい。 そのシンプルな名前にたがわず、実に手軽にJavaScriptを書いて、テストすることができる。日本語もきちんと通るようだ。 しかもIDEだけあって、変数の中身をウォッチしたり、ステップごとに実行していくことが可能だ。 JavaScriptは慣れていないとどうにもとっつきにくかったりするが、こうした環境があればその動作を確認しながら学習していくことができるだろう。 まだベータ版ということで多少のバグがあるようだが、これからJavaScriptをやってみよう!と思われている方にはお勧めだ。
ユメのチカラ インターネットの時代になって、地球規模の知恵の集積が 可能になった。ソフトウェア開発においてもオープンソースソフトウェアのバザール的開発が注目されている。いまおきているその現実を現場の視点から記していきたい。 吉岡 弘隆 - よしおか ひろたか 日本OSS推進フォーラム ステアリングコミッティ委員 OSDL Board of Directorsを歴任 カーネル読書会主宰 2000年6月、ミラクル・リナックスの創業に参加。 95年~98年、米国OracleにてOracle RDBMSの開発をおこなっていた。 98年にNetscapeのソースコード公開(Mozilla)に衝撃をうけ、オープンソースの世界に飛びこみ、ついには会社も立ち上げてしまう。 2008年6月取締役CTOを退任し一プログラマとなった。
諸君!!俺は Java が好きだ!! って書いてみたかった。 言語論争あんまり好きじゃないから あんまりそれらしいこと書いてなかったけど ちょっとだけ書いてみます。 「j」が付かない方の Yoshiori から見た Djangoへの片思い日記 - Struts脳の恐怖とRails ということで♪ いわゆる高級言語というのは 人間が書きやすい&読みやすいという側面も大きいと思っています。 で、完全に僕の主観ですが Java のソースコードは凄く読みやすいです。 他の言語がメインの人に聞いても 「やっぱり Java は読みやすいよね」 と、言われることもあります。 さて、実際にプログラムを書くときですが、 そのプログラムの稼働期間はどのくらいでしょうか? 開発期間より稼働期間のほうが長い場合、 保守などでコードを書く時間より 書いたコードを読む時間のほうが多いときがあります。 複数人で書いてい
404 Blog Not Found の「LiveCoding に学ぶプログラミングの三原則」を読んでいたらどうしても書きたくなったので。あくまで私のスタイルなので、参考にするもしないもご自由に。 1. スタードダッシュでできるだけはやくめどをつける 学生時代から夏休みの宿題は7月中に終わらせていた私とすれば、ラストスパートよりはスタートダッシュで勝負する。どのみち、どこかで思いっきり頑張らなければならないのであれば、締め切り間際ではなく、スタート間際に頑張るべきというのが私のポリシー。十週間のプロジェクトであれば、最初の二週間が勝負。そこで八割がたのめどをつけておき、後は流す。最初の二週間がめどが立てられなければ、十週間で完成できる可能性は低いと考える。常にそういう姿勢でいれば、締め切りぎりぎりになって致命的な欠陥が見つかって痛いめにあったり、本当は大幅な設計変更をすべきなのに応急処置で
まだリリースされていないソフトウェアだが、要注目。 幾つものソフトウェアやサービスがリリースされていく中で、時折その動作原理が分からず唸ってしまうものが存在する。このソフトウェアもその一つになるだろう。 今回紹介するオープンソース・ソフトウェアはLily、Webベースのビジュアルプログラミング開発・実行環境だ。 LilyはJavaScriptで作られているソフトウェア開発環境だ。だが、プログラムソースを書くことは無く、パーツをビジュアル的に組み合わせてサービスを作り上げる。まさにビジュアルプログラミングだ。 Webベースとあって、flickrの画像を呼び出すのはお手の物、他のWeb APIについても各種利用できるだろう。そしてその結果を並べて表示したり、画像クリック時の拡大表示をその場で機能を付け加えて動作させてしまう。 デモムービーが幾つか登録されているのでぜひ見てみてほしい。何だこれは
文化祭でカセットコンロ4台の上に鉄板2枚載せて焼きそばを作っていたらガスボンベが爆発、生徒15人負傷…私立豊南高校
Jeff Atwood / 青木靖 訳 2006年9月18日 開発者に時間をどう使っているか聞いたなら、彼らはほとんどの時間コードを書いていると答えるだろう。 しかし、ソフトウェア開発者が時間を実際どう使っているか観察したなら、ほとんどの時間をコードの理解に使っていることがわかる。 ピーター・ハラムがこのことについて説明している。 どうしてコードを新規に書くより5倍もの時間をコードの修正に使っているのか? それは新規のコードはほとんどすぐに古くなるからだ。何か新しくコードを書く。コーヒーを飲んで一服する。すると突如として、コードは古いコードになっている。できたてのコードはせいぜい初期のデザインしか反映していないが、デザインの多くの部分は前もって現われるものではない。開発プロジェクトの多く が反復的開発手法を使っている。デザイン、コーディング、テスト、繰り返し。たくさんの繰り返し。すべてが新
9割ぐらいはハッシュ何がハッシュなのかjavascriptで存在するほとんどのオブジェクトの実体はハッシュだよ。 var arr = [0,1,2,3]; とかをみると配列(人によってはリスト)に見えると思う。でも実際は違うんだ。 これは var has = {0:0,1:1,2:2,3:3}; と基本的には等価なんだ。ただちょっと束縛されているメソッド(インターフェイス)が違うだけ。 ためしに arr[4] = 4; arr['x'] = 'string'; arr[-1] = -1; としてみよう。 Firebugで確認してみると[0, 1, 2, undefined, 4]というような値がかえってくるよ。 でもarr[-1]やarr['x']の値は保存されてないのかな?そんなことはないちゃんとアクセスできるんだ。 それどころかarr.xで'string'がかえってくるんだ。 別の例を
2007年05月23日05:00 カテゴリLightweight Languages 君は新言語xtalを知っているか? Lua に関してねっとをぼげぇ〜と眺めていて発見。 xtal-language - Google Code xtal_doc/syntax xtal_doc/ref xtal_doc/cpp 新言語 Xtalを作る日記 DOFI-BLOG どふぃぶろぐ Matzさんでさえ言及した様子がないこのxtalですが、なかなかどうして面白い。for loopの後ろにelseが書けたり、Fiberを持っていたり...callee()で無名再帰関数も書けたり...そうそそう、...といえば、可変引数の引数は、...という配列に入って、...[0]がその最初の要素というのも楽しいですね。 XTALというとOSの方を思い出してしまいますが、組み込み向けという点で共通しているかも。偶然の一
Jeff Atwood / 青木靖 訳 2007年2月26日 レジナルド・ブレイスウェイトが書いていることを読んだとき、私はそんなわけないだろうと思っていた。 私と同様、この著者は、プログラミングの仕事への応募者200人中199人はコードがまったく書けないということで苦労している。繰り返すが、彼らはどんなコードも書けないのだ。 彼が引用している著者というのはイムランのことで、彼は単純なプログラムも書けないプログラマをたくさん追い払っているということだ。 かなりの試行錯誤の末に、コードを書こうともがいている人たちというのは、単に大きな問題に対して苦労しているのではないことがわかった。やや小さな問題(連結リストを実装するというような)に対して苦労するということでさえない。彼らはまったくちっぽけな問題に苦労しているのだ。 それで、そういった類の開発者を見分けるための質問を作り始め、私が「Fizz
プログラマーの方に質問です。 受刑者にプログラミング言語を覚えさせるとしたらどの言語が最適だと思いますか? 理由も含めてお答えいただけたらと存じます
Leon Bambrick / 青木靖 訳 2006年9月24日 日曜 ここにLispの真実が明らかにされ、いくつかの代替が提示される。 Lispを学ぶことはあなたの人生を変える。 あなたの脳はすごく大きくなり、そんなに大きくなるものだとは思わなかったほどになるだろう。 あなたは自分のアプリケーションをすべて、ほんの一握りのコードで書き換えるだろう。 社会はあなたを避けるようになる。あなたも社会を避けるようになる。 あなたは自分のまわりの物やまわりの人すべてに不満を感じるようになる。 Lispは非常にシンプルであり、ほんの数分で学ぶことができる。私はさっきバスを待っている間に学んだ。 Lispは非常にシンプルであり、どんな言語を使おうと数ページのコードで実装できる。しかしそんなことをすることはないだろう。ひとたびLispを学んだなら、あなたはLisp以外の言語で何かを書こうとは思わなくなる
TGA (Targa) 形式はTruevison社のグラフィックボードで使用されていた画像形式です。BeOSでも標準でサポートされています。TGA形式はフルカラー用ですが、いくつか異なるタイプがあるようです。ファイルの末尾に制作者等の名前や情報コメントが追加できるものは、後になって追加された機能です。 ヘッダ
Apollo 開発の方法を丁寧に説明していく予定です。第1回目は HTML+JavaScript で Apollo アプリを作ってみます。 そこそこ実用的な例、ということでシンプルな RSS リーダーを作ることにします。Apollo での通信にはドメインの制約がない、という利点を体感することもできます。動作イメージはこんな感じです。 開発環境のインストールがまだの方は、Adobe Apolloメモ や はじめてのApolloプログラミング を参考にして準備しておいてください(手抜き)。 HTML と JavaScript の作成 まずは HTML を準備します。rss-simple.html として保存します。味気ないですが、あえてシンプルにしてます。 <html> <head> <title>Simple RSS</title> <script src="rss-simple.js"><
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く