アプリ開発現場に飛び込んで1ヶ月、新米ハンター(プログラマ)がいま思うことーー後半戦
昨日はいい感じなところについて書きましたが、
今日は目標に対して足りていないと感じている部分や、
もっと身につけないとヤバいなと思っているところについて書きます。
ここ数年一番聴いているアルバム
Tame Impala - Innerspeaker - Full Album +Itunes Bonus Track
最高です。
一応昨日の記事もどうぞ
もっと根本的な話はこっち
ではいよいよ本題とまいりましょう。
そういえばそもそも目標があいまいなままだった
本当に何も知らないまま「えいっ」と東京の水に飛び込んだので、事前に明確な目標を立てられるわけもなく、飛び込んでからもとにかく目の前にあるわからないものをなんとかするのに必死で、なかなか展望的な視野が確保できていなかったように思う。
最近になってようやく、この短い期間でどういったことを身につけて帰れれば任務完了といえるのかみたいなことを考えられるだけの知識と余裕が生まれてきたところなので、この辺で一度しっかりと、目標を据え直そうと思う。
足りていないもの、というより足りてないとヤバいものを
足りていないものを数え上げれば切りがない。そもそもぼくはネットに疎い人間としてつい昨日くらいまで生きてきたような存在なので、この業界に入るべくして入った人と比べると、全面的に絶対的に知識も経験も足りていない。
まあそんなわけなのでとりあえず、この3ヶ月でそういう人たちと同等の知識や能力を身につけることは、ひとまずあきらめる。現実的ではない。
で、じゃあどうしようか、ということなのだが、下記のようなことだろうか。
「あとは経験とGoogleで、なんとかなるかな」というところまでもっていきたい
一口に知識といってもいろいろある。何でもかんでも手当たり次第に身につけていくのもありなのだろうが、時間がとても限られているので、そうもいってられない。
どうやって分けたらうまくいくかなとあれこれ考えたが、結局これでしょうか。
また、虎の威を拝借させていただきました。笑
「業務スキル」
「言語スキル」
「汎用スキル」
これでいきましょう。
ぼくの場合、状況的に「業務スキル」は飛ばしてしまっていいと思うので、残るは二つ。
「言語スキル」これはまあ、ないと何も書けないので勿論不可欠なものなのだろうけど、これも優先度は低いといってしまいたい。というのも、各言語のテクニカルな知識についてはネット上に沢山情報があふれているので、こうしたい時どう書けばいいかとか、このメソッドの意味は?みたいなことはググッたら結構自分で解決できることだと思うのです。
だからRailsとかについてもまだまだなのはわかってはいるが、それはたぶん帰ってからも作りながら引き出しを増やしていけばいいのではないでしょうか。
それで問題なのが「汎用スキル」これです。
汎用スキルをつけたいけれど
どうなってんのかわかんないなーってところにぶつかったらその都度調べてみたり、本を読んだりもしているが、これがなかなか、わからないことばかりである。
本や記事を読んだら「ふーん、そうなのか」とはなるけど、それが実際のコードとか設計にどう現れるのかみたいなイメージをつけるのが難しいので、結局あんまり「理解できた!」というところまでいけない。
なかでも、いま一番不安に思っているのが開発環境とかインフラのこと。
しかれたインフラの上に眠るぼく
すでに開発が始まっていたところに途中からひょっこり参加させていただいたので、11月の時点で開発環境とかアプリの基本的な構成はほとんど整っていた。僕が環境づくりについてしなければいけないことは自分のパソコンに仮想環境を作ってgitのリポジトリをコピーすることだけだった。
だから、中に何が入っていて、どういう構成で、それぞれがどういう役割を果たしているのか、のようなことがほとんどわかっていない。なにやらいろいろありすぎてどこから手をつけていいのやら、という感じ。
またアプリの設計に関しても、現状の記述のここに、こういう追記をすればきっとこういう結果が得られるだろう、ということはなんとなくわかってきているように思うが、じゃあそもそもなんでこうなっているのか、いますでにある機能はどういう設計の元に実装されているのか、みたいなことについてもあまりわかっていない。
食材も道具も揃っていてレシピも用意されていたら料理を作ることができるが、なにもない状態から自分で考えて料理を作りあげていくことはできない、的な。
いまのままだと京都に帰ってしまったら自分一人ではなにもできない気がする。ヤバい。しかれたインフラの上でぐぅぐぅ眠っている場合じゃない。なんとかしたいがしかし、あまりに膨大すぎてどこから手をつけていいのかわからない。どうしよう。困った。
まあでもあれですかね、どんなに複雑で難解そうにみえるものも実は単純なものの組み合わせでできているそうなので、やっぱりとにかくソースを読んで、一つずつ理解していくことですかね。
まあ、そう簡単にはいかないか。
じわじわまいりましょうか。
そうしましょうか。