2011-01-01から1年間の記事一覧

アルゴリズムの勉強のしかた

この記事で、アルゴリズムの勉強はアルゴリズムカタログを覚えることじゃないよということを書きました。 プログラムの理論とはなにか アルゴリズムの勉強というのは、スポーツで言えば腕立て伏せや走り込みみたいな基礎体力を養うようなもので、「ソートな…

ソフトウェア開発のための勉強地図

勉強する必要があるいろいろな要素の位置づけを書いてみました。 フルサイズの画像はこちら http://cdn-ak.f.st-hatena.com/images/fotolife/n/nowokay/20110921/20110921111712_original.png まあ、フルサイズにしても読めない字は読めませんが。

プログラムの理論とはなにか

プログラムには、手続きを記述するという側面と、式を記述するという2つの側面があります。 そして、それぞれの基礎理論としては、チューリングマシンとラムダ計算があるので、プログラムの理論としては、この2系統を勉強する必要があると思います。 ラムダ…

画像を出力するだけのWebサーバー

適当に画像を生成する必要があったので、JDKのHttpServerを使って画像を出力するだけのWebサーバーを作ってみた。 「http ://localhost:6780/HOGE」にアクセスするとこんな画像が得れる。 ソースはこんな感じ

live-commerceでPHPUnitのテストを書く

PHP

live-commerceはZend Frameworkを使っているので、テストを書くにはZend_Test_PHPUnit_ControllerTestCaseを継承してsetUpでbootstrapにadmin.phpなどを設定することになるのだけど、テストからだとadmin.phpで使われてる相対パスが狂ってしまうことがある。…

システムはどのくらいのデータを扱うか。

ちょっと気になったので調べてみたら、営業のためのデータはどんな業態でも一社だいたい月10億件くらいで頭打ちっていう感じになった。 追記 2011/9/17 15:54 業態を比べたいので、国内の最大シェアっぽい企業で比べてます。 世界に広げたとしても、実業にか…

プログラマになるための勉強をしている人の前で話をしてきた

イデアルITスクールというところで、1時間ほど話をしてきました。 プログラマとしてやっていくために大事なことというテーマ。 資料を作らずに、というか構想すら練らずにやってしまったので、ここで整理とまとめと補足を。実際にこれをしゃべったというの…

Redmineで作業管理すると仕事をサボりにくくなった話

会社に出勤して他の人と作業するなら、一日何も作業しなかったということはあまりないんだろうけど、家でひとりで作業してると、せっぱつまってるのに結局だらだらして一日なにも作業をしていないということが多くあって、それをとても問題に思ってました。 …

live-commerceでデフォルトポート以外を使うときのリンク切れの問題

live-commerceで開発時なんかにポートを変更して80番ポート以外で動かそうとするとユーザー側サイトが全部リンク切れになる問題。 /catalog/lib/c.phpの705行め $url1 = 'http://' . Zend_Registry::get('host_name'); を $url1 = Zend_Registry::get('host'…

どのプログラム言語を選ぶべきか・・・

PHP-erはダメな言語でいかにまともなものを作るかっていうマイナスからのスタートだし、 JavaScript-erは何もないところで何か動いて楽しいっていう0からのスタートだし、 Ruby-erはRuby好きって言ってるだけだし、 Java-erはJavaの仕様にしか興味がないし…

プログラム言語での孟母三遷の教え

使うプログラム言語によって考え方が変わるかという話があります。 これに関しては、ひとりの人間がプログラム言語を変えたとしても、書き方は変わっても考え方はかわらないと思います。 では、PHPだけをやっている人とJavaだけをやっている人ではどうでしょ…

JavaのFileChannelを使ってファイルを分割する

前回はnio2を使ってファイル分割したけど、Fileクラスを使う場合に比べて、あんまり素敵ではありませんでした。 Java7のnio2を使ってファイルを分割する - きしだのはてな そしたら、skrbさんにnioのFileChannelだったらもっといいかもと助言もらったので、…

テスト駆動開発が嫌いだ

テスト駆動開発が嫌いだ。 ただし、ここでの「テスト駆動開発」は日本で今TDDと呼ばれてる多義的なものじゃなく、「テスト駆動開発入門」にかかれている「テスト駆動開発」。 もっと正確にいうと「テスト駆動開発入門」がミスリーディングをわざと誘ってて有…

Java7のnio2を使ってファイルを分割する

この用途には、あまり便利ではなかったw java.io.Fileを使うほうがよさそう。 import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Path…

ヒープソートの実装

やったことなかったので、ヒープソートを実装してみた。 ヒープソートというのは、ツリー構造を作って、ツリー方向にバブルソートを行うアルゴリズム。 参考 アルゴリズムクイックリファレンス作者: George T. Heineman,Gary Pollice,Stanley Selkow,黒川利…

「メタマス!」読んだ

チャイティン数Ωに関する本。 チャイティン数とかいわれても、たぶん馴染みのある人は少ないと思うのだけど、一言であらわすと、とてもランダムな数。 ランダムな数は、それより短いサイズのプログラムで記述できないということなので、どうやって導出するか…

業務連絡:fk.urban.ne.jpのメールアドレス停止しました

アカウントを停止したので、古くに使っていた kishida@fk.urban.ne.jpのメールアドレス、使えなくなりました。 連絡は、gmailのnaokikishidaにお願いします。 同時に http://www.fk.urban.ne.jp/home/kishida/ も停止されてます。ここにあったコンテンツは、…

メモ:PHPの継承でメンバ変数もオーバーライドされる

v); } } class B extends A{ protected $v = 'clB'; } $objA = new A(); echo $objA->put(); echo '<br>'; $objB = new B(); echo $objB->put(); ?> 結果 clA clB

