プログラマーとデザイナーの感覚
プログラミングとデザインの両方の感覚を持ち合わせている阿部氏に、プログラムとデザインの違いについて聞くと「一番分かりやすい決定的な違いは、オープンソースで分かります。プログラムのオープンソースはありますが、デザイン(ここでは主に商用ベースの広告案件などで必要とされる狭義な意味で)のオープンソースはありません。なぜなら、プログラムの場合は、みんなが使ってバグが減ったら価値が出ます。枯れたら価値が出るというわけです。広告などのデザインの場合は、アイデアが涸れてしまったら価値がなくなります。この点が決定的に違います。プログラマーの方はできるだけ汎用化を目指しますし、デザイナーの方はできるだけメリハリを付けることによって、特徴が出るように尖ったものを目指します。その感覚を理解できているかが一番大きいと思いますね。実際に自分がプログラミングしている場合でも『こことここを共通化すれば、コンパクトな美しい実装になる』という部分を、デザイナーとしては『それをやったら、メリハリがなくなり効果がなくなる』というせめぎあいになります。そこをどう折り合いをつけるかは、両者の感覚を持ったうえで判断しなければ解決できないと思います」と話した。
フレームワークによってFlashコンテンツ制作の分業ができるようになったが、阿部氏自身がProgressionを作った動機は、分業ではなく自分1人で作りたいというものだという。「Flashクリエイターやプログラマーには、デザインとプログラミング両方を経験してほしいです。基本的には両方やるべきだと思います。料理人でもそうだと思いますが、食材の特性を理解していないシェフに食材を活かした調理はできませんし、食材が調理法を指定してしまってはシェフのいる意味がなくなってしまいます。そこが分かれてしまうと、価値がなかなか作りにくいと思うので。理想論かもしれませんが、両方やるのが一番良い形だと思って、それを実現する手段としてこのフレームワークを作ったのです」と語る。
学習方法「ユーザーフォーラムの全記事をひたすらチェック」
プログラミングとデザインを両立させている阿部氏は、どのように学習してきたのだろう。これまでの学習方法について聞くと「初級中級あたりのときには、とにかくユーザーのフォーラムを全記事チェックしていました。過去の記事までは見ませんでしたが、その日の書き込みはすべてチェックしていました。常に問題と解決方法があがってくるので、少しずつ理解できます。チェックした時点では完全に理解していなくてもよくて、後で似たような問題が起こった際に、参照できればいいのです。書籍もいいのですが、正直どこから見たらよいか分からない人もいると思います。すべて体系化されて、頭から順に読み進めることが前提で書かれている書籍を、中には苦痛に感じる人もいるのではないでしょうか。
とにかくフォーラムで意図なく新しい記事が来たらチェックするくらいの感じで、その記事のインデックスを頭の中に付けていきます。インデックスが増えるほど困った時の参照先が多くなります。そして、実際に困った際にそのインデックスを使って解決することで、自分のノウハウとして蓄積されていきます。フォーラムのもう一ついい点は、プロの書き手が執筆していないことです。『こういう場合どうしたらいいですか?』や『そんな質問するなよ』『ここをチェックしろ』など、一種のストーリーになっているので、掲示板を読んでいるのと近い感覚でQ&Aを楽しめるのです。
よく解説を読むだけではなく、実際に手を動かして試してみなさい、ということを言われますが、試してみたいという興味が湧かないのであればやるべきではないと思います。それ自体が作業で苦痛になりますので、フォーラムを見なくなってしまう可能性があるからです。
蓄積された頭のインデックスは、日々の業務を行う中で、必ず検索しなければいけない場面に遭遇します。そして、インデックスを使って問題を解決し、ノウハウを増やしていくと、よくあるパターンというのが見えてきて、インデックスに対して最適化をしたくなります。その最適化を繰り返すことで『自分ライブラリ』の形が見えきます。そのような積み重ねから生まれたフレームワークの一つがProgressionです。
最適化したいと思えない方は、インデックスが足りない、もしくは範囲が広すぎて関連性に気がつかない、あるいは面倒なことを面倒と思わずにこなせてしまう方なのではないでしょうか。皆さんいろいろな方法でインプットされていると思いますが、ドキュメントを見たらすぐに実践してしまうような、すでに興味を持って行動できてしまっている方にはこのようなアドバイスは不要かと思います。しかし、どこから始めたらいいか分からない、興味を持ちたいがなかなか行動に移せない方には、あまり頑張らずにインプットする手段として、このような方法もおすすめです」
阿部氏がこうした学習を始めたのはおよそ10年前くらい前からで、当時勤務していた会社にはJavaScriptやFlashを使う人がおらず、日々の業務の中じっくり本を読む時間もなく、しかしそれらを勉強しなければならない状況で思いついた学習方法だったそうだ。阿部氏の実体験からのアドバイスなので、気軽にインプットできるフォーラムのチェックは有効と言えるだろう。