数週間前、職場やってきたインターン生の指導員をやっていました。
A few weeks ago I was an instructor for a internship student who came to work.
有能な学生さんだったので、私は、必要な材料を揃えて、「作って欲しいもの」をお願いするだけで、十分でした。
Since he was a competent student, I had enough of all the materials he needed, and asked him for what I wanted to make.
私から出した「ちょっと普通でないお願い」は、
The "a little unusual request" from me is
―― 稼動確認後の短かいテストプログラムを、消去せずに残しておくこと
- Leave a short test program after confirming operation
でした。
-----
私にとって、もっとも読み難いプログラムは、
For me, the most difficult program to read is that
■リストが長くて、
the list is long
■意味不明の大量の変数が使用されていて
a lot of meaningless variables are used
そして、
and
■キレイに纏められた
Neatly organized
プログラムです。
「簡潔に美しく整理されたプログラム」というのは、開発者の私にとっては、「最低にして最悪のプログラム」です。
"A concise and beautifully organized program" is "the worst program” for me as a developer.
------
サンプルプログラムは、最大でも20行以内であって欲しいです。
I want sample programs to be within 20 lines at the maximum.
可能であれば、変数ではなく、実数をバリバリにハードコーディングして欲しいです。
If possible, I'd like you to hard-code real numbers rather than variables.
非効率な(最適化されていない)ループを、そのまま残しておいて欲しいです。
I'd like you to leave the inefficient (unoptimized) loop intact.
なぜか?
Why do I want that?
そのようなソースコードからは、色々なことが読み取れるからです。
I can read several knowledges from source codes of the sample program
ライブラリのファンクションの引数の記述方法(ポインタ等)、オブジェクトの構造、データ参照の順番とか、それらが、一目瞭然です。
The source codes make me clear that how to use argument of library's function, structures of object and orders of data references.
プログラマが、プログラム作成の最中で「迷走している経過」のプログラムくらい、勉強になるプログラムはありません。
There is no program that allows programmers to study as much as a “straying course” program during program creation.
-----
コマンドラインの使い方にしても、引数の内容の説明なんぞ、私には不要です。
When I use the command line, I don't need an explanation of the argument contents.
私は、実際に動く、コマンドラインの使い方の実例(サンプル)があれば、そのサンプルから、使い方を推測しますし、その方が早い。
If there is an actual example (sample) of how to use the command line that actually works, I guess how to use it from that sample, and that is faster to understand the command..
(この話は、私がこれまで散々繰り返してきた、数学の「実学」や、家電製品の「マニュアル」の話と同じです)
(This story is the same as the "math" of mathematics and the "manual" of home appliances that I have repeated so far)
ですから、私は、インターンの学生に「短かいテストプログラムを、消去せずに残しておくこと」をお願いしたのです。
So I asked the intern student to leave a short test program without erasing it.
それは、私にとっては、宝の山だからです。
For me it is a treasure mountain.
(To be continued)