TOP > 踊るプログラマ物語 > 2008年04月

あすなろBlogger

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

Ubuntu 8.04インストール

2008.04.30

Ubuntuの8.04がでたのでインストールしました。もっとも,インストールと言うか,アップデートしたのは正式にリリースしたその日のうちですが。

アップデートもシステムの「システム管理」-「アップデート・マネージャ」でインストールするだけなので簡単です。インストール中にいくつかエラーがでたような気もしますが,気にしません。

アップデートが終って,再起動。ログインするとXのキーボードの設定ができないとか言うエラーがでます。僕はGNOMEの設定でCtrlキーとCapsキーをスワップしています。そのせいかもしれません。さらに,バックスラッシュとかアンダースコアとかも入力できません。ちょっと困ります。

設定の「キーボード」の「レイアウト」タブには日本語のキーボードが二人います。怪しいです。片方を消して設定し直すと,ちゃんと動きました。

 時々Xが不安定かな?と言うか,入力をいっさい受け付けなくなったりしますが,おおむね,動いています。UbuntuはWindowsを使っていたなら悪くない選択肢です。でも,MacになれちゃうとGNOMEとかKDEって・・・。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.30 17:53

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

一日に書くコードの行数

2008.04.28

論理的思考の放棄」を読みました。本題とは関係ないですが,彼は,

1 日に少なくとも 3,000 行程度、多く書くときで 10,000 行以上のプログラムを書くことができる。その結果、多い月で 10 万行 / 月くらいである。なお、言語は書くソフトウェアの性質上、大半が C 言語である。
 

 だそうです。 すげー。かつては僕も3000行書けたときもありますが,今はそんなに書きません。

さて,この中で

 

いろいろ調べたの結果によると、普通の開発者の作業能力は、1 ヶ月数百行程度、多い人でも 1 ヶ月で 3,000 行程度らしい。"1 日、数百行" ではなく、"1 ヶ月、数百行" である。もちろん職業プログラマーの話で、仕事の他に、毎日大学へ行ったり自分の会社を持っていたりしている訳ではなく、プログラミングに専念していても、この程度だという。イメージしていた現状と全然違う。

 

と言うことらしいです。 コードの行数がすべてではないですが,ある程度の目安にはなります。うーん,一月数百行から3000行ですか?今まで見てきたプログラマの多くは普通のプログラマだったのかもしれません。僕が間違っていたのでしょう。

ちなみに,真夜中の趣味のプログラミングで一月に大体2000行(HTMLのテンプレートとJavaScriptは含まないPythonだけのコード)なので、 うーん。ちなみ,JavaScriptが一番時間がかかっていた部分。なので,もっとうーん。

 つまり,CもJavaも難しい?

で,今まで経験からすると,コードを書くのが遅すぎる人は,出来上がったものも,バグが多いです。上の普通のプログラマはこのバグ修正の時間も含まれているんでしょうか?どうなんでしょう? 

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.28 18:12

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

注目なんとかとか,人気なんとか,とか

2008.04.24

昨日,「地味に楽しいアンケート」で,livedoorのアンケートについて紹介しました。アンケートはやっぱり楽しいです。さて,そのアンケートシステムに「注目」アンケートとか,「人気」アンケートを一覧できます。昨日作った「地球温暖化の原因は?」のアンケートは「注目」で今10位にいるそうです。面白いですね。

 ライブドアに限った話ではなく,最近のシステムはどこもかしこも,「人気なんとか」とか,「なんとかランキング」とか言って順位付けしてくれて,便利なときもあります。でも,やっぱりそういうシステムは好きになれません。ある閾値をこえるとポジティブフィードバックが 発生して,人気のあるものは,本当はそうじゃなくっても,ますます人気がでるんじゃないかな?といつも妄想してしまいます。ソーシャルなんとかを否定するつもりはないし,「「みんなの意見」は案外正しい」のかもしれません(みんなの意見はわりと信じている)。 でも,ランキングは,本当にみんなの意見なのか?と。

 まあ,楽しいね!で終るだけであればどちらでもいいのですが。

ちなみに温暖化の原因は牛のゲップです! 

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.24 19:33

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

地味に楽しいアンケート

2008.04.22

僕の知り合いの間では最近,アンケートが少し人気がありました。それとは無関係に会社の中でもアンケートが人気があります。で,社内では独自のアンケートのシステムが作られ,動いています。

 で,こんな

が 楽しいです。元々は,Wiiの投票チャネルが一番面白いかもしれません。あれをみて,たかがアンケートでも結構面白いと感じました。まあ,Wiiのやつは,小学生の子供ですら面白いと感じるらしいです。

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.22 20:29

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

新しいデジカメ

2008.04.18

