半年600時間-プログラミング学習ブログ!

プログラミング学習中+転職活動中! オリジナルアプリは1つ目を(仮)完成。2つ目を制作中!

もうすぐ半年終了!プログラミングブログ25週目(46時間/週)!

#今週の一言

"完成まで1年かかると悟った"

#7月4週目の学習記録

#学習開始25週目

25週目の合計学習時間:46H

7/24土曜:7H※休日 →変数からの芸名表示。JSの日付選択

7/25日曜:7H →いいね機能のミニアプリ制作

7//26月曜:9H →同期通信のミニアプリ・link_toでの番組表示・可能なら非同期

7/27火曜:4H →デザイン実装+タブ

7/28水曜:3H →Bootstrap

7/29木曜 :10H→Bootstrap

7/30金曜:6H ※休日→Bootstrap/実装

 

"一週間の振り返り"

<先週のTryの確認・25週目にチャレンジしたかったこと>

●オリジナルアプリ開発

・めげずに着実に、なんとなくで進めずに、オリアプの制作をやること

→◎:新機能はミニアプリを制作しながら、時間がかかっても着実に進めた。この姿勢と、学習に対する考え方は継続していきたい。

・いいね機能は確実に終わらせる

→○:計画は遅れたけど、なんとかいいね機能はできた。苦労した。。。

・理想はメモ機能が終わって、デザインに入るところまで

→△:メモ機能は諦めました。デザインをなんとか形に。Bootstrap+Rilsムズッ!

 

●思考力

・paizaは日々Cランク1問。

→◎:朝の勉強会効果でCランクがどんどん解けるようになってきた!

目指せ! Bランク!!!!

f:id:otome_tech:20210803230516p:plain

 

 

 

<Keep・良かったこと継続したいこと>

・学習習慣は問題なし

→先週に続いて40時間越え。そしてこれを書いている8月分もすでに30時間で、なんと100時間オーバー。それでもこんなに苦労しているプログラミングの道。。。

 

・なにはともあれBootstrapを使えたよ!!

→本当に導入が大変だった。あれは一番最初にやるべきかもしれない。面倒臭すぎる!! 簡単って噂で聞いていたけど、WEB制作では簡単かもしれないがRailsは面倒と感じましたよ。

  

<Problem・課題点>

・最後の一週間スケジュールを考えること!

→・8/1~3:いいね機能と管理者機能(編集・削除は挫折。。。)

8/4~8/6:卒業への提出物とテスト。最低限のデザイン編集!

卒業後は宿題を頑張ります!!

 

<Try・26週目にチャレンジしたいこと> 

・守るべき提出物は守ること。これ一番大事!!

 

<オリジナルアプリの候補>

◎メイン制作:寄席情報アプリ。こんな感じ。まだまだ付けたいものは沢山ある。

 

 

f:id:otome_tech:20210803232149p:plain

●ファンクラブアプリ(後回し制作予定)

→こちらはPHPで作ろうかと思案中です。できるかな??

◎イメージ:広瀬香美さんが利用している"Bitfan"が近い

kohmihirose-sing.bitfan.id

 

<一週間の学習日報>

7/24土曜 9:30~10:00 ブログ他/10:30~13:00 オリアプ/13:00~14:00 ランチ会/14:00~17:15 オリアプ/19:30~20:00 夜間交流会/21:45~23:00 オリアプ

・本日の学習時間:7時間

 

・今週(25週目)の課題

「オリアプ:カレンダー/いいね/paizaと課題図書/output」

→オリアプ:変数から芸名の表示OK。カレンダーを試行錯誤した結果、link_toメソッドの非同期化の方法に気付く。

 output : 学習ブログ(アップは明日)

 思考力:なし

 

・学習進捗と内容

→オリアプ:まさに牛歩のごとく、一歩一歩という進み具合。でも、腹を決めて「新しい機能はミニアプリを作る」とやったおかげで精神的に楽になれたし、当然理解度は高くなっている。これで良いかなと思った。今日の進捗は二つ。一つは、カレンダーの日付選択+JSにチャレンジ。まずはどうやって要素を取得するのか、そして取得した後にどうやって表示を切り替えるのか? そこをノートに書きながら進めていく。まず要素の取得に四苦八苦。id名が同じだと上書きされて一つにしかイベントが発火しない。では、どうやってeachメソッドを使いつつ、すべてに違うid名をつけるのか? 単純にその変数eventが持つ「id」をHTMLのid名にすることにして、それぞれに別々の名前をつけることができた。

