2006年08月03日

目が痛い

プログラマを長期間やっていれば、誰もが一度は通る道。

疲れを通り越して、かゆみを通り越して、それはもう痛いのである。

ブルーベリーの錠剤を飲もうが、温熱タオルでマッサージしようが、ビタミンの入った目薬を差そうが、休日はずっと目を使わないようにしていようが、そんなものはお構いなしに

ただ、痛い

のである。

もちろんこの状態では目の健康が激しく損なわれており、そこからさらに無茶をすれば失明の危険性もあるとかないとか言われている。

だからといって、例え定時に帰ったって、最低8時間はディスプレイとにらめっこする必要があるプログラマが、その状況を脱せられるはずもなく、目にとって過酷な日々は続いていく。

そんな日々を歯を食いしばって過ごしていくと、いつの間にか痛みを覚えなくなったりする。

それは目が負荷になれてきたからなのか、それとも痛みという名の警笛を発する機能が身体から損なわれ、悪い状態になっているにも関わらず痛みを感じなくなってしまったからなのか、私には知らない。

==============================================
最近、久々に痛い。春先に休んでたせいかな。

人気blogランキング
posted by MW at 00:36| Comment(7) | TrackBack(13) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年08月01日

奇跡的に動いている

いくつかの偶然が重なって、通常ならありえないような事象が起こることを、人は奇跡と呼ぶ。

日常においてもごく稀に目にすることがあるこの「奇跡」。

やる気なく働くプログラマたちがたむろしている開発現場でも、ごく稀に「奇跡」と呼ぶに相応しいような事象に出会うことができる。

その1つが、「奇跡的に動いている」である。

この現象は、プログラマがいたいけなソースたちに対して生暖かい視線を送っている時に、ふと「あれ、この記述、おかしくね?」という疑問を抱いくことから発覚する。

不審に思った記述を単体で調べてみると、それは明らかにバグとして認識される。

ところが、実際に問題の箇所を動かしてみると、何の不都合もなくちゃんと動いてしまう。

なぜ問題なく動くのか不思議に思い、さらに周辺のソースを見つめていると、実はそこに別のバグと思しきコーディングが複数発見され、

これらのバグが重なり合うと、なぜか正常な動作になる

という、「奇跡」としか思えないような動き方をしていることが発覚したりするのである。

その危うい作業に建つ城のような動作は、見るものを「奇跡ってほんとにあるんだ」という感動と、いつ崩れるとも知らない危うさに対する怯えとで、胸をいっぱいにさせることだろう。

==============================================
最近、職場にバレないように気を使ってるので、記事が書き辛いどす

人気blogランキング
posted by MW at 01:40| Comment(5) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月27日

HTTPリファラ

通称リファラ。

伸ばしてリファーと呼ぶ人もたまに居る。

ブラウザがWEBサーバにアクセスする際に運んでいく情報の1つで、そのサーバにリクエスト要求をすることになったリンク元ページのアドレスを送っている。

ホームページの運営をしている人は、どういった経路で自分のサイトが見られているか知ることができる為、これを運営の指針として活用することもある。

でも、サイトを訪問してる側としては、例え相手に自分の正体が知れないにしても、そういった履歴が取られるのは気持ちが良いものではないので、ブラウザの設定で隠したりする。

また、クエリストリング(URLの後ろにつく?hoge=fugaみたいなヤツ)を利用しているサイトから遷移すると、その辺の情報もまとめてサーバに送られてしまうので、不用意に

sesid=hoge1234

とか載せてしまうようなサイトを使っていると、いろんなことに責任が持てなくなってしまったりもする。

uid=hoge&pass=fugaとか書いた日には、もう目もあてられない。

リファラを送らないブラウザも存在するし、簡単に偽装できたりもするので、リファラ頼みのシステムを作ることはできなかったりする辺りが、プログラマ的にはあまり役立てどころがないなぁと感じてしまうもの。

==============================================
最近、なんか真面目に用語書いてるなぁ。

