なぜそんなに多くのプログラミング作業があるのでしょうか?[閉まっている]


28

ソフトウェアの進化により、なぜプログラミングの仕事がまだ「終わっていない」のだろうか。たとえば、私は開発者です。つまり、私はソフトウェアに関心があります(主にインターネットを閲覧するためだけにコンピューターを必要とするタイプの人間ではないことを意味します)。私のUbuntuマシンでさらにアップデートを受け取ります。

私は必要なものすべてを提供し、更新プログラムはさまざまなバグ修正/改善を提供しますが、残りの人生で現在の状態でそれを使用しても構いません。2年間のUbuntuの使用について、深刻なバグ/問題にぶつかったことはありません。

別の例はWindowsです。ユーザーのほぼ半数は、実際には古代のWindows XPをまだ使用していますが、すべてのニーズを満たしていると感じています(そして、私は同意します)。

もっと多くの例を挙げてみることができますが、今までにあなたは私の論点と私の質問を理解しています。新しいプラットフォームで実行され、いくつかの新鮮な開発作業を必要とする新しい「トレンド」(新しいモバイルOSなど)が常に表示されますが、ソフトウェアの努力の大部分は「完成したプロジェクト」または少なくとも、完了したと見なされるのに十分なプロジェクトの状態。

説明がありますか?


4
Facebookや携帯電話は役に立たないと思っていました:) ちなみに、人間は退屈しやすいのが理由だと思います。ところで、あなたは人間ではありません。
ジョブ

9
これらのXPユーザーがDOSを実行している286を使用していないのはなぜですか?
エドワードストレンジ

3
@Crazy Eddie 2.5GHzでは、286コアとデュアル/クアッドコアには大きな違いがあります。この違いが「完了」状態です。2.5のクアッドコアと6 GHzの32コアの違いは関係ありません。2000 mphまで走行できる車は必要ありません(実用的ではありません)
jd_505

4
いいえ、あなたの車が1000,2000以上のmphに到達できるかどうかは関係ありません。それでもその可能性を十分に活用する方法(道路)を見つけることはできません
jd_505

4
@ jd_505、想像できないからといって、それが役に立たないということではありません。

回答:


33

世界には数十億の未完の問題があります。人間の欲望は言うまでもなく、その欲望を毎日満たすには新しいツールが必要です。

保留中の問題が残っていないと本当に思う場合は、これらのいくつかを解決してみてください。

  1. 敵対的な政府が通信ネットワークのスイッチを切るとき、人々が大規模に通信するのを助けるソフトウェア。
  2. インドやウガンダなどの国のシステムリークを本質的に塞ぐ食品およびその他の必需品流通システム用のソフトウェア。
  3. さまざまな能力のある人がより良い生活の質を享受できるようにするソフトウェア。

これがあなたに何らかの展望を与えることを願っています。


1
ポイント1は、ハードウェアでのみ解決できます。
トーマスストック

2
ソフトウェアは、「異なる能力を持つ」人にとっていくらか助けになるかもしれませんが、大したことではないのではないかと心配しています。私はポリオの生存者であり、ソフトウェアが私のために行った主なことは、私が家でできる職業を私に与えることです。
マイクダンラベイ

1
@Thomas:ソフトウェアを有効にしなくても、シリコンは違いをもたらしません。ここには既にハードウェアがありますが、ソフトウェアは誰にサービスを提供するかを選択すると、多くの作業が必要になります。
Fanatic23

@マイク:視覚障害者のための音声合成?
Fanatic23

26

