![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.1ベストアンサー
- 回答日時:
検索で調べただけで結構ありますね。
https://tech-camp.in/note/4104/
ここは見ましたか? もう見てそうですね。
プログラミングと言うのは、少ないルール(つまり覚えることがあまりない)を使いまわして、
最後は自分の目的を成し遂げると言う作業です。
そのため、組み上げると良く例えられます。
”覚える”という学習とは全く異なります。
数十年前になりますが、
私が高校のとき部活(コンピュータ・プログラミング)の先輩から教えられたとき、
「これを良く見なさい。これと同じモノを自分の知っている知識を活用して作りなさい。
命令表は見ていい。出来たら自分で打ち込んで。動いたら教えて。見てあげる。」
「出来ました。」
「うん、出来たね。じゃあ、次は。」
こういう感じです。
どうすると、その様になるのか?
これを鍛え上げていくだけの過程です。
プログラマーと呼べる人は、
「見たものは作れる。」
と言う力を持っています。
しかし、失敗したときは責任が生じます。
「どの様に作るか」をその人がイメージするのですから、他の人と同じではありません。
正解は無数にあるでしょう。
例えば皆さんがお使いのWeb(に関連する様々な製品や技術)ですが、
マイクロソフトは.Netと呼ばれる独自の実現方法を構築しています。
この世界では、お客さんに同じに見えれば良いのです。
しかし独りで自由に実現をイメージしますと、
その人しか治せないため、その人を助ける人は誰もいません。
そこで、複数の人と作る過程を共有し、他の人が見ても引き継げるように資料を残します。
この過程を精錬させますと、開発工程と言うモノになります。
ここで派が分かれてしまいます。
鍛え上げて独りで責任を担おうとする派閥。
皆で協力する方法を強化する派閥。
後者は、IT技術者ですね。
後者は人(お客さんも含む)が連携する作業での問題を解決する方向です。
プログラマーは、出来うる限り他の開発者を淘汰し、
自分一人でどこまでやれるか極めていくという方向です。
どちらにしろ同じ製品を作るわけですから、
実現のイメージと実装(実際にプログラムする)によって性能上での違いが生じます。
どうすると早く処理が終わるのか?
どうすると綺麗に見えるのか?
どうするともっと自動化できるのか?
こうした部分がノウハウであり、力の差になります。
これを他人に教えるはずがありません。
教えてもらって、覚えて行こうとしても、教える側が教えてもらってないので、
習うことが出来ないんです。
知識に相当する部分は、(そこが差になるといけないので)積極的にネットで公開されます。
純粋にアイデアや知力を競うのがフェアとしています。
多くのプログラマーが職業として企業などで働きますが、
ネットで公開されている次元を相場とし、
それ以上のノウハウを仕事では使いません。
その相場程度ですと、大したことが出来ませんから、企業が作るシステムや製品は割高になります。
その費用を回収するためビジネスが難しくなります。
IT系のビジネスが盛んになる理由だと思います。
プログラミングを知らない人は、プログラムが難しくて出来ないのだと誤解をしています。
実は誰でもわかる簡単なルールしかありません。
それを長々と組み合わせて、破綻しないで最後までゴールすると言う事が難しいわけです。
一文字でもミスをすれば、必ず動きません。
そして、どこでミスをしたのか誰も教えてくれません。
デフォルトで無理ゲーです。
写経をするほうが楽でしょう。
更に大事なのは、兎に角早い。兎に角効率が良い。兎に角体力がある。
ピアニストなどと同じでしょう。
以上からお勧めの方法。
1)スクールを使って苦手意識を払拭する。
C++などを使うゲーム系にする。
Web形のスクリプトは避ける。のびません。
対面が良いです。
講師と知り合いに成る。師匠とする。課題を与えてもらう。
自宅の開発環境を整えるために、道具について教えてもらう。
2)毎日テーマを作って学習する。
標準で用意されている良く使うライブラリを自分で作ってみる。
鍛錬の積りで、ループプログラムを沢山作る。
場合分けを高度化する方法を研究する。
3)プログラムのテスト方法を専担で学ぶ。
試験と呼びますが、これについて体系的に学びますと飛躍的に力が伸びます。
ほとんどのプログラマーに差をつけて次のステージへいけるでしょう。
既存の試験用の製品はこれらを知らない人が作っています。
試験については学問があるので、こちらだけはちゃんと習うべきです。
4)設計と言う概念を手に入れる。
試験と同じですが、こちらも手法があります。これも飛躍的に力が伸びます。
5)コンピューター系の仕事について大別して知る。
力は無いのに、仕事の種類だけ詳しい人が沢山います。
こうした人に中間マージンを取られると馬鹿馬鹿しいです。
苦手に思わずに、素直な姿勢でIT業界での仕事の種類について学びましょう。
6)マネージメントについて学ぶ
独りで出来る限界はどんどん延ばしていくと良いでしょう。
しかし、その過程では限界も低いです。
「な、一人の限界ってわかったろ? だけどお前は人を知らないのが弱点だ。
これはこれで難しいんだ。俺に任せろ。」
と言う人が沢山出てきます。
そこで、人と連携し、計画を作り、仕事の割り当てと進行を管理し、
働く人それぞれに対しての気持ち、健康の維持に配慮します。
さきに予算を決め、予算が自分が計画(プログラムしたとおり)に消化され、
イメージどおりにモノへと変わっていく行くことを確認します。
プロジェクトのマネージメントを学んでおきましょう。
7)ビジネスについて考える
思ったものが作れるようになっても、
人が欲しいモノが何であるかわからないと趣味の領域を出ません。
そうであれば、人が欲しいモノが分かる人が間にはいって中間マージンを取るでしょう。
これは馬鹿馬鹿しいので、自分でビジネスモデルを作り、宣伝し、営業できるように、
他のことも一通り出来るようにしておきましょう。
この世界にいると、
「技術はあるけど、これは出来ないでしょ?」と言う人が無数にいます。
そんなはずがあるか!と言いたいですが、
我慢して、それらに対しても、相手の論理で学ぶ。
そして、勘所が分かったら、それ自体をプログラム化し、自動化してその職業を無くすんです。
いまの殆どのIT製品はそうやって誕生しています。
ディープラーニングも同様です。
8)育成について考える
1)~7)のステップは個人の積み上げです。
しかし、自分の後輩を同時に育成しておくと、後に頼りになる味方となります。
逆に言えば、皆がそういう思想でいますので、後輩を指導することを嫌がる人はいません。
企業が行う育成とは別の視点で対応してくれる人がいるはずです。
自分に関しても、いずれ弟子を取るとして、どう教えるかを想像しながら学ぶことです。
9)世の中について考える
1)~8)の中でとても大事なことです。
世の中の状況が変わり、自分が苦労をして学んだことが時代遅れになる事があります。
これは究極のがっかりでしょう。
また、それを喜んで、「いまはそんな時代じゃない。」と言う人が沢山出てきます。
個人スキルを磨くのも良いですが、
本当はそんなものが無い方が良いわけです。
どうあるべきかを考えて、自らが自らの分野を無くして行く。
他人に引導を渡されるくらいならば、自分が無に返す。
こういう気持ちで、学ぶことです。そういう気持ちで世の中の技術を眺めることです。
危ないと思ったら、そちらついて初心者から始め、
最後は自分の手で発明したり製品を作って世に長し、引導を渡しましょう。
フリーで凄いプログラムが沢山流れていますよね?
みんなそうしているんです。これが当たり前です。
1)~9)を最初から想定しましょう。
私はそうしていました。
どれかが欠けると、必ず失敗します。
「な、xxが出来たって、世の中そんなに甘くないんだよ。
反省して、俺の言う事を聞け。」
と言う人の論理の通りになり、搾取されることに成ります。
取り組むときから、ここまで想定するのが大事ですよ。
最初は全部が中途半端で、何も出来ず、なきそうになりますが、
パラメータが高まってくると、あるとき突然相乗効果が出ます。
プログラマーを目指すと、それを辞めさせようとする人に無数に出会います。
また、これは出来ないあれは出来ないとケチをつける人に沢山出会います。
ここで、誰かに迎合してはいけません。
今は頭を下げる。
そしていずれ相手も(自分も)淘汰する。
さて、
これから始めると言う事で、マインドを含めて大枠を話しました。
スクールの位置づけも分かったと思います。
全てを得ようとするとありませんが、最初の一歩とするとどこでも良いとなります。
以上、ご参考になれば。
この回答へのお礼
お礼日時:2017/10/15 19:11
たくさんアドバイスしていただき、ありがとうございました、
なるほど。と思うことばかりでした
どんな戦略をイメージして勉強するかで、まったく異なる成長しますね。
これはプログラミングの勉強以外においても、大切な考え方だと思いました。
大切なことを、ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- IT・エンジニアリング 21歳の大学3年男です。 現在プログラミングを習得できるところに入ろうか悩んでます。 そのスクールは 3 2022/06/21 00:43
- Windows 10 パソコン得意な人どうやって勉強したか教えてください 13 2022/04/26 00:41
- 臨床心理士・心理カウンセラー・ソーシャルワーカー 心理カウンセラー養成スクールについて 3 2023/02/11 19:54
- その他(就職・転職・働き方) Web広告などの映像ディレクターになりたいと思い、独学やスクールでPremiere proやAfte 1 2022/12/21 18:16
- Java プログラミングのプの字も知りませんが、プログラミングを勉強したいです。とりあえず、学ぶものを決めない 3 2022/11/04 13:10
- その他(プログラミング・Web制作) プログラミングを勉強してますが、難しくて、中々頭に入りません。 ふと思いましたが、今はサイト作成ツー 12 2022/12/21 19:46
- 経営情報システム ウェブ集客のセミナー 2 2023/03/30 15:39
- その他(プログラミング・Web制作) 次に、楽天のアジャイル就活に参加して、1日で内定を獲得できる。私は大企業に就職できる? 2 2022/04/17 13:38
- Web・クリエイティブ webライターで稼ぐ方法を教えて下さい。 webライティングを始めて約半年が経ちます。現在、3000 3 2023/04/10 14:33
- 英語 英語の勉強について。 観光地とか都心とか人が集まる場所に行くと、結構な頻度で外国人に道を聞かれたりし 3 2023/01/05 10:07
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
僕はコンピューターの専門に行...
-
研究開発、設計開発、SEの違い...
-
システムエンジニアってプログ...
-
28歳からのプログラミング、成...
-
コピペプログラマを脱出するには
-
独身男性はどうやって性欲をお...
-
クライアントに出すメールで、...
-
成人知能検査の結果を教えてく...
-
「ありますか」と聞く場合、Is...
-
47歳、システムエンジニアです...
-
『技術』の反対語って何ですか
-
Yahoo知恵袋の回答が心無いもの...
-
何度も同じ事を言わせる人は何...
-
一坪何m2?
-
照会コード6015-G97の意味は?
-
「折り込む」と「織り込む」の...
-
LINEで、質問されたから答えた...
-
30歳代まで とは何歳までで...
-
「データ」のスペルはdataとdat...
-
Yahooで質問しようとしたら、 ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
研究開発、設計開発、SEの違い...
-
リスキリングとプログラミング...
-
28歳からのプログラミング、成...
-
使い捨て社員のスキルアップに...
-
IT業界でパソコンを使わない仕...
-
理系で数学や物理は得意なのに...
-
27,8歳からプログラマ・シ...
-
転職のため、Web開発の経験を独...
-
プログラマーの方に質問です
-
僕はコンピューターの専門に行...
-
履歴書に書く内容
-
自分がプログラマとしてやって...
-
将来SEかPGの仕事に就きたいの...
-
プログラマへの道
-
20代後半、パソコンも始めたば...
-
プログラマーと社内SE
-
プログラムが苦手なのに、仕事...
-
底辺職業プログラマーを育てる...
-
新卒、就職活動におけるプログ...
-
マシニングへの足がかりになり...
おすすめ情報