プログラマー適性検査[終了]


14

私は自分のやっていることを見て、興味を持ち、質問をする友人がたくさんいます

Do you think I could be a programmer?

私の応答は

...   ummm  ...  do you like math?

有益な回答が欲しいので、スクエア1から開始するが、批判的思考と問題解決スキルを持っている人のためのかなり適切な適性テストを知っている人がいるかどうか知りませんでしたか?


私はBuzzFizzを提案します。3つの異なる実行可能ファイルがある場合、それらを実行して、どれが「FizzBu​​zz」であるかを識別できますか?
マクニール

15
数学とプログラミングを混ぜないでください。私は何年もプログラマーとして働いています。私は数学が嫌いだ。別の例:Jeff Atwoodは優秀なプログラマーです。彼は数学が嫌いです(codinghorror.com/blog/2007/01/…、ポイント3を参照)。
Arseni Mourzenko

2
@MainMaこれがどれほど真実か強調することはできません。私はまったく同じ船に乗っています。それに関して、数学は私の情熱ではなく、強い点でもありませんでした。そうは言っても、私を知っている多くの人は、プログラミングに対する私の極度な適性(読み:強迫観念)を証明します。数学はプログラミングの大部分を占める可能性がありますが、一方が必ずしも他方を生むわけではありません。
ネイサンテイラー

1
「数学が好きですか?」と言うとき、「数学を尊重しますか?」論理の思考プロセスに役立つと信じている数学の有限原理を理解します。
jondavidjohn

2
この文脈では、「適応」は本当にクールなタイプミスです:-)
Ferruccio

回答:


12

「数学が好き」は悪いテストです。私は数学が好きではありませんでした(主に高校の数学教師の90%が吸ったからです)。

あなたが「数学」と言うとき、ほとんどの人はあなたが「非常に厳しいルールのセットに従って方程式を慎重に解く」ことを意味すると思います。プログラミングはまったくそのようなものではありません。

プログラミングは描画に似ていますが、達成できることは想像できることによってのみ制限されます。

重要なのは、システムを想像し、それがどのように機能するかを見る能力です。

  • 物事の仕組みについて考えていますか?
  • 日常的なことを改善する方法について考えていますか?
  • より単純な構成要素から何かを構築する方法を視覚化できますか?

ジオメトリに似ていますか?
グルシャン

それは応用科学であるため、それ自体は純粋な科学「同等」ではありません。
jondavidjohn

1
プログラミングは大工仕事に似ています。最初にソリューションを視覚化し、ツールを選択し、最高のTDD木材を使用して慎重にクラフトを適用します。コモドール64が少し前に発明されていれば、イエスはプログラマーだったでしょう。
ウィル

2
実際、あなたが説明したことは数学によく似ています-学校で数学が通用するものとは対照的です。
ウマン

1
@Brennan:プログラミングに似ているとわかった唯一の数学は、大学の離散数学でした。私たちが研究した他のほとんどの数学は、ある種の方程式を解くためにルールと式を無意識に適用することについてでした。あなたはそれが本当の数学ではないと主張することができますが、それはこの議論には関係ありません。
長谷さん

8

私は子供の頃からBrainbench Aptitude Testをしていたことを覚えています。私はまだどこかに証明書を保存しています...

テストの概要:

Abstract Thinking
    Process Flow
    Spatial Manipulation
Analytical Reasoning
    Inductive Reasoning
    Logic Application
    Word Problems
Attention to Detail
    Following Instructions
    Reading Comprehension
    Rule Interpretation
    Writing Analysis
Mathematical Problem-Solving
    Word Problems
Process Mapping
    General Processes
    Letter Manipulation Processes
    Number Manipulation Processes
    Shape Manipulation Processes

1
これは非常に複雑なテストです。誰かがプログラミングを掘り下げる前にテストを受けるように言われたら、私は怖がっていただろう。OK、たぶん気にしないかもしれませんが、テストを真剣に受けとる人はだれでも怖いでしょう。
長谷

2
そう?プログラミングは(他の人がそうであるように)複雑な分野になる可能性があります。あなたがそれを簡単に怖がっているなら、多分それはあなたのためではありません。誰かが医者になりたいかどうか尋ねられたら、彼らは何が得意ですか?私はあなたがそれが一部の人々を怖がらせることを気にかけないと思います...人生は大変で複雑です、彼らはそれに慣れる必要があります。
ダン・マクグラス

2
まあ、それは複雑な分野です、あなたがそれに正面から近づくと、あなた失敗します。プログラミングを始めた人は誰でも簡単なものから始め、本当に簡単だと信じていました。その信念は、学習経験を通して維持される可能性があります。振り返るか、非常に基本的なものと誰かが苦労するのを見るまで、それがどれほど複雑かを理解することはありません。
長谷

申し訳ありませんが、上記のリストは、プログラマーとして使用する基本的なスキルです。私はあなたが彼らに該当する質問ではなく、彼らの名前に怖がっていると思います。プログラミングで使用される複雑な概念を尋ねるようなものではありません。言い換えれば、適性テストは、あなたが学ぶことができるプログラミングの概念を理解し、どのくらいとは何の関係もない、それはについてです適性「簡単なものから始まる」についてのコメントは、ここで本当に関係ありませんので、
ダン・マクグラス

