Second Lifeで気に入ったアイテムの記録です あ、ウソです。スクリプトとか他のことも書いてます

2009/04/18

プログラムについてのどーこーの3

なげー、なげえよ、もう完全についてこれないやつは置いていくメソッド
ということで、まだ続いてたり

仕事場での職人は、尊敬されるか、あるいは、便利に使われるだけか。
まあ、そのへんは置いておいて。

SLではどうなんでしょうか。
今回は温度差がテーマ

スクリプト初学者(※)は、日々増えているように思っていました。
 ※個人的には初学者という言葉は、ほとんど知りませんでした。
  単純に、学び始めの人という意味でとらえてたんですが
  今、改めてググってみると、こんなのが...ナニコレ?
  私は、学び始めの人という意味で使っています


ただ、スクリプトを書き始めた人を単純に「初学者」ととらえると
まずいんだなということも考えてます。

いろんなものを製作している関係上、必要に迫られて
単に書いただけという人がいるからです。
なので、できればコピペですませたいし、
めんどくさいことは避けたいというスタイルがあります。
これは否定はしませんし、当然、結果だけほしくなりますよね。

私が勘違いしやすいのがこの部分で
「スクリプトを書く人=スクリプトを書くのが楽しいと感じる人」
とは限らないということです。
  ※これ、仕事にしてる人であってもあり得ます

仕事じゃないスクリプトを書くなら
たっぷり時間をかけられるし、その過程もめいっぱい楽しめます。
結果だけとかもったいねぇよ!
とかいう思想が根底にあるので
何か聞かれても、ほとんど何も答えません。
あるいは、キーワード程度で、あとは調べたり実験したりして楽しんでくれたまえ!
と、なってしまうわけです。
 ※いま、リアルタイムで、LSL-BBSで楽しい展開になってます
  こういうのは楽しいなぁ
  BBSのメンバーリスト、50から全然増えねぇなぁと思ってたら
  次のページがあったのか...


というわけで、イヤガラセで答えないんじゃなくて
楽しみを奪わないように答えないわけです。
誤解なきように。


さっきテレビで見て感動したモノ


ところで、CafeScripters cafeというものがあります。
ここでは、スクリプトとかの話を楽しくしようということで
やってるわけですが、ここでの会話でも同様の課題があるようです。

質問しにきた人に、素直に答えないということではないんですが
その質問を考える過程を楽しむ人と
とっとと答えを聞いて帰りたい人みたいな。

なので「いやいやいや、そこまで知ろうとは思ってねーし」とか
「なかなか本題に戻らねー」とか思ってても
必要な結果がでてくるまで、耐えるという状態もあるんじゃないでしょうかね。
話してる方は「このことなら、当然、この内容も関連するよね」
「こういう視点でやった方が効率よくね?」みたいな感じで
その話してることそのものも楽しんでるので、ズレズレです。

Scripters cafeだけにスクリプトの達人が集まると思ってしまいますが
実際には
「スクリプター同士がLSLのネタを中心として、
 セカンドライフに関する技術的な話題、
 また時にはセカンドライフに限らないプログラミング・技術系ネタで
 盛り上がるカフェです」
なわけです

特に「教えるための場」ではなく
みんなで楽しもうっていうスタンスなんでしょう。
こんなの作ったんだけどーとか
こんなん知ってるー?とか話のネタとして持ち込む感じで
参加するのが推奨ってとこでしょうか。

まあ、とりあえず、温度差(意識の差)があるのは当然なので
楽しく共存する方法を模索したいところです。

って、やっぱりイキオイだけで書き始めるとオチないな

プログラムについてのどーこーの2

ということで、長くなった前回の続き
あまりにも長いのでいつもどおり動画で癒されてください

前回のhao_yayoiさんの「習熟はしてるのかどうかよくわからない」という部分。
この「習熟」というのをどういうレベルとするのか
また、「習熟」することは、求められているのかという話が、今回のテーマ。

個人的には「普通」に使えるようになれば「習熟」なんじゃねーの?と思うんですが
この「普通」というアイマイな言葉がクセモノです。

マスタークラス(※)を目指すべきなのか
 ※「職人」っすかね。今風に言えばGeekな。
  Wiz的にいうなら、単独で最下層を楽々に歩けるくらい
  Diabloなら、Hell/Hell踏破
  あるいは...

実際、仕事で目にするコードは、ベタベタなものが多いです。
これはメンテナンスを大事にしてという理由よりも
さらに大きな理由があります。

誰でも書ける事

テンプレというかスケルトンとなるコードがあって
それに改造を加え作られることが非常に多いようです。
一から書けるほど習熟してる人が少ないそうで。
(また、人が一から書いたものを理解できる人も少ない)

このやり方は
「世界に冠たる日本の製造業のノウハウを
 適用することで生産性を上げることができるに違いないという発想」(※)に