次にJS側の取得方法。idを別々にしても、それをどうやってJSで取得していけば良いのか。。。ここで詰まる。一旦休憩。

もう一つ、今は直入力にしているが、今後は変数@eventsから指定の日付の番組情報を表示させる。そのための記述も進めていく。ここも少し悩んだがなんとか完成、、、のはずが「芸名」だけが表示されない。ここは一つずつbinding.pryでデータの所在を確認しながら進めていく。やはり、ActiveHash+中間テーブルの仕様なので、ミニアプリ通りにはいかない。一つずつ辿って、夜に再チャレンジしたらできた!

やや冗長なコードだが、まずはよしとする。

再び、日付選択・切替表示と向き合う。ここで、もしJSを使わないなら?と考えた。その場合はlink_toを使って詳細ページへ飛ぶ。なら、そのlink_toを非同期でできたら、、、検索したら「いいね機能」がまさにlink_toの非同期での実装でたくさんあった!

これだと気づいたところで、深夜。続きは明日。

 

・反省と明日の予定

→振り返ると、ちょっと学習時間が短い1日だったような。煮詰まっていたから仕方がないか。明日は朝のpaiza勉強会。午前中は仕事。しっかり時間を使って、いいね機能のミニアプリと、カレンダーの実装を進めていく。明日の目標は、日付選択にlink_toの非同期をつけること。それができたら、id要素の取得問題に移る。なんとか進めていきたい。

 

 

============

7/25日曜 6:30~7:30 paiza/8:00~8:30 ブログ/14:00~15:00 発表準備/15:00~16:00 相談会/17:00~20:00 ミニアプリ/21:30~22:30 ミニアプリ(調査)

・本日の学習時間:7時間

 

・今週(25週目)の課題

「オリアプ:カレンダー日付選択/いいね/paizaと課題図書/output」

→オリアプ: link_toメソッドの非同期化のついて。使えそうな情報を集めミニアプリの制作中。

 output : 学習ブログをアップ

 思考力:朝のpaiza会

 

・学習進捗と内容

→オリアプ:昨日、色々とJSと格闘した結果、link_toの非同期=いいねだ!!と気づいたので、さっそく今日からいいね機能のミニアプリを制作。これでトントン拍子かと思いきや、ミニアプリにつまづき中。もう夜。。。

非同期はそんなに簡単じゃないと気づいた。。。またまた踏ん張り時が訪れた。唯一の救いは、これをミニアプリでやっていること。オリアプでやっていたら、ぐちゃぐちゃになって悲惨な結末になるところだった。。。本当に良かったと思う。

いろんな山があったけど、本当にここが大きな山。ajaxを使用したJSの非同期通信での画面の切替表示。

今後のアプリ制作でも便利な機能になりそう。しっかり学習する。卒業の日は近づいているけど、ズルをしたり、なんとなくで終わらせないで、オリジナルアプリは確実な実装を続ける。そこはブレずに戦おう。

 

・反省と明日の予定

→朝からpaizaをやったし、反省点は特にない。大きく振り返れば、あの時のあの時間が惜しい、、、と思ったりもするが、それはその時のことなので、今日1日をしっかりやったから良しとする。一週間の最低目標は、カレンダーによる切り替え表示だったけど、それが明日で終わるかどうか怪しい。

また、理想と現実で考えていくとするなら、非同期を一度やめて、普通にlink_toでshowページを表示させる方法もありかなと思った。その上で、処理を確認して非同期に変更していくとか。牛歩のごとく一歩ずつ頑張りたい。

明日の予定「いいねミニアプリを非同期なしで作成→非同期バージョンを作成→二つをやった上でどちらかでオリアプ実装。まずは新宿末廣亭に限定して日付切り替えを可能にする。」これが最低限。

その後、一度「タグの切り替えと表示の切り替え」を本格的に進める。

この一週間で「日付選択で番組表の表示」と「タグですべての演芸場の情報の切り替え」を可能にしていく。同時にデザインになっていく。後回しは「番組表へのいいね機能」と「マイページのメモ機能」と「ミニアプリの俺の寄席Trello風」。