人気blogランキング
posted by MW at 00:34| Comment(2) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月26日

HTTP・レスポンス・スプリッティング

それなりに知識があるクラッカーさん(!=ハッカー)が仕掛けてくる攻撃手法。

http://pgyougo.seesaa.net/ とかアドレスを打ってリクエストを飛ばすと、ブラウザとかTCP/IPとかが、とある共通のルールに従って作られたリクエスト用の文字列を作り出してくれる。

で、その文字列が相手のサーバに届けられて、とあるルールに従って作られたレスポンス用の文字列を返してくれるわけだけど、その辺を詳しく書くときっとボロがでるから割愛。

その返ってくる文字列のヘッダ部分に、改行コードとか、レスポンスの終わりを意味する文字とかを入れて、その後ろに新しい全く別のHTTPレスポンスを埋め込むことで、好きなレスポンスを作り出してしまうことができる。

ユーザ入力を直接レスポンスヘッダに入れたりしない限りはそうそう発生することはないものだし、普通、改行コードみたいな制御文字はちゃんと弾いてるだろうから大丈夫かと思いきや、いろんな現場でソースを見てると、意外と際どい記述が見つかったりすることもあるもの。

その脆弱性に対して、ああでもない、こうでもないとリクエスト作って投げてると、

この作業、割と楽しい

なんて感じてしまうこともあるけど、そちらの方面で遊ぶことを趣味としてしまっては、けしていけないもの。

==============================================
良いセキュリティ技術者とクラッカーって紙一重だと思ひます

人気blogランキング
posted by MW at 01:18| Comment(3) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月25日

サポート対象外

ひょっとしたらちゃんと動くかもしれないけど、メーカー的には保障していないこと。

メーカーが「うちが責任持てるのはここまでですね」と言う為に引いたラインから外れた場所にあること。

Redhatで動くことは保障してるけどFedoraは保障外ですよ、とか、Windows2000では動かしたけどWindowsXPでは動かしたことないから知らないよ、みたいな

それ、普通は動くんでない?

と思える内容でも、サポート対象外になってることがけっこうある。

Java1.4で動かしてるアプリケーションから、Java5.0で作られたjarを呼び出そうとかいう、そりゃ動かんだろうという無謀な対象外へのチャレンジに勤しむ人もけっこういる。

==============================================
なんかSeesaaのUIが変わってる

人気blogランキング
posted by MW at 00:35| Comment(1) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月21日

マスタテーブル

基幹となるデータが入ってるテーブル。

取引先の企業の名称とか所在地なんかのデータが入ってる企業マスタとか、その企業を業種分けしたコードが入ってる業種マスタとか、そんな感じの。

それなりに大きなシステムになってくると、作ってる本人ですら明確に把握できなくなるくらいたくさんのマスタテーブルができあがって、何がどう結びついてるのかER図にしても理解できなくなったりすることもあるらしい。

体系分けするほどでもないコードを収納する汎用コードマスタとかを作っておくと、いつの間にかその中に数千のコードが溢れかえって驚いたりすることもあるらしい。

マスタテーブルの中身は、ある程度、固定で定められている、揺れの少ないデータであることが多いわけだけど、その中には最近やたらうるさくなった個人情報とか機密情報が入れられていることも多い。

その為、セキュリティに対して不必要なくらい頑張っちゃってる企業で開発すると、開発しているプログラマに対して向こうの監査部の人が、このマスタには機密情報とかが入ってるので

開発してる人たちにも見せられません

テスト用のデータを適当に作って開発してください、とかいう無茶なことを言われたりすることもあるらしい。

そして、リリース直前になって向こうの人が本物のデータでテストしてみたら、実はうまく動きませんでした、ということも発生したりすることもあるらしい。

==============================================
見れなくていいから、せめてテストデータ作って欲しいらしい

人気blogランキング
posted by MW at 00:27| Comment(5) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月20日

permission denied

権限がありません。