夏休みに読みましょうの本

もう夏休みに入っちゃってる人多いと思うんですけど、こういうとき本を読むとしたら、業務に直接関係ない本とかいいんじゃないかなーと思うんですね。 ということで2日くらいで読めそうなの4冊ほどあげておきます。 プロセッサを支える技術 一番オススメは…

Google+でおもしろ画像や動画が多く出回る理由

Google+ではおもしろ画像やインパクトある動画GIFがバンバンでまわっている。 最初は単にインパクトがあるからだと思っていたのだけど、もしかしたら違う理由があるかもしれない。 というのも、出回ってくるおもしろ動画や画像で、最初の紹介者のコメントが…

構造化されたGoogle+のストリームと半構造のTwitterタイムライン

半構造 最初に半構造という言葉について。 半構造というのは、完全には構造化されない構造です。 構造化というのは、事前にデータの形式がどのようになるか決められているような構造です。半構造は、ある程度の構造を事前に決めておき、構造を決めない部分を…

「あのときの王子くん」読んだ。「星の王子さま」の新訳。

童話にみせかけた大人むけの風刺本。手に入れやすいし読みやすいし短いので、哲学の入り口としていいかもしれない。 あのときの王子くん(縦書き)作者: Antoine de Saint-Exupery,大久保ゆう出版社/メーカー: リブロリア.ネット発売日: 2008/02/01メディア: …

技術者が哲学を勉強する意味

Twitterにも次のように書いたのだけど、あらためて。 理系の人は、専門で必要ないとか言わずにちゃんと哲学とか倫理学とかやっておくほうがいいと思う。その専門の技術者としては不要かもしれないけど、技術者として生きるにはあったほうがいい。んで、技術…

「シュレティンガーの哲学する猫」読んだ。

シュレティンガーとつくけど量子力学の本ではなくて哲学の本。十数人の哲学者について、へんなネコの物語にはさみながら解説する本。 シュレディンガーの哲学する猫 (中公文庫)作者: 竹内薫,竹内さなみ出版社/メーカー: 中央公論新社発売日: 2008/11/01メデ…

Google+で実感したコミュニケーションの非対称性

Google+は片思いの関係が手軽に可能ということで、非対称ネットワークだといわれる。 ただ、片思いが可能というのはTwitterもそうなっている。Google+のほうが片思いが気になりにくいとはいうものの。 それよりも、Google+にある非対称として、困ったものが…

Google+のストリームに流れる情報の残念さ

一発ネタの動画GIF よくわかんない長文の意見(よくわからないのは、読んでないからだけど。読む気もない) さっきも見たリンク。システムによる画像付 どうでもいい投稿にたいするだらだらながいコメント(どうでもいいというのは、自分にとってということ) 「…

「メルロ=ポンティ入門」を読んだ

「メルロ=ポンティ入門」という本を読んだ。 メルロ=ポンティ入門 (ちくま新書)作者: 船木亨出版社/メーカー: 筑摩書房発売日: 2000/03メディア: 新書購入: 2人 クリック: 32回この商品を含むブログ (19件) を見る メルロ=ポンティといっても、たぶん、ここ…

Live CommerceをPHP5.3で動かす

Live CommerceというオープンソースのPHP製ECパッケージがあります。 http://www.live-commerce.com/ ところがこれ、PHP5.3では動かなくてPHP5.2を使う必要があります。 ただ、PHP5.2はすでにメンテナンスも終わってるようで、セキュリティパッチも出ていな…

UbuntuにいれるPHPパッケージとPHP設定のメモ

Ubuntu設定のいろいろメモと組み合わせてメモ。 パッケージ php5 php5-gd php5-pgsql php5-xdebug phpunit /etc/php5/apache2/php.ini display_errors=On html_errors=On /etc/php5/apache2/init.d/xdebug.ini xdebug.remote_enable=On

D.ノーマン「人を賢くする道具」読んだ

1993年の著作なので、GoogleやSkype、Twitter/Facebook、iPhone/Androidなどが存在する現在の視点でのノーマンの意見を読みたいなーと思った。 次は「未来のモノのデザイン」を読もうかな。 人を賢くする道具―ソフト・テクノロジーの心理学 (新曜社認知科学…