こんにちは。エンジニアのもんしょー(@sima199407)です。
僕は大学3年生からプログラミングの学びはじめてエンジニア歴は1年半くらいになります。
現在はリモートのエンジニアとして活動しております。
さて以前このようなツイートをしてまして反響がありました。
今年はプログラミングで稼がせて頂きましたが
「何でもっと早く始めなかったんだろう」
と時々思います。しかしスタートが遅れて30代、40代から始めていたら
今の状況を羨ましくなりますね。要は"ないものねだり"でして
過去についてどうこう言うより
「気付けてラッキー」だなと思った方がいい?— もんしょー?webが主食な人 (@sima199407) 2018年12月29日
今年はプログラミングで稼がせて頂きましたが
「何でもっと早く始めなかったんだろう」
と時々思います。
しかしスタートが遅れて30代、40代から始めていたら
今の状況を羨ましくなりますね。
要は"ないものねだり"でして
過去についてどうこう言うより
「気付けてラッキー」だなと思った方がいい?
結論から言うとプログラミングはいつ始めてもいいんですよね。
運良く学生時代からプログラミングというものに出会って同世代よりも時間とお金に余裕ができやすい環境を作らせていただきました。
しかし人間欲深いもので、もう少し前に気づいていればもっと稼げていたなんて思うことがあります。
周りから見たら十分早いタイミングでプログラミングを始めたのかもしれません。
つまり適正のタイミングはないと思います。
今回のポイントとして
・プログラミング始めるのはタイミングの差
・暇な人は強いワケ
・学習するならまず「独学」するべき
それでは話していきましょう。
適性よりも行動に価値がある
プログラミング言語はいい意味でも悪い意味でも寿命が短いです。
例えば、
新しい技術が出現しそれが主流になればそれの需要が増えます。
同時に既存の技術が役割を終えてその姿を消していく。
ということを繰り返してます。
新しい技術でより簡潔で効率的なシステムが組まれる一方で、せっかく覚えた技術が消えて使われなくなる可能性があります。
なのでプログラミングを始めるタイミングよりも需要のあるスキルを身につける行動力の方が大事だと思います。
ほとんどのプログラミング言語は文法が似ていることが多く1つの言語を覚えると他の言語にもスムーズに切り替えができることがあります。
なので4~5くらいの複数の言語を使いこなせる人が多くいるんですね。
プログラミングは言語
プログラミング言語はその名通り「言語」です。
英語は”人”とコミュニケーションをとる道具ですが、プログラミングは”機械”とコミュニケーションをとる道具になります。
完璧じゃなくても「会話」はできる
海外旅行に行ったことがある人は現地の人に現地語で交渉できればいいですが、英語で話しかけることが多いですよね。
そのときに英語を完璧していないからと言って一言もしゃべらないことはないと思います。
どうにか自分の意志を伝えるために言葉とジェスチャーを加えながら会話するでしょう。
英語がペラペラじゃなくても言いたいことを伝えることができます。
それはプログラミングも一緒だと思います。
「webと会話する」ためにはいろんな文法を使って話しますが、
全部を覚える必要はなく最低限必要な基礎的なものを覚えておけばとりあえず大丈夫です。
分からないときはググってwebに聞いてみることですね。笑
プログラミングをやるのはタイミングの差
プログラミングをいつからやるのがベストなのかというと
「プログラミング、やってみたいと思ったとき」です。
なので今思えば今ですし、去年から思っていれば去年です。
つまり気づいたときにすぐ始めることがいいかなと思います。
僕がプログラミングを始めたのは大学3年のときでして
大学入学時からプログラミングを学んでいる人よりは遅く、社会人になってから学んでいる人よりも早いです。
つまり見る人によって早いとか遅いとかが変わってくるので「〇〇歳からがベスト!」というのはないかなと思います。
インターン時代の話
僕の話になりますがプログラミングを学んで実務で使いたいと思い、
エンジニアインターンをしていたとき同期に高校時代からプログラミングをやっている子がいました。
確かにスキルは高かったですが彼にもできないことがあったので分野を選べばベテランのエンジニアにも勝る能力をつけることは可能だと感じます。
どのレベルまで行きたいのか
プログラミング学習に大切なことは
「どんなことをやりたいのか」ということです。
[box03 title="達成したいレベル別表"]
レベル1:webサイトをカスタマイズしたい。趣味に近い。
レベル2:エンジニア転職をしたい。実務レベル
レベル3:自社サービスを開発したい。事業レベル
[/box03]
ざっくりとこんな感じです。
もちろんwebカスタマイズする仕事もあるし、複数人で自社サービスを立ち上げれば狭い範囲のスキルを磨けばイケます。
https://simablog.net/how_to_become_engineer/
時間がある方が有利です
エンジニアはいつから始めても大丈夫だという話をしましたが
勉強するのは「ある程度時間に制約がない人=暇な人」であるほうがいいです。
新しいことを始めるということは覚えることも多いですし、
初心者のときは「回数をこなす」必要があるので大学生のように時間を自由に使える人がベストです。
今後エンジニアとして仕事する!と決めている人は思い切って「休学」することもアリですね。
大学に数万円(国公立なら無料)で「学生という特権」を1年延長できるのでいいですよ。
https://simablog.net/english-after-programming/
まずは自分で勉強してみよう【おすすめサイト】
プログラミングを勉強始めるときはまず「独学」でやってみるのをおすすめします。
なぜなら、自分に合っているかどうか分からないからです。
やってみて「違うな」と感じるなら他のことをやればいいですし、
今は無料の学習コンテンツが充実しているので試しに触ってみるのがいいです。
[box02 title="おすすめのコンテンツ"]
・ドットインストール:1つが3分程度の動画講座にまとまってます
・progate:実際に手を動かしながらプログラミングができます
・paiza:テストをクリアしてランクあげていくと就活,転職にと直結します
[/box02]
短期間で伸ばす・すぐ質問したい人は「スクール」もアリ
お金をかけてもいいから短期間でプログラミングを学びたいときは「プログラミングスクール」というものがあります。
分からないことがあればすぐに質問ができるのでその点は便利です。
また同じように勉強している人が周りにできるのでモチベーションを保つことにも使えます。
https://simablog.net/programming-school/