反例として、花屋を通りに連れて行ってください。ソフトウェアに関する彼らの経験は、次のようなものになるでしょう。

  • 会計ソフトウェアをインストールします-紙台帳よりもはるかに優れています
  • 会社のメールを設定する
  • 他の皆がいるので、小さなパンフレットのウェブサイトを設置してください
  • POSシステムを追加する
  • 簡単な顧客注文フォームをWebサイトに追加します
  • 企業顧客を管理するためのシンプルなCRMツールを購入する
  • 国内および世界の販売ネットワークと統合して、サイトからのものではない販売を受け入れます
  • 会社のメールとCRMを統合する
  • リピート顧客向けの特別注文ツールをオンラインで追加
  • 配達ドライバーのオンライン広告
  • ディストリビューターの注文ソフトウェアを使用することに同意して、花を安く入手する
  • 福利厚生をオンラインで管理することにより、従業員の福利厚生を安くする
  • オンラインで必要な政府の許可を申請する
  • ソフトウェアツールを使用して、新しい従業員の簡単なバックグラウンドチェックを行う
  • 毎週の注文が自動的に行われるように、コンサルタントに在庫システムと販売業者の間に橋を架ける
  • 電子的に税金を支払う
  • オフィスから追跡できる配送車両にGPSデバイスを追加します。
  • マッピング/ルーティングソフトウェアを使用して、配信に最適なルートを設計する
  • 業界のデータを参照して、期待どおりに機能していることを確認します
  • オンライン顧客ツールにパッケージ追跡を追加する
  • ソーシャルネットワークと評価サイトを使用してWebプレゼンスを広める
  • 注文状況の確認と注文状況の確認のために、ほとんど無料のモバイルアプリを提供します(主に大規模な顧客向け)。
  • ソフトウェアで最も忠実な顧客のための報酬プログラムを管理します
  • 会計、在庫、顧客注文、注文追跡、および販売業者注文を統合
  • Grouponプロモーションで新規顧客を獲得する
  • 必要に応じてこれらのシステムをすべて更新します

このような単純なビジネスの場合、それは非常に多くのテクノロジーであり、今日ではあまりにもばかげているようには見えません(通りの上の小さな花屋がこれをすべて行っているとは思いませんが、きっと驚くでしょう)。誰かがすべてのソフトウェアを構築する必要があります。

私たちが明日利用できる技術を予測できないのと同じように、フラワーショップがそれほど多くの技術を必要とすると予測することはできなかったでしょう。


12

過去10年間の車両で十分なのに、なぜ自動車会社は設計の改善を模索するのですか?現在のブレンドがすでに満足しているのに、なぜコーヒーショップが新しいローストを検索するのでしょうか?私たち全員が着ているものが十分すぎるのに、なぜファッションデザイナーは新しい服を作るのでしょうか?

十分良いかもしれませんが、最良のものはありません--- 良いだけです

そして、彼の仕事に誇りを持っている人は誰でも、常に改善し、道具を研ぎ澄まし、完璧を求めています。それが科学の進歩を促し、それがアーティストを鼓舞し、起業家を動機付けるものです。最高ではなく、より良いだけです。


1
改善の部分については同意しますが、需要が実際に増加している理由(より多くの人が必要です)について説明していますか?いくつかの改善だけが必要ですか?2008年と2009年のモデル間でわずかな調整を行うよりも、車のデザインを作成する方が多くの作業が必要です。レガシーコードが原因である可能性があります。サイズが大きいほど、アップグレード/保守が困難になるためですか。:)
jd_505

@jd Facebookの前は良い状態でしたか?Googleの前に?常に新しいものを作成できます。そして、あなたはソフトウェアにも多くのメンテナンスが必要であることは正しいのですが、より野心的なキャリアの目標がヒットしたとき、私はそれらの仕事を一時的なフォールバックと見ています。
-chrisaycock

11

人々はコンピューターで行う新しいことを考え続け、ハードウェアは進化して、以前はできなかったことができるようになります。

どこから始めればよいかわかりませんが、例としてテレビを見ましょう。

1965年10月、「ジニーの夢」を視聴したい場合は、適切なタイミングで適切なステーションをオンにする必要がありました。他に選択肢はありませんでした。記録も購入もできませんでした。そして、あなたがそれを見逃した場合、まあ、あまりにも悪い。たぶん数年のうちに彼らはそれをシンジケートし、(もし運が良ければ)1970年のいつか見逃したショーをキャッチすることができました。

ああ、1965年には、企業と大学以外にコンピューターはありませんでした。通常、少なくとも小型車と同じくらいの大きさで、テレビの再生にコンピューターを使用することは、純粋にSFの概念でした。

1996年までに、あなたはもちろん、組み込みCPUを持っているかもしれない「Iジーニーの夢」あなたは組み込みCPUを持っているかもしれませんVHSプレーヤーで再生することができVHS、およびCRTテレビのエピソード、買うことができる誰かに持っていたがプログラム。VHSからコンピューターにビデオ出力をキャプチャするために使用できるデバイスがありましたが、当時の消費者レベルのハードウェア馬力は非常に低かったため、最新のハードドライブの巨大な部分を吸い取ることができました1回のエピソードで、画面の小さなウィンドウでしか再生できませんでした。

