2009-02-28 14 views
7

私は有機化学を修了しています。最も精神的に困難なコーディングの形式は何ですか?

現在、私のエリアの多くの才能ある人々がナノテクノロジーに向かっています。

現代コンピュータ科学の同等の分野は何ですか?

+0

はコミュニティwikiにする必要があります – Malfist

+0

"ナノテクノロジー"は、科学で最も虐待されている流行語の1つです。これは「オブジェクト指向プログラミング」または「アジャイル方法論」と比較されるかもしれません。 – Svante

+0

おそらくタイトルは誤解を招く恐れがあります:あなたは最新動向を尋ねる、あるいは最も難しい分野を尋ねますか? –

答えて

0

HTML/CSS

さて、そのない正確にコーディングが、男はそれが頭痛

+0

これはコーディングでもありません。 – Thomas

+1

@Welbog:うーん、非常に生産的なコメントではない。最新のすべてのブラウザ/ OSコンボでサポートされている複雑なレイアウトを試したことがありますか?もしあなたがしていないのであれば、試してみるまで判断を下すことをお勧めします。 – TJB

+0

彼はそれを手助けすることができないかもしれません...彼のユーザーページのバイオを読んでください... –

8

ナノテクノロジーとの等価性のための「強い」artificial intelligencequantum computingは次のようになり、私の票です。

+0

強力な人工知能が別の球場にあります。弱い人工知能は、ナノテクノロジーにはるかに近いでしょう。 – mmcdole

+0

さらに考えて、あなたは正しいです。弱いAIとナノテクが存在し、強いAIはまだ理論的です。 –

20

私にとってはスレッドです。たとえ比較的単純なスレッドでさえ難しいのですが、ロックフリーコードの領域を掘り下げれば、より髪の毛がいっぱいになります。確かにスレッドのパラダイムがあるは多くの精神的な頭痛(俳優、メッセージを渡すなど)を提起しないが、彼らは自分のトレードオフを持って来る傾向があります。

これが私の見解では「深い」複雑さのレベルですが、異なる方法で挑戦しているコーディングの他の領域があります。セキュリティ、i18n、日付/時刻処理(または実際の人物のの特性に関係するもの)は非常に厄介で、多くのコーナーケースが覚えています。これは確かに困難ですが、並行性とは異なる方法です。

EDIT:TWKの答えへの応答として:はい、同時実行を容易にしようとしている人々がたくさんあります。同時に並行性をサポートするさまざまなプラットフォーム(例えば、Erlang)がありますが、現在主流のプラットフォームに簡単な並行性をもたらすようになっています。私の考えでは、.NET開発者(まあ、アマチュア/熱心な.NET開発者、現時点では専門的にJava)として、Parallel ExtensionsCoordination and Concurrency Runtimeは最近の2つの最も興味深い開発です。私はこれが同時性を実現するとは期待していません - ちょうどが実現可能です

+1

Jon - フライングマウントを購入する前に、正しく答えなければならない質問がいくつありますか? ;) – rism

+0

@rism、それは秘密だと思われていた。しかし今、それは甘やかされている、それらの余分な機能は75kの担当者で利用可能です。 –

+1

スレッディングを理解していると思うなら、あなたはそうではありません;) – ChrisF

0

私は確かに、より多くのプロセッサコアを自動的に使いやすくするために忙しい人がいることを願っています。確かに、Intel Thread Building BlocksやErlangのような言語のようなものもありますが、今後10年間でさらに進歩が見られることを願っています。

0

は、少なくとも局所的に、ホットフィールドは、特にバイオインフォマティクス、informaticsです。多くの情報源からの情報の収集、集約、関連付け、分析、およびコレクションからの追加情報の派生は、コンピュータサイエンスと他の活動との最強のつながりを表しています。それは私たちのCS部門に提供された最新の学位で、多くの学問分野からCSクラスまで、最も大学院生を引き付けています。

私はそれがどのように精神的にやりがいを知りませんが、新しいものはおろか、考え調べられていないそこにたくさんのアイデアがあります。オリジナルのアイデアを思いつくのはかなり難しいですが、実際のプログラミングの背後にある部分はおそらくそうではありません。

1

Jon Skeetとのスレッド/パラレル実行はホットな話題であり、新しいフィールドが開かれているか、またはTransactional Memoryのような使い慣れたテクノロジを考えていることに同意します。新しい概念のためのオープンなフィールドです。

0

最も精神的に挑戦的なコーディングの形式は何ですか?組み込みファームウェア開発。

現在、私のエリアの多くの才能ある人々がナノテクノロジーに向かっています。

現代コンピュータ科学の同等の分野は何ですか?ここでも、エンベデッドファームウェアの開発。

また、デスクトップやインターネットの開発者にとっては、埋め込みコーディングが他のどのタイプのコーディングよりもはるかに難しいと思わない場合は、埋め込みがわからない場合があります。私はデスクトップやインターネットプログラマーができることは何でもできますが、ほとんどのデスクトップ/インターネットプログラマーが埋め込みを行うことができるかどうかは疑問です。

ケースでは、シリアル通信ポート(受信を駆動する受信)で4バイトが正常に受信された後、連続バイトがUARTに割り込みを生成させないバグがあります(彼らがそうするべきである)。

だから、Windowsとインターネットのプログラマー - あなたはおそらく最も可能性の高い原因を考えますか?あなたならどうしますか?ああ、私は忘れていました.WindowsとInternetのプログラマは、ハードウェアへの完全かつ直接的なアクセスを持っていないので、おそらくこのような状況を経験したことはありません。組み込み開発の世界では、「それはハードウェア」とは言えず、それをそのままにしておくことができます。UIから電源(ソフトウェア、ファームウェア、ハードウェア、それは組み込み開発者のすべての責任)。これは、Windowsまたはインターネットプログラマーが遭遇する可能性のあるよりも大きな課題です。

+0

@RogerD:以前のWindowsの生活の中でこれまでに遭遇していない限り、その場合、4バイトを処理した後にUARTで割り込みを再び有効にしない理由を確認することをお勧めします。 –

0

私には、最も精神的に挑戦的な名前を付けることは非常に難しいです:私は単一のものはないと思います。

システムおよび組み込みプログラミングは、最も難しい領域の2つです.IMHO。あなたがハードウェアに最も近いところは、一番難しいです(あなたの人生で少なくとも一度はreal mode assemblyを見てください:D)。

Jonは、並行プログラミングは非常に難しく、正しいことは難しいと言うのは間違いありません。

しかし、私は暗号や機械学習、数学プログラミングのいくつかの側面についても同じ結論になります。私はそれがCSの基礎とより高いレベルのタスクを区別することが理にかなっていると思います...

非常に主観的な質問です。

関連する問題