プログラミングスクール(オンライン・マンツーマンレッスン)を受けている中で、わかったことや自分なりの発見を備忘録的にまとめていきます。インプットだけじゃなくて、アウトプットすることも勉強のひとつだし、こういう備忘録を残しておくことで過去を振り返ったときに「自分の成長」を実感できたりするので、書いていきます。
侍エンジニアさんに入校して受講しています。いちおう講座の内容などはオープンにしてはいけないので、様子を見ながら書いていますが、もし書いちゃダメということが書いてあったら侍の方、ご一報ください。
オリジナルカリキュラムというのはいいね
侍さんを選んだ一番の理由はオリジナルカリキュラムを組んでもらえるという点。しかも、進捗や理解度に応じてカリキュラムは変えられる。これはめっちゃありがたい。僕も講座をやっているけれど、そのうちオリジナルカリキュラムというコースを始めたとしたら、完全に侍のパクりだと思ってください。でも実際「自分に合った占いや勉強法はどのようなものですか?」というご質問を頂くので、あながちあったらいいのかも。マンツーマンで毎週面談しながら進めるって今までしたことないし、試してみようかな。
自己解決力を学ぶっぽいです
中学3年のころからHTMLでサイトを作ってきましたが、ある程度はタグなどの情報は頭に入っているんですが、やっぱり限界があって。どうしても「エンジニア」「SE」というと「プラグラミング言語が全部頭の中に入ってる!」と思われがちなのですが、実際は一流のエンジニアでも「調べながら」やっています。講師の方とお話していてこの認識がさらに色濃いものになりました。どちらかといえば「情報をインプットすること」よりも「いろんなところに転がっている情報をどうやって捕まえて、どうやって活用するか」のほうが大事だなと。
知識をインプットしまくって独り占めするのではなく、流れてくる情報をいかにうまくキャッチして活用できるか。
僕がいつも言っている縦横の軸だと、右中央や右下ではなく、左下の要素が必要になるようです。アレンジ力。八白・艮ですね。
2回目の講座で「自己解決力」というキーワードが出てきて、エンジニアの現場で求められる要素の1つに、「自分でなんとかできる力」があるそうです。だから、その言語を知らなくても「自分でなんとかしようとする姿勢」があれば、未経験でも採用される場合もあるそうです。(もちろん即戦力を求められる場合はそうとは言えません)
「エラーにぶつかったとき」にどうするか?
これはSEのお仕事以外でも通じる話ではないかなと思います。エラーに直面したときに、笑う・頼る・甘える・投げ出す・逃げ出す・耐える…いろいろな手段がありますが…どう問題を向き合っていくか。最初の授業で強く感じたことは知識や情報というよりも、この「問題との向き合い方」を先生から吸収して学ばなくてはならないのだと思いました。知識情報的な部分は独学あるのみって感じだと思います。占いも似たところがある気がします。
プログラムは思った通りには動かない、書いた通りに動く
「コンピュータっておバカさんなんですよ。だから、こうしたいああしたいって思ってもそれを察して動いてくれるわけじゃないんです」
先生のこの言葉は非常に心に残りました。確かに。そうだよな、と。
あと、普段の自分に似ているなと思いました。気が利かないというか…言われないとわからないというか…。社会人として当然だろ!と何度会社で注意されたやら…。
彼女と言い合いになり、怒った彼女は「もういい!」と部屋を飛び出すんですね。そして、数分後その彼女が「何で追いかけてこないの!普通おいかけてくるでしょ!?」と戻ってくるんです。こういうやりとりを何人もの彼女とやってきましたが、いまだに女心がわかりません。彼女が部屋を出て行ったあと「部屋が広くなったし、昼寝するか」とのんびりしていたら、ダメらしいです。毎回、これで失敗してきましたが、そんな自分とコンピュータは似ているなと思いました。
願ってる・思ってる・考えてるだけじゃダメで、実際に行動しなきゃ現状は変わらない。仮想空間の話なのに、現実世界と似ているなと思いました。現実世界を分解して、仮想空間で再構築しているので、似ていて当たり前と言えば当たり前なのですが。
「エンジニア」と一言で言えど多岐にわたる
今習っているのはWebアプリの開発がメインなのですが、エンジニアと一言で言えどいろいろな分野があることを最近知りました。
すごく大まかに下図の4つに分類されるようです。(分類の配置は僕なりに当てはめました)
それぞれにフロントエンド寄りとバックエンド寄りが存在するので何とも言い難いのですが、上がフロント寄り・下がバック寄りでしょうか。今まで僕はWebサイトの左上ばかりしていました。Webアプリは右上寄りになってくるので、学ぶ流れとしては良いのではないかなと思います。これまでに蓄積してきた占いのデータと擦り合わせれば「自分が向いているSEの分野」なんかも選定できるようになるかもしれません。グルッと一周して、組み込み系までやれるようになったらちょっとやそっとじゃ食いっぱぐれはなくなりそうですね。(そう簡単ではなさそうですけど)
あとはやっぱり「コミュ力」が求められるようです。これも本当にエンジニアだけではないと思いますが、きちんと人の話を聞いたり、相手が何を伝えたいか理解する能力がないと、本当に苦労するようです。
というわけで、とりあえずしばらくはPHPとPythonをメインに学んで3ヶ月目ぐらいでアプリを完成させる予定です。意外とjavaの需要があるんだなーということを知れたのは大きな収穫。まだ2回しか講座は受けていませんが、今後も楽しみです。
にしけい