2 posts tagged “programming”
【まずは紙にでも書くということ。】
とにかく書くということ。
幼児期の教育のせいか、とかく「良いもの」「より100点満点」に近いものを出そうとしますが。。。
ここではそういう「美しく書く」は2の次です。
自分の頭の中にあるものを「棚卸し」するために書きます。GTDとかだと。。。あの最初の「棚卸し」です。^^
人間の脳は「抽象性」「曖昧さ」「ファジー」な部分に関しては素晴らしい情報処理器官です。どんなに頑張っても人間の脳と同じ働きができる「コンピュータ(?)」のような人工物がまだ作れないと言われていますが。。。
「ファジー」ゆえに「まったく関連性が無い」と思えるものを紐付け一つの事柄を導き出したりできます。また「多面的に考える」「想定する」ということができるのも、脳が「曖昧さ」故の「ゆらぎ」を持っているからです。
脳の中にあるまったく関連性のない論理的に紐付けされていない様々な情報を寄せ集めたり、時には分解してエッセンスを抽出したりしながら、新たな情報を生成する。それが「脳」の素晴らしいところ。
しかし、「脳」にも弱点があります。
脳のメリットでありデメリットでもあると思うのですが、
「自身で100%制御ができない」点。
そして「忘れる」ということ、「勘違い」や「思い込み」が自分の意に反して起こったりします。
情報整理術の類は、
ここで前述した「自身で100%制御できない」ならば「多面的に考える」「関連性の無い(と思われる)複数の情報から答えを導き検討する」というメリットの部分を最大限に引き出し、「忘れる」「思い込み」や「勘違い」のデメリットを押さえ込むためのメソッドだと思っていたりします。
ブレインストーミング
マインドマップ
KJ法
GTD
などなど。
人は多かれ少なかれ、忘れ、思い込み、勘違いをします。
僕の中で「書く」ということは、
そうしたことを最小限に留め、新たな「気付き」を導き出すためだったりします。
・仕様書
・画面遷移書
・イベント遷移図
・作業指示
・修正指示
などなど。。。
何も書かずに口頭だけで終わる時、
何も書かずに頭の中だけで終わる時、
そういうときは大抵、見落としや忘れ物をしています。
また、さっき話したとことなのに既に忘却の彼方に旅立ってしまっている場合もあります。
だから「書く」んです。
【書こうと思った理由など諸々←継続予定^^;】
僕は「Webデザイナー」です。専門領域はFlash。とはいえ基本営業行為以外は結構何でもやります。
肩書きはあくまでも便宜上のものだったりします。
そして僕はどちらかと言えば「論理」の人間です。
そして体系的に学習してきたのは「プログラム」だったりします。
デザインらしいことは基本独学です。
こんな僕が「プログラムコーディングする前」にどんなことをやっているかを少し掘り下げて書いていこうと思います。
なぜこのようなことを書こうと思ったかと言うと。。。2つ理由らしきものはあります。
まず1つ。
Webデザイナーって「デザイナー」とか言う割りに。。。
(X)HTMLやCSS、JavaScriptやActionScript。。。
まぁマークアップ言語、スクリプト言語、プログラミング言語という細かい話はさておき^^;
Web「デザイナー」なのに扱う言語は多岐に渡ります。
そしてそれら言語は日に日に高度になってきています。
そして当然モチベーションの高いWebデザイナーは修得しようと勉強をする。
けれど、よく「いつまで経っても書けません。自分には才能ないのであきらめます。><」ということを言われるのですが。。。勉強に費やした時間を考えても、それはあまりにも勿体無いのでよくよく話を聞いてみると。。。世に溢れる「サンプル集」を片っ端から読み漁り勉強をしたと。。。
なるほど。プログラミング「以前」の知識を学べなかったんだと分かりました。
プログラミングをする際、言語仕様を理解し、シンタックスを学び、アルゴリズムやAPIをパターンモデルなどを覚えていく。そうした中で「サンプル集」を利用することは「あり」だと思います。しかし、言語仕様やシンタックスを理解・修得する以前に「サンプル集」を手にとっても、そのサンプルどうりのコーディングをしても、一向に応用したり、0からのコーディングを行うことは難しいでしょう。
とはいえ。。。言語仕様やシンタックスを学習することは基本であるがゆえに時間が掛かります。そして楽しくありません。^^;なぜか?難しいからです。で、なぜ難しいかというと。。。「イメージ」できないから。
なので、僕が「プログラミング以前に」というのは「プログラム以前に普通の生活・日本語で置き換えると。。。」というようなところで話をしようと思っています。
そして、なぜこのようなことを書こうと思ったかと言う、もう一つの理由。。。
理由らしきものの2つめ。
去る2006年11月25日(土)に行われた「css nite in Osaka」の中でCSSのオーソリティであろうサイバーガーデンの益子 貴寛さんの「ザ・ルールズ・オブ・スタイルシート(CSS)」というセミナーのプレゼンシートの冒頭が
「プログラムとは、コンピュータへの命令ではなく、
コンピュータに何をしてほしいか、人に説明することだ」Donald E. Knuth, “Literate Programming”
(ドナルド E. クヌース 『文芸的プログラミング』)
の引用で始まったことに「キタ!」と思ったから。
WebデザイナーというスタンスでそれもCSSを話題にする中で、のっけからこの引用。つまり、Webデザイナーという「デザイナー」と言えど、Webが流れる場がコンピュータ上である以上「プログラマ的思考」が必要であり、持つべきだと思うからです。
この2つの理由から僕が何かをアウトプットすることで誰かの何かの役に立てれば。。。という、まぁそんなこんなで書こうと思います。
僕自身がプログラムを書く前にどんなことを考え、どんなことを行い。。。
カタチにしていくか。。。そのエッセンスが少しでもプログラマではなくWebデザイナーに何か還元できれば。。。とまあそんなスタンスです。
ご意見/ご感想頂ければ幸いです。w