index周りのデータ表示の実装とデザインを優先して進めること。デプロイには、来週の4日間は費やせるように見ておきたい。

 

============

7/26月曜 6:00~8:45 就活・書類作成/9:00~11:00 オリアプ[いいねミニアプリ]/11:00~13:30 同期通信でカレンダー切り替え/13:30~14:30 CA面談/14:30~16:00 オリアプ/16:00~17:00 LC面談/22:30~23:30 Udemy講座

 

・本日の学習時間:9時間

 

・今週(25週目)の課題

「オリアプ:カレンダー/いいね/paizaと課題図書/output」

→オリアプ:同期通信での実装に切り替え。挙動は正常。いよいよデザインへ。

 output : Twitter・学習ブログ・面談のまとめ共有

 思考力:なし

 

・学習進捗と内容

→オリアプ:まずは「現実的にできること」を意識して、非同期は卒業後にやることへ。同期通信での「いいね機能ミニアプリ」を作成し、非同期よりもはるかに簡単なことに感動をする。そして、そのままオリアプの方へカレンダーの日付選択に応用して実装。きちんと切替表示ができた。8月にはこれが非同期で動くと嬉しい。また、条件分岐とrenderの部分テンプレートを駆使してindexビューの整理と、各演芸場の切り替えを行う。満足。

タブの切り替えの範囲を「番組表〜カレンダー〜ツイッター〜地図」まで広げたいのだけど、久々に修正をかけてもやはり上手く表示されない。ここは完全にHTMLの要素とJavaScriptの範囲。今週はそこと格闘しつつのデザイン実装。bootstrapのUdemy講義をさっさと受けて、どういう方針で進めるかを決めていく。水曜〜金曜でガンガン進める予定。

 

・反省と明日の予定

→昨日の日曜の有志の会で興味深い話は「卒業発表で燃え尽きる人がいる」ということ。まさに甲子園症候群。気をつけたい。

今日の反省は、朝からやっていたから。。。と言い訳をしつつも夜の学習がストップしたこと。疲れた。。。

その代わりじゃないけど、明日は朝のpaiza勉強会もあるし、仕事もあるし、なのでしっかり午前中を過ごしていきたい。

Udemyが5時間くらいかかりそうなので、火曜日中に終わらせる。タブのアプローチも今のままでいくのか、ここでJqueryをやるのか、ミニアプリで試しつつ決める。

就活に関しては、まぁ自分の社会的な立ち位置を理解しているつもりなので、こんな人材をおもしろがってくれる企業に出会えることを願いつつ、やるべきことをやって上から目線でガンガンに攻めていきたい。paizaのBランクは卒業後になるけど、さっさと達成したい。

 

============

7/27火曜 6:30~7:30 paiza/7:30~10:00 Udemyのbootstrap講座/22:30~23:30 bootstrap

・本日の学習時間:4時間

 

・今週(25週目)の課題

「オリアプ:カレンダー/いいね/paizaと課題図書/output」

→オリアプ:進展なし。デザインの準備中

 output : なし

 思考力:paizaはCランク2問正解

 

・学習進捗と内容

→オリアプ:bootstrapの基礎から学び、何ができてどう活かせそうかを考え中。いろんなコンポーネントがあることはよくわかった。正解だったのは、お金を出して動画教材でやっていること。1.5倍速で、ザーッと何ができるかを知れる。いちいち立ち止まることなく、これとこれを採用しよう!と適宜メモをとりながら進めていけるので、これなら仕事の日でもやっていけそう。なんとか火曜〜水曜で大まかな概要とアイデアを整理し、木曜〜金曜でトップページから実装していく。タブの切り替えもbootstrapでやれそうか、今のjavascriptを解読するのか考える。こぼれたとしても土曜日までに仮決定まで持ったいく。

思考力:やっていくと慣れるものなのか、paizaのCランクが解けないと思っていた先週から、今日は2問の回答ができて久しぶりにランクの数字も上がった。引き続き上げて行って目指せBランク!! paizaの朝の勉強会がない日もやることは意識したい。

 

・反省と明日の予定

→反省点は特になし。仕事前の朝からやったし、仕事後もUdemyの動画だけ進めておこうとやれることをやった。一点だけ、草生やすの忘れたから、水曜はUdemyをやりつつも草を生やしておく。

 

 