あなたはその実行命令を下せるほど偉くはありません。

仕事しないプログラマごときがやって良いことではありません。

身の程をわきまえてから命令してください。

という意味の、非常にポピュラーなエラーメッセージ。

コマンド打ってみたらこれが出たという場合は、手っ取り早い解決方法として



と打つことが挙げられるが、パスワードを教えてもらっていないと実行できなかったりする。

本番環境のrootパスワードは知らなくても良いというか、できれば知りたくないというか、例え教えられそうになっても耳を塞いで「あぁー、聞こえないー」と叫んでおいた方が、責任を被る確率が減って良いかもしれないもの。

逆にテスト環境のroot権限とかがもらえない時は、権限が必要な作業が発生するたびに自分より偉い人に頼まないといけなったりして

こんな何もできんユーザで仕事ができるかぁ!

叫ばなければいけなくなったりもするものである。

==============================================
開発者に権限が無いというのもどうかと思うわけだが

人気blogランキング
posted by MW at 00:27| Comment(51) | TrackBack(1) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月14日

やればやるほど増えていく

自分の手元に溜まっている仕事のこと。

効率良く正確に仕事をこなすと、普通は仕事のスタックが徐々に減っていくのではないかと思われるかもしれない。

だけど、なぜかこなした仕事量に反比例して、自分の前に積まれている仕事はどんどんとその量を増していく辺りがミステリーなもの。

これは多分、昼飯時にうまい食堂の前に行列ができるように、正確に仕事をこなせる人の前に仕事がどんどん行列を作っていくようなものなんじゃないかと思われる。

もしくは仕事がなくて困っている若手芸人を尻目に、みのもんたの前には昼夜を問わず仕事が溢れているのと同じ感じなものかもしれない。

それに加えて、作業分担という言葉をよく知らない上司が、とりあえずあの人に頼んでおけばなんとかしてくれるという記憶だけを頼りに、

周りに暇そうにしてる人が居るのに

仕事を集中的に振ってきたりすることも原因の1つとして考えられる。

==============================================
干されぬように、重宝され過ぎぬように

人気blogランキング
posted by MW at 00:40| Comment(3) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月12日

監視

見ること。

ただ見守ること。

川のように流れるデータに対して、眠気を抑えるのに必死になりながら視線を走らせること。

CPUの使用率とか、メモリの使用率とか、エラーの発生率なんかの数値が、刻々と変わっていく様を、子供が成長するのを不安と共に見守る親のような気持ちで見つめること。

負荷が気になるところとかが、運用時に飛んじゃったりしないかなぁと心配に思った時には特に、不安と期待の入り混じった視線が交錯するもの。

負荷テスト時であれば、やばくなってもテストを中止すれば済むけど、イベントがあったとかニュースになった等の理由で急にアクセス数が増加している本番サーバを監視している場合は対応が難しいもの。

場合によっては、例え負荷が急激に上昇しエラー率が増えても、監視している人は

オタオタするしかできない

ことも、しばしばあるもの。

==============================================
スポーツ関連サイトの鯖缶は、どこかが優勝するたびにビクビクするらしいです

人気blogランキング
posted by MW at 01:48| Comment(2) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月07日

マスター

1つの専門分野に対して特化した知識を持つ人に付けられるニックネーム。

SQLを書かせたら誰より音速な人をSQLマスターと呼んだり、Excel VBAであらゆる機能を実現させてしまう人をExcelマスターと呼んだりするのがそれである。

上記のように、その技術力の高さに対して敬意を含めた言葉として使う場合の他に、この言葉にはあと2つ使い方がある。

1つは普通の人はそんなアプリケーションの使い方知らないだろうと思われることを、現場の都合で心ならずも極めてしまった人に対して、

へぇー、そんな役に立たないこと知ってるんだー

という若干のからかいを含んだ「蔑称」として使う場合である。

現場でプロフェッショナルなGroovy使いとかが見かけたら、そりゃもう、容赦なく「Groovyマスター」と呼ばれて馬鹿にされることだろう。

