パラノイア

ハードワーク信者 & Apple信者

プログラミング初心者からエンジニアになりたい?これやればなれるでしょ

f:id:kawakensan:20170923185852j:plain

そもそもエンジニアになりたい動機ってみなさん何なんでしょうか。

  • ハッカーとか言ってみたいし、モテそう
  • 基本的にデスクだから、楽そう
  • 単純にプログラミングとかAIとかかっちょえー
  • 子供の時からモノづくりが好きだ
  • 起業したい

とまー、このぐらいだせば結構当てはまりますよね。(僕はエンジニアになりたいか、プログラミング学びたいかはほぼ同義として捉えている)

まー動機なんてなんでもいいと思うんで僕は、才能とかはあんまり関係ない気がする、というのが僕の意見。

そもそも僕は文系だし、大学はフランス語学科だったし、あげくには大学中退して起業する!とか言ってたし。(それは今も変わらないけど)

そしてたぶん中学の数学とかも危うい(それはやばいから勉強し直す必要ありなんだが、数字恐怖症なので後回しにしちゃってる)

そんな僕もエンジニアとして今は足を3cmぐらい踏み入れているし、期待をされている身になった。

ということで今回のエントリーでは、

  • どうしたらエンジニアになれるのか
  • やるべきことは?
  • どうやって勉強してく?

という観点で話を進められればいいですよね。

余談ですが、僕はPCが嫌いだったので、PC歴1年ちょいぐらいです笑(よく子供のときからいじってた系ではないってのを伝えたい)

起業家もエンジニアもマーケターもプログラムは書けるべき

今回のエントリーにはエンジニアになりたい、起業したい、作れるようになりたいって読者が多いと思います。

ただ正直、人工知能とかチャットボットとかIoTとかワチャワチャしている時代、みんな簡単なプログラムはかけるべきだと思います。

まずIT企業やスタートアップにいる人は必須ではないでしょうか。スプレッドシートって営業の方もいじると思いますが、GAS(google app script)とか使えばかなり効率的に仕事できたりします。

まー簡単なプログラムなら少し勉強してググってコピペ・変更ですぐ書けますよね。それでもなにか自動化したらプログラミングっていいますからね。

まずはそんな身近な課題を解決する、小さいことから始めてもいいのでしょうか。

プログラミングはやればやるほど、伸びる

途中で勉強をサボった僕がいうのだから真実。

何かを作っていても、休憩すれば止まって知識も抜けていくけれど、やればやるだけ進むし、知識もつきます。

もちろん最初はキーボードを打つのが大変っていうレベルでも全然問題ない。

要は

  • 何を目的として(目標)
  • どのように進めて(方法論)
  • どんな自分になりたいのか(キャリア的に)

って感じがします。

習得した先の目的は何なのか?

そもそも"習得"ってのは無限に学ぶことがある時点でミスってるので、ここでいう習得は"自走しながら何かを作れるレベル"という定義にします。

まだまだ使ったことのない技術などがあっても、自走できる力があればたぶんほとんど問題無い気がします。そこまで行く前に辞めるのが挫折というのでしょうか。

僕は何回挫折したことやら。

本題に入りますが、習得したら何をしたいのか。

  • 技術を楽しんでエンジニアの仕事をしたい
  • 高い給料が良い
  • サービスを作りたい

僕はこのさき10年もエンジニアとしてやっていくつもりはありません。サービスが作りたいです。サービスをグロースさせられるような人間になりたいんです。

なので、

  • ビジネス設計もできる
  • マーケティングはみんなできて当たり前でしょ(定義による)
  • 誰も作れる人がいないなら、挙手します。
  • アイデを形にできる人材(そのまんまの意味)

という人材になりたい。そしたら起業もできるし、採用もされるし、選択肢を多く持てるし、副業もできるし、なんか強そう。

僕はこれを目指している。まずはそこをはっきりはっきりだと思う。

まずは僕は技術大好き!には正直あまりなれない。

てか自然とかキャンプのほうが好きだし、技術とかであまりテンションは上がらない。

でもやっぱりそれを使って何かを作れたらテンションあがるし、仕事ならやらなければいけない。もちろんそれは自分の人生・キャリアとして必要なことだから苦ではない。

結果的に僕はエンジニアになりたくてプログラミングしているのではなく、強くなるためにプログラミングをしてる。

でもやっぱり一番プログラミングに向いている人は技術大好きな人ですよね。

どのように進めるのか、ここが一番大事かも

やっぱり肝はここですよね。まーみんな大好きなお勉強です。

これは他の人とか、記事とかすでに参考になる記事がたくさんあるのでそれをまんま試してみるのも悪くはなさそう。

www.slideshare.net

ただやり方としては大きく2つに別れると思います。

  • お勉強から始める
  • 作りながら覚える

もちろんバランスが大事ですが、僕的には後者がおすすめ。

何かる作ってみたいプロダクト、サービスを作ることを目標に、それに必要な知識をぐぐりながらやってく方法ですね。

これは単純にやっててあきない。お勉強だけしてると飽きるし、動画とか見てても頭にはいってこないです。寝ます。

だから繰り返しですが、自分にあった方法でやるのがベスト。作りながらだとエンジョイしながらできるのもメリット。

とりあえず想像しているものはだいたいやればできる気がします。

ちなみに僕は最初にチャットボットを作りました。(現在進行中ですが)

実は技術的にはそんなに難しくなく、プログラミング学習には意外と最適なんだとか。(APIとか練習できるからかな)

とりあえず何を作るか決めて、企画書作って、プログラム書いてください。

キャリア的にどこを目指すのか

マーケターになりたいのか、エンジニアになりたいのか、起業家になりたいのか。

それによって攻め方は変わると思います。

マーケターになりたい

マーケターってよりは、データサイエンティストより?

こんな時に必要なプログラミングはGASとかPythonとかで十分なのではないでしょうか。

プロダクトは作れなくても、簡単なツールは作れるレベル。

エンジニアになりたい

これは、頑張ってください。

息を吸うように技術を習得ですね。

起業家になりたい

作りたいサービスを作る、以上です。

それにはどんな言語でどんな技術を使うのか、必要な部分だけ覚えて、最低限動くプロダクトを作る。

それで起業して、投資家やらエンジニア見つけてください。

それで人がよってこないのは、そもそもビジネス的にアウトなんだと思います。

その時は手を合わせて、また次に挑戦しましょう。

とりあえず読んでおく本は?

とりあえずプログラミング始めるならここらへんがおすすめ。

最初に「読む」PHP

PHP+MySQLマスターブック

超初心者が初心者になるためのPython入門

初めてのPython 第3版

作りながら学ぶRuby入門 第2版

改訂3版基礎 Ruby on Rails

これはかなりおすすめ。定番です。

それではとりあえず何かをはじめて頑張っていきましょい。

ではではー