インターン
ブログ

TORICOインターン生のブログです。会社で起きたことについて情報発信していきます。

Viewing posts by

インターン64.65.66.67.68日目! # Djangoとgit submodules

Django早く覚えないとと焦燥感にかられる保坂です。

Djangoで何かアプリを作ってみようということで買い物リストを作っていますが、

これを通して

Dockerで仮想環境構築

IDE (PyCharm)の設定の仕方

Django CRUDとユーザー認証周り

Git submodulesの使い方

あたりをつかみ始めました。

Dockerfile書いていてlinux系の知識、サーバー周りを勉強しないといけないと意識しますし、

PyCharm設定できると、最初はなんでコード書き始めるのにこんなに訳のわからないプロセスが多いんだと思っていたのが、逆に手放せなくなりますし、

Djangoでベースができると拡張してオリジナル化させていくのが楽しいです。

あとは自分が作っているアプリも分からないところを質問させて頂いておりまして、

とりあえず、動いて良しと思っていたものに関してもっと良い設計をコメントして頂けるので、どれくらいの完成度でちゃんと使い物として成り立つのか

まで知れて良いことばかりで感謝ですね。

次回に続きます。

インターン61.62.63日目! #Django

ブログが遅くまでやっていた時があったのと、巨大な台風が近づいていたことがあり、久々の更新になります。

Djangoに慣れるにおいて、やっぱりアプリを一つ作ってみるのが良いということで、早速取り掛かり始めますが、一番最初に気にするのは環境構築ですね。

今までは既存のプロジェクトをgithubからプルして来て,

Readmeに従えば良かっただけですが、

そこから迷いますね。なんとなく開発を始めるときはこれをとりあえずターミナルで叩けばokみたいなノリでしたが、実際に0から考えてみるとvenvとか半分くらいしか理解してなかったなぁと。

血迷った結果、venvpythonは綺麗に管理できてもdbは管理できないから他の環境を作ろうとdocker環境を作り始めまして、それに没頭してました。

今思えば、dbpythonについているのを使えば良かったのですが。。。

それから僕のターミナルダサいなとfishを導入したり、あとは最初は機能が山盛りすぎて意味不明だったIDEもセットアップを通してかなりdocker接続やinterpretrの設定、フレームワークの設定がわかって来ました。

次回に続く\。

インターン60日目! #python

最近は寒くなって来て間違えてt-シャツで出かけると大変なことになります。

本日はマンガ展のテレビの色設定がおかしくなっていたのでその調整をしていました。

しかし、バージョンによって異なっていたと思われていた色設定ですが、実際にファームウェアをアップデートしてみると同じバージョンのはずですが色設定が異なっています。

なぜかプリセットで用意されたものでしか選べずに、色のカスタマイズができません。。。

これはどうしたものでしょうか。。。

最近バックエンドの方を詰め込んでいますが、今日はデータベース周りとコンフィグ、ロギング、コードスタイルあたりを押さえました。

しかし、かなり覚えることが多いです。記憶しようとはしていませんが笑

あとインフラ周りや、セキュリティ、テストもまだまだありますね。。。

スキルアップ集中月間になりそうです。。

インターン59日目!# IPhoneでデバッグ

本日もDjangoを黙々とやっていたのですが、マンガ展のtwitterウィジェットがiPhone SEだとはみ出る問題が確認され、そちらをやっていました。

ところが、ChromeSafariの検証モードを入れてもエラーを再現できなく、そもそも直せないやん!

と思っていたところ、iphoneの方で検証できる方法があるらしく、そちらの方法を学びました。

iPhone デバック とかでググれば出てくると思います。

ところが次はIpアドレス周りで躓きまして、今度はTCP/IP周りも知らなければなりません。。。

頑張ります。。。

インターン58日目!# Python

Djangoでの実装において今までググりながらやっていたのですが、

局所的に調べるのには限界がきまして、お恥ずかしい話ですが

今日はPythonの学習に充てていました。

あと、今までAppleの純正メモ帳に適当にメモをしていたのですが、

スマホではあまり見ないですし、Qiitaみたいな感じで記録しておけば、かなり見やすいので