Lumix FX500を先週末に買いました。子供に古いデジカメをあげたので,自分のデジカメとして買いました。選択の基準は手振れ補正が一番重要でした。なんだかよくわかりませんが,とりあえず,トリプル補正とか書いていました。何のことだか分らなくてもトリプルなら凄そうです。

その次の基準は広角と倍率です。倍率は本当は10倍のヤツが欲しかったのですが,「きみまろ」が好きになれなかったのでやめました。(本当の理由はレンズでかすぎ)

で,まあ,この位ならいくつか選択肢はあったのですが,液晶の画面をポチポチ押せば,フォーカスをあわせるのが簡単だったり,一度フォーカスがあえば,被写体が動いてもそれをおってくれたり(子供は動き回るのです),ちょっと変なことができるのが決めてになってしまいました。

それから,どうでもいいことは画素数。 6Mぐらいあれば十分です。

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.18 18:50

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

ソースコードのインデント

2008.04.18

コードを読むとき,インデントで構造を把握します。ブレスは飾りであって,構造を把握するときには意味をなしません。これは,僕がPythonを好きだからそういう風に思っているのではないです。そういう風に思っているから,Pythonが好きなのです。最近はあまりお目にかからなくなりましたが(単にPython以外のコードやEclipse以外で書いたコードを読む機会が減ったせいかもしれません),昔はインデントが飾りで,ブレスを意識しないと読めないコードがありました。そういうコードを読まないと行けないときにやることは,ソースコードの整形です。Pythonはインデントをコーディング規約ではなく,言語仕様として明確に定義しているので,インデントがめちゃくちゃだと,そもそもプログラムが動作しません。その是非はともかく,それほどインデントは重要なのです。

でも,最近入った派遣さん,インデントを 飾りだと思っているのか,ちゃんと守ってくれません。また,会社ではインデントはスペース4つでtabは不可と決めているのですが,ときどきtabが入っています。何度言ってもなおりません。悲しいです。

インデントをちゃんとしない人 = ソースコードを読まない人 = いいコードがかけない人 = 自分のコードを構造的に把握できない人 = バグが多い人 = 困った人と僕の中で脳内変換され, 負のスパイラルに入ります。新入社員のころにみた先輩のせいかもしれません。

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.18 18:33

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

「一行で一目置かれるプログラム」?

2008.04.16

僕はお目にかかったことがありませんが,世の中には「一行で一目置かれるプログラム」と言うものがあるらしいです。たった一行で「こいつできる!」と思わせるプログラムとは。と言うことらしいです。

記事の中でi,j,kのような変数は検索性が悪くて何をしているかわからないのでやめましょうと書かれています。ある意味正しくて,ある意味間違っています。変数の名前と言うのは,スコープを意識しないといいも悪いも判断の仕様がありません。スコープを無視して一概に悪いと言い切ることは僕にはできません。例えば,Javaのクラスのフィールドであれば,iとかjとか言う名前では何の変数か分りませんが,

int sum = 0; 