もう1つは、何か仕事を振られた時に、「そういう内容なら、PHPマスターの○○さんに任せた方がいいですよ」とか「それはDBマスターの○○さんの仕事ですよ」という様に他人に仕事を流すという使い方である。

こういった発言を繰り返していると、マスターになった人は自然とそれ関連の仕事ばかり振られるようになったりもする。

==============================================
インプリンティング、インプリンティング。

人気blogランキング
posted by MW at 00:42| Comment(4) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月06日

アクセス修飾詞

publicとかprivateとかprotectedとか、あとinternalとか。

クラスだか、メソッドだか、関数だかの呼び出せる範囲を指定することができる。

別の言い方をすると、こちらが望んでない箇所から呼び出されることを禁止することができる。

例えるなら迷惑メール防止の為に、携帯メールは許可するけどPCからのメールは拒否するように設定するみたいなこと、か?

外からの呼び出しを想定している箇所以外は、極力privateにした方が、クラスの呼び出され方を限定することができて、想定外のアクセスをされて困ることがなくなる。

正しくない指定方法としては、最初はprivateで指定していたけど後々他から呼び出せた方が便利な気がして、とりあえずprotectedにしたり、さらに新しいとこから呼び出したくなったので

まぁ面倒だから、publicにしとくか

と深く考えずに窓口を開いてしまう形が挙げられる。

こういう行為を考えなしにすることは、窓口を少しずつ開いているのと同時に、自ら傷口を徐々に広げていることにもなる。

==============================================
傷口は開きすぎると仕様になると言われています。

人気blogランキング
posted by MW at 01:10| Comment(0) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月05日

一度使ってみたいよね

ちまたではこんな言語が流行ってるとか、こんなライブラリが話題になってるとか、あのソフトの最新バージョンではこんなことが出来るようになったとかいう話をしている時に、使われることがある台詞。

それはただの願望であり、少なくとも職場でそれが叶うことは少ないし、叶えてはいけないものでもある。

D言語とか、ObjectiveCとか、Tcl/Tkとか、CommonsのSandboxとか、VisualJ++.NETとか、MySQLの最新バージョンとか、Ruby on Railsとか、

一部、間違いが含まれてる気もするけど

まぁ、だいたいこの辺がそれに当たりそうな、かすりそうな。

上記のものなら、たいていタダか有料でも安いものなので、自宅で趣味として使うこともできるけど、1ライセンス100万とか平気でするようなソフトが相手になると、触れることができる望みはかなり薄くなる。

==============================================
私の人生にも一部、間違いが含まれてる気がする今日この頃

人気blogランキング
posted by MW at 01:00| Comment(2) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年07月03日

ホットスタンバイ

同じ構成のマシンを2つ用意しておいて、片方を業務の為に稼動させ、もう片方は稼動しているマシンがお亡くなりになった時に出動させる為に待機させておくという方式。

この方式を使っているシステムは、ハードディスクの寿命が来ようが、サーバ管理者さんがうっかりマシンを蹴り飛ばして破壊してしまおうが、ネットワークが断絶……した時はさすがに無理な場合もあるけど、とりあえずいろいろなトラブルにも対応できたりするかもしれない。

片方のマシンがあくせく働いているのに、片方のマシンは働いているマシンと同期を取る以外は基本的に遊び呆けている、コストパフォーマンス的には良くない形式でもある。

しかもたいていの場合は、遊んでいる方も24時間ばっちり起動はしているので、

電気代だけはしっかりと

消費してくれたりする。

その姿はまるで納期直前にならないとろくに仕事もしない、どこかの「仕事しないプログラマ」のようだ。

==============================================
用語としてはポピュラーだけど、実際に使ってるところは少ない気が。

人気blogランキング
posted by MW at 21:55| Comment(3) | TrackBack(1) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年06月29日

それは想定しなくていいだろ