マークダウン の書き方を覚えて、ちゃんと技術メモを取るようにしました。。。

さて、今日はクラスについて深掘りしまして、

あとはファイル操作について、With 文からcsvファイルの読み書き、tempfileの取り扱いあたりをさらいました。

ロギング、テスト、データベース、並列化あたりを抑えたら、Djangoの方をやります。

インターン57日目!# Django2

Djangoに大絶賛取り組み中の保坂です。

結構前からDjango,Djangoブログに書いていますが、実はまだ苦手なサーバーサイド。。。

お休みを頂いた時はvueをいじってまして、Djangoは置いてけぼりになっていました。

やはり、まだまだそもそも知識が足りていないなと思い、チュートリを中心にやっていました。

振られているタスクの実装に業務時間を使いたいので土日使って詰め込んできます。。。

インターン56日目!# Django

今日はいくつかの自社サービスのwebストアで買い物をする時に、それぞれ個別に支払い情報を登録しないといけないのですが、せっかくtorico-idというアカウント共通化できそうなシステムがあったので、そこにクレジットカードの情報を事前に登録できるようにしようと思います。

すでにクレジットカード情報の登録機能は既存のサイトで実装してあるのですが、新しくtorico-idに組み込もうとしましてviews.pyあたりの書き方に悩んでいます。

支払いの機能はGMO社の物を使っているらしいのでそれを取り込むのが難しいですね。

最近はpython自体は慣れて来ましたが、djangoはまだまだなのでもっと勉強が必要です。

Django使えるようになって自分でもwebサービス作れるようになりましょう。。。 

インターン55日目!# git submodule

今日はDjango上でクレジットカード情報の登録機能をつけるタスクを始めました。

毎回Pycharm上の環境設定に手こずるのは僕だけですかね。。。

今回はgit submoduleについて深掘りしました。

いつもはgit clone して来て git  submodule update -I を呪文のように書いていたのですが、

Submodule下の変更を加えましたら、それでgit diff で変な表示が出ていたのでそれをきっかけに

教えていただきました。

要点をかくと

最新のサブモジュールを使う時は git submodule foreach git pull origin master

ですがそうすると最新版になって動かなくなる危険があるので、git cloneして来た時のバージョンにsubmoduleを戻したいときは git submodule update ですね

git pushする前に変なsubmoduleの変更までpushしてしまわないようにしましょう。。。

インターン54日目!# コーポレイトサイトを改修しました。

コーポレイトサイトを改修した結果が無事デプロイされたのですが、今思えば、Toricoを就活サイトでちらっと見かけて初めて具体的にみたサイトがこのページでした。

おしゃれなサイトだなーと気になるきっかけに思いっきりなったわけですが、そのページを今度は自分の手で改変させるのはなんだか感慨深いものがあります。

今日は新しいエンジニアが入って来まして、ウェルカムランチということで、トラジという焼肉屋に行って来ました。

彼はFlutterというiOSAndroid用のアプリを一度に作るれるというGoogle製の言語とのことで一度触って見たいですね。

何か新しいものに働いていると出会えるのが面白いです。

また明日に続く。

インターン53日目!# 久しぶりにインターンに戻って来ました。

1ヶ月ほど、大学の夏季授業と旅行でお休みをしておりました。

今までは第二オフィスで働いていたのですが、本館にオフィスが統合されていまして、働く場所が変わりました。

前のビルはいかにもオフィスって感じでしたが、本館はマンガ倉庫がありますので、マンガの会社で働いているという感じがよりします。

さて、今日の業務ですが、コーポレイトサイトの改修をやっておりました。

新規サービスが始まったのでそのコンテンツの追加をしたり、トップ画面の文面の改修をしていました。

トリコのいいところは久々に働きに来てもいつもと同じ感覚で働けることかなと。

場所や組織図やらは色々変わっていたらしいですが笑

それではこれからはガンガン働いていきます。

インターン52日目!# 原因がつかめない時

新しい改修タスクが毎日来ます!それはどんどん使いやすくしていく訳なのでそれはいいのですが、

困るときは改修したことで今まで動いていたものが、動かなくなってしまったときですね。

