チーム開発3週間目終了(プログラミングスクール)
現在、某プログラミングスクールに通っています。卒業予定は10月4日。あと1週間になりました。いまは最終課題のチーム開発を進めています。そこで3週間経って気付いたことや感じたことを残せていけたらと思いこの記事を書き始めました。簡単ですが、これからここに通い始める未来の誰かの参考になれば良いな。
チーム開発1週間目に感じたことは前回の記事を参照ください。
今回は2,3週を通じて感じたことを書いていきます。この2週間を一言で表すと
「チームプレーと目的意識は大切」
ということ。細分化して、大切だと感じたことは主に下記。
メンバーに頼る
仕事をやる上…生きていくうえでも当たり前のことですね。わからないことがあれば自分で解決したい。それを乗り越えてこそ成長していくものだ。そう考え行動して繰り返すことで人間は成長できるんだと信じています。しかし、仕事を始めとする物事には基本的に納期、期限があります。それは最低限しっかり守れるような仕事をしたい(もちろん守れなかった時の対策も練る)。タスクが割り振られた時、自分で諸々試行錯誤して成功したら次に進む。しかしいまの自分の理解の範疇を超えてしまったりしたものについては悩みすぎないほうが良い。
今回、僕は一つの機能実装について約3日ほど悩んでしまった。牛歩並のスピードでしか進まず、抱えていたタスクを終えないと次のタスクに着手できない、そんなタスクに対してここまで時間をかけることはチーム全体の進捗に関わる。従って僕は今回、得意なメンバーにヘルプを要請した。結果、メンバーが上手に動いてくれて期限内に終わらせることができた。本当に感謝だ。つまり何を学んだかって言うと「わからないことはできそうな人に協力要請を出そう」という至ってシンプルなこと。こういう危機管理能力は前職の一人海外出張等で鍛えられた気がする。
必要最低限のタスクを考え、優先する
これも仕事をやる上でアタリマエのこと。メンバー全員がそれなりに機能を実装する力があったため「クローンサイトと同じものをつくる」ということにこだわりすぎた。というのも、この最終課題には予めタスクが割り振られている。しかしその完了定義がとても曖昧な為、どこまでの機能を実装するか、完成度にするかは開発している本人たちに任される。とはいえ「Done is better than Perfect.」まさにこの言葉通り、「完璧」なものより未完成でも「とりあえず一通りできた」ものが評価される。なぜなら完璧でも一通り終わってなかったら「何もできていない」状態と同じだから。一通りできてからこだわった機能を追加した方がリスクと比べて完成度が高いものが速く出来上がるのではないかな。
つまり、僕らはタスク外の機能まで実装しすぎたのだ。結果的に期限である4週間の内の3週間目で終了したから良いものの、さらにあのままこだわり続けていたら3周目で終わることはできなかったであろう。それを2周目のスプリントレビューで気付き、3周目に反映させた結果…必須機能を含めた+@の実装を終わらせることができた。この学びは大きかった。これはきっと実際の開発現場でもきっと活きることだと信じている。
ハードウェアのエンジニアをしていたころも、もっとこれを意識したかったな。切羽詰まりすぎてもこだわっていた時期があったことを思い出した。その失敗経験が今にこうやって活かされているのは、とてもありがたい。貴重な経験をさせてくれた前職の環境に感謝。
個人的な学び
チーム開発で感じたのは上記になります。そして2,3週目で僕個人が担当したのは
・商品出品ページのマークアップ
・商品出品のサーバーサイドの機能(フォームからDBへの登録)を実装
・商品の削除機能、詳細表示機能のサーバーサイドを実装
・4500項目以上のカテゴリのシードデータ作成、商品に紐付けて登録
・ajaxを用いてカテゴリ表示機能を実装。
・jqueryを用いたトップページのカテゴリ、プルダウン機能を実装。
個人的にあまり得意意識が高くなかったajax周りを触れられたのは理解が深まり、自信になった。タスクを自分から率先して挑んで正解だった。しかも自信どころか楽しく感じたのはとても嬉しくて楽しくてajax、jqueryが好きになった。笑
2,3週間の毎日の積み上げ
ということで前回から載せていなかった毎日の積み上げツイートを最後に紹介、振り返って終わります。「毎日」に穴があるのはご愛嬌。
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月16日
★チーム開発10日目終了
★商品出品ページのサーバーサイド…ドラッグ&ドロップで画像を登録できそう、なところで今日はストップ
これからサーバーサイド!というところで少し手こずってしまった。明日はぽぽぽぽーんと進められそう!#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月17日
★チーム開発11日目終了
★ビューのJavaScript使用部分実装
★DB構成これで行こう!ってなったところで終了。
今日はさくさくっといけるかと思いきやそうでもなくて残念…orz…明日以降、データベースへ登録できたらスイスイ終わるはず!#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月18日
★チーム開発11日目終了
★商品周りのDBを再設計
★約1500件のシードデータをDBに取り入れる
はいキター!手間やけど明日には全カテゴリをシードデータに取り込める〜!めっちゃ嬉しい〜!サーバーサイドも楽しい〜!
おやすみ〜!#プログラミング学習#テックエキスパート pic.twitter.com/hVtSDngbnR
チーム開発12日目でした
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月19日
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月19日
★チーム開発13日目終了
★全シードデータ作成完了
★出品登録フォーム3割完成
後はデータの登録。画像の受け取りがうまくできない…orz…それ以外はちゃんと飛んでるみたいだから少し安心。#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月22日
★チーム開発16日目終了
★商品出品機能の実装
金曜日の夜から今朝まで少しお休みをもらってました。しかし商品出品のサーバーサイド…進捗遅かったのでメンバーに協力要請。でもあと少しのところまで来た気がするから、残りを頑張る!#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月23日
★チーム開発17日目終了
★商品出品機能LGTM
★シードデータ作成
今日は高知の受講生とお話ししたり、59期に軽くGitを教えたり、シードデータつくったりした1日。
本番環境でシード作ったらメモリ足りずユニコーン起動せず。拡張する!#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月24日
★チーム開発18日目終了
★必須機能が現在チームで取り組んでいるタスクで終わりそう
今日はシードデータを本番環境につくったり、環境変数を本番環境に設置したり、削除機能実装。予定通り3回目のレビューで必須機能は終わりそう!#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月25日
★チーム開発19日目終了
★カテゴリ機能実装開始
あんまり得意じゃなかったajax!使えば使うほど楽しくなってくる領域に入ってきて嬉しい!明日はトップページのカテゴリプルダウンを実装するぞ〜!#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月26日
★チーム開発20日目終了
★必須機能の実装終了
★細かいcssなどを整理
今日はリファクタリング、必要なシードデータ作り直し、後回しにしていた部分を整えたり、交通整理を優先した1日でした。明日こそトップページのカテゴリ作りたい!#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月28日
★チーム開発22日目終了
★第三回スプリントレビュー終了
メンバーの協力もあり、3回目のスプリントレビューで必須機能+αの実装完了。来週は最終課題調整、整理を終わらせて就活関係のコミットも増やしていきたい!#テックエキスパート#プログラミング学習
いやはや、 実践現場に比べたらまだまだ未熟なのだろうけど…この2週間でチームメンバー全体や個人的にもとても成長を実感している。もちろんスランプもあったけど、この調子で成長し続けたい!
この記事が何かしら、誰かの参考になることを祈って…
ありがとうございました!
チーム開発1週間目終了
現在、某プログラミングスクールに通っています。ここのスクールのカリキュラムの特徴として「チーム開発」がある。同じ時期に入校した生徒が共同で最終課題として一つのサービス(某フリマアプリのクローンサイト)を作成するというものだ。
そんなチーム開発も1周間が過ぎ一回目のスプリントレビューが終わり、今日はそれから2日後の9日目が終わった。
早速だけど、
チーム開発1週間目が終わった感想
を一言で言うと…
学ぶことが多い
特に下記の点について独学と比べて学ぶことが多いと感じた。下記に詳細をまとめました。大文字にしてる部分だけ読んだら1分もしないうちに内容把握できます、きっと。
Gitについて
そう、一人で勉強していたらgitやgithubとか「こういう仕組みでこうなるわけね〜」って学ぶことはできる。じゃあ実際に他のメンバーと一緒に作業しましょう〜ってなったらコンフリクトが起きたりそれを修正するにはどうすればよいのか等問題にぶつかる。これは一人、独学でプログラミングを勉強していたらまず感じなかったこと。一人だったら「これぐらいでブランチ切って作業を進めよう」とかせいぜい考えるのは「コミットの時はちゃんとした名前にしよう」とかその程度だった。(僕のずぼらな性格が現れる…)
でもチーム開発を通してGitやGithubの便利さを実感したしチーム開発にとって…ましてやリモートなどを行うにしたらなおさら重要なツールだと再認識した。(まだ現場に出ていないけどきっと重要だ、と感じるぐらい重要だと実感)
他の人のコードを見れる見られる、レビューできるされる
自分がこのタスクに求めるとしたらどんなことを求めるだろうか、と依頼した側の立場になってコードをレビューする。こんな書き方があるんだ、こんなに綺麗にかけるのか、と人のコードの書き方を見て学べる。
これは独学ではなかなか経験できない。勉強の教材のコードももちろんあるけど「なんでそのような記述なの?」と教材に聞いても媒体によっては答えは返ってこない。しかしチーム開発だとその場で聞けるしお互いアウトプットするから理解も深まる。もちろんレビューするし、レビューもされる。人に見られると考えながら作業するのはまた独学では味わえないものがある。
タスクの振り分け方
これはどんな仕事に置いても重要なことだと思う。全体のタスクの量や進捗を俯瞰して現在どの位置にいるのか。誰がどのタスクをいつまでにするのか。それは全体から見てどのぐらい作業が進むのか。その人にとってどれくらい時間がかかるのか…今週の目標を達成するには何をしなければいけないのか、などタスク管理は考えることはたくさんある。もちろん考えるだけでは作業は進まない。これまでタスク管理や優先順位をなかなか決められなくて、機械エンジニアとして働いていた時も周囲の方々に迷惑を掛けて仕事をしてきた。それが少しだけ俯瞰して見えるようになってきた…気がする!!
将来的には人をまとめる、組織をまとめる仕事も悪くないな…と気付いた。もちろんまずは現場でモノづくりできるプログラマーとして業界の仕事の仕方などを先に身を持って学びたい。
ざっと書いたけど1週間で大きく感じたのは上記の3点が大きかった。
他にも実際に行った作業内容のこととかあるけどその詳細は割愛。代わりに下記に毎晩つぶやいている今日の積み上げツイートをまとめておいておきます。ざっくりまとめると…1週間目僕が行った作業は
・自動デプロイの構築
・ビューをいくつか作成
でした。
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月7日
★チーム開発1日目終了
失敗するなら今のうちに失敗して学びたい。だからチーム開発はどんどん苦手なことに挑戦したい!ということでスクラムマスターは人に任せました。
最初はデプロイ担当。不得意分野の経験積んで理解を深める!#プログラミング初心者 #テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月8日
★チーム開発2日目終了
★自動デプロイ実装。しかしBasic認証が通らない問題発生、明日に持ち越し
AWS…ネットを通しているからか、少し厄介に感じる。同じことやってるのに通ったり通らなかったり。反映されるのに時間がかかるんでしょうか?#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月9日
★チーム開発3日目
★画像の保存先を本番環境をS3に、それ以外をlocalに設定完了。
自動デプロイでちゃんと変更が保存されているのにそのcommitがgit logに残らない問題が発生。こんなことある?もうだめ…悔しいけど明日に持ち越し。#プログラミング
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月10日
★チーム開発4日目
★自動デプロイ、S3への画像の保存、ベーシック認証LGTM
★ビューの1ページほぼ完成
昨日から今日にかけてGitをいじくりまわしとても勉強になりました。理解も深まった!Linux上で操作するのは見えてないからこそ楽しい!#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月11日
★チーム開発5日目
★CA面談
★viewの中身一つ完成
★footerの一つ7割完成
レスポンシブデザインへの対応、Sassを変数やプレースホルダーなどを用いてリファクタリング。Sassが便利過ぎてもう普通のCSSの記述には戻れない体になってしまった…#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月12日
★チーム開発6日目
★マイページレスポンシブ対応済
★フッター完成、レスポンシブも対応済
★商品一覧ページ作成着手、3割完成
★朝、アカペラの練習済
フロント、レスポンシブ対応の鬼になってる。これは個人ポートフォリオにも活かせる!#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月13日
★チーム開発7日目
★初めてのスプリントレビュー
もう少し効率よく作業を分担できたな〜先見力…。そしてもっとgitと仲良くなりたい!退職記念に同期からもらったGitの本読も!
明日はビューを1つ丸々完成させて2つ目に進みたい…!#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月14日
★チーム開発8日目
★ビューページ2個とサーバーサイド1つのタスクを完成、コードレビューLGTM
★ビューページ1つ完成、プルリク出してコードレビュー待ち
朝、悩んでたJavascriptの記述が動いて嬉しかった!こういうところ楽しいね!#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月15日
★チーム開発9日目
★ビュー1つLGTM、もう一つもプルリク出して終了
今考えたら、プルリク出してるやつが終わったらもうフロントをすることがないことに気付いた。少し寂しい笑
残りは経験積みたいサーバーサイド!しっかり身に付ける!#プログラミング学習#テックエキスパート
明日は最終課題で担当するフロント側として最後のLGTMをメンターからもらい、サーバー側の作業に移る予定。サーバー側はあまり経験を積んでないからここで復習も兼ねてしっかり身につけたいな。
以上、チーム開発1週間目が終わった感想でした!
(やっと誰かのためになりそうな記事を書けた…気がする。)
発表、は楽しい。
ちょっとだけ緊張もしたけど、自分なりに一生懸命作ったものに対してみんなに発表するのって楽しいですね。プログラミングに関して人の前で発表する機会はなかなかないからとても良い機会だった。
1.簡単日記
今日は個人アプリの発表。自分が作成したアプリを人に説明するのは恥ずかしいけど、プレゼンもそれなりに用意していったから達成感があった。達成感というよりかなり神経使ったな、という感覚。ドラクエでマダンテ使った感じ。
2.今日の学び
◆Work Life Balance
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月6日
イベント企画者特化型のタスク管理アプリを作成しました(^o^)
修正、機能を拡張したい点も多々あるけど一段落!自分が課題だと感じていた事をプログラミングで解決できるって楽しい!
・使い方等資料https://t.co/oqO43V6i9k
・URLhttps://t.co/dIVSW5nVbh#プログラミング学習 pic.twitter.com/M7RcshTyIo
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月6日
★個人アプリ発表
★twitterでも公開
修正したい点や機能を追加したい点も多いけどとりあえず公開!金曜日の深夜で見てる人少ないかもやけど公開!フィードバックとかどうやったらもらえるんやろうか…。#プログラミング学習 https://t.co/D5sn4rZUFI
twitterでも作成したアプリを公開しました。大した機能は実装していないから反響もなにもないだろうけど、人の目に触れるところに出すことに意味がある、と信じて未熟ながらも公開!
フィードバックがあれば是非欲しいな…
◆Work Life Balance
(イベント企画者特化型タスク管理アプリ)
使い方の資料
https://drive.google.com/file/d/1V1VBsLOdPJxNRUQoYo2pk1OWRBcgIZDz/view
URL
https://livetasks.herokuapp.com/
3.明日やりたいこと
ポートフォリオサイトをちらっと公開、そのアウトプット。チーム開発開始。
4.終わりに
今日は他の方のアプリ開発の発表を聞いて刺激をもらった。こんなこともできるんだ、もっと勉強したいなだとか大変そうだな…自分も頑張りたいな、とか…学びが多かった一日でした!今日も成長したな〜!
ということで明日も実りある一日にするぞ!今日も一日ありがとうございました。
おやすみなさい…zZZ
発表準備、も楽しい。
自分なりに一生懸命作成したアプリの発表準備も楽しい。どんなふうに説明しようかな、どんなふうに説明したらわかりやすいかな、どんな情報を聞いてる人は求めてるのかな、どんな情報を持った人が聞くのかな、時間内に伝えたいことをちゃんと伝えられるかな、とか。発表って考えたいことがたくさんある。そしてこれらを考えながら作成するのも楽しい。
1.簡単日記
今日は市役所の食堂へスクールの人たちと一緒にご飯へ。カツ丼大を食べたけどご飯も多くてカツも大きくて安くて美味しかったな〜。コンビニ飯よりコスパ良い!おにぎり作れなかった日は市役所で食べようかな!あとたまにはみんなでご飯食べに行くのも良いね!楽しかった〜\(^o^)/
2.今日の学び
◆#AWS #S3 を使用した画像の保存を#heroku で行う
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月5日
・AWSでアクセスキーを取得(公開鍵と秘密鍵をcsvで吐き出す)
・S3でバケットを作成
・バケットのアクセスを制限
・fogとcarrierwaveの設定
・config/initializer/carrierwaveにAWSでの設定を記述
・herokuの環境変数に鍵を格納#プログラミング初心者
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月5日
★個人アプリの画像保存をS3に格納するパスを通す
★個人アプリ発表資料作成
今日は明日の発表に向けた調整。S3へのパスを通すのを忘れてて急遽通したけどこれに少し時間とられてしまったな…でも次回やるときはできる自信がついて成長したからよし!笑#プログラミング学習
今日はherokuでデプロイしていたアプリの修正と発表資料の作成。
画像のアップロードにS3を使用していなかった。つまりどこにも保存されていなかったからデプロイすると消えてデフォルトの画像になっちゃう。これは困った。ということで急遽追加した。公開鍵と秘密鍵の照合に時間がかかってしまったけどなんとか認証できて無事にデプロイできました。
3.明日やりたいこと
スクール内個人アプリ発表、個人ポートフォリオの参考した資料まとめのアウトプット、そして公開。履歴書の修正もやるぞ。
4.終わりに
エラーに遭遇するとなんでこのエラーが起きたのか?を解決するからエラーの分だけ成長するね。本当に。だから今日も成長した〜!笑
今日も一日お疲れさまでした!これからちょっと発表資料を作成して練習してから寝るぞ!(そこまで大切な発表じゃないかもしれないけどできることはしておきたい)
ということで今日もありがとうございました!
おやすみなさい…zZZ
人のおもしろいところを見つける、は楽しい。
世の中にはたくさんの人がいます。誰ひとりとして同じ人はいないから、その人特有の何かしらが必ずある。僕はその個性を見つけると「この人おもしろいな」って単純に感じてしまう。もちろん良い意味で。(良い意味というと揚げ足をとられそうだから…ネガティブな意味はない、という意味)
だから最近、スクールの人とたくさん関われて嬉しい。みんな個性があっておもしろい、楽しい。みんなの歩んできた人生、一人ひとり周って聞きに行きたいぐらい!
卒業してからか、最終課題が終わったら打ち上げでも行こう!行きたい!
1.簡単日記
今日は比較的集中できてとても充実していた。twitter使ったアウトプットは、こまめに行うときが良いね。一気に溜め込んだやつはブログとかQiitaにすべきだと感じた。
2.今日の学び
#DjangoGirls 感想
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
とてもわかりやすい教材。集中したら1日もかからない分量。Pythonの学習からDjangoのデプロイまで優しく教えてくれる。Djangoの全体像をうっすら把握できるようになります。特にエラーを交えた教材は学習効果が高いと感じた。Django初心者におすすめです!#プログラミング初心者 pic.twitter.com/XPZDB2fms0
◆#Django 開発環境構築(for mac)
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・仮想環境の作成(他のサイトへの影響をなくす為)
・仮想環境の起動
・pip(pythonのパッケージを管理するツール)を最新にupgrade
・pipを通してDjangoをインストール#プログラミング初心者
◆#Django プロジェクトの作成、設定
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・ターミナルで下記コマンドにて作成。最後の「.」は重要。
django-admin startproject mysite .
・mysite内のhttps://t.co/w9wGA0Y599で言語、timezoneを設定
・デプロイ用にdebug = trueのallowed_hostへ下記を追加。 .pythonanywhere.com#プログラミング初心者
◆#Django DBセットアップ、ウェブサーバー起動
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・ターミナルで下記を実行しDBをセット
python https://t.co/4tczYKTb4d migrate
・下記も実行しウェブサーバー起動
python https://t.co/4tczYKTb4d runserver
・ブラウザから下記アクセスで確認
http://127.0.0.1:8000/#プログラミング初心者
◆#Django 新規アプリケーションの作成
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・python https://t.co/4tczYKTb4d startapp blog コマンドでblogフォルダを作成。
・作成したアプリケーションへのルートをhttps://t.co/DYJvkQiaAL内INSTALLED_APPSに追記(今回は'blog'を追記)して使用できるように設定する。#プログラミング初心者
◆#Django modelとテーブルの作成
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・https://t.co/za7R39QL20内にDBに登録するモデルを記述。この際、各カラムとそのバリデーションもここに記述
・下記をターミナルで実行してDBにテーブルを作成
python https://t.co/4tczYKTb4d migrate blog
これでpostモデルがDBに入った!#プログラミング初心者
◆#Django admin
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・モデルをadmin画面で表示させる為blog/admin.pyにdjango.contribをadminから、.modelsをPostからimportし、https://t.co/XHmSv9AC62.register(Post)を記述しモデルを管理画面に登録
・runserverでserver立上げ後、ブラウザページ末尾に/adminを追加し確認#プログラミング初心者
・ログイン画面になるのでsuperuser(管理者ユーザー)をターミナルから下記を実行して登録する。
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
python https://t.co/4tczYKTb4d createsuperuser
・登録後、ブラウザからログインすることで管理画面に移行できる。#プログラミング初心者
◆#Django #Pythonanywhere によるデプロイ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・Git、Githubでのリモートリポジトリの作成(割愛)
・gitignore内に仮想環境、db.sqlite3等を記述
・githubにadd, commit, push
・Pythonanywhereに登録、サインイン、APIの取得。(無料)#プログラミング初心者
・Pythonanywhere上のコンソールでpythonanywhereの設定、Githubとの連携。
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・Pythonanywhere内のsuperuserを作成。
⇛この際、localで作成したsuperuserと同じにしたほうが管理が楽になる。#プログラミング初心者
◆#Django urlについて
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・mysite/urls.pyには作成したアプリへのルートを記述。
・アプリ内(ここではblog)/urls.pyのurlpatternsに各urlに対応するview(railsでいうcontrollerとaction?)へのPATHを記述する。#プログラミング初心者
urlpatternsに記述する内容を分解すると
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
urlpatterns= [
path('', https://t.co/ybTl9uObEs_list, name='post_list'),
]
内容を【】で表すと
path('', 【views classのpost_listという関数(Railsでいうコントローラとアクション)】, name='【post_listというURLの名前(railsでいう_path的な)】')
◆#Django でビューを表示させる
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・https://t.co/KAhZBn7TnK内にhttps://t.co/CxOV6EhLJMで指定したviews内の関数(ここではpost_list)を定義する。
・templateフォルダを作成し、post_list.pyを作成し、表示させるhtmlを記述する。#プログラミング初心者
◆#Django クエリセット
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
クエリセットとはモデルのオブジェクトのリストのこと。データベースからデータを読み込んだり抽出したり並び替えたりできる。
データベースのデータに対して検索、フィルターをかけたりできる。これは条件を複数設定することも可能。#プログラミング初心者
◆#Django ビューにデータを表示する
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・https://t.co/KAhZBn7TnKでposts = Post.objects~~~
と記述してposts(templateに渡す変数)を定義する。
・定義した変数をtemplate内に表示させる方法は
{{ for post in posts }}
{{ post.title }}
{{ endfor }}
等で取り出せる。雑#プログラミング初心者
◆#Django CSSの読み込み
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・cssファイルは下記の場所を作成し、格納する。
/blog/static/css
・templateのhtml内の一番最初に下記を記述してcssを読み込む。
{% load static %}
↑これでstaticフォルダ内を読み込む。#プログラミング初心者
#Django htmlの部分テンプレート
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
親(呼び出す)側と子(呼び出される)側での記述は
親:呼び出す箇所に下記を記述。
{% block content %}
{% endblock %}
子:htmlの頭に
{% extends ' 親.html ' %}
呼び出したい箇所を
{% block content %}
{% endblock %}
で囲い記述。#プログラミング初心者
◆#Django CSSが効かなくなった時の対処法
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
CSSを更新しても反映されない時はstaticフォルダの位置を下記コマンドで改めて明示してあげる。
python https://t.co/4tczYKBzFD collectstatic
これをpython anywhereのコンソール上でも叩いたら反映される。#プログラミング初心者
◆#Django フォーム
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
・https://t.co/OePkeLYWN0をblog直下に作成する。そこにどのmodelにどんなfieldで何のcolumnに入れるかを記述してあげる。
・templateにnewやedit等のurl先を指定したリンクを作成する。
・viewsで保存する時とそれ以外の時の対応を記述する。#プログラミング初心者
【TL汚してすみません】#Django の開発環境構築からフォームまで…かなり割愛したけど自分なりの備忘録。結局何かあったらGirlsを見てやり直すんだろうな。繰り返しinputしてoutputするのが身につく。
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
今回、自分なりの言葉でまとめたのは良いoutputになったと信じてる。#プログラミング初心者
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月4日
★Django-Girls完、アウトプット完
★個人アプリの見た目微調整
一度個人ポートフォリオで見た目をがっちりつくったからか、昔つくったアプリを見直すと修正したい点がたくさん出てきてきりがない。笑
しかし、自分が成長している証拠を実感できて嬉しい!#プログラミング初心者
今日はDjangoのアウトプットをたくさん。中身は雑で備忘録程度だけれど、理解が少し深まったと感じてる。次は機械学習に手を出したいが…!
アウトプットはもっとこまめに行おう。溜め込むよりこまめにアウトプットしよう。
3.明日やりたいこと
個人アプリの発表資料を完成させる。昔つくったアプリを見返すと「あれもこれも気になる」ってなって修正ばかりに目がいってしまう…ほどほどにして発表資料完成させよう。サイトに流用できるように動画まで作れたら理想。まずは画像で説明資料作ろう。
それと就職のキャリアアドバイザーと面談がある。ちょっと楽しみ。質問も考えておこう。
4.終わりに
今日も成長できた〜!もっとプログラミングやりて〜!でも身につけるためには睡眠も大切だから寝る!
ということで今日も一日お疲れさまでした、ありがとうございました!
おやすみなさい…zZZ
共に考える、は楽しい。
なにかの問題に対して1人だけではなく、複数人で取り組むことも好きだ。自分1人で考えるだけでは到達できなかった答えや考えを知ることができるしそれを聞いて自分の糧にもなるから。そういう一緒に考える仲間たちを大切にしていきたいし、自分も何かしら与えるものがあれば良いな、と思って過ごしたい。
1.簡単日記
今朝起きたときから「今日、何か予定があったんだけどなにがあったか思い出せない…」というボケっぷりに我ながら呆れてたんだけど、スクール着いて「今日チーム面談やりますよ」って聞いた時に「これや!!!」ってピンときてスッキリした。スクールの予定もちゃんと予定に入れよう。
2.今日の学び
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月3日
★Django-Girlsほぼ終了。
今日はparams[:id]のstr型かどうか問題に悩んだ。結局なんでstr型で飛んでるのにidを受け取ってちゃんと機能しているのか…ざっくり調べてもよくわからない、闇のまま…orz…深追いすると沼にはまりそうなので避難した一日。#プログラミング初心者
今日はDjangoのビュー作成してcssの連携まで。明日のAMにはフォームの作成方法とDjango-Girlsのアウトプットをしたいな。Railsとの比較もしっかりやりたいけど時間優先でそれは簡潔にまとめたい。
で、共に
3.明日やりたいこと
Django-Girlsのフォームについて。の復習、アウトプット
4.終わりに
今日も一日成長したな…!でも明日は今日より少しペースをあげたいね!
…
というところで昨日は寝落ち。
今日も一日実りある一日にするぞ!
対応させる、は楽しい。
そう、ポートフォリオサイトをレスポンシブ対応にしたんです。それでもまだ「ん〜!ここはこうしたい!」っていうのがあったりきりがない…ので一旦これで公開予定、というところまできた。「こんなもんしか作れないのか」って思われるかもしれないけど、そう感じられたら傷つかない程度に是非レビューがほしいな…!笑
1.簡単日記
今日、履歴書と職務経歴書と自己PRを書いたんだけどとても時間がかかってしまった。早く添削してほしいな!
2.今日の学び
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月2日
★#Django #Python 環境構築〜投稿アプリデプロイ(Django-girls約半分?終了)
★履歴書、職務経歴書、自己PR作成完了
★個人ポートフォリオをレスポンシブ対応。
Djangoはまだviewができてないけどデプロイ完。笑 これからの作業が楽しみ\(^o^)/#プログラミング初心者
今日はPythonとDjangoの環境構築とデプロイまで。こんな簡単にデプロイできるの?herokuより簡単。笑 まだDjangoは全体像がうっすらとしか見えてないから明日からの作業が楽しみ!
あと個人ポートフォリオサイトをレスポンシブ対応にした!うまくできるとやっぱり楽しいね。各々のサイズに合わせて調整するのは楽しい。もう少しぱぱっとぺぺっとばーんって修正できたらもっと楽しくなるんだろうな。笑
3.明日やりたいこと
Django-Girls終了、Djangoの全体像をつかむ。個人アプリ発表会資料の完成。
4.終わりに
今日も学んで成長したな〜!特にレスポンシブ対応させられるようになったのは今後も活かせたい。
Pythonはもっと触りたい。RubyやRailsももっと深く掘り下げたい。やりたいこといっぱい\(^o^)/
ということで今日もおつかれさまでした。今日は少し過ぎてしまったけれどブロク更新してから寝ることができたから自分を褒めてあげよう。よく頑張りました^^
明日も一日成長するぞ〜!おやすみなさい…zZZ