どうやってプログラミングを学んだか振り返る

kxn4t.hatenablog.com

というわけで、簡単に私も書いてみる。

小学生

5年生くらいのときにホームページミックスを親に買ってもらい、ホームページを作成した。テンプレートが用意されていて、アップロードも所定の設定をすればワンクリックでやってくれた。しばらくはそれを使っていたのだけれど、途中で作りたいデザインがテンプレートからは作れないことに気づいてメモ帳で手打ちしてFFFTPでアップロードするようになる。メモ帳コーダーになる。そして、わからなくてもとりあえず検索すればなんとかなるなということを学ぶ。

中学生

上の延長で、HTML,CSSはメモ帳で書き続けた。特にデザインばかりいじっていた。この作業、好きだなぁ一生やってられるなぁと思った。

高校生

学校忙しすぎてホームページ更新できなくなったので閉鎖した。

大学生

文芸学部で文学と芸術を学べる学部だったのだけど、文芸メディアのメディア枠で雑多な授業が垣根なくどんどこ取れる変わった学部だったので、油絵を学ぶ傍、ネットワーク・プログラミング・ウェブデザインの授業をとった。
プログラミングは半期でVisual Basicだった。四則演算とかif文、for文とか習って最後にスロットとかおみくじとかそういうのを作った気がする。 これが身になったかというと 🤔?だが、プログラミングってこういうものか〜というのはこの時ちゃんと理解できたと思う。 ウェブデザインの授業も、独学だったところが体系的に学べたのでとってよかったなと思う。

就職

リーマンショック後の就活だったので、就活は結構厳しかったのだけど、なんとか一社内定をもらってそこにいくことにした。ITパスポートとか、事前に取らされた。ただ、開発志望で入ったはずなのに何故か開発ではない部署に配属になって4月1日に結構落ち込んだ。

仕事が慣れてきた2年目の9月にやっぱり接客・販促辛すぎる。私は開発をやりたい。となって、エンジニアになるために半年間スクールに通うことにした。

スクールでやったこと

いろいろコースがあってコースによって値段が違った。 私は、とりあえず就職活動の時成果物が出せれば良いと思ったので、HTML5,CSS3,JavaScriptでハイブリッドアプリを作る講座を受講した。 JavaScriptはこの時結構ガッツリやった。授業でやったらそれを一から作り直して少し手を加えたりして反復した。
ちなみにここに通っていたけど、もうアプリ講座は消滅したみたい。 www.linuxacademy.ne.jp

転職

未経験エンジニアを募集している企業を探して、SIとSES(客先常駐)をやっている企業に転職した。 1ヶ月くらいJavaの研修を受ける。これが基礎になったと思う。 そのあと半年くらいは社内で業務管理システム内製したいという話があり、勉強も兼ねて私が1人で設計・製造・テストをやることになった。 ものすごく楽しかったし学びも多かったけど、だいぶひどいものが出来上がったと思う。メンターとかもいなかった。レビューは他部署の先輩に一度してもらったけれど、見てもらったのはごく一部だった。
その後、SESの方に配属されて、いろんな企業のいろんなプロジェクトに参加して、各所でいろんな開発の進め方があるというのを学んだ。プログラミングが全くできない現場もあれば、懇切丁寧に教えてくれる仏のような人もいた。多分そういう人がいるSIerに転職すべきだった。その仏は今でも尊敬しているし、その人のようなエンジニアになりたいと思っている。
とにかく、SESは現場ガチャというしかない。いい現場でもプロジェクトが終われば解散である。そこで出会った人ともお別れである。そしていい現場である確率は1割くらいだ。いいことない。

長くなってしまったけれど、エンジニアになった経緯はこの辺まで。

どう学んでいるのか

基本的に、一部を知りたいなと思ったらググって済ませる。
一部じゃなくて全部わかりたいなと思ったら本を買って読む。 (それでも全部理解はできない)
JavaとかOracle DBとか資格の勉強もしたのでその辺も、無駄ではなかったと思いたい。
と言いつつも、SQLはこれで覚えた。

業務以外でプログラミングは勉強したいことがあれば書くし、不便なことがあってそれがプログラミングで解消できそうなら書く。くらいの温度感。
暇な時にQiitaのランキングで面白そうなもの見たりする。
私がいる会社には強いエンジニアはたくさんいるが、私自身は手が早いだけで強いエンジニアではないので、業務で触れて覚える比率が6〜8割くらいだと思う。
最近だとProgateとかもライトに学べるのでたまに利用する。

最後に

未経験のエンジニアをとってくれる企業はたくさんあると思います。でも「私は[COBOL | C | Java 1.4 | etc.]の作業員がやりたいんだ!」とならない限りSESは全力で避けた方が良いです。求人の勤務地が都内各所になってたらSESだと思います。