もしある改修をしていて、他の機能に影響が出そうな場合はコードを自分自身が追っている訳ですから、事前にトラブルを避けようとする訳です。

でもトラブルが起きてしまうということは、自分では気づかないところで影響が出ている訳で、

そこの原因をつかむのに苦労しています。

最初はメソッドを作るのが辛いとか思っていましたが、最近は楽しくなりまして、

フロントエンド覚えること多すぎと思っていた時期は、 普通にお勉強したら抵抗感がなくなって来ました。

次はエラー場所を見つけるのになれることがタスクですね。

こちらは本日のランチです。トラジです。

夏休みということでしばらくお休みをいただきますが、インターンはまた復帰して続けます。

インターン51日目!# どハマり

Vuetify data-tableでソートをかけるとチェックボックスが全部うまるエラーや、unit-testをかけるタスクなどにどハマりしてて、今日は進行具合がイマイチです。

本日はスロットとemitらへんをできるようになりました。

最近は、今までよくわからなかったものの意味がわかるようになってきたのがやり甲斐です。

金色のガッシュベルという漫画がありまして、レベルが上がると魔本の読める部分が増えて、使える技が増えるという設定があるのですが、そんな感じです。

結構よくわからないまま書いてしまうので、理解しつつ進めてかつ、実装スピードもあげていけたら最高です。

続く。

インターン50日目!# vuetify

今日も引き続き、社内タスク管理の続きです。

Vuetifyでデータテーブルが作ってありまして、列ごとにチェックボックスをつけてあり、そこをチェックするとその情報を取ってそれがメールテンプレート に反映されるというものなのですが、

ソートをかけると、チェックボックスが全部埋まってしまう不具合がありまして、それを直そうとしています。

最初は結構すぐ行けるかと思いきや難しいですね、公式ドキュメントのサンプルを丸パクリしても直りません泣

ソートをかけるとなぜかチェックボックスが反応するのですが、見た目だけ反応していまして、それでメールテンプレート を引き出しても、その列の情報は入っていません。

なんだかんだ時間をかければ少しはわかってくるのですが、今回はなぜかどハマりを起こしている気がします。

それでは明日に続きます。

前回のメールテンプレート に画像を添付する機能はこんな感じで仕上がりました。

インターン49日目!# うな重

今月のランチ会は何を食べようかという話になり、うな重を食べに行くことになりました。

せっかくの夏ですし、ランチから3000円もするものはこういう機会がないとなかなか食べに行けないですね。

九段下にはオフィスから徒歩10分圏内に意外とうな重をやっている店がたくさんあります。今回行ったところは大盛りオプションがあったので、それを食べてお腹を膨らませました。

さて、今回のタスクではメールテンプレート の画像貼付機能にドラック&ドロップ機能を付け加えました。

Input type=file で情報が欲しいときは、 event.target.files からファイルを取得でき、ドラッグ&ドロップの場合は、event.dataTransfer.files で取得すること

Input type=fileの見た目はcssで変えられないのでdisplay=noneで消して、labelタグで挟んでcssかける

らへんを学びました!

続く。

インターン48日目!# メールテンプレート に画像貼付&プレビュー機能つけました

夏休み毎日働いております保坂です。

今日やっとメールテンプレート の諸々の実装が終わりました。長かったです笑

最近は今までドキュメントなどを読みましても、よく分からなかったものがわかるようになり、技術書を読むのが楽しいですね。

ドキュメントを読みましても「何言っているんだ・・・こいつ」状態だったのですが、前書いたあれのことか!や、

この前書いたコード、es6のこの書き方使えばもっと楽に書けるやん!となっています。

まだ全然ですが、jsは何かを作ろうとなっても抵抗感がなくなってきましたので、次はvuetypescriptの仕組みをもっと実装を通しながら理解していきます。

インターン46.47日目!# 自分で何か作ってみようかと

世間はお盆ですが、毎日通っています。

最近、改修は一通りできるようになってきましたが、やはり0から機能を実装するとなると、手が止まることが多いですね。

なんとかする方法としては一部分だけを考えるのでは間に合わなくなってくるので、思考を整理するノートみたいなものも必要です。(当たり前ですねかね)

あとはやっぱり何か自分で作ってみるということですかね。

