チョモランマに登るには。

Androidアプリ開発の初心者が立派な開発者になるまで

未経験からプログラマーになって

こんにちは。
今の職場に来てから終業が22時や23時の毎日になってきました。
とにかく眠いです。

でも家から通える距離なので、体力的にはだいぶ楽です。
ただ今まで通勤電車で確保していた勉強時間もなくなってしまいました。
早起きして朝に時間を取るしかないんですが、なかなかギリギリまで寝てしまいます。

勉強というか早くアプリ開発がしたいです。
なんか色々途中のままになっていてユーザーの方には申し訳ないです。
すぐ再開するのでもう少しだけお待ちください。m(__)m

未経験からエンジニアになって


僕は去年から独学でプログラミングを勉強して、現在プログラマーとして働いています。
今の会社に入って4か月ぐらいになるでしょうか。

割と今みたいに多忙な毎日を過ごしていくと、未経験・独学時代からの気持ちを忘れてしまいそうなので、 実際プログラマーになる前となった後で、なにを感じ、なにを思ったかを書いておこうと思います。

独学ゆえの自信のなさ


以前ブログにも書いたと思いますが、独学時代は恥ずかしくて自分のコードを見せられませんでした。
誰にも教えられずに、独学で見よう見まねで書いてるだけなので、きっと自分はおかしな書き方をしてるに違いない、 人が見たらきっと笑うに違いないと思い込んでました。

それが実際コードを書く仕事に就いてどうだったか。
「コードが変だ」なんて言われたことは一度もなく、むしろ褒められるぐらいなもんでした。

一度そうやって自分のコードを見てもらい、認めてもらうと、恥ずかしさはなくなりました。
要は「自信」、唯一それが必要なだけだったようです。

また、仕事の中で人のコードを読むと、人それぞれで全く書き方が違うことが分かりました。
コードの書き方で「これだけが正解だ」なんていうものは存在しないんだということに気づきました。

ただもちろん1本目のアプリのコードはそれはそれはひどいものでした。
アプリを2本、3本と作り続けることで段々とコードもうまく書けるようになっていきました。
さらに修正・アップデートしやすいように、【何度も同じ記述をしているところを関数化してまとめる】、ということを徹底してやりましたが、それが一番劇的な変化だったと思います。
本当にこれだけでかなり変わりました。

とりあえずシンプルで無駄がなく、見やすいコードであればそれで正解なんだと思います。

アプリ開発の経験が活きた


僕が最初仕事をするなかでよく思ったのが、「なんだ、一緒じゃん」でした。

会社で行う業務の中で、例えばロジックを組むときや、バリデーション(入力チェックみたいなの)をつけるときに、個人でやっているアプリ開発で経験したことが多くあてはまりました。

ああ、これならやったことある。
なんだ、自分で考えてやってたことと大体一緒なんだと、そう思いました。

これはアプリ開発のメリットなんだと思います。
実際にアプリを作ることで学べるし、みんなに使ってもらうことで不具合が発覚して、それを直していく経験ができる。
だから僕の場合は独学でもいける、というよりは、アプリ開発・運用の経験は仕事でも通用するということですね。

ユーザーの皆さんのおかげです。ありがとうございます。

見やすいコードが一番


プロのプログラマーはすげぇ難しいコードをすらすら書いちゃうんだろうな、とか思っていました。
でも実際、色んな本を読む限りでは、どうやらそうではないようです。

どんなすごいコードでも、誰も読めなければ意味がない。そんな感じらしいです。

見やすさ、読みやすさを常に意識して書くことで、修正やメンテナンスをしやすくする、それが大事だと。
見やすければ修正も簡単だし、事前におかしなところもすぐに気付くことができますしね。

業務の中でも、確かにそうだなと強く思います。
だから他の人がこのコードを見たときに、スッと理解できるかな?というのをいつも意識しながら書くようになりました。
下手すると1週間後の自分ですらわからないものを書いてしまいがちですからね。

あとやっぱり「あそこやっぱりこれに変更して」っていう仕様変更が後から来ることもしばしばあるので、 そのときに「ここだけ直せばおk」とできるようにしておくことが必要ですね。
僕なんかはとにかくラクをしたい人間なので、このへんはすごい熱心にいつも考えています。

おわり


仕事場などでエンジニアの人と話すと、割と独学から始めた人は多いように感じます。
ただ勉強方法は人それぞれで、例えば僕なんかはとにかく本を読みまくるタイプですが、反対に本は全く読まずに、 とにかくwebと実践で学んでいくタイプの人もいます。
いますと言うか、後者のほうが多いですね。

僕もできることなら後者のタイプになりたいです。
技術書って高すぎますよね・・・。