tech::expert 10週間の振り返り
7月5日(金)に最終課題発表が終わりました!
これからは、就活生になります。では毎度お馴染みの振り返りしよう。
6週目以降は、メルカリのコピーサイトを作るチーム開発でした。
チーム開発で重要だと感じたことは、以下3つです。
・チームの方針と個人の役割分担
・git-hubの使い方
・ローカルとAWSの違い
チーム開発からは、その名の通りチームでの作業となります。さらに、チーム内からスクラムマスターというリーダー的存在を選出し、スクラムマスターがチームを率いて開発を進める形になります。リーダーに求められるのは、進捗の把握と決断です。チームの進捗を正確に把握し、期日に合わせて進む方向や個人の役割を修正していくことが重要なポイントとなります。うちのチームの場合は、予定より進捗が遅かったので、もっと機能を実装したいという思いがあったものの、最低限の機能を実装する方向に修正することになりました。また、メンバーごとの作業進捗に偏りが出てきたので、途中で役割分担を再度見直すことになりました。
チームでgithubを使う??となりました。基本は、フォークで進めるか、コントリビュータで進めるかの二択です。うちのチームはフォークして、みんなでコードレビューして、LGTMになったらスクラムマスターがマージする流れでやっていました。マージ後は、github desktopでupstream/masterをして差分をマージします。チーム開発は、コンフリクトが頻発するので、あらかじめ使うgemやモデルは作っておくとか、なるべく面倒を避けることに尽力することをおすすめします(慣れかもしれません。。)
最後はAWSとローカルの違いというやつで、デプロイ担当ではなかったので詳しくは理解していないのですが、とにかくデプロイすると本番でエラーが出る。新しい機能を実装して、マージして、18時にデプロイするとエラーが出て、19時に帰れない。。みたいな。画像を指定するときは、下記のようにしないと出てこないとか。設定してたはずの環境変数が消えてたとか。よくわからないエラーが発生したのはうちだけ??
■やったこと
ユーザマイページ(マークアップ)
商品出品ページ(マークアップ)
出品した商品ページ(マークアップ)
商品出品(画像プレビュー)
DB設計
■できなかったこと
出品ページで複数枚写真の投稿
個人アプリの作成
■感想
楽しかった!毎日、教室に通うのは大変でしたけれど。2ヶ月半はあっという間で。
なぜ楽しかったのか?が、とても気になるところです。下記に、思いつく点をあげてみます。
・プログラミングという未知の領域を学ぶ
・様々な経歴があるメンバーと切磋琢磨できる
・ライフコーチやメンターなど学習をサポートする人がいる
・カリキュラムが整っており、効率よく学習を進めることができる
・心斎橋付近なのでランチが充実している
・失敗を許される環境である
ざっくりですが、こんな感じでしょうか。特にプログラミングは文法や概念を学ぶより、図工みたいに手を動かして物を作っていくような感覚で進められるところが楽しかったです。
ぶん
tech::expert 5週間の振り返り
5週間の振り返り、36日目!
もうカリキュラムの半分が終わったことになる。残り5週間。
■やったこと
・チャットアプリの開発(インクリメンタルサーチ、自動更新)
・サーバの基本知識(IPアドレス、パーミッション、ログ出力)
・AWS(クラウド基礎、アカウント作成、EC2作成、Capistaranoによるデプロイ作業の自動化)
・就活セミナー2回目(IT業界の概要、説明)
・個人アプリの開発に向けての言語選択(phpにしよ)
■できなかったこと
・チャットアプリを開発が完了したもののインクリメンタルサーチや自動更新などなど、あまり理解できていないなぁと感じるので改めて要復習。
■感想
チャットアプリの開発中は期日があったの気が張り詰めた状態で学習できていたが、終わった瞬間に完全に糸が切れてしまった。次は、これからの1週間で個人アプリの作成を終える必要があるので、もう一度気を引き締める。
就活セミナー2回目では、自社開発、受託開発、SESの特徴や大阪と東京の違い、初年度年収イメージなどを知るよい機会となった。tech卒業生は自社開発してるとこに進むことが多いみたい。改めて何しようか悩む。
ぶん
tech::expert 3週間の振り返り
tech::expert 25日目にして、振り返り。
■やったこと
・応用カリキュラムに入って基礎を学ぶ(javascript、jquery、github、sql)
・チャットアプリの開発に取り組む(README、データベース設計)
・ミニアプリ開発に取り組み発表する(html、ruby、rails基礎の復習+α)
■できなかったこと
・ミニアプリ開発は、開発期間1週間と短いが、ブログみたいなものを作るという課題が与えられており、基礎カリキュラムの復習的存在。個人的には1日1時間と決めて取り組んでいたものの、kaminariやらmaterializeのgemを入れると色々エラーが頻発して1日1時間で収まらなかった。結果、10時間くらい費やして、色々やってみたかったけど技術なくて色々と断念した。
・基礎カリキュラムの内容をもっと理解した状態で、応用カリキュラムに入りたかった。特にRailsについて、MVCやらroute、gem、bundleなどなど、チャットアプリの開発に入ってからはエラーとの戦いです。
・github!これは本当に曲者で。開発したデータをクラウドに保存する際に使用するソフトのことで、開発をしてはデータを合体(マージ)させてという流れがあり、そこで誤った合体をしてしまったら、せっかくの苦労が水の泡という。しっかりと使い方を理解しておきたい超重要なポイントです。はい。
■感想
休まず毎日10時間以上を勉強することに疲労感を感じてきた。それでも、何かいい参考書ないかなとか、もっと知識が欲しいなという思いがある状態。特にミニアプリ開発の時に、やりたいことができなかった不完全燃焼感があって、もっとなんか面白いことができなかったのかという気持ちになるのでした。
ぶん
第9回プログラミングに関する問題
第9回プログラミングに関する問題!
睡眠は7時間確保しましょう。
問題
クラスおよびクラスメソッド、インスタンスメソッドを定義してください。
(何クラスでも構いません)
回答
思いつきましたでしょうか。
クラスメソッドはselfをつける。インスタンスメソッドはselfをつけない。
クラスは設計図で、インスタンスはクラスを元に生成するイメージです。
下記は人クラスを設計図として、色んな名前の色んな仕事をする人を生成することをイメージしています。
class human ⬅︎クラス(設計図)
def self.population ⬅︎クラスメソッド(クラスがする技)
処理(人口を数える)
end
def name ⬅︎インスタンスメソッド(各インタンスがする技)
処理(名前を言う)
end
def work ⬅︎インスタンスメソッド(各インタンスがする技)
処理(仕事をする)
end
end
↓こっちみるとわかりやすいかも。。
https://techacademy.jp/magazine/9720
ぶん
第7回プログラミングに関する問題
第7回プログラミングに関する問題!
おはようございます。今日もおひとつ。
問題
下記のif文を後置ifで書いてください。
if 条件式(眠い)
実行する処理(二度寝)
end
訳:眠いなら、二度寝する。終わった。。
回答
実行する処理(二度寝) if 条件式(眠い)
訳:二度寝する。眠いなら。
Rubyでは後置ifなんて書き方があるので、endも省略できてシンプル!って思ってたら、逆にコードが読みづらいこともあるみたいでして。以下は、qiitaで記事になってたので参考URLです。
https://qiita.com/jnchito/items/4e47559a4c821474233a
あ、二度寝は休日限定です。気をつけましょう。
ぶん
tech::expert 2週間の振り返り
tech::expert15日目にして、振り返り。
■やったこと
・中間試験、模試の復習(html,css,ruby,rails)
・自分の将来像の検討(これに関しては別記事で書けたらと…)。
・カリキュラムのドリルを進める&復習する。
→7日目の中間試験は17点でした(自分の理解度を確認する)。
→14日目の本試験を75点で合格(合格ラインは70点以上です)。
■後悔
・カリキュラムのドリルを保留にしていたので、中間試験や模試の問題を復習しても理解できなかった。なので、カリキュラム通りにドリルをすることをオススメします!ちゃんとやってなかったのは私くらいでしょうか。
・単語帳を作ればよかった!言われたもののやってなかった。やれやれ言われるので、仕方なくやってみると記憶に残った。(素直に最初からやっときゃよかった、こういうパターン多くて損してる自分)
■感想
毎日10時間以上の勉強できるのって贅沢だなと感じます。仕事してると毎日の業務に忙殺されて、成長してるなとか、面白いなとか、そういう感覚がなくなってくので。ここで学んでいることは、残念ながら記憶から消えていくものなので、復習&復習で、しっかりと身につけていきたいと思います(いや書き残すのがベストなのか)。
ぶん