2006年、彼らはDVDで「I Dream of Jeannie」エピソードのリリースを開始しました。再生するとき、DVDプレーヤーと薄型テレビの両方に組み込みCPUが必要で、どちらも誰かがプログラムする必要がありました。または、もちろん、コンピューターでDVDを再生することもできます。誰かがそれをするためにプログラムしなければなりませんでした。

DVDがリリースされて間もなく、人々は誰かがプログラムしなければならない DVDリッピングソフトウェアを使用してDVDをリッピングし始めました。そして、彼らはリップをクリップに編集し(誰かがプログラムしなければならなかった非線形ビデオ編集ソフトウェアを使用)、ブラウザを使用して(誰かがプログラムしなければなりませんでした)他の人のためにYouTubeにビデオをアップロードしました(誰かがプログラムしなければなりませんでした)ビデオ再生ブラウザプラグインで表示するには(誰かがプログラムする必要がありました)。

今、あなたはDVDをリッピングする必要さえありません!あなたは(iTunesの使用することができ、誰かがプログラムに持っていたが)と(iTunes Storeに行き、誰かがプログラムに持っていた)、あなたのコンピュータにソフトウェアを使用して再生することができ、「かわいい魔女ジニー」の購入とダウンロード140の異なるエピソード、(これは誰かのプログラムを持っていました

私はこれを確認していませんが、iTunesバージョンの「I Dream of Jeannie」をiPhoneやiPod Touchで再生することもできます。もちろん、誰かがプログラムしなければなりませんでした

そして、「I Dream of Jeannie」が次にどこに登場するのか全くわからない。腕時計や、ある種のウェアラブルファブリック、メガネのレンズに映し出されているのかもしれません。しかし、どこに行っても、誰かがそれをプログラムする必要があります。

オフィスアプリ?えー 90年代前半からまだWord 5.1を使用していれば、私は完全に満足しています。

しかし、他のすべては?私は40年前からプログラミングを行ってきましたが、プログラミング作業の市場が成長し続けると予想しています。


6

役に立たないがらくたに対する私たちの無限の飢えは飽き飽きしなければなりません。

また、ソフトウェア業界がますます高速なコンピューターの必要性を駆り立てなければ、ハードウェアのアップグレードを行う必要はありません。それではどこに行きますか?中国のこれらすべての電子機器のゴミリサイクル町は何をしますか 有毒なゴミの山はすぐに丘以外の何物にもなりません。ただそれはできません。


「より高速なコンピューターの必要性を推進しているソフトウェア業界」-ソフトウェア業界?いや、需要は人々からです
ロックラン

5

UbuntuとWindows XPは、オペレーティングシステムとデスクトップソフトウェア全般の重要性が低下しているため、まだ十分です。このサイト、FacebookYouTubeなど、見逃せないものがウェブ上でたくさんあります。そこで新しいソフトウェアが構築されます。多くのエキサイティングなことは、多くのプログラミングが行われる別のドメインであるスマートフォンやタブレットで行われます。


2

投稿では、2つのオペレーティングシステム(UbuntuとWindows XP)について言及し、ユーザーは主にOSの現在のフォームに満足していると述べています。

UbuntuとWindows XPは、何千ものアイデアの集大成の結果です。

アイデアの多く([スタート]メニューを画面の左下隅に配置するか、Microsoft Excelを設計するか)は、非常に徹底的に開発されています。はい、彼らが満足のいく状態に達したかもしれないことは事実ですが、現在のソフトウェアとソフトウェアエンジニアリングのアイデアが将来どのようなことにつながるかを考えてください。

私たちのニーズと要望はテクノロジーとともに進化しています。私たちは技術を最大限に活用したいと考えています。UbuntuとWindows Xpは、進行中のプロセスにおける単なる踏み台(またはマイルストーン)にすぎません。


2

人々が実際に使用するアプリケーションとシステムの場合:

ソフトウェアはより多くのソフトウェアを生み出します。

次の形式で:

  • 新機能
  • バグの修正
  • 競合企業とアプリケーション

2

モバイルおよびソーシャルアプリケーションの開発者は、需要が高いようです。スタートアップはいたるところにあり、UbuntuやOSの場合、常にバグがあります-完全なものは何もありません。誰かがアイデアを持っている限り、開発者が必要です。


2
モバイル/ソーシャルアプリに取り組んでいる開発者の割合はかなり少ないと思います。開発者のほとんどは、世界規模で、大企業または国のビジネス状況に関連する特定の製品に専念している「地元」の小企業で働いています。
jd_505

1

18年前、私はWindows 3.1を使用して、図書館の学校の新しい286コンピューターの前に座っていました。かっこよかった!古いBBC microsよりもはるかに優れています...しかし、私は、18年前に座っていたものを完全に忘れていました。誰が今日何を使用するかについての手掛かりを持っているでしょうか。当時のインターネットが新しいものだとは思わない...

私のポイントは、私たちの多くが、18年後のコンピューターがどのようになるかを推測するビジョンや想像力を持っているとは思わないことです。コンピューターは常に進化を続けており、それを実現するには絶え間ない開発が必要です。

現時点では、Ubuntuに満足していると思いますが、他の誰もが新しいスーパーHokey Cokey 5000を使用している10年または20年の間に、それを使用しますか?


1

問題には解決策がありますが、常に解決策を最適化する余地があります。ソリューションの使用量が多いほど、わずかな最適化でも差が大きくなります。

これは抽象的な点のように思えるかもしれません。そうではありません。たとえば、私のスキルセットの1つはA / B Testingです。経験から、A / Bテストが成功しても主要な新機能が導入されることはほとんどないことがわかります。しかし、わずかな文言の変更により、10%多くの人がWebサイトにサインアップする可能性があります。これは、数百万ドルの追加収益を意味する場合があります。差は非常に小さいので、ほとんど気付かないでしょう。しかし、それは大きな改善であり、おそらくそれを見つける可能性は多くの給料を払うでしょう。

さらに、ビジネスは常に変化しています。驚くほど多くの変更には、内部での動作方法の変更が必要です。また、時間の経過とともに、より優れたツールによって軽減される内部の非効率性を特定します。この絶え間ないチャーンと最適化は、実際の作業を必要とする実際の作業です。その作業の多くは、プログラムを作成できる人が行う必要があります。(これは実際、ほとんどのプログラマーが雇用されている場所で、企業内で内部的な作業を行っています。)

さらに、傾向としては、やがてプログラマーが仕事をしやすくなりました。私たちが仕事をするのが簡単であればあるほど、プログラマーが実行するプログラムを書くことは理にかなっています。そして、より多くのプログラマーが必要だと感じています。この傾向はどのくらい持続しますか?知りません。しかし、それは50年代後半から続いており、減速の兆候は見られません。


1

そこにある情報の量は指数関数的に増加します。収集して整理するためのツールを期待できますが、特定のニーズに合わせてフィルタリングするツールを期待できます。

ソフトウェアは社会の傾向とニーズに追従し、情報がますます社会的および産業的要因になりつつあるため、需要は減少しません。情報の形式は無数にあり、その用途は絶えず拡大しています。ソフトウェア開発は絶滅から長い道のりです。


1

コンピューター(およびコンピューターで実行されているアプリケーション)の目的を、プロセスの最適化と同じくらい狭いものに解釈できます。
そうすることで、改善の余地が非常に大きく、常に存在することがわかります。

また、すべてのコンピューターアプリケーションの大部分は、使いやすさ、信頼性、機能、パフォーマンス(または少なくともいくつかのスケール)に関しては恐ろしいものです。品質が徐々に向上しているアプリケーションはほとんどありませんが、平均は驚くべき速度で低下しています。
もう1つの理由として、プログラミング作業がまだ多くあるのは、設計貧弱で実装粗末なことです。ジェフ・アトウッドは、あなたが読む価値があると思うかもしれないこれについて投稿しました


1

ソフトウェアによって、現実世界の問題の解決策を表現することができます。解決すべき新しい問題が常に存在することを考えると、常に新しいソフトウェアが必要になるため、開発者には常に作業が必要になります。


1

私の知る限り、これらのいずれかを作成するまで、私たちは終了していません。

しかしもっと深刻なことに、コンピューターサイエンスには、まだ解決されていない、または「良い」に十分近い場所にない多くの進行中の問題があります。これらには、画像認識、自然言語処理、音声認識、および人間が通常は優れているがマシンがひどく失敗する他の多くの「ファジーパターン認識」タイプの問題が含まれます。1960年代の野望と比較して、AIの状態はかなり哀れです。全体として、やるべきことはまだたくさんあり、改善の余地はたくさんあります。

ちなみに、Ubuntuでさえ、いくつかの改善を使用できます。64ビットでのFlashサポートは最悪です。


1

進化論的な観点から見ていると思います。社会が静的であれば、最終的には実際のニーズを満たす方法を見つけ出しますが、それは問題ありません。

進化を推進するのは挑戦であり、自然や悪い人々が私たちが持っているものを奪い、そして/または私たちを殺したいと決めるなど、しばしば非常に悪い挑戦です。これを克服する新しい方法を考えなければなりません。それは、ソフトウェアを含む新しい技術に対する需要を生み出します。エンターテインメントへの欲求は飽くことのない需要を生み出し、ローマのサーカスから現代のメディアまですべてを目撃しますが、それはただの楽しみです。本当の課題は、飢hungや危険などから生じます。


1

ソフトウェアの問題は、それが動作するハードウェアとともに、それを超えて進化し続けることです。現在、私たちは特定のレベルに事前にプログラムされたソフトウェアのみを作成しています。これは、大多数の人間が「AI」ソフトウェアを作成するまでにまだ何年もかかるでしょう。

Googleのようなものを、車両のタッチスクリーンインターフェイスを操作するために使用されるソフトウェアのようなものと比較すると、テクノロジーに非常に多くのギャップがあることがわかります。

永遠に変化する物理的および知的な世界でそれ自体を拡張および開発できるソフトウェアができるまでは、..やるべきことがたくさんあります。

編集済み..新しいテクノロジーやコンセプトが登場すると、既存のソフトウェアの多くはすぐに古くなり、そのジャンルの大部分を再作成/公開する必要があります。2年後には、コンピューターを使用して思考/思考のインターフェイスを使用することで大きなブレークスルーを達成します。

思考/コマンドをキーボード/マウス操作に変換するために、ほとんどのオペレーティングシステム用のシンプルなプラグインを作成できますが、これはまだ制限されており、アプローチするのに悪い方法です。技術は常に進歩しており、私たちは12か月で10年後には何が利用可能になるのかわかりません。

量子コンピューターでも起動しない


-1

常に新しいアプリケーション、解決すべき新しい問題、新しいプラットフォームがあります。


1
私はそれを見るとまったく逆であるため、すべての問題(ユーザーがコンピュータを使用して解決する必要があるかもしれない)がすでに解決されているため、これを求めています。新しいアプリケーションが導入されることはめったにありません(たとえば、少なくとも成功したアプリケーション、たとえばMS Office / OpenOfficeは、「オフィス」作業を管理するための最良のソリューションです)。新しいプラットフォームは常に導入されていますが、世界中の開発者全体のわずかな割合を占めています。
jd_505

3
多くの新しいソフトウェア製品は問題自体を解決しません(Facebook、Farmville、Twitterなど)。
ジェームズマクロード

3
また、コンピュータには、家庭の消費者(産業、商業、医療など)をはるかに超える用途があります。
ジェームズマクラウド

たとえば、空港のソフトウェアには必要なものがあり(明らかに飛行機は一日中all落していません)、それは長年にわたって使用されています。とにかく、私はこの質問をしているので、自分が正しいことを完全に確信しているわけではなく、間違っているかもしれません。
jd_505

1
@ jd_505、飛行機が空から落ちていないという単なる事実は、航空交通管制および航空電子工学システムが必要なすべてを行っていることをほとんど意味しません。それは、可能な限り最大の失敗を回避しているだけです。考えてみてください。スケジューリングソフトウェアは、空港の収容能力に対する嵐の影響をすぐに考慮することができないため、乗客はほぼ24時間地上の飛行機に閉じ込められています。9-11で、ATCと軍はハイジャックされた飛行機の1つの追跡を完全に失いました。なぜなら、彼らが情報を共有できる唯一の方法は、電話会議でお互いに叫ぶことによるからです。
チャールズE.グラント
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.