web-dev-qa-db-ja.com

私がプログラムしたことを私の父に説明する方法

可能性のある複製:
私のお父さんは私のプログラミング学習のペースに焦っています。どうすればよいですか?

私は14歳で、プログラミングを4か月間勉強しています(3か月のPython、1か月のRuby)。私はそれをするために私の両親に強制されていませんでした、私はそれを一人で取り上げました。私が父親に私が作ったものを見せようとするときはいつでも、彼はそれに価値がないと彼は言います。最初は、じゃんけん、ルーレット、ブラックジャックなどのテキスト版のようなシンプルなテキストゲームを書きました。簡単になりすぎたので、できるだけ高度なものにしようとしました。 Rubyに基づいてinstance_evalmethod_missingでルーレットゲームを作りました。私はそれらを彼に見せました、そして彼はゲームを作るのはそれが「子供っぽい」と言いました。ゲームの後簡単になりすぎて、言語の機能を拡張し始めました。Pythonで「変更可能な範囲」のモジュールを作成しました。

j = crange.CRange(5)

その後

j.shift(10)

スタートをシフトして10までストップし、

j.reverse()

逆の範囲を作成します。私はそれを彼に見せ、彼は「それに価値はない」と言った。私のプログラムに価値があることを彼に説明する方法はありますか、それとも私は私の学習において非常に遅いペースで動いているだけですか?

19
Joe Loo

私はそれを彼に見せ、彼は「それに価値はない」と言った。

それは、レゴブロックで遊んだり、パズルをしたり、読んだり、ギターをいじったりする価値がないと言っているようなものです。本当のことです。しかし、あなたは即座に大量の知識を身につけられるからといって、機械エンジニアやコンサートミュージシャンにはなりません。あなたはそれらのことを何年にもわたって行うために必要となるスキルを構築します。非常にシンプルなものから始めて、そこからビルドします。

値は作成したものではなく、学習したものです

私たちがあなたのお父さんにあなたがしていることの価値があると確信させるものを推測することは不可能です。たぶん彼は、ソフトウェア開発はすべて偽物であり、手を汚さないので実際の仕事ではないと考えています。知るか?しかし、ソフトウェアに価値があると彼が同意した場合、彼は、あなたがやっていることが、将来、より大きくより良いものを構築するための準備に役立っていることを理解できるはずです。

そして率直に言って、父親として、彼はあなたを落とすのではなく、あなたが何をしていてあなたを幸せにするかについてあなたをサポートする方法を探しているべきです。おそらく、彼がそれを行うのを難しくしているより深い問題があるでしょう。あなたができる最善のことは、彼を理解し、関係を築くために最善を尽くすことです。育ったことの一部はあなたの両親が結局すべてを知っていないことを理解することです。

19
Caleb

親の承認は常にいいですが、あなたのお父さんがあなたが何をしているかを単に理解していない可能性がはるかに高いです。彼が見ているのは最終製品であり、それ自体は実際には価値がないかもしれません。たとえば、ビデオゲームは実際には価値はありませんが、技術的な傑作です。特定のアルゴリズム、キャッシング、ロードバランシング、そしてもちろん、レンダリングは、しばしば純粋な天才です。彼に最終製品を示す代わりに、どれだけの作業が行われたか、あなたがしなければならなかった研究、数値の進行の理解、試行錯誤などを彼に見せてください。

すべてのプログラミングタスクでは、何か(または多くのこと)を学ぶか、別の方法で何かを見る方法を学ぶ必要があります。あなたの父親はプログラミングの詳細を理解していないかもしれませんが、プロセスを通して学んでいるさまざまなことすべてを見ることをほぼ間違いなく歓迎します。子供の個人的な成長は、両親を輝かせるもののリストの中で非常に高いです:)

プログラミングが好きなら、それにしっかりと気を配り、できる限りのことを学びましょう。経験豊富な開発者向けの最近の給与調査のいくつかを彼に見せて自由に感じてください、そして、彼が価値を見ないかもしれないとしても、市場は間違いなくそうすることを指摘します。ソフトウェア開発者はまともなお金を稼ぎます-あなた自身のアパートを手に入れ、あなた自身の大学、食糧、自動車、保険などに支払うことができるお金。私はあなたのお父さんがその価値を見ることを確信しています!

11
Dave Wise

ここでの他の良い答えに加えて、あなたのお父さんは、あなたが作成したプログラムがhimに直接的な価値がない場合、価値があると見なすことはないと思います。利率、償却期間、初期金額などの入力に基づいて、彼が支払った金額と残りの金額を彼に知らせることができる住宅ローン計算機をコーディングしたと仮定します。Thatは彼が見ることができるものかもしれません彼がこれまでに住宅ローンを支払わなければならなかった場合の価値。

コンピュータプログラミングは問題を解決する方法です。人々は彼らの問題を解決するためにあなたにお金を払います。

作成したコードとそれで解決できる潜在的な問題を関連付ける必要があります。派手で複雑である必要はありませんが、ゲームやライブラリの方法を示すよりも、この関係がお父さんにわかりやすくなります。例:

  1. シンプルなWebアプリケーション。プログラミングブックのチュートリアルに取り組むと、ふりをする店のWebアプリを作成する方法がわかります。
  2. 簡単な電卓プログラムを作る
  3. 連絡先を保持するアドレス帳プログラムを作成する
  4. カレンダープログラムを作る
  5. 数学の方程式プログラムを作成します。あなたがどのレベルの数学を学んでいるかはわかりませんが、私が最初に作成したプログラムの1つは、三角形の斜辺を見つけることでした。

