あなたが言及したトレンドに、私はもう一つ追加します、私見はそれらを説明します:
これまでよりも非常に多くの(必要な)プログラマーがいます。
プログラミングを必要とする、または含むタスクの量は増え続けており、プログラマーの数よりもさらに高い割合で増加しています。現在、平均的な車にはいくつかのマイクロチップが搭載されています。5年後には、冷蔵庫とトースターにチップが入っているかもしれません。10年後、あなたの下着は?...そして、誰かがこれらのソフトウェアを作成してこれらを機能させる必要があります。そのため、自動化可能なものをすべて自動化し、「生産性」(定義されている場合でも)を改善するために、あらゆる努力が払われています。そして、ますます多くの新鮮な脳が採用されています。
これは、今日のアクティブなプログラマーの大半が経験が浅い、および/または自分の仕事に対する準備ができていないことを意味します。適切なレベルの経験を得るには数年かかり、そこに留まるには絶え間ない学習が必要です。一番下の行は、ますます多くのプログラミングの仕事がますます挑戦的になっています。しかし、彼らを探している人にはまだ十分な挑戦があります。
上記のあなたのポイントに対して悪魔の擁護者を演じさせてください:
ベストプラクティスの実装に時間をかけない
多くの人はそうではなく、多くの人がそうです。10年前、ユニットテストとアジャイルアプローチを初めて発見したとき、同僚は誰もそれが何であるかを少しも知りませんでした。今日では大学のほぼ標準的な資料であるため、多くの新卒者がすでにそれを理解しています。
他の人のコードを可能な限り使用する(責任としてのカスタムコード)
何とは対照的に?車輪の再発明?または、他の人のコードを使用してそれを回避しますか?
問題を解決するために(ほとんど)支払われていることに注意することが重要だと思います。1行のコードを書くことなく問題を解決できる場合でも、クライアントは満足します。特に、このようにすれば、より信頼性の高いソリューションをより迅速かつ安価に作成できます。私はそれについて何の問題も見ていません。
ますます高レベルの言語を使用して生産性を向上させる
アセンブリですべてをコーディングするのではなく、;-)
「プログラミング」を大幅に簡素化し、コードの背後にある配管を理解する必要のないGUIベースの開発「ツール」
私見どのツールも悪用される可能性があります。これは、GUIビルダーが必ずしも完璧または優れていたと言っているわけではありません-それらのほとんど(または少なくとも一部)は制限内で使用可能です。しかし、誰かがこれらの制限を知らない場合、それはツールまたはユーザーの問題ですか?
一般的に、私は(それを証明する証拠はありませんが)パンチカードとマシンコードの時代に、既存のコードのほぼ同じ割合が現在と恐ろしいものであったと信じています。
- コードの全体量
- 部外者がそのようなコードを見ることの可能性
はるかに少なかった。
現在、インターネットとDaily WTFにより、最悪の例に日々さらされています。テロや地震、離婚したセレブに関するすべてのニュースを見て、この世界がどれほど危険で不道徳になったかを叫ぶようなものです。