ただこれに出くわし、誰かがこの声明を証明または反証する方法を持っているかどうか疑問に思いました:
心に留めておくべきこと...ハイテクの知識の半減期は?それはムーアの法則に従って追跡します:あなたが知っているすべての半分は18-24ヶ月で廃止されます。
SOURCE:によって答え以内クレイグトレーダーこの質問への「あなたがプログラミングのスキルを向上させるためにやった単一の最も効果的なものは何ですか?」
Statement = (True or False)
はい。
ただこれに出くわし、誰かがこの声明を証明または反証する方法を持っているかどうか疑問に思いました:
心に留めておくべきこと...ハイテクの知識の半減期は?それはムーアの法則に従って追跡します:あなたが知っているすべての半分は18-24ヶ月で廃止されます。
SOURCE:によって答え以内クレイグトレーダーこの質問への「あなたがプログラミングのスキルを向上させるためにやった単一の最も効果的なものは何ですか?」
Statement = (True or False)
はい。
回答:
この説明は、一時的な技術にのみ適用されます。とにかく必要な場合にのみ学習してください。そうは言っても、あなたはあなたのキャリアを通じてそれらの多くを学ぶでしょう。
基本的なプログラミングの原則と手法は永遠です。
そのようなことを言う人々は、単にセンセーショナルになろうとしている、あるいは間違ったことを学んでいます。
私が考えることができる最高の(最悪?)テストは、1年だけ考えることです。過去18〜24か月間に、毎日使用するプログラミング知識の量はどれくらいでしたか?さらに、過去18〜24か月でどのくらい発明されましたか?私が日常的に使用しているプログラミングおよび技術知識の大部分は5〜10年にわたって取得されたため、この原則は非常に疑わしいようです。
今、あなたが携帯電話プラットフォームのようなもののために開発しているなら、おそらくそれは別のボールゲームです。
私の経験では、どのテクノロジーが新しいものであるかというメディア/パブリックイメージと、現実の世界で実際に使用されているものとの間には大きな隔たりがあります。
デスクトップアプリケーションの分野では、Visual C ++ / MFCのようなものを使用してください。それは古くて時代遅れに見えるかもしれませんし、おそらく新しいプログラマーがデスクトップ開発のために今学ぶべきものではないかもしれませんが、そこに書かれている多くの現実世界のプロジェクトと仕事がまだ維持されています-そしておそらく今後数十年にわたって維持されます。例としてCOBOLを提供するつもりでしたが、それは理論的に言えば、VC ++ / MFCの例を個人的に非常によく知っています。
基本的に、テクノロジーが「時代遅れ」になったときに役に立たず、使用されなくなるということではなく、物事を行い、新しいプロジェクトを開始する最新の方法としてもはや見られないということです。しかし、壊れておらず、修正の必要がない大規模な実世界のソフトウェアシステムの廃止措置は、はるかにゆっくりと行われます。私が取り組んだ(1990年代初期に始まった)Visual C ++ / MFCプロジェクトの多くは、まだ非常に活発であり、多くのプログラマー(メンテナンスと新規開発の両方)を採用しており、どこにも行かないようです近いうちに。実際、私が考えているもののほとんどは、2020年以降も引き続き存在すると確信しています。
もちろん、これは主要な問題すらありません。主な問題は、多くの概念が類似または関連していることであり、いくつかの新しいテクノロジーを学習するときに「ゼロから始める」ことはできません。たとえば、マークアップ言語とその内容を理解すると、新しい言語を簡単に習得できます。そのため、JSONが新しいものであり、長年使用しているのはXMLだけです。それは新しい構文を学ぶだけの問題です-マークアップ言語が何であるか、またはそれらが表すデータの背後にある内部概念などについて何も知らないプログラマーではないということとは対照的に
TL; DR: 1)多くの「時代遅れの」技術が使用されていますが、それはセクシーな新しいものではないので、あまり聞いていません-しかし、それを使っている人にとっては価値がありません。2)プログラミングの概念は互いの上に構築され、進化します。ゼロから完全に学習し、古いものを忘れなければならないものはほとんどありません。
ロバート・ハーベイはこれを打ちましたが、それについて考えた後、私は風に簡潔さを投げつけて答えざるを得ません。
免責条項を追加する必要があります。PerlOn Railsが発表された瞬間には掘り下げませんでした。私はそれが設計された非常にローカライズされた使用のためにうまく機能し、将来の参照のためにそれを書き留めたと感じました。
また、過去20年間で標準Cライブラリへの50を超える順列に屈したことはありませんでした。
あなたが読んだり聞いたりしたすべてを信じることについて、ここに長い暴言を挿入します。
何か新しいことが出てきたら、それをつかんで見てみましょう。'ick'と言ったらドロップしてください。「すごい」と言うなら、改善してください。このような決定を考えられない場合は、できる人の頭脳を選んでください。
技術的なメリットだけですべてを判断します。あなたの時間に値するということは、あなたの時間を節約しながら、大多数の仲間から賛辞を得ることができるということです。
次に、あなたの質問に直接お答えします。
あなたが知っているすべての半分は、18〜24か月で陳腐化するでしょうか、本当ですか、それとも偽ですか?
18〜24か月後にお知らせください。企業は、製品がどれほど素晴らしいかを人々に話させるために多額の金額を支払います。私たちは新興企業だけでなく、巨額の現金を次の目的に使い果たした巨人を乗り越えなければなりません。
もちろん、以前の経験と何か新しいことを試した結果に基づいて、独自の決定を下すこともできます。その間、RSSリーダーに基づいて戒めを配るマネージャーがいる雇用主を避けてください。
しかし、私はあなたのロケールに基づいてブルックリンとロンドンを切り替えるのに十分スマートなこの驚くべき新しい橋梁建設ライブラリを持っています。それは巨大になるだろう、あなたは1階に乗りたいですか?
私の答えは確かに意図的にサードニックであり、おそらく反ブール値ですが、実際には?例外処理のために、私の答えは圧倒的なfalseです。
何かが技術的に健全だと思うなら、それを受け入れてください。そうでなければ、いつものようにビジネスです。Cは私の主要な言語であり、ほぼ20年前と同じように機能しますが、20年前と同様に2回以上支払われます。
私はあなたの簡潔なフォームと引用を賞賛しますが、これは違反実験のようです。
よくやった :)
学習に費やす時間に依存します。1980年にBourneシェルとCプログラミングを学びました。今でも毎日使用しています。一方、Compuserveのメニュー構造の学習に費やした時間は完全に失われ、そのときでもそれほどひどく役に立ちませんでした。次に、RS-232ケーブルのピン配列やシリアルプロトコルなどがあります。今日は役に立たないが、私の人生の約10年には不可欠です。あなたが多くの時間を費やしたテクノロジーを注意深く選んでください。
原則は真実です。実際の値は-私の知る限りでは-もっと大きいです。
私は彼らが約7年言ったPragmatic Programmerのプレゼンテーションを思い出しますが、私は今それを見つけることができないので、値はわずかに異なるかもしれません。
テクノロジーがどのように変化したかを考えてみてください。15年前、ウェブはまったく新しいものでした。私たちは皆、ウェブページ(おそらくテーブルを含む)とアニメーションGIFを書き込もうとしました。7年前、AJAXが始まりました。今日、一部の人々は携帯電話向けのDoomのようなゲームを書いています。
最善の策は、「Begone!I Visual only only Visual Basic!」と言う代わりに、付属の次のテクノロジーに適用できる一般的なことを学ぶことです。(または15年で同等)。
私はそれがまったく正確だとは思わない。
それはかつて真実に近かった-昔、あなたは比較的低レベルの抽象化でプログラミングする以外に選択肢がなかったので、新しいプラットフォームにはもはや関係のない膨大な数の詳細を知る必要がありました。
しかし、時間の経過とともに、ますます多くのプログラミングがより高度な抽象化レベルで行われます。抽象化のレベルが高いほど、多かれ少なかれ直接的に変更され、変更されてすぐに陳腐化する可能性のある詳細に対する懸念が少なくなります。
明らかに、デバイスドライバーや小さな組み込みシステムのようなもので作業する人がいますが、それでも抽象度が低いままで作業する必要があります。ただし、そのような領域以外では、そのようなことの言い訳は比較的わずかです。はい、多くの人は決して必要としないトリビアをたくさん学びますが、コードでそのようなものを実際に使用している場合、非常に良い決定を下していない可能性がかなり高くなります。このようなことのほとんどは、一般的に回避できます(さらに重要なことですが)。
おそらくそうではないかもしれません。ただし、実際に学んだことを学んだ後すぐに時代遅れになったとしても、その背後にある概念やアイデアははるかに長く使用できます。
その場合、今日は、神話上のマン月の 5.39x10 -6のみが関連します。フレッドブルックスが詳細に述べた重要な原則や、根本的に間違っていることが判明した重要な原則はほとんどありません。
あなたの知識の多くは、時間のテスト中(時間の経過とともに更新が必要になる場合があります)、データ構造などの特に基本的なことの間、関連性を保ちます。
もちろん、プログラミング言語XとYを知っていれば、XとYのどちらも知らない場合よりも言語Zの学習が容易になるため、以前の知識を使用して新しい知識を適応させることができます。
また、数十年前に関連していた多くのスキルが今日でも関連していること、Cなどの特定の技術でさえも関連していることにも言及する価値があります(1970年前半、今日でも関連)。
あなたが知っていることの半分は、しばらくすると陳腐化する可能性があり、おそらく半分以上ですが、18〜24か月ごとに極端に聞こえます。
単一のファクトには大きな関連性はありません。それらを取り、理解し、一瞬だけ適用します。
しかし、そうすることで、ファクトを処理するプロセス、または少なくともファクトの特定のサブセットを処理するプロセスがわかります。私は学校で多くの数学を学びましたが、実際に使ったことはありません。それでも私は数学的思考を学び、訓練しました。
私はRuby on RailsでWebプログラマーとして働いていました。現時点ではWebサイトを作成していませんが、思考コードに大きな影響を与え、より良いC ++コーダーになりました。(たとえば、より多くのSTLを使用します)。
ラケットの学習についても同様です。大規模なプログラムを作成したことはありませんでしたが、問題空間に適用するための新しい視点が得られました。
それはちょうどあなたの心を訓練することです...
あなたが「知っているすべての半分」のオブジェクトをいじり回すことで、このステートメントを簡単に反証できると思います。
特定の知識の分布があり、その一部は時代遅れになります(レートに関係なく)。したがって、特定の人が18〜24か月後に残るこのスペクトルの半分の知識しか含まない場合、声明を破ります。
ここには真実や関連性のナゲットがありますが、不正確に提示されていると思います。
これを提示するより良い方法は
今日使用している知識のうち、18〜24か月前にどれだけ持っていましたか?
または
18〜24か月の間に、申請する知識のうちどれだけ知っているか。これらのタスクを完了するには、今日からどれだけ学ぶ必要がありますか?
それはあなたが働いている分野に依存するかもしれませんが、私は常に新しい技術に取り組んでいることを知っています。すべてのプロジェクトには、新しいフレームワークとパターン、わずかにさまざまな問題への新しいアプローチ、または以前使用したものよりも優れている(おそらく!)新しいツールなど、学ぶ必要がある新しいものがたくさんあるようです。
6か月ごとに12.5%の新しい知識しか必要としない場合、2年かけて使用される知識の50%が「新しい」ものになります。
とはいえ、これはあまり意味がなく、正確でもありません。
ああ、すばらしい、常識的な答えです。よくやった。
簡単に言うと、流行や流行の場合、優れたプログラマーの場合は、それについて読んでから、通常の作業や作業に戻ります。
あなたがやることに不可欠な何か、またはあなたにとって意味のある新しいプラクティスがない限り。
何かが新しい、やや新しい、またはやや古いからといって、それが何にでも使用する必要のあるソリューションになるわけではありません。
私は簡単なフレーズを持っています、それはこのすべてです。
「動作する場合は、使用してください」
つまり、この新しいテクノロジーが非常に優れているが、仕事の生産性を高めたり、品質を高めたり、エラーを起こしにくくしたり、モバイルソリューションやクライアント/サーバーソリューションなどの技術的な問題を解決したりするものではありません。それを実際に使用するまで読んでから無視するのが最善です。
私は、時間を無駄にして、新しいものを見つけようとし、新しいものを使用しようとする人を見てきました。これは通常、時間とお金の無駄になります。
常にあなたの技術とスキルを学び、練習し、改善することが重要です。
ただし、何が役立つのか、または普段抱えている問題を解決するためのさまざまな観点を提供するものを学ぶ必要があります。
しかし、それ以外は、素晴らしいプログラマーになるための基本に戻ってください。
私は、常識的なベストプラクティスを実践しています。私たちは皆、私たちの経験から学びます。ただクールなものに時間を無駄にしないでください。
正直、クールはクールではないからです。
平均的なテクノロジープラットフォームは10年から25年の間に存在するので、パターンの知識がテクノロジーを通じて持続するという事実を完全に無視しても、これは私にはかなりありそうにないようです。何らかの主要なプラットフォームを使用している場合、そのスタックが衰退し始める前に、少なくとも5年または6年の間人気があるスタックを期待できます。私は、ほぼ同じハードウェアおよびソフトウェアツールを使用してRPGで30年間コーディングしているプログラマーを知っています。