最初は作りたいものと言っても何がそもそも作れるかわかりませんでしたし、分からないことが取り組むに当たって大きすぎて僕の性格にはきつかったです笑。

そろそろ自分でも何か作れるだろうという自信と、そうすることで現時点で足りていないものを効率的に取れる気がしますので、

ブログでも作ってみましょうかね、pythonもありです。

続く。

  

インターン45日目!# ドキュメントがわかるようになりました。

今日もvue.tsを書いていたのですが、実装が難しいところがあり、ググっていたところ、typescriptではなく、javascriptで書かれていることばかりで、あまり参考にならず・・・

それでもjsが書いてあるならあとはそれをtypescriptに置き換えて書けばいいだけですから、できそうですよね。

それでもなかなかできなく、今考えるとすでに用意されているものでしたら、それなりにできるようになってきましたが、1から作るケースや生JSを参考にしないといけないケースの場合、に対応できてなかったのです。

何せ、働き始めて、typescript ばかり書いていて逆にjsは見慣れておりませせんでしたので。

本当に基本文法知っているだけで、最近es6の文法とかを吸収してます笑

ということでググっていても正直なぜこのコードを書いているのかわからないため埒が明かず、基本に戻ってドキュメントを読んでいたのですが、

前まで何を言っているか全くわからなかったドキュメントが理解できるようになっていまして驚きました。

これはコードが書けるようになるまでは

ドキュメントを読む

意味がわからない

作りたいものをとりあえず、よく分からないけど実装する

あとで説明を読む

この順番でやるのがいいかもと思った1日でした。

インターン44日目!# トリコに来てからの変化

今日は前回実装したメールテンプレートに配布ファイルをつけて送る機能に今度はそのプレビュー機能を

追加しようとやっていました。

Dom操作しようとすると、document.getBy…とかつい書きたくなってしまいますが、

Vueなのでcomponentv-forで回すとかそういう発想をできるようになりたいですね。

いつも普通の記事ばかりなのでたまにはここに来てからの生活の変化でも。。。

エンジニアチームでは月に1回ランチ会で美味しいものご馳走していただける機会があります。

そのおかげで、今までスーパーで半額の弁当しか食べていなかった生活が

かなりマシになりまして、そのランチ会を毎月楽しみにしております。
before
 

after
 

やはり美味しいものを食べるとそれだけで元気になりますね。

明日に続く。

インターン43日目!# メール送信機能に添付ファイルつけれるようにしました

相変わらず、社内タスク管理ツールを改修しております。

発注情報をこのツールからgmailに送るような機能を以前実装したのですが、

今度は画像を添付できるようにしてほしいとの要望があり、それの実装をしていました。

Gmail apiを使って送っているのですが、送信内容を作るには自分で

Mimeデータを書く必要がありました。

最初は適当にネットで拾ってきた情報を書いていたのですが、どうやら改行なハイフンやら色々なルールが意外とあるらしく、

それの書き方に苦戦しました。

そのあとはエンコードをしうる必要がありFileReader.readAsDataUrlメソットやBase64multipartらへんの知識が増えた1日でした。

そんなかんだで添付ファイルをつけられるようになりました。

これのブラッシュアップを次回やっていこうかなと思います。

インターン42日目!# フロントに戻りました。

Python をやり出したましたが、フロントの改修が入り、vueに戻ってきました。

少し時間をおいて、思ったことがありまして、

今までずっと同じプロジェクトを見てきましたが、それのせいか本当に自分が新しくできるようになったこともあれば、

見慣れすぎて、なぜかよく分かっていないけど書けるようになった部分がありました。

前ならできそうなことが、あれ、これどうなっているんだ?ってなるわけです。

そうなると、また埋めた方がいい部分というところが見えてきます。

冷静に見直せるのがいいところですね。

本日のタスクではメール関連の知識が必要になりました。

今までコピペで済ましていた

btoa(unescape(encodeURIComponent(subject)))

'MIME-Version: 1.0',

'Content-Type: text/plain; charset=UTF-8',

'Content-Transfer-Encoding: 7bit',

rfc822

らへんと現在戦っています。

また明日に続きます!