============

7/28水曜 8:30~10:00 Udemy/22:30~23:30 Udemy

・本日の学習時間:3時間

 

・今週(25週目)の課題

「オリアプ:カレンダー/いいね/paizaと課題図書/output」

→オリアプ:UdemyにてBootstrapの学習。

 output : Twitter

 思考力:なし

 

・学習進捗と内容

→オリアプ:Udemyにて有料講座を2つ購入していたので、今週はそれをやっている。簡単、簡単とは言うけど、初心者がやる初めての機能なので準備をすることを忘れない。

今のところ有料で買ってよかったと思う。千円ちょっとで、一気にBootstrapで出来ることが何かを知ることができるし、テンプレートをそのままコピーではなく、今の基礎の上に一部でBootstrapを導入する形が出来そうだと予測ができた。

 

・反省と明日の予定

→仕事の日もしっかり学習できている。このまま今週を進める。タブに関しても今回はBootstrapが活用できそう。かなり時短になるのではないかと思った、

 

 

============

7/29木曜 6:30~7:30 paiza/11:45~14:00 オリアプ/16:00~22:00 デザイン/22:00~25:30 デザイン

・本日の学習時間:10時間

 

・今週(25週目)の課題

「オリアプ:カレンダー/いいね/paizaと課題図書/output」

→オリアプ:udemy講座は2つ終了。Bootstrapでの実装を開始

 output : なし

 思考力:paizaのCランク。今週からCランクが出来るようになってきた!

 

・学習進捗と内容

→オリアプ:Udemyのおかげで、Bootstrapの機能の概要や使い方が掴めた。まずは今のindexページをコピーしたサンプルサイトを作成し、そこで細かい実装を進める。それが終わったら、いよいよアプリの方に実装。サイトデザインは楽しいが、凝り始めると時間がかかる。そこは取捨選択で進めつつ、今後のアップデートに回す。

 

・反省と明日の予定

→休日の1日学習をしっかりやった。なんとか終わりが見えてきた。理想は金曜でデザインが終了だが、ちょっとこぼれそうな雰囲気もある。残り一週間。今はHerokuでの本番環境確認だが、運営を考えた時のデプロイも来週は考えないといけない。

まずは、デザインの完成。今の機能をエラーなく融合させる。

反省点は、デザインにハマると深夜になること。

 

 

============

7/30金曜 17:00~20:00 デザイン/22:00~25:00 デザイン

・本日の学習時間:6時間

 

・今週(25週目)の課題

「オリアプ:カレンダー/いいね/paizaと課題図書/output」

→オリアプ:デザインをひたすら進めている

 output : なし

 思考力:なし

 

・学習進捗と内容

→オリアプ:今週の最重要課題のデザイン。ひたすらサンプルサイトで作成しているが、夜に冒頭部分だけをBootstrapを導入して表示してみる。。。この時、事件が起こった。

RailsでのBootstrap導入がめちゃくちゃ複雑で難しい。HTMLで作るだけなら本当に簡単なのに。。。検索を駆使して、概要を掴みなんとかBootstrapの導入を進めた。

その次に、導入がやっとできたと思ったら、今度は自分で作ったCCSファイルがまったく反映されない。え?どういうこと? このCCSの上書きが検索しても全く分からない。これは大変なことになると覚悟した時に深夜1時。明日は休日出勤があるので寝る。

ちなみに、土曜の朝はpaiza勉強会。違うことをやってリフレッシュして仕事前に再び向き合ってみる。

 

・反省と明日の予定

RailsにおけるBootstrapの導入を軽く考えていた。こんなに複雑だなんて。。。

簡単じゃないなと痛感した。布団に入ってから、どうしても気になって、検索ワードを考えながら探してみると、また別の記事が出てきた。もしかしたらこれでいけるかも。。。希望を持って寝た。土曜日は仕事。なんとかindexページだけでも完成させたい。

あと、昨日の寝不足のせいで、午前中に全く集中ができず、軽く昼寝のつもりが気づいたら夕方。リズムを崩すとこうなるから良くない。ここから気合を入れ直して夕方から集中したのは褒めてあげたい。今日やらなかったら土日が悲惨なことになっていたと思う。