[]
ソフトウェア開発の世界は不思議なものです。低失業率、高給、そして明るい未来にもかかわらず、どうやら常に危機に瀕しているか、衰退しているか、目を覚ます必要があるようです。一部の開発者は、最近のソフトウェア開発ブームを将来の衰退の前兆に過ぎないと見ており、この衰退の輪を警告する運命論的な小説を書き始めています。
Greg Baugues氏は、今日のソフトウェア開発者を1960年代のデトロイトの者と比較した」という記事を書いています。 その中で彼は、今日のソフトウェア開発者を1960年代のデトロイトの自動車労働者と比較し、デトロイトの自動車労働者に取って代わったロボットが、同じようにソフトウェア開発者に取って代わると主張しています。その証拠として、eコマースのShopify、オンラインジャーナルのWordPress、クレジットカード統合のStripeなどの例を挙げています。競争が激化しているにもかかわらず、ソフトウェア開発教育の需要は爆発的に高まっており、TreehouseやHacker Schoolのような企業が低コストで関連性の高いコースを提供しているため、学生は大学の4年間をわずかな費用で過ごすことができると言います。のような企業は、大学の4年間をわずかな努力や費用で開発職に就くための準備をすることができます:
いい気にならないで。言葉に囚われないで。橋を渡らないこと。時々ナイフを研ぎなさい。ソフトスキルを学びなさい。聴衆を作りなさい。お金を貯めなさい。対人関係。読む
ほとんどすべての点で、ボーグ氏は的外れです。まず、組み立てとソフトウェア開発には質的な違いがあり、前者の自動化は避けられません。創造性の自動化は、組み立ての自動化よりもはるかに難しい。そして、デトロイトの自動車労働者は、歴史上最も良い時期に労働組合を結成していました。彼らは組合結成を拒否し、その機能性は簡単には自動化されません。
しかし、自動化についてはどうでしょうか?すべてのAPIが楽に相互接続される輝かしい未来はどうでしょうか?Baugues氏は、過去5年間を次の50年の青写真としてとらえ、ソフトウェア開発の自動化は既成事実であると声高に宣言しています。彼が挙げた例を見てみましょう。
無料のブログプラットフォームであり、オープンソースのブログソフトウェアであるWordPress、2007年半ばに登場し、現在ではウェブの20%近くを動かしています。 Baugues氏は、WordPressは「2ヶ月」かかっていたことを「15分」でできると言います。自分自身やクライアントのためにWordPressサイトを構築したことのある人なら誰でも、WordPressがウェブサイトの現実的な機能のための最小の殻であることが多いことをよく知っています。WordPressは、難しいロジックに関係なく、ウェブサイトを機能させるための退屈なハードワークをすべて自動化します。Tumblrを見ればわかるように、投稿するだけなら何のコストもかかりません。WordPressの本当の価値は、本格的なウェブサイトのフレームワークを提供することにあります。競合のDrupalやJoomlaはもっと説得力のある仕事ができるという主張があります。
Stripeは、2010年に登場した開発者向けのクレジットカードAPIですが、現在では有名な顧客はほんの一握りです。今日、Stripeは、決済処理の世界では、旧来の競合他社に代わる、より安価でシンプルな選択肢に過ぎません。自動化はどこへ?同様に、2006年に設立されたShopifyは、オンラインで製品を販売するための便利なWordPressのようなプラットフォームです。ウェブテンプレート、決済、マルチコンピューターホスティングなど、過去に自動化されていたものを寄せ集めただけです。 StripeもShopifyも、未来のソフトウェア開発自動化の良い例ではありません。そのため、Baugues氏は、彼らが何を示そうとしているのか不明であると言及しています。これらの製品は以前の製品を改良し、より統合され、よりユーザーフレンドリーになっていますが、どれも完全に自動化された製品ではありません)また、開発者の仕事を奪うものでもありません。
[]
自動化によって引き起こされる不安や実存的な恐怖には長い歴史があり、多くの場合、歴史に対する無知から生まれます。1960年代、ロンドンの絹織物職人たちは、自分たちの労働力を大幅に削減することになる機械織機に対して積極的に抗議しました。しかし、17世紀半ばには機械織機が手織りに取って代わり始めていました。これに対し、1675年8月、暴徒化した織物職人たちは通りに出て、見つけうる限りの織機を破壊しました。
17世紀後半にユグノー教徒が織物産業に参入したことで、ロンドンの織物職人たちの怒りはさらに高まり、彼らは新参者を威嚇し、排斥するようになりました。数十年後の1760年代後半、スピタルフィールズで起こった暴動は、自動化産業とフランスとの競争に直面した織物職人たちが、公正な賃金を維持するために組織したものでした。暴動は目的を達成できず、自動化のスピードは衰えませんでした。
19世紀初頭、イギリスの繊維労働者グループであるラッダイツは、オートメーション化に抵抗するために団結。彼らは機械を破損・破壊し、さらなる暴力を振るうと脅しました。1813年の裁判の後、抗議活動は停止。それ以来、マルクス、ハイデガー、ミュルダル、マンフォード、エリュールといった思想家たちがテクノロジーやオートメーションを批判してきましたが、それでも世界はオートメーションを続け、急成長する人口に成長、安定、安全をもたらしました。これは、オートメーションが本質的に良いものであるとか、善良なものであるとかいうことではなく、長期的には破壊的であるにせよ、その効果は概してマイナス面を上回っているということです。さらに興味深いのは、オートメーションはまだ単純労働と短時間労働という理想的な世界をもたらしておらず、むしろ労働者にこれまで以上に過酷な労働を強いているということです。
Baugues氏がSaaSやインターネット製品について言及している以上、インターネットがソフトウェア開発に与える影響について話すのは当然でしょう。インターネット業界は共食いしているのではなく、レベルを上げているのです。10年前、「ウェブ開発」とは、HTMLアプリケーション、少々のCSS、Perl、PHPの知識を意味し、5年前は、HTMLとCSS、若干のJavaScript、PHP、Ruby、Java、ASPのいずれかに熟達していることを意味しました。今日では、HTMLとCSSを完全に分離し、PHP、JavaScript、Python、Ruby、Javaのうち少なくとも2つに習熟し、Git、パッケージ管理、継続的インテグレーションなどに精通していることを意味します。ウェブ開発者は以前にも増して多くのことをこなし、高信頼性システムの制約や要求と、業界の最新の改善や変化のバランスを常に取っています。ウェブ開発者は、これまで以上に多くのことを行っており、高信頼性システムの制約や要求と、業界の最新の改善や変化とのバランスを常に取っています。オフラインの開発者は、車輪を再発明する必要はあまりありません。むしろ、過去10年間で、ウェブ開発の最も反復的なコンポーネントの自動化が進みました。オンラインショップやブログをもう一度書き直すプログラマーがまだいるのでしょうか?解決すべきもっと面白い問題があるのは間違いありません。
バウグが言及したプログラミング・スクールや専門学校もこれを無視し、1990年代後半にはすでにこのような形で産業として発展していました。コンピュータ・サイエンスは入学者を大幅に増やし、プログラムの卒業生は数年間高給を享受しました。その後、市場は崩壊し、コンピュータサイエンスの入学者数は減少し、失業率は急上昇し、賃金は通常の範囲に戻りました。コンピュータ・サイエンスへの短期的な投資は価値があったのでしょうか?卒業生は卒業と同時に失業しました。さらに重要なのは、彼らがその後、開発職に就いたのか、それとも別の業界に転職してプログラミングのことをすっかり忘れてしまったのか、ということです。同様に、ソフトウェア開発の市場が明日崩壊したとしても、10年の開発経験を持つ開発者が他の業界に移るということは起こらないでしょう。その代わりに、Pythonアプリの作り方を学ぶ3ヶ月コースに参加しただけの「ハッカースクール」の新卒者が最速ランナーになるでしょう。彼らの知識ベースは弱く、すべての開発者が何年もかけて身につける重要な経験的知識がないだけでなく、ウェブ開発スクールやブログでは学べないコンピュータサイエンスの理論的知識も不足しています。プログラミング教育機関を通じた競争であれば、今日のソフトウェア開発者は何も心配することはありません。これは参入障壁のない分野であり、未熟な新世代の開発者は脅威ではなく、大きなチャンスなのです。
自動化はソフトウェア業界にとって脅威ではありません。ビジネスプロセスをカプセル化するすべてのAPIには、まだ書かれるべきアプリケーションがあり、適切な場合にはサポートするAPIがあり、機能を実行するすべてのライブラリやアプリには、まだ新しい使い方があります。自動化が必要な処理システムには、開発者の仕事が待っています。今日存在するソフトウェアの膨大な量は、悲観論者を立ち止まらせるはずです。おそらく、古い業界を廃業に追い込む新しいソフトウェア開発業界が存在するのでしょう。その業界は、決済処理やブログのような面倒な問題に焦点を当てるのではなく、過去20年間に苦労して得た利益を利用して、指数関数的に難易度が高まっている問題を解決することを目指しています。問題。
ソフトウェア開発は、自らを磨き続けることができる数少ない産業のひとつです。衣料品や医療、自動車産業とは異なり、ソフトウェアはとらえどころがなく、無形のものです。ソフトウェア開発者は問題解決者であり、しばしば非常に抽象的な方法で問題を解決します。そのため、特に楽観的な人たちは、そのような才能は自動化されていると考え、特に悲観的な人たちは、そのような才能はいつまでも失われないと考えるのです。




