プログラムのバグというのは、本当にささいなものです。
A bug in a program is really a small thing.
カリフォルニアの1/3を大停電を発生させた原因のバグが、「たった3行のプログラム」であったことは有名ですが、私は驚きません。
I am not surprised that the bug responsible for causing a major blackout in 1/3 of California was famously "just three lines of programming".
というのは、私は3日間ぶっつづけで、3つのプログラムのトレースを100回以上チェックして、データの読み込みタイミングのズレを見つけて、
Because I spent three days straight checking the traces of three programs over a hundred times to find the timing discrepancies in reading the data, and
―― JavaScriptの1行をコメントアウトしただけで、プログラムはあっさりと動き出しました。
"I commented out one line of JavaScript and the program started working easily."
で、残っているものは、山のようにつけ加えた(全く関係のなかった)変数や、膨大なプリントアウトメッセージが書き込まれている、とても汚ない不様なプログラムリストです。
So, what is left is a very dirty, ugly program list with a mountain of added (and totally unrelated) variables and a huge number of printout messages written on it.
これから、これを、未来の私が読める程度に、キレイにしてサーバにアップするという、あまり楽しくない作業が残っています。
Now I have the not-so-fun task of cleaning it up and uploading it to the server so that future for me.
-----
文部科学省のプログラミング教育というのは、このような、プログラム開発の現状を無視しています。
Programming education by the Ministry of Education, Culture, Sports, Science and Technology (MEXT) ignores this current state of program development.
そして、「プログラム的思考」なるものを教えることができる、と、思っているようです。
And they seem to think that they can teach something that is "programmatic thinking".
ただ、文部科学省としては、『それしか、やりようがない』というのは、私にも理解できます。
However, I understand that the Ministry of Education, Culture, Sports, Science and Technology says, 'That's the only way to do it'.
もし、プログラム開発のフロント現場のリアルを、子どもたちに強いたりしたら、全員が逃げだすことを、私は受けあいます。
I assure you that if the MEXT force children to experience the realities of the front lines of program development, they will all run away.
だから、
So, I think,
―― まあ、そういうこと(「プログラム的思考」)が本当に実現できれば、子どもと文部科学省の両方に、心の底から『おめでとう』と言える
"Well, if such a thing can really happen, I can say 'congratulations' from the bottom of my heart to both the child and the Ministry of Education"
と思っています。
10年後を楽しみに待つとしましょう。
Let's wait and see what happens in 10 years.