オーディオ 人々のためのコンピュータープログラミング?

人々のためのコンピュータープログラミング?

目次:

Anonim

それは事実です。コンピューターやその他のデバイスとの接続が増えています。 多くの場合、ハードウェア、およびハードウェア上で実行されるソフトウェアは、私たち自身の拡張として見られるようになりました。 興味深いのは、自分の言語、または少なくともコンピューターが使用する言語を話す人が少ないことです。 うん、私たちはコンピューターコーディングについて話している、そして私たちの多くがそれを行う方法を知っているべきだと考える人々の大きな動きがあります。 ここでは、テクノロジーへの依存と、それがどのように機能するかについての一般的な理解不足との間の断絶について見ていきます。 また、広範なコンピューターサイエンス教育の賛否両論についても検討します。 (コンピュータープログラミングのパイオニアで、コンピュータープログラミングの初期の試みについて学んでください。)

非コーダーのコーディング:ポイントは何ですか?

コンピュータープログラミングに関する教育の拡大を検討する説得力のある理由はたくさんあります。 1つは、専門家が熟練労働者の不足を非難し、アナリストがアメリカのIT教育イニシアチブがアメリカの熟練労働者を国際的舞台での著名化に押し戻す可能性があると主張する雇用市場です。


しかし、これらのスキルが個人とそのスキルセットにもたらす固有の価値もあります。 コーディングはある種の具体的な成果につながります。また、それを実験した人はしばしば証言するように、個人的な勝利とエンパワーメントの具体的な感覚を提供します。 これを学習することで、コンピューターを使用できるほぼ無限の方法をより深く、より深く理解できます。

「みんなのためのコーディング」運動

近年、教育者やその他の支持者は、教室や他の教育機関でのコンピュータープログラミングの使用を促進するための堅実なイニシアチブを組み立て始めています。 2013年3月にSlate誌に掲載された記事は、テクノロジーの先駆者がコンピュータープログラミングスキルをより多くのグローバルな視聴者にもたらすことの価値について議論したNew America NYCというイベントを取り上げています。 評決? 基本的なコンピューティングリテラシーは、コンピューターまたはスマートフォンを使用するすべてのユーザーを支援します。 問題は、現在の教育システムがコンピューターサイエンス教育に大きく欠けていることです。


では、子供たちはこれらのスキルをどのように学ぶことができますか? Geekosystemに関する2013年1月の記事では、Code.orgが取り上げられています。これは、HadiとAli Partovi(以前はFacebookなどの大規模プロジェクトに携わった個人)が率いるスタートアップです。それ。 Code.orgは、イノベーターのSteve Jobsによるコンピュータープログラミングのプロモーションを、「人々に思考方法を教える」普遍的な方法として注目しています。 量的スキルと言語スキルを組み合わせたプログラミングは、平均的な人が特定の認知機能を構築するのに役立つという考えは、コンピューターサイエンスに参加する若者を増やすもう1つの理由です。


コンピュータプログラミングを促進する最も一般的な方法の1つは、無料の教育リソースを利用することです。 これらはますます一般的になりつつあり、Mozilla School of Webcraft、Google Code University、Code / Racer、Codecadamyなどが含まれます。 さらに、一部の新しいテクノロジーは、Raspberry Piなどのプログラミングツールと原則へのアクセスを促進します。 その結果、コードの学習がこれまで以上に簡単になっています。

なぜ批評家が「なぜわざわざ?」と言うのか

この成長する動きを背景に、コーディングは本当にすべての人のためではなく、大衆にそれをプッシュすべきではないと言う人もいます。


2013年8月にSlate誌に掲載された物語の中で、作家のChase Felkerは何かを学ぶことと実際にそれを理解することの違いについて語っています。 フェルカーのライターは、多くのトレーニングをしなくても基本的なプロジェクトを構築できますが、実際にうまくプログラムできるようになるには膨大な時間とエネルギーが必要だと書いています。 その結果、大多数の人々がコーディングを何らかの方法で有用にするのに十分なコーディングを学ぶことができるという考えは、過度に楽観的かもしれません。


この議論は興味深いものであり、構文をはるかに超えるコードの持続可能性に関する基本的なアイデアを習得することの難しさ、および安定した汎用的な作業プロジェクトをサポートする原則を掘り下げています。 たとえば、正しい構文はコンピューターに目的の処理を実行させますが、実行中にコードに影響を与えるユーザー生成イベントに関連する潜在的に危険なものを含む、バグやグリッチをいくつも防ぎません。 。 これらの問題の多くを回避するために、プロフェッショナルプログラミングコミュニティは、ホワイトスペース、コメント、モジュール化、および連携して機能する必要のある関数と手順の形式的なコーディングを行うその他の手法を使用して、さまざまなベストプラクティスと戦略を進化させました。 ご想像のとおり、これらは基本と同じくらい重要ですが、学習と理解が困難です。


フェルカーはまた、非常に要求の厳しい概念フレームワークに平均的な人を夢中にさせようとすることに代わる健全な代替手段と考えているものを推進しています。 代わりに、Felker氏は、継続的なセッションでオペレーティングシステムを維持する方法や、基本的なネットワーク管理の方法など、より実用的な方法でソフトウェアを使用する方法を一般の人に教えることを促進すると役立つ場合があります。


これは多くの有益な議論の機会がある場所です。 「hello world」プログラムの作成は、はるかに複雑なプログラムがひどい方法でぶらぶらしたりクラッシュしたりすることを防ぐこれらの原則の進化にどこでつながるのでしょうか? 人々はコンピュータープログラミングについてどれだけ知りたいのか、だれに教えるべきか? 基本的なコーディング教育は、大多数の学生に本当の利点を提供しますか、それとも時間とエネルギーを奪う別の迷惑な研究に閉じ込めますか?

コーディングするかしないか

これらの質問は提起される可能性がありますが、アメリカの教育システムは子供にプログラミングを教える力を十分に活用していないという考えと議論することは困難です。 多くの人は、教育システムの既存の制度的および文化的現実には多くのことが望まれることに同意します。 その観点から、基本的なプログラミングのようなものを導入することの明確な利点は、簡単に思えます。 しかし、私たちが新しい世代の学生やキャリア専門家を育てるために使用する他のすべてのカリキュラムと同様に、潜在的な落とし穴のいくつかなしでプログラミング教育のプラスを提供する方法を見つけるためのプロセスに関与するインストラクターや他の人次第です。 また、技術の使い方を知るのは本当にクールであり、コンピューターの仕組みに関する一般的な研究を行う際には、平均的なユーザーがキャンドルを灯すことで利益を得ることができることを理解するのは、国の一般的な文化次第ですただ闇を呪うのではなく

人々のためのコンピュータープログラミング?