自分でサイトを制作したことで、身に沁みて学んだことがある。
タスク分けというのは、目的のために「あーして、こーして」と考えて具体的な作業を決定していく作業のこと。
「あれがしたいから、あれが必要、これも必要……etc」
自分は最初、「まあ、そういうのは後々考えることにして、書けそうなところから、コードを書いちゃおう!」と勢い良くスタートしようとした。
天才画家がキャンバスに向かい合うように、作業をしながら「細部」と「全体」を決めていこうと思っていた。
手を動かすことでインスピレーションが働くだろうと、甘く見積もっていた。
しかし、いざエディターに向き合うと、すぐに脳みそが「総当たり検索」をしているような状態になり、頭から煙が立ちのぼり、すぐに混乱してしまう。
「何を書いていいのか分からない……」
せっかくコードの書き方を勉強をしたのに、そんなありさまでは知識がまるで役に立たなかった。
先人たちによる初心者向けの発言を見る限り、誰もがこう言う。
「コードの書き方を覚えたら、次は、簡単なアプリでも作ってみよう!」
しかし、待ってほしい。
いくら簡単なアプリとはいえ、制作するには、全体像を決めるための具体的なディレクションが必要になる。
それを決定する作業は、いわゆる「上流」と呼ばれているようで、実装チケットを切るのはプロダクトマネージャー(PdM)の仕事。
その職務は大抵、経験豊富な人が行うように思われる。
「経験がないから、簡単なアプリを作りたいけど、それにも経験が必要な要素がある」
なかなか立派にロジックが循環している。文学的に言うと「キャッチ22」状態。
もしかすると、実はこの時点で、作り手としてのセンスがあるかの見極めが始まっているのかもしれない……。
タスク分けには「あれが必要、これが必要」を的確に判断するための経験が求められる。
しかし初心者には何もない。
ならば、そこはアイデア(着想)で乗り越えるしかない。
あるいはベテランの方々も同じような状況で、業務に向き合う中でもアイデアを求め続け、日々格闘しているのかもしれない。
「頭の中に作りたいものの全体像はできているから、試しに紙にアウトプットしてみよう!」
これも立派なアイデア。
「あの人気アプリのUIをパクっ……参考にしよう!」
これも立派なアイデア(権利に関するルールはきちんと守りつつ)。
そうやって全体やパーツの細部の在り方をイメージできて、自分ははじめてエディターに向かって手を動かすことができた。
まさか、こんな初歩の初歩の初歩のソフトスキルの部分で、つまずくとは思っていなかった。
きっと、幼少期にレゴブロックかマインクラフトで遊んで、徹底的にトレーニングしておくべき!笑