ここまでは想定しておいた方が良いだろうという認識の外にある事象に対して、対処を求められたりした時に発する言葉。

想定外の事がいつ発生するか分からないシステムという代物は、そこまで想定しないといけないかなぁと首を捻りたくなるようなことも、発生した場合の対処を考えて置いた方が良いと言われている。

例えばDBサーバが落ちた時はどういった遷移をするかとか、ハブが壊れてネットワークが遮断された時はどうするのかといったケースがそれである。

でも、いろんな人の下で働いていると、「DB止まっちゃった時は不整合起きてもしょうがないでしょ。後で手動でロールバックすればいいよ」という大らかな人もいれば、

さすがにそれは想定しなくていいでしょ

という強いツッコミを思わず投げかけてしまうような、細かいことが大好きな人もいる。

いや、相手のプログラムにバグがあった時の想定って言われても、どんなバグがあるか分からないし、そこを信じなかったらシステムなんて出来ないってば、みたいな。

ちなみに私のようないい加減なプログラマは、前者のような大らかな人に好意を持つことが多い。

けど、その上司が障害発生時に復旧もままらない状態に叩き込まれるリスクに対しても、大らかで居続けるような人だったりすると、一刻も早くその人の下で働く状況から抜け出そうともがき始めたりもする。

==============================================
えっ、停電時ですか? えーと、うーんと、どうなるんだろう?

人気blogランキング
posted by MW at 00:41| Comment(0) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年06月28日

初めて夜間バッチが動く日

テスト環境ではしこたま動かした。

本番環境でも実行させて、動作することは確認している。

でも、やっぱり初めて動く日である以上、

午前2時〜午前6時まで見張っててね

という、ありたがいお達しを受けたりすることがあるもの。

それに伴い、ジャンケンやアミダクジ、くじ引きなどが発生し、日頃の行いが悪い誰かが、犠牲者としてコーヒーを片手にバッチがちゃんと動いているかを確認しながら、物悲しい夜を過ごすもの。

で、なぜか想定通りに動かずに、営業時間が始まるまでに一生懸命ロールバックしたり、ちゃんと元通りになっているか確認した上に、再度次の週末の午前2時に出勤することになったりするもの。

==============================================
嫌だな。あのバッチのリリース、担当自分なんだよな……

人気blogランキング
posted by MW at 00:44| Comment(6) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年06月27日

うちではそれは出来ません

複数の部署にまたがる改修案件が発生した時に、どの部署も口を揃えて言う言葉。

少しでも自分の部署の仕事とリスクを減らす為に、例えそれが工数1日の簡単な作業だろうと、それを断ることで他の部署に1人月の工数が発生しようと、知ったことじゃないと思ってる人が好んで使う言葉。

その言葉の押収の果てに、発言力の弱い部署が

泣く泣く大量の仕事を抱え込む

ことになる辺りに、部署間の力関係が見えてくるもの。

戦場における一兵卒に過ぎない我ら突貫プログラマは、当然のように発言力というものが皆無な部署に放り込まれることが多いもの。

そして、あの偉そうで仕事しない部署が少し動いてくれれば、あっという間に終わるのに、という上司の嘆き節を聞きながら仕事をすることが、しばしばあるもの。

==============================================
これって、うちで対応するようなことじゃないよね

人気blogランキング
posted by MW at 00:46| Comment(2) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年06月23日

何の為にやるんですか?

作業を命じられた際に、一番最初に聞くべきこと。

でも、忙しさに頭の回転を奪われて、ただ惰性で仕事をするようになると、つい忘れてしまいがちになること。

なんとなく命じられたままに作ってみて、なんとなく完成したなぁと思って一息ついた時に、ふと、これって何に使うんだろう、という疑問に苛まれるもの。

で、指示した人に聞いてみたら、自分が思っていたのと全然違う用途を求められていたりして、大量の手直しが必要になったりもするもの。

また、ごく稀に、指示した人に質問しても、

実は俺も何に使うのか知らないんだよね

