プロフィール紹介
・大学3年生
・心理学部
・TECH::CAMPでRubyを勉強
・プログラミング歴 6ヶ月(2018/3/16~)
・プログラミングをはじめるまではパソコンはYouTubeみるものでした笑
・インターン先の会社はエンジニアは1人の社員さんだけです。
・インターン先では言語はRuby・HTMLはhamlで書いてます。データベースはPostgreSQLを使っています。
そもそもなんでプログラミングやろうとおもったの?
そもそもなんで文系の僕がプログラミングの勉強を始めようかと思ったかというと、ざっくりいうと作ってみたいwebアプリを思いついて、知り合いのエンジニアの人にどれくらいお金あれば作ってくれますか?と聞いたところモック作るのに50万、ちゃんと作って納品するのに300万、あと維持するのに毎月20万はかかります。
っていわれて、、、それは**払えん!**でも、作りたいから自分で作ってみよう!って感じでプログラミングをはじめました!
あと同じ世代の方ならわかると思いますが、小さい頃ブラッディ・マンデイっていうドラマで三浦春馬がパソコンの黒画面にカタカタものすごいスピードで文字を打ってるのがかっこよくてそれに憧れてたってのもあります笑笑笑
そんなこんなでTECH::CAMPへ!
最初は本屋さんで買った本を見ながらやろうとおもったのですが、あまりにもわけわかんなかったのでプログラミング教室のTECH::CAMPで勉強することにしました、なんでTECH::CAMPにしたか?というと、、、YouTubeで見たから!!!
ただそれだけです笑
とくにそれ以外は理由はないです笑
コースはRuby on Railsコースを受講してました。
そんなこんなでTECH::CAMPで2ヶ月ほど勉強し簡単なブログアプリくらいは1人である程度作れるようになったところで、インターンさせていただける企業を探し6/5より、今の企業でインターンさせていただいてます
インターン(実務)1、2ヶ月目〜
まず、最初の1、2ヶ月間で主にやったことは
・環境構築する
・gitの使い方を覚える
・viewの修正をする
主にこの3つでした。
インターンさせていただけるのはいいことだったのですが、インターン先には社員の方は1人しかいないので基本的には1人で調べてやってね!みたいなスタンスでした汗
あと、そのときは会社の中の会議室みたいなところが僕の作業場所でした
そんなこんなでインターン(実務)が始まったわけですが、、、
インターン初日、、、
上司・・・「こーすけくん今からやってもらうプロジェクトのgithubのリポジトリに招待しておくから起動できるようにしといて〜!」
僕・・・「わ、わかりました!」
上司・・・「んじゃ、よろしく〜俺は向こうにいるからどうしてもわかんなかったらチャットして〜」
僕・・・「は、はい、、、」
ってな感じでgithubのリポジトリだけ招待されて会議室みたいなところでポツン、、、、
このときは本当に焦りました。
やばかったポイントは3つあって
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
・そもそもgithubのことをよくわかってない笑
(add,commit,pushは知っていたけど、ローカルリポジトリと、リモートリポジトリの違いすらよくわかってなかった。)
・TECH::CAMPの開発は基本的にCloud9を使っていたのでローカル開発はほとんどしていなかった。
・TECH::CAMPではデータベースはMysqlを使っていたのですが、インターン先ではPostgreSQLを使っていてしかもこのときPostgreSQLというデータベースがあるというのを知らなかったのです笑
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
とまあ、この辺が重なりまくって結局上司の人に質問しまくりながら初日は4,5時間かけて
rails s
これを通せるように頑張ってました笑
2日目以降は基本的に
viewの修正!
これが、業務の80%くらいを占めていたとおもいます。
viewの修正くらいよゆーだろwww
って思ってましたが、全くそんなことはなく、、、、
たとえば、
上司・・・「この文字の太さもうちょっと太くしといて〜」
僕・・・「わかりました!」
っていう指示ですら修正終わらせるのに当時は3,40分はかかっていたと思います。
理由は、、、
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
・htmlをもともとerbでしか書いたことなかったのでhamlで書いてあるコードを見るのが初めてだった。
・テキストエディタで「command+shift+f」の全文検索のショートカットキーを知らなかった
・多言語対応のサイトで文字がすべてi18nを用いて書かれていて、このあたりの構文を全然知らなかった。
・サイト全体でテーブル数20以上あるサイトを見るのも初めてだった。
・TECH::CAMPではcss系の勉強はあまり充実していなかった。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
ざっくりこの辺があげられるかなっておもいます。
それぞれ結構つらかったのですが、インターン行ってからcssが自分の想像以上に知識がなかったのでドットインストールで軽く勉強してました。
当時は結構たいへんでしたが、
今では、そのへんのビューの修正なら1、2分くらいあればできるようになってます。
そんななかで、いつものようにviewの修正しているときにこんなことがありました。
上司・・・「こーすけくんここ書き方キモいんだけどもうちょっと書き方かんがえてもらっていい?」
僕・・・「は、はい。。。」
心の中の僕・・・「(いや、まてまてまて、、、普通に言われたとおり実装したやん、、、書き方キモいってなんやねん汗)」
そのときはscssの書き方で
main-box {
background-color: #fff;
main-head{
color: #000;
}
}
みたいなふうに書いていたとおもいます。
今は僕自身もキモッ!っておもうんですが、当時の僕はmain-headのcolorのところにインデントが無いことにそこまでの違和感を感じなかったんですね汗
まあ、ある程度仕方ないのかもしれませんが、教養としてのスクールはきれいな書き方まで教えてくれるのは殆どないと思うので笑
とまあ、そんな感じでコードの書き方まで毎日こてんぱんに言われながら、最初の1,2ヶ月はすぎていきました。
最初の1,2ヶ月のまとめ
・ローカルの環境構築は最初はほんとに大変
・githubは実務では必須だし、無いと普通に困る
・自分は結構できると思っていたけどcssすらちゃんとよくわかってなかった
・実務だと動くだけじゃだめ、きれいなコードを書かないといけない
インターン3ヶ月目
3ヶ月に入るあたりからview以外にもコントローラーやモデルのあたりもいじるようなタスクも徐々にやらせてもらえるようになりました。
・途中保存機能の追加
・Ransackを用いたソート機能の実装
・メール機能の実装
などなど、、、いろんな実装をさせていただいたのですが、一番驚いたのは、、、
メディアクエリとInternet Explorer の対応!!!
この2つにはかなり驚きました笑
というのも、、、
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
・Google Chrome、Safari、Internet Explorerそれぞれで見え方が違うなんて一ミリも思ってなかった笑
・cssの当てる範囲をデバイスの大きさによって決める(メディアクエリ)っていう発想もなかった笑
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
まあ、両方ともちょっと考えればわかることなんですが、、、
自分で開発してるときは基本的にchromeでしか見ないですし、メディアクエリなんて言葉は1ミリも知りませんからね汗
(まあ、bootstrapは使ってたのでレスポンシブデザインで作ってはいたのですが、font-sizeとかまでデバイスの大きさによって決められるなんて知りませんでした。)
なので、会社のWindowsでサイトを確認しながらデバックデバックおこなって、みたいなことしました。
インターン4ヶ月目
インターンも始まったから4ヶ月がすぎ、、、かなり仕事にはなれてきたのですが、、、
上司から突然、、、
上司・・・「こーすけくん、今回の定例の話でで出た会社のランディングページなんだけど基本的に全部任せるからよろしくね〜!」
僕・・・「わかりました!がんばります!」
上司・・・「あ、とりあえず1週間である程度形にしといてね!よろしく〜!」
僕・・・「え、、、1週間?!まじっすか笑?」
とまあ、ざっくりこんな感じで会社のランディングページを1週間で形にするというなかなかの難題を出されました汗
まあ、結論から言うと構造自体はそこまで難しいものではなかったのでそこまで大変ではなかったのですが、、、ちゃんと納期みたいなものを設定されてゼロから仕上げるのはなかなかスリリングだったなと思います。
4ヶ月実務やっての自分の感想、、、
・プログラミング教室で行うプログラミングと実務で行うプログラミングは天と地ほど違う。
(動けばいいプログラミング教室と保守運用を考えながらやるプログラミングの違い)
・バカでも頑張ればプログラミングは全然できる!
ってのがざっくりすぎる感想ですかね
あとがき、、、
最初はとてもやる気満々で書き始めたまとめですが、、、途中から書くことがなくなってきてしまい(業務のことをどれくらい言っていいのかわからんかった笑)最後の方はグダってしまい申し訳ないです。本当は書くのがめんどくさくなったなんて言えない
ただ、結局何が伝えたいかって行ったらバカでも意外とプログラミングはできるよって伝えたかっただけです。今後も気が向けば書いてみようと思うのでよろしくおねがいします。