小飼弾氏のインタビューにインスパイア(?)されて書いてみました.元ネタは このITmediaの記事.小飼 弾さんにbig respect. 質問は質問者の西尾泰三 さんとべにぢょさんの文章をそのまま引用しています.
力武 健次 0x2A (10進で42)歳.よく調べたらMultics(1963年)より後(1965年)だね.
Kenjiと呼ばれてる時代が長い.本名だから.JJ1BDXというのもある.これは 1976年から使っているアマチュア無線のコールサイン.最近はDr. Macrofieldと いうのもつけてみた.Macrofieldという名前を思いついたのは,1979年.音楽活 動とかで使ってた.
ないです.利己主義だからリコタケとか言われていた時代があったなぁ.
昔使ってたのは,Fix bugs while you whine on NetNews. If you can't write code, pay for support. 「ネットでボヤく暇があるならバグ直せ.コード書け なかったらカネ払って支えろ.」今は,カネ払う方にシフトしてるかなあ.ダメ だなあ.
Opera, IE (苦笑), w3m, mutt, JVim 3.0-j2.1a-skk1.2.17 (の私家版)
Operaは一画面全部使って表示,ってのが気に入って,シェアウェア時代もサポー トしてました.なぜかFirefoxにはご縁がなくて.IEはIEじゃないといやだとい う商売人さんが多い時には使ってる.絵を見たくないときはw3mがいいですね.
そういえばmixiのデザインが気に入らないから,他のえらい人達が配ってくれて いるCSSを自分で直して入れていますね.これはアドインかな? :-)
Emacsは特別嫌いというわけじゃないけど,自分では使わない.Emacsじゃないと ダメ,という人達の考え方に同調できないから.
メーラーといえば,GMailは,メーラーといっていいんじゃないかなあ.
あるものならなんでも.make, RCS, CVS... subversion を使ってみたいと思い つつ,そこまで行ってない.遅れてるよね.(subversionの参考書ってWebで読め るんですね.すばらしい.)
でも,特にコマンドラインでなければならないというこだわりはありませんよ. AVRならAVR Studioでいいんじゃないかな.Windowsをコマンドラインだけで使うっ て大変でしょ.
自分自身の思考力は当然として,PCとネットは分けて考えるべきじゃないと思う から1つ,でいいかな.とすると,最後は,書き易い筆記具(ペンとノート).
1974年から1975年(9歳から10歳)までアメリカ合衆国で暮らしたこと.これ以来, いつも居心地の悪い生活を送っています.
最初のコンピュータ(PCじゃないよ)は,1974年,NTT大手町データ通信局にあっ たDEMOSシステム.最初のPCは,なんだっけ.Apple][とPET2001とどっちが先だっ たかなあ.1978年であることは間違いない.
FORTRAN.PCを触れる前には,APL, Algol, PL/Iなんかの話も読んだ覚えがある. その後,8008のアセンブリ言語から,8080を経て,まじめに実機で書けるように なったのは6502のアセンブリ言語とBASIC.Z80機器は,結局自分で動かしたのは, 2001年に東芝の互換CPUの上だった.(秋月のAKI-80)
最初にC言語に触れたのは,1984年ごろ.MS-DOSの上でいろいろ遊んでいるうち に覚えた.その後はほぼ同じ時期にVAX/VMSと4.2BSD/4.3BSD UNIXを使うように なった.そこでawkとかBourne shellとか.
アメリカに住んだ時に,親父に頼まれて,華氏と摂氏の変換表を印刷するコード をFORTRANで書いた.FORMAT文で1H[space](空行を開けずに行送り)とするところ を 1H0(空行を1行開けて行送り)としちゃったから,ずいぶん間延びした表になっ たけど.親父が勤務していた研究所のコンピュータで実行してくれて,ラインプ リンタ用紙数cm分にはなったっけ.滞在中は随分役に立ったらしい.
実は,Perlだなあ.awkやCをそれまでは使っていて,今でもいっぱい使ってるけ れど,PerlはCでやりたいことをプロトタイピングするのに実は便利なんですよ. システムコールとか良く似た名前で扱えるしね.あと,良いライブラリが揃って いる.DNS関連では,Olaf KolkmanのNet::DNSなんか結構素敵.
Cは知っておくと困らない.おかげで今もなんとかメシが食えてます.別に簡単 な統計計算をCでやったっていい.32bit同士のかけ算で64bitであって欲しい, というのを,アセンブリ言語以外で書くのって,結構面倒だからね.
オブジェクト指向的なものにはイマイチ慣れなくて,使わずにいるんだけど,デー タの流れ,実行しているコードの流れさえ掴めば,どういう言語でも対応はでき ると思う.Concurrency(同時に複数のコードが走っていること)を考えると,順 番が書かれている通りに実行されるわけじゃないから,難しいけど.
言語オタクにはなれなかったというか,劣等感があります.Prologとか,全然わ かっていない.LISPのS式は,すばらしいと思うし,教養の1つとして知っておく べきだと思うけど.JavaとCommon Lispが近縁なんだよな,そういえば.
ツールというか,ゴチャマンとした処理系としては,Rは面白いと思って ます.プログラミング言語というよりは,統計処理関連アプリだけど :-)
中学2年のころ,GAME-APPLEコンパイラってのを1980年にリリースしました.こ れは力技で作っただけで,今ならyaccなりlex(bisonとflexかもしれないけど)が あればできちゃうかもしれない.でも,手探りで努力した割には,よくできたと 思う.アセンブリ言語でよくゲームもどき作って遊んでました.
その後,私が自分でやった作業というのは,ほとんどがパッチ当て. UUPC/extendedというソフトの日本語パッチコードは,ずいぶんと好評だったら しいです.最後のフリーソフトはdbskkd-cdbかなあ.あれは D. J. Bernstein の cdb があって初めてできたものだから,パッチ程度の作品だよね.
小飼さん同様,仕事としてやってきたのはライブラリの設計改良やシステム管理, あとは論文のアイディアを検証するためのコードだから,全部裏方に属するもの ですね.だから「これが俺のコードだぜ」といえる単独の作品を持ってる人達は, 偉いと思う.
あまり変な省略はしないようにしてます.Cでそれをやると読めなくなっちゃう から.他の人と一緒に作業する場合は,コーディングの仕方も決まるから,それ に合わせる.他人のクセからは勉強することも多いし.
自分一人で作業する場合は,英語以外の言語は,そのプログラムのデータの例, あるいは処理対象(string literalなど)として表記する場合以外には,コメント には使いません.ASCIIを処理できないコンピュータはさすがにあまりないけど, 他の言語だと文字列処理だけでいろいろと面倒なことが起こる.
関数型言語って,いまだによくわかりません.抽象化は必要だろうけど,実際に アセンブリ言語に落ちた時,あるいは最近のプロセッサならどうやって実行され るのか(投機的実行なんてのもあるわけだし)まで落ちるところまで簡単に見えな いものは,あまり信じる気になれないんです.LISPはそういう意味では,セル構 造が見えるから,まだわかりやすい.今ではRISCなどで当たり前の,命令の非同 期実行という考え方を理解するのにも,苦労した記憶があります.
小飼さんに倣って,Programming Perlも挙げておきますが,個人的に好きなのは TCP/IP Illustrated (Volume 1, 2, 3),Advanced Programming in the UNIX Environment (2nd edition), あとはやっぱり The C Programming Language (2nd edition)(C言語のバイブルK&Rね)かなあ. W. Richard Stevensは,いっぱいいい仕事を残しましたね.故人なのが残念でなりません.
伝記ものなら,Steven Levy の Hackers がダントツでおすすめ.
ところで,原著が英語だったら,英語で読みましょうね.日本語になったものは, 別の代物だと思ったほうがいい.逆も同じで,原著が日本語の技術書は,日本語 で読みます.読めるから.
Schneier on Securityかな. Bruce Schneierは,昔彼の本の監訳をしたことがありますが,今も冴えてます.
ありません.コンピュータ関連の学会誌は,Communications ACM, Computer Communication Reviewは紙で購読してますが,コードの話はあまり出てこない. 雑誌を読むならKY(コード読め).
アジャイルとかウォーターフォールとかAjaxとかrailsとか言わなくても実際に なすべき仕事ができるような人達と共同作業が達成されるようなもの.つまり, なすべき仕事によって変わるわけだから,1つには決められないよ.
ヒトの問題を小飼さんは指摘していますが,Tom DeMarcoがかかわっている Peopleware, Slack, Walzing with Bearsの3書はどれもおすすめです. 私はどちらかといえば自由放任主義で働いてくれる人が好きだから.
これ,某所で議論になったんですが,その時の名言の1つを記しておきます.オ リジナルは私ではありません.
「Web 2.0ってのは,要するにユーザーが,中身作る奴,コード書く奴が,主役 だ,ってことだよ.」
仕事は1990年からANSI配列準拠のキーボードでやってるんで,JISキーボード配 列はダメです.あと,カナは打てません.
マウスも使うし,マウスでしかできない操作もいっぱい世の中にはあるわけで, それはマウスでやる.でも,文字をタイプしてやったほうが効率がいいなら,そ れを使う.バッチファイルとかシェルスクリプト大好きだから.
ただねえ,身体性って,そんなに簡単に少数のインターフェースで統一して表現 できるものじゃないんだよね.たとえば,ダイヤルを回す感覚ですら,マウスや キーボードでは再現できない.ツマミの重さとか,どうやって再現するかといえ ば,同じものを作るのが一番早い.小飼さんも言ってますが,プログラマにとっ て,そういう一味違った入力デバイスを簡単に扱えるような技術が,もっと普及 すればいいと思う.
最初からは作れませんねえ.でも今使ってる機械は,知人に勧められたショップ ブランドのものに,自分でちょっと手を加えたりして使っています.CPUは最新 最速のものは使いません.ようやくIntel Core2 Duoになりつつありますが,別 にCeleronでもそれで間に合えばいいと思ってます.あと,仕事ではPanasonicの Let's Noteを使わせてもらっています.
自分に所有権のあるPCは3台.自分で管理している他のものも含めると,9台ぐら いになります.全部タダのIntelチップのWindows2000/XPかFreeBSDのマシン. Macは使ってません :-)
言語は,率直に言ってなんでもいいと思ってます.仕事をするためにプログラミ ング言語があるのであって,逆じゃないと思ってますから.でも,LISPや Schemeはかっこいいよね.FORTHもかっこいい.昔BLISSという型のないBCPL とC の中間のような言語を使ってましたが,これもOSのコーディングには良かった. だから,あまり型があり過ぎるものとか,単純でないものには,興味がありませ ん.
Perlも最初は複雑な言語だと思ってました.自分の道具として,CPANを受け入れ られるようになって使えるようになったけど,結局今の言語って,言語を取り巻 くライブラリや環境,人々まで含めて判断しないと,自分がそれにかかわるかど うかは判断できない.だから,あまり手を広げられていないのが実情です.
ハードウェアはとても大事.デジタルロジックはもちろんだけど,アナログの技 術はデジタルの基盤を支えるものだから,ソフトウェア屋であっても教養として 知っておいて欲しいです.
私の趣味の1つに無線があるけど,無線技術,さかのぼれば電磁気学や相対性理 論もちゃんと勉強したい.大学のころさぼってばかりいたから,基礎が弱いんで すよ.単位落としまくったし(苦笑).
大学でもっときっちりやっておけば良かったと思って後悔しているのは,複素積 分やフーリエ変換,ラプラス変換などのデジタル信号処理技術を支えている数学 の基礎.これも単位を落としまくって,再試験でやっと通してもらいました.
セキュリティ対策の仕事をしていて思うのは,組み込み(embedded)の世界は,こ れから大変なことになるだろうということです.もともとリソースを削って製品 にしているわけだから,脆弱性もかなり残っているはず.開発カルチャーも違う し.こういう世界の開発者の人達とどう対話して,彼等にもインターネットでど う楽しく,危険のないように過ごしてもらうかはとても奥深い課題だと思います.
あと,ナノテクとかバイオとかやってる人達は,単純に尊敬しますね.未知の世 界だから.できるかどうかわからない物質を作ったり,生命を育てたりするのは, できあがったモノをいじる作業よりずっと難しいから.
12歳ぐらいから近視が進んだ.でもこれはプログラミングとは関係ないと思う. 親父が近視だったし.遺伝でしょう.17歳の時に右目は網膜剥離と白内障を患っ たので,レンズなしの状態が続いています.
あまり正確なことは書きませんが,7時間ぐらいは寝てると思う.最近は朝型に なりつつあります.でも基本的には夜の方が仕事できちゃったりする.昼間もやっ てるけど.
300とかやってたことはあるけど,この業界だと月間残業200時間とかフツーらし いので,正確なことはわかりません.でも,作業時間が多いから結果も良いって ものでもないでしょう?
せいぜい16とか20ぐらいじゃないかなあ.徹夜のシステム管理作業が必要な時は できるかもしれないけど,徹夜のコーディングはできない.1時間でもいいから, 寝ないと.
寝すぎるとダメだけど,徹夜は長期戦には向かない.ただ,どうしてもここまで やりたい,という時は,遅くまで起きてやります.プロジェクトを終わらせたい という気持ちが高まっている時は,朝早く起きてやることもあるし.
9歳〜10歳のころ,周囲にあまり日本人のいない環境にいて,かつアメリカの普 通の学校に通ってました.で,日本に戻ってからも,TTLやCMOS ICのデータシー トは,全部英文で読んでいた.だから,簡単とか難しいとかいう次元の問題では なくて,普通にやっています.
ただ,英語でも,日本語でも,感情表現は難しい.妻との感情表現は日本語にな るからね.気を遣います.日本語は後から学び直した,という感覚がどうしても 抜けません.雑誌や本を書く仕事をしていた時に,編集者の方々に鍛え上げてい ただいたおかげで,すこし日本語が書けるようになったかな,と思っています.
もっとも,だからといって英語の方が正確に書けるとは,とてもいえない.冠詞, 単数複数,動詞の活用,前置詞といった,いわば子供のころから繰り返して身体 に叩き込むべき文法や語法の事項ができているわけではありませんから,よく間 違えます.いつも妻に注意されてます(苦笑).
最近日本で発行されている英語の論文雑誌を編集する仕事をしていますが,英語 を母語としている著者が少ない雑誌なので,皆さんかなり苦労しています.でも, 表現したいこと,そして自分がやったことが存在していれば,あとはどれだけ訴 えかけたいかという努力をすることで,母語でないこと,あるいは不得意なこと はかなりカバーできます.投稿は世界中から来ますが,著者の皆さんの努力には 頭が下がります.
思いません.そもそも言語能力は習得するものであり,生まれた時に備わってい るものではありませんし.訓練によって素早く動けるようになったり,身体の感 覚を使って省力化はできるようになるとは思いますが.
仮にセンスの部分があるとするなら,プログラミング言語の多くはASCIIのコー ドセットで書かれているので,それらの文字を速く読める必要はあると思います.
問題を発見できる能力は必要ですね.ある課題があった時に,その課題をこなす ために解かなければならない問題とは何か,を見つけられる人にとっては,楽し い仕事だと思います.
もう1つあるとすれば,自分のやったことをあらゆる可能性から検証して,例外 がないかどうかを限界まで確かめる能力.良いプログラマは,regression test (過去のバージョンの動作結果と比較したり,入出力関係が判明している実行例 を使って,プログラムの動作が正しいかどうかを確認すること)の達人か, regression testを必要としない論理的完全性を持ったコードを書きます.
他人と仕事をする上では,他人のコードを読みこなす能力も必要だと思う.それ もできるだけ早く,速読というか,全部なめるように読むだけではなくて,必要 な部分を狙って読む力も必要でしょう.
不幸だと思います(笑).率直な話,私はWindows95以降のWindowsマシンのための フリーソフトウェアって,書いたことがないんです.書く気にならないから. 言い替えれば,Windows上でフリーソフトウェアを書いている人達の苦労は,大 変なものだと思います.私もいろいろと使わせてもらっていますが,すばらしい 作品の恩恵に与っていることにはただただ感謝するだけです.
でも,私のやっているような仕事なら,Windowsでなくとも,FreeBSDの上で大半 ができてしまう.あえてWindowsの上で,道具を作りたいとは思わないんです. FreeBSDなら,Cコンパイラもあるし,Perlなどの道具もそろっているし,組版だっ てできる.
唯一例外は,趣味の音響処理や音楽制作に使っている環境ですが,これは専用機 を使っている感覚に近いです.たとえば,単なる数学的な波形生成であれば, Windowsである必要はありません.
Windowsを使う唯一最大の理由は,事務系の人達が,Microsoft Office Suiteし か使わないからです.彼等を困らせることはしたくないですからね.Windows は,そういう意味では情報のrenderingを行うもの,つまり表現を補強するため の道具と割り切っています.
いろいろな意味で良いものをたくさんもたらしたプロジェクトだと思いますが, 多少窮屈だなと思う部分があることは否めません.
GPLもいろいろあって,一概に語れなくなってしまいました.結局,どこまでが 反社会的な動きか,あるいは社会的に許される利益追求の動きか,というところ で見ていくと,GPLがすべてだとはとても私には言えない.Stallmanはかつてパ スワードを使ったアカウント認証にも反対したような人だそうで(Steven Levy Hackers の Epilogue: The Last of the True Hackers を参 照),そういう人だという背景を理解した上で考えるべきライセンスのあり方だ と思います. BSDライセンスが好きかなあ,私も.
最近のPerlは速いですね.ネットワークシミュレータでも,tcl/tkで書かれたも のが実用になっています.ですから,能率の良いコードを書くためにコンパイラ で苦しむよりは,インタプリタ言語でコードを書いて製品化する,というのは十 分アリです.本当にクロック単位の高速化を求める世界は,その部分だけアセン ブリ言語で,それでもだめならFPGAなどでハード化すれば済むこと.
コード書いたことのない人は本来コンピュータ関連の職業に付かないほうがいい んじゃないかと思います.SEとはなんなのか,というのは,かつてSEのいっぱい いた会社に所属していたんですが,その経験をもってしても,自分にはよくわか りません.営業は営業で,コスト試算とか利益率の見積りとか,プログラマーと は別に専門職たり得るスキルがあるはずで,それがごっちゃになってる日本の状 況はよくわかりません.
自分一人でお金を稼げるほど世の中は甘くはありません.自分以外のスキルを持っ ている人達にどう仕事をしていただくか,彼等が何を要求していてどうすれば彼 等と自分が一緒にハッピーになれるのかをいつも考えて実行していくのが仕事だ と思っています.だから,協調して仕事をしていくのは,当然のことです.人間 としての好き嫌いと一緒くたにする話ではありません.
「俺ってすげーじゃん」ってのは,どんな問題を解いた時,解けたことが証明で きた時でも思いますよ.それが楽しさの源泉でもあるから.でも,多くの問題は 実は昔の問題のリメイク版じゃないけど形を変えて現れて来たものでしかない, というのもまた事実です.ですから,慢心すべからず,ですね.
人生とは problem solving (問題解決)の繰り返しだ,と思っています. だからいつもプログラミングしているようなものかも.コンピュータに触れられ るようになってからは,頭の中に状態遷移とか,AND/OR/NOTの関係とかがすぐに 浮かぶようになったかな.
コードって,道具であると同時に,芸術作品でもあるんですよ.だから,自分の 作品を他人にただdisられたくはないですよね.コードは動いてナンボだから, 建設的批判,つまり解決策の書いてあるバグレポートとかはリスペクトして読ん で反映しますけど,そうじゃなくて,ただ「動かない」というのは,作者として は対処しがたいなあ,と思っています.同様に,「汚い」というのは,あまり他所 様に言わないほうがいいでしょうね.自分にとって読みにくい,というのは言っ てもいいと思うけど.
あと,コードに落とせる数式やアルゴリズムを示せる人は,プログラミングをし なくても,コードを書いている以上のことをしているのと同じだと思っています.
システム管理者の経験は長いけど,その立場から抜けられない人達に意外に多い んじゃないかと思ってます.システム管理者って日本では非常に低く見られがち な職業なんだけど,その理由の1つは,仕事の(他人にわかる)言語化が下手な人 が多い,という問題につきるのかもしれない.
プログラミングに関していえば,疑似乱数の作り方で,Mersenne Twisterのよう なLFSRを使ったものが,なぜ線形合同法など古典的な手法よりも優れているかと いう違いがわかるぐらいでないと,これからのセキュリティを重視するプログラ ミングの世界では生き残れないと思いますね.
あと,プログラマであるならば,計算量については敏感でなければなりません. CPUは自分だけのものではないのですから.
時間の制約を満たすもの,それから人間が納得して実行できなければ,どんなセ キュリティ対策も机上の空論でしかあり得ません.
人工知能(AI)って,私,あまり信じていないんです.最近GoogleはAI的だ,とい う論説がありますが,あれは人間がGoogleの検索結果を見て反応し,その結果を Googleの検索システムが記憶して再判定するというプロセスの繰り返しがAI的に 見えるだけで,Googleという検索システムが何か自分の考えを持っているわけで はないですよね.行動は状況とは不可分ですから,そもそもすべての場合分けを 事前に察知してコーディングできるわけでもありません.
小飼さんと同じになっちゃいますが,コードでやっていることに対して,コメン トで嘘をついてはいけないですね :-).あと, A and B という条件が (not A) or (not B) と書くべきものであるならば,そう書いて欲しい. if-then-elseのネストが深すぎるのも,ちょっと考え直せば簡素化できるはずで す.同じく,あまり形式的な束縛関係を重視し過ぎるのは,実際のコードを読みに くくする可能性があるので,やり過ぎは禁物ですね.
データの符号化に関するコードは,どれも工夫が凝らされていて,勉強に値しま す.個人的に好きだったのは,以前特許の関係で使えなくなって以来あまり有名 ではなくなってしまったけど,Lempel-Ziv-Welch法によるテキストデータ圧縮の コードです.その他,splay-prefix coding, arithmetic coding, Huffman coding など,美しいアルゴリズムはテキストデータ圧縮の世界にはたくさんあ ります.
最近は他人様にこういうことを言える身分ではなくなりました :-) …というか,きれいなコードでないと,セキュリティ・ホールになってしまうの で,減ってきているように思います.
以前「他人依存症」という言葉を妻と言ってたんですが,人間に聞くよりはまず 検索しろ,(検索結果が正しいかどうかは)別の情報源から自分で調べろ,と他人 には言っています.
技術士(情報工学部門)というのは,情報処理資格なんでしょうか.違うと思うん だけど.いわゆる情報処理技術者系の資格は,持ってません.自分のスキルを高 めるために挑戦するには,良い目標だと思います.でも,その資格があっても, 仕事をもらえるとは限りません.世の中そんなものです.
私には子供はいませんが,他の知識同様に教えることはするでしょう.
あえて名を挙げるなら, Daniel J. Bernstein ですね.彼の言動故に嫌ってい る人が多いですが,私はコード書きとして見習うべきことが多いと思っています. 数学者から見れば,プログラマのやってることの多くは基本的な論理性に欠けて いる,ということを気づかせてくれた恩人でもあります.
いっぱいいますからあえて名前は挙げません.良きプロジェクトリーダーの中に, 良いプログラマが多数いるのは事実だと思います.
たくさんいます.この世界年功序列なんてものはまったくなく,実績がすべてだ と思います.Webのかっこいいサービスを作った連中の多くは私より年下だろうし. 小飼さんも年上だとずっと思ってましたが,年下だそうで,脱帽です.
tumblrが良かった.blogのコメント機能というのは私は不要だと思っていました し,ネタの引用に徹するという設計は見事だったと思います.
次点はtwitterかな.私はIRCが好きだったから :-)
あと,facebookのシッチャカメッチャカぶりは,mixiの自前主義ぶりとは正反対 で,とても面白い.
サービスを統合するメタなサービスとしては,Googleの怪物ぶりを挙げずにはい られないですね.
あえていえば,MD(ミニディスク).あれが光ディスクである理由は,MP3とフラッ シュメモリのある現在,まったくない.
BIND.まだまだ新しい機能が加わっているし,コードもきれいになっているけど, 自分がインターネットの運用にかかわるようになって以来ずっと存在するソフト ウェアだし,古い構造や考え方が新しいものと共存している.
現役のプログラマー同士で無線の交信をしたことって,この6年間はないような 気がします.
原稿完成直前に写真撮影のために使っていたデジカメが壊れた (代替機があったのでなんとかなりましたが…).
アマチュア無線,電子工作,音楽(演奏,鑑賞,DJ,プロダクション,エンジニ アリング).
最近だとなんだ? 銀河英雄伝説はなんやかんやで全部CATVで見たような.あと, 昨年やられたのは「ベクシル 2077 日本鎖国」です.なぜ主役のベクシル・サラ があれだけ日本的な表情でおじぎをするのか(たぶんモーションキャプチャーの せい)という問題はともかく:-),日本が鎖国する,という危機感は私の中に常に 存在しているからでもあります.
どちらも特に意識していないので,この質問には答えられません.
んー,なんともいえません.体調が良くて,身体の機能が高まっている状態の方 が,より健康的に萌えられるとは思います.
省エネ.静穏あるいは無音.発熱しないこと.無駄に高速にしないこと.コンピュ ータを化粧品にしないこと.
買ったかどうかは別として,親父の死去に伴う相続税の金額は,民事契約で支払っ た1回の金額としては最大だと思います.税金以外だと,ACMの終身会費か.その 次がARRLの終身会費.
多いと思いますね.でもオタクでなにが悪いのかな.社会に迷惑をかけなければ, 自分のやりたいことを追求するのは大いに結構なんじゃないでしょうか.
無線系の要素が最近は強いです.
秋月電子通商.ラジオデパート.
いいえ,ゲーマーではありません.家にゲームマシンはありません.Wiiの商品 コンセプトはすばらしいと思いますが,WiiもWii Fitもありません.もちろん, PSP,ファミコン,セガサターン,XBOX,その他もろもろ,どれも持っていませ ん.
だって,今の趣味と仕事,生活を全部やってたら,ヘタなゲームシナリオよりよっ ぽど面白いし,忙しいし,本気賭けなきゃいけないし.
わかりません.でも,ソニーの凋落ぶりは,かつてのソニーファンとしては,と ても悲しいです.
たまに誘導されます.ごくたまにネタにされました.でもあの雰囲気が生理的に 嫌いです.
man co(1)
与えられた時間が無限ならそりゃ実現するでしょう.でも時間が有限に区切られ ているならば,必ず不確実性(不確定性かな?)が発生します.だから,全部,っ てのは無理.
ただ,手順を記述することを「ソフトウェア」とするのであれば,それは書き得 るだろうと思っています.
平穏な時間と将来の安定,それから毎年契約更改しなくていい立場.
この問題については私の過去の著書「プロフェッショナル インターネット」(オー ム社,1998)を読んでください.日本でテレワークがなぜ未だに異質なものと見 られるのか,私には社会的な因習,つまり本質的でない単なるしきたり以外の合 理的な理由がまったく思い浮かびません.
瑣末なドキュメンテーションから研究者を解放してくれる人達と,彼等に仕事を してもらうための予算が欲しいですね.
痩せないとだめですね.西洋文明は常に過食.日本も西洋文明まっしぐら.肉食 い過ぎ.油食い過ぎ.炭水化物食い過ぎ.
デキル奴は,いつかは相手を見つけてるよ.私ですら結婚している(苦笑).
うーん,同業者は避けたほうがいいのは,どの業種でも同じでは?
優れた人達は多数いると思いますし,現に一緒に仕事もしています.ただし,日 本のコンピュータの世界は,まだまだオトコ世界であって,女性が働きやすい環 境とはいえません.ですから,もっと女性に働いてもらえるような仕事にしてい かなくてはいけないと思います.
研究開発という分野に限れば,戦争の前線でドンパチやっている感覚があって, 女性には入りにくいかもしれないな,と思うことはあります.もっとも,第二次 大戦で米軍は国内の輸送隊に女性パイロットを大量に動員しましたし,プログラ ミングは社会基盤を作る仕事でもありますから,女性の方が適性が高いであろう と思う分野はプログラミングの世界にもたくさんあると思います.COBOLの普及 に尽力した米国海軍のRear Admiral(海軍少将)だったGrace Murray Hopper女史 の例を見るまでもなく.
正確な仕事をすること.嘘をつかないこと.納期を守ること.
依頼主の要求を論理的に反駁できないまま拒否すること.特定のプログラミング 言語や環境にこだわり他の世界に行こうとしないこと.健康管理ができていない こと.
馬力で書けるのは35歳までかもしれない.でも,私自身が研究者の生活をスター トしようと決めたのは,36歳だった.その時からのコードは,確かに諸条件があっ てコードそのものはフリーなものにできていないけれど,その代わり学術論文と して公開できるアイディアを検証するための真に実用的なものになったと思って います.35歳までに自分の基本的なスキルを勉強できてなかった人は,35歳で辞 めさせられても仕方ないかもしれないね.
この質問には答えません.ただ,仕事の内容だけで,給料が決まっているわけで はない,という労務管理の基本を一度考え直してみるといいかもしれません.
しません.たぶん労働条件が合わないと思うので.今のGoogleの姿は,かつての Digital Equipment Corporationに似た雰囲気があります.気をつけないとコケ るかもしれない.
実際にプログラムしてコードにしながら手直ししていく以外に方法はありません. 文章にもしてみますけどね.ただ,文章の方がよりぼんやりしている度合いが高 いかもしれない.動かして,初めて正しいかどうかがわかります.でも,検証の 方法はしっかり文章化しておかないと,何をやっているかわからなくなることが 多々あります.
エンジニアとしては70点ぐらいだろうけど,プログラマとしては55点がいいとこ ろなんじゃないかなあ.なにしろ,最初からコードをガリガリ書くのをしんどい と思っているようでは….そういう意味では,全くの失格者ですね.
problem solving.
コンピュータを使って他人の問題の解決に寄与した時.もちろん自分の問題が解 決できた時もうれしいけど.
仕事として,他人に対して競争できるスキルは,problem solving ぐらいしかな い.他にやってみたいことはたくさんあるけど,それは「職」たりえないでしょ う.
進化してるとは言い切れないと思う.変化はすると思う.いろいろなものをつな げてみる人達が増えて,それで問題も増える.組み込み機器の世界は楽しそうだ けどね.新しいと言われているものでも,時間をかけて作り上げてきているもの も多いわけです.例えば,IPv6も,1994年に今の姿にすることが決まってからも う随分時間が経ってますが,まだまだ問題が多い.
日常生活を支える技術は,そう簡単に進化はできるものではないと思います.現 に今仕事で使っているX11R6も,LaTeXも,BSD UNIXも,基礎技術は20年近く前か ら変わっていない.
小飼さんの話を読んでいて笑ってしまったのが,「絶滅せよSMTP」.これには思 いっきり納得できてしまいました.SMTPが性善説であることも問題の1つだけど, SMTPの実現している電子メールがたまたまビジネス基盤の一部になってしまった ので,SPAMの問題などに対処するため,転送や受信のシステムが複雑になり過ぎ てしまっています.このため,メンテナンスできる人達がどんどん減っている.
今の調子でスキルのあるシステム管理者が減っていく状態だと,電子メールはシ ステム管理者が辞めて人手不足で使えなくなるんじゃないかと,先日冗談で元同 僚と言ってました. DNSも同様の事態になる可能性があるんだけど,ドメイン名 は知的所有権が確立されているから,こちらは経済的なインセンティブが強いし, syntaxが同じでも別の実装もあり得るから,残るでしょう.
いずれにしても,IPv6でハッピーになるとか,あまり思わないほうがいいとは思 う.
Concurrencyの問題の想像力をあまり必要とせず,さりげなく並列処理が実現で きるような枠組みができるとうれしいかもしれない.ネットワークは今後ただの ハードウェア化していくので,インターネットがちょうどCPUとメモリの間を繋 ぐ役割をしたり,諸々の機能がより分散化されていくと思います.その時に, Webのようなクライアント・サーバベースの世界がどうなっていくかは,考え直 す必要が出てくるんじゃないかな.
想像できない.学問研究も,工業化も,コンピュータなしには今の姿はあり得な い.コンピュータを深く理解していることは,これらの社会の仕組みを理解する 上でとても役に立っている.
1) プログラマは意図的に他者に危害を及ぼすようなプログラミングをしてはな らない.また,脆弱性を看過することによる不作為の害を及ぼしてはならない.
2) プログラマは依頼主の意図を可能な限りプログラミングによって実現しなけ ればならない.ただし,1)に反する場合を除く.
3) 1), 2) の原則の遵守はプログラマがプログラマたり得ない心神喪失,あるい は人間としての障害を負いかねない場合はこれを拒否することができる.
…やはり小飼さんのとそっくりになってしまった.
プログラミングを表現するための適切な日本語を考案してください.
…というのは,皆やっているけど,難しいだろうな.
Paul Vixie, Jon Postel (故人,合掌), itojun (故人,合掌)
コードの書き過ぎに注意.人はコード書きのみにて生きるにあらず.
ことプログラミングに関していえば,世界がitojunを失ったこと.
砂原秀樹さん,山口英さん,加藤朗さん.皆,スーパーな人達です.
[以上,一気に書いたので疲れました]
この文章の無断転載を禁じます.