頭の中からコードを0秒で出力する
「コードを書く」という作業自体はそれぐらい必要なのだろうか
プログラミングという作業は、
①頭の中で方針を考えて、
②それをコードとして書き起こす
③その結果を見て、次の方針を立てる
というサイクルを繰り返している
人によって、このサイクル自体の短さや、各手順の割合が異なるだけ
頭の中で方針を考えるのに9割時間を割いて、後は出力するだけという人もいれば
書きながら考えるという人もいるだろう
これは各手順を10秒程度で繰り返している感じか
どの関数を使おうか?とか変数名どうしようか?も①に含まれるものとする
この時、本来は②の作業って不要なのではないかと言うのを思った
②自体の高速化とというと、Vimを使うなどしてバババッとコードを書くイメージ
ここをただのテキストエディタで効率悪く進めるのと、
Vim等のツールを駆使してやるのとで、
なにか結果が変わるのだろうか、というのが気になる
仮に、単純に短くできりゃ良い、というのであれば
そういう意味でのメタプログラミングができたほうが良い
現時点でできるものとしては、例えば、変数名の置換とか
逐一変数の名前を変えていく、という作業をコマンド1発でできてる感じ
こういうのを他の作業でもできるようになるべき
例えばバケツリレーしてるときに、propsを順に生やしてくとか
こういうのは頭を使わない単純作業だが、今は自動化ができない
IDEやCopilot的なやつや言語機能は、②を0秒にするツールを提供すべきなのか
あるとすれば、
やけに変更箇所多いな、ということに気付くとかだろうかmrsekut.icon
でもそれは参照の数を見るなどして別の方法でも確認できる
単純作業としての②は、頭を使わずにできる作業ということなので、その間に別の思考ができる
そういう思考の時間をプラスと捉えることはできる
が、まあそれも①に時間かければええやん、とはなる
すでに頭の中にあるイメージを、バババッと出力するだけ、みたいなことをよく言ってる
だから他の人に比べて書く速度がめちゃくちゃ速いらしい
話逸れるけど、
頭の中に成果物のイメージがあることと、それを爆速で文字に起こせることってまだかなり開きがあるでしょう、とも思うmrsekut.icon
こんにちわ、こんにちは、コンニチハ、とか
どういう言い回しをしようか、とか
ストーリーのレベルではなく、もっと小さいスコープでの表現の選択、というのも技能が必要だと思うが
プログラミングにおける③のフィードバックとしては、
例えば、
type errorとか
syntax errorとか、
testがfailしたとか
実際に動かしてみたらちゃんと動いたとか
そういうのがあるわけだが
単に文章を書くだけの場合は、実は③も必要なく、
理想的には99.9%の①と、0秒の②で十分だったりするんだろうか