そのような(またはより単純な)ことを実行した後、プログラミングの知識を使用して、これらのプログラムを自分でカスタマイズできることを示すことができます。

4
Atif

非常に狭い意味では、あなたの父親は正しいです。あなたのプログラミング演習のためにお金、食べ物、または避難所を取引する人は誰もいません。アルファベットの学習、乗算表の学習、またはピアノで「トゥインクル、トゥインクル、リトル、スター」の演奏を学ぶ場合も同じです。

ただし、これは不条理に近視眼的な見方です。これらの活動のどれもあなた自身にとって誰にとっても価値のあるものではありませんが、あなたにとってそれらは不可欠です。彼らはあなたがあなたの大人の生活を始めるために持っている必要があるスキルを作成するビルディングブロックです。掛け算の九九を学ばずに会計士になったり、「ピカピカ、トゥインクル」に相当することを知らずにコンサートピアニストになったりするのと同じように、「岩、紙、はさみ」を書くなどの演習を行わずにプロのプログラマーになることはできません。ゲーム。

4

プログラムの作成で学んださまざまなことをすべて打ち破ると、彼は何らかの価値を見出すかもしれません。たとえば、これらのプログラムを書く際にどのようなスキルを身につけましたか?今までになかった、どんな種類のアイデアや知識がありますか?それはあなたが死んだ馬をさらに倒したいという前提で私がすることです。私がこれを死んだ馬と呼ぶのは、誰かの最初の数行の詩、ポップソングを歌う試み、または最初は良くないかもしれないが、練習と粘り強さによって実際に変化する可能性のある他の芸術的表現を想像するためです。

ここで先に進むもう1つの方法は、父親にプログラムで実行してもらいたいことを尋ね、それを作成することです。そうすれば、なぜ彼がそれを欲するのかがわかるので、彼はそれを求めました。確かにこれは、現実的でシンプルなものを思いつく彼の側の信頼と信念を前提としていますが、それはおそらくはるかに良いでしょう。

3
JB King

私のパパは多くのギタープレーヤーを知っていて、それらのほとんどが機能しなかったので、彼は言いました「あなたはギタープレーヤーか電気技師のどちらかに決心する必要がありますが、私はギタープレーヤーを見たことはありませんそれはいまいましい価値があった。」-エルビスプレスリー

上記の引用を考慮して、あなたの父親の意見がそれほど意味があるとみなすものは何ですか?

私は13歳のときに始めましたが、私の選択した武器は、Apple] [およびCommodore C = 64での6502 ASMとBASICの独学でした。両親は私の手当をすべて節約し、私の最初のC = 64と5.25でフロッピードライブを副業させたのはクレイジーだった。

今日まで、父は私も何をしているのかわかりません。彼は5年生で家族農場を経営するために学校をやめ、38年間自分の会社で道路と高速道路を建設していました。現在77歳です。 個人貢献者彼の生涯、彼はトラックを運転し、母は会社を経営しました。彼に言う以外に、プログラミングは何かを起こすために何をすべきかについてコンピュータに詳細な指示を与えることです、彼は本当にそれを気にしません。

彼は私が芸術の大学の学位をどうするつもりであると私がどう思っていたのかをはっきりと理解していませんでしたが、彼はそれの支払いを手伝い、私もそれをサポートしました。

私は現在管理下にありますが、おそらくそれは彼にとってあまり価値がありません。今私は人々にコンピュータに何をするように指示し、何もしないように指示します個人の貢献者もう。

彼は私と私の家族の面倒を見ることができることを誇りに思っています。彼がそれを必要とする場合、彼はそれを私が持っている必要があるすべての検証です。

それを超えて、私が一日中机に座ってコードをコンピューターに打ち込むという私の肉体的行為を理解したり価値を見いだしたりする必要はほとんどないと感じています。または、今や私が行き過ぎたプロジェクトについて、エンドレスな電話会議に参加し、1日に数百通の電子メールに応答しています。

ここでの要点は、エルビスが父親に彼を降ろしたり落胆させたりしなかったことです。あなたもしないでください。先に進み、次のスティーブジョブズになります。その仕事はもう取られていません。

3
user7519

あなたが本当に彼を感動させたいと思ったら、彼に尋ねてください:「あなたのコンピュータが何をしたいですか?」次に、その処理(または同様の処理)を実行するスクリプトを記述します。私がPythonについて知っていることを考えると、それはあなたにとってかなり可能かもしれません。

プログラマー以外の人が実際に理解していないことの1つは、プログラミングによってマシン上でcontrolが実現し、必要なことを正確に実行できるようになることです。ユーザーがやりたいことを実行できるアプリを作成することで、それに洞察を与えることができます。

2
joshin4colours

現代社会のビデオゲームに対する魅力に非常に懐疑的な人として、私はあなたがプログラマーである場合でも、どのプログラムにも価値がないと言えます。それは経験とあなたがそれを書いて学んだことで価値があります。あなたが何か有用なものを書くつもりなら、それはあなたが「役に立たない」プログラムを書くあなたの歯を切ったからです。

それは、私が2歳のときにブロックを積み重ねるのをやめるようなものです。はい、それは実際の用途はありませんが、彼の個人的な発達に使用しています。

1
Jonathan Henson

コンピューターが平均的な人のためにできる最善のことの1つは、時間を節約することです。お父さんが定期的に行うことで、お父さんの時間を節約する方法を見つけられるかどうかを確認してください。

時間は常に貴重です。

0
Neil N