Web画面に『ここにボタンを一つ追加して』というセリフを言う平気で言う人間 ―― これだけで、その人間のプログラムやシステムに関する見識の無さが露呈しています。
A person who says, “Add a button here,” on a web page without batting an eyelid, reveals the person's lack of insight into programming and systems.
こういう人を責める訳ではないのですが、
I don't blame people like this, but I think many people are unaware that
この追加されるボタン一つが、
This additional button is
■ユーザインターフェース(UI)の追加だけでなく、
■ in addition to adding user interface (UI) elements,
■プログラムコードに大変更を与えて、
■ making major changes to program code,
■それがデータベースの項目に影響し、
■ and having that affect database items,
■最悪の場合、それがトランザクションや排他処理に及ぶまでの、
■ in the worst case, it can extend to transactions and exclusive processing,
膨大な設計変更に及ぶ ―― ということを知らない人は多いと思います。
leading to a huge amount of design changes.
-----
多分、『ここにボタンを一つ追加して』と安易に言う人は、立食い蕎麦で『あ、それと、天麩羅と生卵を追加して』というノリなのでしょう。
Perhaps the people who say “Add a button here” so quickly are the same people who say “Oh, and add tempura and raw egg” when eating at a standing-only soba noodle bar.
しかし、ITシステムにおける、『ここにボタンを一つ追加して』とは、その蕎麦屋の『店舗全体を設計しなおす規模になる』というレベルの大作業になることは、そんなに珍しいことではありません。
However, in IT systems, it is not that unusual for a request like “add a button here” to be a primary task on the scale of “re-designing the entire store” for that soba shop
だから、『開発開始後の仕様変更』は、原則、許されることではないのです。
Therefore, 'specification changes after development has started' are not permitted in principle.
-----
しかし、そういうことを平気でやる発注者って、結構多いです ―― 金も出さずに、納期も変えずに。
However, quite a few clients do this without a second thought - without paying or changing the delivery date.
でも、システム開発者の担当者が、
However, it is essential to remember that the system developer in charge is probably thinking
―― このシステム音痴の無能野郎!
"“You incompetent system-illiterate bastard!”"
と、心の中で罵っていることは、覚えておいた方が良いでしょう。
in their heart.
受注側は、お金を貰う弱みがあり、最終的に、それに応じることにはなります(または、裁判になります)が ―― しかし、そこには『開発者が、発注者に対して"憎悪"が発生している』ということは覚えておいた方がいいです。
The weakness is that the recipient will be paid, and ultimately there is no choice but to obey (or take it to court), but what must not be forgotten is that the recipient is “hated” by the developer.
義務教育のプログラミング教育に意義があるとすれば、プログラミングできるようになることではなく、この「システム音痴の無能野郎」が、一人でも減ること、と、私は思っています。
There is no significance to programming education as part of compulsory education; it is not so much that people should be able to program, but I think the number of “system-illiterate incompetents” should be reduced.
-----
私も昨夜、プログラムの改修作業をしていました。
I was also working on program modifications last night.
私の見積り時間は"10分間"でしたが、改修完了に掛った時間は6時間でした。予定通りの稼動を確認したのは、今朝です。
My estimate was for 10 minutes, but it took 6 hours to complete the repairs. I confirmed that it was working as planned this morning.
自作プログラムでも、このザマです。
Even with my program, it's like this.
ITシステムというのを、ファストフードのトッピングのように考えているとしたら、それは無知を超えて、社会悪と断じて良いものです。
If you think of IT systems as being like toppings on fast food, then that's not just ignorance; it's a social evil.