for (int i=0; i<10; i++) { 

    sum += i;

は,一目でiの利用範囲が見て取れるので,iと言う変数名で十分です。

その代わりとして型と内容がわかりやすいような命名が好まれます。intPrintCount(プリント枚数を数えるInteger型の変数)であったり、bolError(エラーを制御するBoolean型の変数)のような変数を自然に使えると良いでしょう。

 って,アリエルでこんな変数名にしていたら多分,修正させられます。Javaであれば型宣言しているので適当なIDEを使えば,その型が何なのかマウスカーソルをあわせるだけで表示してくれます。それに,Integerって言う型が分ったからと言ってコードを読む上で嬉しいことはそれほどないです。単にprintCounterで十分でしょう。動的言語でも,こんな変数名の付け方はみたことがありません。ただ,例外的に入門書のサンプルコードはこういう変数名をつけているところがあります。えーと,結局,何をする変数なのかが重要であって,型が分ったってそれほどうれしいことはありません。

 HogeFugaBuzz hogeFugaBuzzVariableForSomething  = new HogeFugaBuzz();

 

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.16 12:22

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

Web2.5なのか?

2008.04.10

Web 2.5と言う言葉を見かけました。沢山バージョンがでます。シーケンシャルにバージョンがでないのは,同時並行で開発が進んでいるせいでしょうか?それとも,バグフィックスなんでしょうか?Web 3.0というのもあるので,どこぞのプロダクトのように3.0を頑張って作ろうとしたけど,独りよがりになりすぎて,2.xが3.0の機能を取り込みつつ,紛糾するというパターンでしょうか?(ちなみに,どこぞのプロダクトってPythonのことじゃないよ)。

さらにPaaSだとかSaaSだとかSARSだとか,もう覚えられません。まあ,変にバージョンつけていないだけまだましですが。ただし,物事に適当な名前をつけるのは重要で,お互いが会話する上で重要な共通の言葉になります。もっとも特徴的なものがAJAXです。ノンテクニカルな人と話しているとJavaScriptもAJAXですが,それでも構いません。

さて,僕が共通の言葉と言うものを意識し始めた きっかけはデザインパターンです。デザインパターンの偉大なところは,開発者同士が話をするときの共通の言葉を提供したことだと思っています。実際のパターンはそのことに比べたら些細なことです。 

で,人と話をするときにWeb2.0とか,Web3.0という時は,心の中ではとても恥ずかしいです。それから,真顔でWeb2.0って言うエンジニアのほとんどは信用できません。

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.10 18:32

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

Google App Engine

2008.04.09

Google App Engine」が昨日公開されました。騒いでいるのは僕の周りだけなのか,もっと広い範囲なのかは分りません。Amazonのときも,それほど騒がれなかったような気がするので,騒いでいるのは限定的なのかもしれません。

Google App Engineって何かって言うと,Googleのすっげー技術使ってスケーラブルなWebアプリケーションを作れる環境を提供してあげますよ,と言うことでしょうか?Webアプリケーションでまじめにスケーラビリティを維持しようとすると,すごくハードルが高くなります。それにクラスタリングをするにしても,いろいろと大変な作業が発生しますが,それを全部面倒みてくれます。しかも,500MBまでなら無料らしいです。

なので、基本的に何かサービスを始めたいなー,と思ったらGoogleを使えば割とすんなり難しいこと抜きで始められそうです。

App Engineじゃなくって中小企業向けのGoogle Appsもメールとか,もろもろがついて凄い低価格でサービスを受けられます。 面倒なことは,ネットのあちら側でよきにはからってくれる世界がどんどん身近になってきています。

何かやるための障壁がさがれば,どうなるか楽しみです。まあ,そこに何かがあるというだけで,何かが変化するのかもしれません。何も変わらないかもしれませんが・・・。

 で,なんで僕の周りでGoogle App Engineが異常に騒がれているかと言うと,Pythonを使って何でもできるからなのさ。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.09 18:32

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

どうして報告しないかな?

2008.04.08

通常時はともかく,トラブルがあった時など一人で対処できないときや他に適任者がいるときや,もしくは,さまざまな政治的な理由で他の人にトラブル関係の仕事をお願いすることがあります。

人に仕事をお願いして,はい,さようなら,と言う訳にもいかないのである程度の状況把握は必要です。すぐに終りそうなものは「終ったら連絡してください」とお願いします。ちょっと時間がかかりそうなものは,ある程度の時期に報告がくるように,「月曜日の夜に報告をお願いします」と頼んでみます。

でも,僕が頼むひとは,ほとんどのケースで報告してくれません。 「月曜日の夜に報告をお願いします」は月曜の夜には報告がこないので,火曜に聞きにいかなくてはいけません。悲しい限りです。責任を持ってスケジュールまでコントロールしてくれるならまだいいのですが,そこまではしてくれません。

適当に上司やマネージャに報告して自分の責任をうまくコントロールできないか,しようとしていなんじゃないでしょうか? どうしたものか,困ったものです。

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.08 16:56

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

「地球温暖化はとまらない」を読んだ。

2008.04.07

地球温暖化はとまらない」と言う本を読みました。温室効果とかには否定的だったこともあり,僕にとって特に目新しいことは書いていませんでした。

さて,簡単に言っちゃえば,

・温暖化の主原因は太陽の活動で,二酸化炭素じゃないよ

・かつては今よりもあったかいときがあった。あったかい方がいいことが多い。 

・地球の気候はダイナミックに変化していた。 

・二酸化炭素を無理に削減するより先に,やんないといけないことがあるんじゃない ?

・京都議定書っておかしくない? 

と言う内容です。 まあ,最近の報道とは反対の内容ですね。100%彼らの主張が正しいとは思えません(主に温暖化以外のところ)が,大筋では納得できます。

 仮に温暖化でアマゾンがなくなるとして,温暖化が直接の原因でなくなるより,人間が畑にしてなくなる方が確率が高いような気もします。まあ,温暖化対策で石油からバイオ燃料に切り替えて,そのためにアマゾンを切り開いて畑にするので,アマゾンが畑になるのも温暖化のためとは言えなくもないか・・・。

投稿者 : 大谷 弘喜 | 投稿日時 : 2008.04.07 17:29

カレンダー

<< 2008年04月 >>

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      

最新のエントリー

最新のトラックバック

最新のコメント

Tag

バックナンバー