ちょうど1年前に日経ソフトウエアというプログラミング雑誌の編集部に異動になって以来,「プログラミングって一体何だろう?」とずっと考えて続けている。今度,日経ソフトウエア6月号で“プログラミングをしたことのない人向けの超入門記事”を書くことになり,プログラミングの本質について考えてみるいい機会だと思った。そこでふと気が付いた。「プログラミングをしたことのない人が考えていることが,自分にはわからない」ということに。 私には職業プログラマの経験はないし,長いプログラムを書いた経験もない。いわゆる「コードが書ける」人間だとはお世辞にも言えない。自分が記事の中で書いたサンプル・プログラムをあとで見返して,不自然な部分を発見して赤面するなんてことはよくあるし,最近よく参加している勉強会(注1)では演習問題が解けなくて苦しんでいる。 注1:「素人くさいSICP読書会」といいます。SICP(Structu
http://www.ciojp.com/contents/?id=00002832;t=42 だが、先進的な機能やサービスの提供基盤となっていたこのPOSシステムも時代の波には勝てず、度重なるカスタマイズによって複雑化するとともに陳腐化してしまった。そして、しまいには頻繁にクラッシュを繰り返すようになり、それによってレジに行列ができるといった状況も珍しくなかった。さらに、システムの運用管理にも多大な手間とコストがかかるようになっていた。(中略) POSシステムだけでなく、当時の同社のシステムの中には、もはや開発者を見つけられないような古いコードで書かれたものがたくさんあった。 うーん,ありがちな話だね.こういう苦労は洋の東西を問わないようだ.異なるのは失敗から学習するかしないかという点だな. 業績が落ち込み始めると、ほぼすべてのITプロジェクトが見直しや延期の対象になり、長期的な効果を見
システム設計とフレームワーク システム設計と言う仕事は、もしかして例えば全国網のトラック運送会社の運送ルートの設計担当者の仕事と似ているかもしれません^^;。 最新 はじめてのシステム設計(技術評論社、永嶋 浩、2006/02)を読みながら、そう思いました。 トラックを全国にくまなく走らせるためには、全国の高速道路網の地理的理解はもちろん、経済性、効率性、その季節要因(ガソリン代、道路工事など)を把握し、最適なトラックの配送スケジューリングが求められます。この仕事を新人が理解し習得するために必要とする知識の一番は、全国の高速道路マップの理解です。この本は、まさにこの全国高速道路地図に相当します。 その意味で、やっとシステム設計という世界に全国網のマップが作られた意味は重要です。いままでなぜしばらく、この手の書籍がなかったのか、その理由は簡単です。それはあまりにもこの世界の変化のスピードが速
先日、経済産業省向けの仕事をしている知り合いと食事をしたのだが、彼によると経済産業省の今の悩みは、「IT産業の階層化の弊害によっておこる下流のプログラマーの収入の低下」だそうである。「プライムベンダー」と呼ばれる「上流コンサルタント」たちがインドや中国にも仕事を発注できることを理由に、激しく値切り始めたために、今やわずか一人月30万円というケースもあるという。 こんな話を聞くと本当に悲しくなる。まず第一に「プログラムを書く」という仕事は簡単な仕事ではない。数学的な頭を持っていないとかなり辛いし、基礎がしっかりと出来ていないとろくなソフトウェアは作れない。物価の安いインドや中国なら許せるが、米国よりも生活費の高い日本で一人月30万円とはあまりにも低すぎる。 「彼らは下流のエンジニアで、詳細仕様書に従った通りのプログラムを書くだけの簡単な仕事をしているから給料が安い」という説明を聞いたことがあ
今は昔、ひとりの駆け出しプログラマがいた。 その頃はCOBOLばかりで、しかも保守ばかりだった。そこで、独学で身に付けたCをやらせてもらえる仕事を奪ってきては書いた。スクラッチプロジェクトを見つける嗅覚だけは抜群だった。たいていは人手が足りず、新人でも歓迎されたからだ。 そこには優れた先達がいた。「スーパープログラマ」と呼ばれていた。 なぜ「スーパー」なんて修飾子がついたかというと、速いプログラムを早く書いたから。もちろん、「速い」とは少ないメモリ・小さいプログラムのことを指し、「早く」とは実装が早いこと。実際、彼らが書いたプログラムはサクサク動き、バグは簡単に見つけられた。 教えを請うと、先達たちは、おしなべてこういった。 最初に学ぶべきは、コンピュータサイエンス。特にアルゴリズムとデータ構造だ。実践的なコーディングテクニックよりも、まず基礎だ。これはコードを書きながらではなく、文献から
Tagの検索にMySQLの全文検索を使う Tags with MySQL fulltextを参考にして試してみた。 Femoの中で、タグの絞り込み機能を実装したのに続いて、「完了」や「finish」と言ったタグがついている場合表示しないというオプションを考えている。 そうなってくると、SQLをどう書けばいいのか、また複雑なSQLを構築したときにパフォーマンスは大丈夫なのかと心配。そこで、上記のURLを参考にしながらMySQLの全文検索に注目。 create table ft_tags( id int unsigned not null auto_increment primary key, tags text, unpack text, fulltext (unpack) ) と言うテーブルを作成。 ここに、 my @tags = ( q/task femo/, q/femo mail t
重要: メールアドレスが変更になりました 登録アドレスのリストは非公開としました。 購読登録の受付を再開しました。手作業により登録作業を行います。 投稿は登録された後でないとできません。 しばらくの間、購読登録を停止します。未登録のアドレスからは投稿できません。 java-house.jpにおけるクロスサイトスクリプティング対策の状況について Majavdomoプロジェクトが装い新たに再始動しました。 「フリーウェブメール」 からの投稿は禁止になりました。 [j-h-b:44551] 購読はできますが、投稿しても流れなくなります。 投稿が拒否された際、特に通知は返送されません。 Java FAQ: Javaに関するよくある質問とその回答集が公開されました。 「java-house@」は廃止されました。 [j-h:9220] [j-h:9343] いったいどうやって入会したのですか? [j-
過日ご紹介していたNHK教育で放映の番組「『考え方』が動きだす-佐藤雅彦研究室のアニメーション・スタディ-」を見ました。 映像、ナレーションの言葉遣い、構成、どれをとっても全体的に佐藤氏の監修がゆきとどいているとおぼしき、非常にわかりやすい内容でした。 冒頭から心の師匠の御登場。思わず、テレビの正面で正座しながら観てしまいました。 そのオープニングから既にドキドキ。非常にエキサイティングです。結局最後まで動悸が止まりませんでした。 なかでも、しょっぱな、「Aの4分木」で大きな正方形が四分割された瞬間に泣きそうになりました。ツリーの意味が「わかった」瞬間、衝撃的なほど感動してしまったからです。まさに「概念の視覚化」。ツリー構造の持つ情報が位置情報として可視化されてゆく映像はたとえようもなく美しく感じられました。 数々の著作やインタビュー記事で佐藤氏の提示する概念の多くを把握してはいま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く