という答えが返ってきたり、作って欲しいと言った偉い人とかお客さんとかに質問しても、やっぱり何で作るのか分かっていなかったりするという、とてもファジーな代物だったりすることもあるもの。

==============================================
大切なのは目的じゃないんです。その経緯なんです。と言ってみる。

人気blogランキング
posted by MW at 01:24| Comment(2) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年06月22日

仕事が暇な時に勉強してるから

仕事が出来る人は、日を追うごとにより出来るようになり、仕事が出来ない人はいつまで経っても出来ないままである理由が隠されているかもしれない一言。

神レベルのスピードで仕事をこなし、有り余るくらいの知識を持っているスーパープログラマさんに、「どうしてそんなにいろんなことを知っているんですか?」と聞いたところ、帰ってきた言葉である。

渡された仕事を手早く終わらせることができる人は、その分、空き時間も多くなるので、もっと良い実装方法はないかとか、何か使えるライブラリはないかとかを調べる時間を捻出することができる。

対する我ら突貫プログラマは、調べる時間もないままに、知っている方法でなんとか要件を満たそうとして、

無茶で不毛なコーディングを繰り返す

という、たまに涙が出てきたりする仕事をこなしていたりする。

その差が積もり積もると、同じ年月同じ仕事に勤しんでいた2人の人間に、こんなにも深い溝を作ってくれたりする。

実にセンチメンタルな気持ちを呼び起こす一言である。

あと、空いた時間が出来ても、それを技術的な向上の為でなく、ヤフーのスポーツニュースを見たり、にちゃんねるの芸能板を見たりするのに費やしている我ら堕落プログラマも、けしてスーパーにはなれないなぁと思わせてくれる一言でもある。

==============================================
全く向上してない訳ではないけど、スーパーはいつも遠いです……

人気blogランキング
posted by MW at 01:11| Comment(2) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年06月21日

妙な数字を口走る人

127.0.0.1とか、192.168.0.1とか、80ポートとか、8080ポートとか、よく使うサーバのIPアドレスとか、プログラマであればたいてい記憶している数字列を口にした際に、冷たい目で見られながら言われることがある言葉。

というか、知り合いが新人の女性から言われたことがあるらしい言葉。

例えば、新人の世話係をしていて、仕事の片手間に開発環境の構築を手伝ってあげていたとする。

Tomcatが動くように設定して「ちょっと、localhostの8080にに繋いで見てもらえますか」と思わず口走ってしまったとする。

すると、相手はきょとんとしている。

で、彼が「えーと、127.0.0.1の……」とかいうさらに通じない言葉を使ってしまったりすると、セットアップをしてもらっていた女性は隣の女性と顔を見合わせて

うわぁ、なんか妙な数字口走ってる……

と発言することがあるらしい。(レアケース)

気をつけられたし。

==============================================
いや、こんなこと言う人がいるのも不思議だが

人気blogランキング
posted by MW at 00:36| Comment(2) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

2006年06月19日

キックオフ・ミーティング

プロジェクトの事始め。

これからプロジェクトを立ち上げますよという時期に、とりあえず参加するメンバーとか関係者を集めて、大雑把な概要説明とか、メンバーたちの顔合わせとかを行う。

まだ詳細は何も詰まっていない時期に行うこのミーティングにどんな効果を求めるかは、リーダーによって意見が分かれるところである。

人によってはただの自己紹介の場として考えていたり、人によってはプロジェクトの方針演説をする場と考えていたり、一部のリーダーの間では、キックオフ・ミーティングとは

飲み屋で行うものである

という強い信念を持って、会社の経費で酒を飲むことを恒例としている人も居たりする。

実に多彩な形式を持つミーティングである。

==============================================
飲み屋ミーティングが一番効果的のような気がするのも不思議

人気blogランキング
posted by MW at 23:29| Comment(5) | TrackBack(0) | 用語 | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は1年以上新しい記事の投稿がないブログに表示されております。