7

すでに良いものが存在する可能性があります。

たとえば、プログラミング羊と非プログラミングヤギの分離に関する議論を参照してください。

プログラミングのすべての教師は、結果に「二重のこぶ」が表示されることに気付きます。まるで2つの母集団があるかのようです。それぞれが独自のベル曲線を持つ[プログラム]できる人々と[プログラム]できない人々です。プログラミングの教育と学習に関するほとんどすべての研究は教育に集中しています。言語の変更、アプリケーション領域の変更、IDEの使用、動機付けの作業です。いずれも機能せず、二重こぶが持続します。コースが始まる前に、プログラムできる人口を選ぶテストがあります。ダブルハンプを分解することができます。あなたはおそらくこれを信じないでしょうが、あなたは話を聞いた後にそうするでしょう。どのように/なぜ機能するかは正確にはわかりませんが、いくつかの良い理論があります。

テストで特定されるのは、一連の指示を操作化することに一貫性のある人々がどれだけいるかです。つまり、彼らは心の中でモデル(抽象化)を構築し、それらと連携できるということです。


2

もっと重要な「テスト」は、彼らが遊ぶことができる簡単なプログラミング言語/環境を示すことだと思います。たとえば、processingまたはpythonです。もし彼らがそのような言語を使って学び、楽しむことができたら-たぶん簡単なタスクを1つか2つ解決しながら-それはおそらくあなたが求めることができる最高の「適性テスト」でしょう。


2

「数学が好きですか?」悪いスタートではありません。数学は重要です、その後...

問題を取り上げてブロックに分割し始めることができるかどうかを音声で確認することをお勧めします。基本的な問題を段階的に進めることができるかどうかは、最初の良いスタートです。

  • ロボットにお茶の作り方を教えてください。できるだけ具体的にしてください。
  • マクドナルドで食事を注文する。最初の指示から変更/食べ物の提供まで、注文の処理に必要な手順。
  • 電話システムはどのように機能しますか?

プログラマーが日々持っている分析的で深い方法で彼らにうまく答えることができれば、彼らはおそらくそれを扱うことができるでしょう。


1

コーディングにさらされたら、それを行うための衝動があるか、そうでないかのどちらかです。適性は、あなたがそれが得意かどうかの1つの要素にすぎません。良い例への露出、指示、タスクの時間、努力は他のものです。本当に何かをしたい/必要があると、他の要因を利用するのがはるかに簡単になります。


1

「数学が好きですか」よりも良い質問は、「論理パズルを解くのが好きですか」です。これは、数独など、または「ジョン、アン、ピーター、メアリー、ブルターニュは隣人です。ジョンには白い車があり、ブルターニュはアンの左に何とか、何とか順番に住んでいます」と答えます彼らは生きているのか?」

それがプログラミングだからです:1つの巨大な論理パズル。


1
私は数学を(やや)気に入っていますが、パズルは頭を壁にぶつけるだけの不必要なものです。私は、あなたがどれほど賢いかを見せびらかす目的で、精神的な体操とは対照的に、何か有用なものを作成する動機が必要だと思います。
オメガケンタウリ

まあ、OK、あなたはそれを好きにする必要はありません、ただそれが得意です。:-)
レナート・レゲブロ

1

より良い質問は「レゴブロックで物を作るのが好きですか?」


1

映画「ラタトゥイユ」の登場人物であるギュストーと同じように、

誰でも料理できます。

同様に、誰でもプログラムできます。しかし、誰もがそれで素晴らしいわけではありません。ほとんどのプログラミングジョブには、平均レベルの適性と能力が必要です。

はいと答えてください。どうして?なぜなら、ほとんどの人は賢いと思う人に感謝されたいと思うからです。


2
私は誰でもプログラムできることに強く反対します。それはひどいですが、それは人生です。
ウマン

0

好きな数学が重要だと思います。厳密に証明するものを楽しむという観点からではなく、それは真面目な数学者になるために必要です。しかし、あなたにとって重要な問題を考えると、数学的な方法でそれを解決することに関係する問題を定式化することができます。私が主張するのは、コンピューターが行うことはすべて数学であり、何らかの記号データを取り、それに対して何らかの操作を実行するということです。それが数学の本質です。だから、何かを数学的な構造のような何らかの種類に抽象化し、前進の理由を説明できるようにしなければならない。それがなければ、あなたはただハッキングし、いくつかのコードを捨て、それがあなたが望むことをすることを望んでいます。タイプミスや迷子にならずに複雑な代数を解決できることは、おそらくそれほど必要ではありません。しかし、計画を策定できることは重要です。私はしばしば10行のプログラムを書いて、あまり複雑でない数学が正しく行われたことを確認します。検証、発見の目的でコンピューターを数学と組み合わせ、詳細が十分にある場合は、それを使用して詳細を計算することが本当の鍵です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.