基づいているんだろうなぁ。
(他にも「使えないやつ」が多すぎて
彼らに「そこまで」求められない現状に対する苦肉の策って面もあるかも)


 ※Rubyの人の「ソフトウェアは工業製品ではない」は
  私としては、ものすごく納得できるし、同意もします。

  完全に余談ですが、
  私の大好きなホーガンの作品に「創世記機械」というのがあるんですが
  この中にも似たような描写があります。


このテンプレ化は、それなりの効果があって
新人さんでも、マシンと化して、次々とコードを生産していけます。
かつ、計画も立てやすく、銀の弾丸も夢じゃないという状態になります
 ※正直「つまんね」と思ったことは隠しません。

ただ、落とし穴もあります。

仕事で、あるチームのお手伝いをすることになり
「郷に入りては」で、そこのお作法に従って、シェルを書いてました。
で、あるエラー処理と思われる箇所がエラー処理になっていない(※)ように思えたので
 ※「ひとつ前の処理の成否が、ある変数に格納される」というシェルの機能で
  それをifで判断しようとしてるんだけど、チェックしたい処理と
  ifの間に別の処理(必ず成功する)があって、肝心の処理の戻り値が上書きされている
それを署名の人に聞きにいくと
「ああ、そこは元からそうなんでわかりません」
隣の席の人に聞いても同じ答。
そのテンプレを提供したその人の先輩に聞いても「前からあるやつなんで(略」

ここで注目したいのは、この質問は、「~だからエラーが拾えてないんじゃないですか」と
理由をつけて聞いてるんですが、その仕組そのものを理解している人がいないことです。
完全に伝言ゲーム状態になってるんですね。
 ※最終的に、責任者に聞くことになり、そのフロアはかなりざわざわする事態まで。
  さすがにその責任者は理解していて「なにー!」となったんですが。
  じゃりんこチエのテツを思い出しましたよ
「次の分から、直したものを使おう」となったというのがオチです

私の思う「普通」ってのは、たとえテンプレを使ってても
こんなことに気づくレベルなんですけどね。
「習熟」って、単に知ってるだけじゃなくて
自分のものとして使えるかどうかってところが大事ですね。

プログラムについてのどーこー

hao_yaoiの人(※)が、プログラミングなことについて述べていたので
あー、そういえば...と最近思ってることを書きます。
※就職おめでとうございます

投稿の主題を拡大解釈・脳内補完・整理してみると
「プログラマってのは、単にコード化するだけでなく
 その仕組が動く全体を把握して、要求される内容を十分に満たすことはもちろん
 発生する問題点を見抜き、フォローしていくことや
 さらにこちらから提案していくことが大事なんじゃないか」
ということを、彼の人が書いているんだと理解しております。
このあたりは、2年目くらいからポツポツと求められてくるようなレベルで
この壁を乗り越えられるかどうかで、「むむ、使えないやつ」と思われるかどうかの分かれ道になったり。
なんかこのへんになってくると、SEなんでないっすかミタイナ。

さて、今回、何が気になったかというと、この主題以前の部分
"一応今の肩書きは「プログラマ」なんだけど、
 昔に制定されたプロトコルに従って作りたいものを実装してるだけであって、
 習熟はしてるのかどうかよくわからない。
 もちろん言語仕様とかはそれなりに踏まえてる。"
この部分が妙にひっかかった。
と言っても、イライラするんだようとかじゃなくて
ちょいと前から思ってることに妙にかぶるからでした。

実際のところ、今のコード書きは、
1つの言語だけできればいーやってわけにはいきません。
   というか、1つ言語ができれば、あとはリファレンス片手に
  そこそこ書けたりする。
  これは、プログラムが動く仕組がわかってたり
  機能から名前を類推できるようになったり
   なんかそのへんの共通するようなことが把握できてるからで。

なので、「習熟はしてるのかどうかよくわからない」という不安を覚えるのは当然だったりします。

で、私がちょいと前から思ってることっていうのが
「各言語仕様をどこまで理解することが必要なのか」なんてことです。

太古、1つの言語に対して完全に理解してる人というのはゴロゴロしてて
もう、自分でその言語を再現できますよみたいな感じ。
なので、その言語の癖にあわせて、最適な書き方をできるのは当然
これは、省メモリだったり、最速だったり。
「こんな仕様をこんなにコンパクトに!?」
これはDOS時代には、必須な技能でした。
コンパクトにできなかった場合は、メモリの切り替え(※)が必要で
「おっそ!」と非難轟々
 ※正式な名前は忘れてしまったんだけど
  マシンのメモリに収まりきらないので
  実行中に、この処理の時はこの機能は使わないので
  必要なものをそのメモリ空間に上書きして実行みたいなやつ
  なんかエクステンダとかもあったなぁ

LSLなんかでは16k(64k)に収めるために
i++と++iのどっちを使うかとか
同じ機能でも意識的に書き方を変えたりしています。
これは「リファレンスペラペラ」レベルにしか知らない言語ではムリな感じです。

「ムリ」とかちょっと否定的に書いているわけなんですが
今の時代は、ソレはソレでいいのかなぁというのが
気になるところなのです。

私は言語仕様とか読むのがわりと好き(※1)なので
ヒマとお金と体力(※2)があれば、言語仕様本とか買ってパラパラ読んだり(※3)しています。
でも、今のコンパイラの性能とか、マシンで使えるメモリやCPUを考えると
コード化時点で、そこまでの理解は不要なのかもしれないと。
 ※1:言語の理解というよりは、その実装の思想とか背景とかを知るのが好きです
  その副産物として、仕様の理解というものがついてくる感じ
 ※2:高くてデカいんだよ、持ち歩いて読みやすいサイズにしてくれ...
 ※3:がっつり読み込むというよりは、
  気になる部分だけ点として読んで、それが重なっていつのまにか
  全体を知るという読み方

いや、実際には「不要かもしれない」なんてことは思ってませんよ。
 ※「UNIXという考え方―その設計思想と哲学」という本は、一読の価値ありだと思ってます。
  一読どころか、何度も何度も読んでます。

いくらメモリを大量に積んでいて、CPUのスペックも上がり
ハードディスクの速度があがっても、
サーバで実行されるプログラムの数は増える一方なのです。
1つ1つのプログラムをコンパクトかつハイパワーにすることは
大きな意味があります。

なんだか妙に長いので次回に続きます

2009/04/04

やあ、春です

といっても、別に新しい文房具を揃える必要とかはないわけで
新鮮さは全くないのですが。

革新的でも美的でもなく、有用にもできず、わかりやすくも
一貫もしていない
感じで苦労しているyouです。


さて、日々、本を読みつつ暮らしているわけですが
久々に「ダメだこれは」って本に遭遇しました。
さすがにタイトルや著者名は出せませんが。
(朝日ノベルズだとだけ書きます)
何かのつながりで見つけて、amazonでポチった感じです。
(先月発売だったので、レビューが一件もないのも気にせず)
届いて箱をあけた瞬間、その妙な薄さにイヤな予感がし
通勤中に読み始めて、なんかダメな感じが濃厚になり
帰りの電車で「やっぱりダメだった...」と憂鬱になりました。

とりあえず、ダメポイントをつらつらと。
・主人公に魅力がない(プラスがないだけでなく、マイナス面が多い)
・全く成長がない
・読んで発見や感動がない
・敵役が気持ち悪くて、イヤなだけで魅力がない
・タイトルにもなっている主人公の役職に全く意味がない
・脇役にも魅力がなく、思わぬところに出番があるくせに
 全く本編にからんでこない
・降ってわいたようなラッキーに助けられ
 それを成り行きで受け取るだけで、解決につながる
 (活用してどうこうするというレベルでもない)
なんというか、ダメすぎて、
もしかすると大事な部分が落丁してるんじゃないかと
思ったくらいで。

「自称小説家志望の中学生が、
 取材もせず、特に詳しい分野もないままで
 ふとんに入って寝るまでにする妄想を活字にしただけ」
みたいな印象の本でした。
読み終わって「なんなんだこれは」とボーゼンとしつつ
あとがきを読んでみると、全く同じコンセプトの姉妹作があるとのこと。
...ってことは、これは世間(出版社)に認められてるのか。
いま、amazonで、この作者でリンクをたどると、他にも本がでてました。
とりあえず、ブラックリスト入りだ。

ダメポイントだけではアレなので
ナイスポイントもあげておきます。
・日本語になっていた(文章は普通に読めます)
・完結している


まあ、それはそれとして
いつもの通り、金曜日はいつのまにかイスで寝てしまい
5時頃から起きて、だらだらしています。
っていうか、今週はふとんで寝た日はなかったです。

さて、ここんところの習慣になってるエロ探索の旅をしつつ
ぼやぼやしていると、突然、Mr.ボールドを見たいなぁと思ったり。
この人って、関西以外でも知られてるんだろうか...


このおっさんを初めて見た時から
私の生活に「今、目ぇおうとったやんか」(今、目が合ってたでしょう)とか
「しまいには、感情的になるで」とか、妙なセリフが導入されました。
声がいいんだよなぁ
あと、なんかダルさ。キビキビと一輪車で動くくせに
口調は、超ダルい感じ。
ああ、芸になってるなぁ。

この人、残念ながらすでに故人なのです。

http://www.youtube.com/watch?v=tkeShx_9Afo
http://www.youtube.com/watch?v=RKBKsnvrvTA

結構前に亡くなったので、お正月とかのテレビがさびしくなりました。
一度、生で見たいなぁと思った時にはすでになくなってて、
かなりのショックだったことを覚えています。

しかし、wikipediaの
一輪車パフォーマンスを行うこととなったのは、
道端に置いてあった一輪車を盗んで
芸に取り入れようとしたのがきっかけである。
ってマジなんだろうか