perpouhのブログ

作業ログとかです

2021年03月17日

URL考察。

https://tabelog.com/miyagi/A0401/A040101/4000199/   宮城県/仙台市/青葉区/店舗ID

https://r.gnavi.co.jp/r48486vc0000/   店舗ID

https://retty.me/area/PRE04/ARE158/SUB53106/100000338820/   宮城県/仙台市/青葉区/店舗ID

https://www.yelp.com/biz/スターバックス-仙台エスパル本館店-仙台市青葉区   店名-店舗名-エリア。

食べログとRettyは形式が同じ。この形式のいいところは、URLが途中で切れて404に飛ぶ場合でも少し情報が得られるところじゃないかと思う。例えば「宮城県仙台市」までわかっていれば、「URLが間違っています」というメッセージとともに宮城県仙台市の情報を出せばいい。画一の404画面を見せるよりは(多少なりとも)利益になるだろう。   ただまあ、仙台市の各区は馬鹿みたいに広いので、駅前で飲みたい人間に愛子駅近くの店をサジェストするのが正しいかっていうと別にそんなこともない。   この手の仕組みは仙台市がネックだよなと思う。

qiita.com

FactoryBotって実は結構便利な機能がいっぱいある。

cancancanは必要になると思って入れてみたけど諸々考え直したら無くても回るな〜という結論になった……。ぶっちゃけ admin? だけで済むならcancancan使うまでもないんだよなあ。

qiita.com qiita.com

個人開発のテストに悩んで調べたところだったんですけど業務でもここまでやってねーな!と思うなどした。っていうかそもそも弊社テストコード書いてねえんだよな……

「テストコードがない状態だとリファクタリングできないし、リファクタリングできない状況でコードレビューしても無駄なので、まずはテストコードを書いて下さい」

まあどこまで行っても「無い袖は振れない」ということになるんですけどね。
っていうかテストコードを書かないからテスト工数が膨れて(仮定)→テスト工数が膨れるから毎度スケジュールがカツカツになって(事実)→毎度スケジュールがカツカツになるのにテストコードを書く工数なんて取れない(予測)っていうデッドロックに入ってる感ある。   テストコード書いて自動テストしようぜーとは思ってる……(´・ω・`)

ていうか仕様が固まってればテストコード書く人と本体コード書く人は別でもいいんじゃねえかな。まどろっこしいかな。

あとこれ

qiita.com

何度もお世話になりますGoogleMapAPI。やりたいこととしては、アプリ版で店名検索(Google geocoding API)→Railsのバックエンド(API)に店名と住所を投げて、Store.find_or_create_by({name: params[:name], address: params[:address]}) てきな。   ユーザーの自由入力を受け付けずに店舗データを作りたい。GoogleMapに載ってない場所をどうするかは考え中。

re-engines.com shrinerb.com

そのうちやる(たぶん)(AWS準備めんどい)

宮城107人ですって。   不安で仕方ないのにひたすら物理出社。胃は痛いし頭はぐちゃぐちゃするしお酒は増えるし。いいかげん収まってくれないと本格的にアルコール依存症になってしまう。年

2021年03月14日

ここ二週間は古いシステムの対応にかかりっきりだった。レガシー対応、難しいくせに得るものがない。なおまだ後ひと月程度かかる模様。

個人でSwiftアプリの開発を始めた。今までも何度か「始めた」ことはあるのだけど、まともに完成させたことはないので、一度くらいは完成させたいと思っている。Webアプリなら完成させたかって言うとそうでもないけど。

本日お世話になったサイト

qiita.com qiita.com

<li>コンポーネント化してAPIから取ってきたデータを渡しつつぐるぐる表示したいというだけの話。 10年くらい前のアンドロイドではビューの再利用だかなんだかの問題で素早くスクロールすると前(ページ上部)のデータが残ったままのCellが下から出てくるみたいな問題が起きたような気がするんだけどあの辺り今どうなのかしら。

qiita.com

今後の機能実装としてはこれが参考になりそう。 個人の信条として「慣れに勝るユーザビリティは無い」と掲げているので、InstagramとかTwitterとかを見ながら開発していくつもり。 Instagramは「自分がいいねした投稿」へのアクセスが悪すぎるのでちょっと不満なんだけど、たぶん「いいね」の使い方が違うんだろうな。お気に入りじゃなくてスタンプなんだよな、あの機能。

tech.playground.style qiita.com

写真の取り込みもやりたい。タイムライン機能作ってからかな。

githubのメインブランチ名称を「stable」に設定していたんですけど、XCodeでgitプロジェクトを作ったら勝手にmainにfirst commitしやがって、ほんとそういうところだぞ……と思っている。なんで勝手にコミットしたし……

今日作ったのは平日の弁当用の鶏ハムとスープ。
スープのレシピはこれのチーズなし&押し麦追加版。スープジャーに入れて持ち運ぶ手前、チーズは嫌だった。あとは腹に溜まるように&食物繊維を取りたいので押し麦追加。割と気にいっている。 togetter.com

さいきん平日の食事はフルグラ+プロテイン/サラダ(with鶏肉)+スープ/夜だけ自由という感じになっている。夜自由なのはストレスの都合上ちゃんとした食事を考えるのが面倒だから。炭水化物だけ避ければ何食ってもオッケー、酒も飲む、という感じ。うまいことストレスを溜めないようにやっていきたい。

2021年02月26日

今日お世話になったページ

github.com

shrine公式リポジトリ。英語だと文章の細かい意味を取りにくいからついつい敬遠しちゃうけど、なんだかんだ公式ドキュメント読むのが一番なんだよな。わかってるんだけどね。

qiita.com

引き続きShrineのテスト周辺。 Rails側をAPIとして作りVueかSwiftでフロントエンドを作る予定なのでシステムスペックはちょっとつらいかもなあ。
というか管理画面はRailsでビュー作るつもりなんだから店舗写真に先に着手した方がよかったのかもしれない。作業の見当をつけるのは難しいねえ。

やりたいテストは「フロントから渡ってきたファイルをサーバーに保存する」ところなので、まあほぼShrine側ではあるんだけど、gemのアップデートとかで挙動が変わっていないことはチェックしたいわけで、そうなるとテストは必須で……?やっぱりrequest specでいいのか?

railsdoc.com

未だに覚えられないerbフォーム周りのヘルパメソッドたち。

qiita.com

なんかこれ以前も同じことやったな……。頻出しないから忘れるんですよね。そのために備忘録を作ったわけですけど。

qiita.com

同じくRailsAPIとして作ってしまったときに出るエラーの対処。というか「SPAを作るためにAPIモードで構築したけど管理画面をRails組み込みでやることにした」っていう背景からもう全部同じ。結構多くの人が通る道なんですねここ。

作業ログ

% git log --after="`date '+%Y-%m-%d'` 0:0" --oneline --branches *
afe8274 (HEAD -> feature/clip_follow_like, origin/feature/clip_follow_like) wip, ボタン一個で操作する系のやつら
6ec39ea (origin/feature/article_images, feature/article_images) rubocop設定と対応
ce412b0 店舗画像についての情報をformとjbuilderに追加
cb3e423 都道府県データの消し忘れ削除
d36c452 店舗情報に画像を追加。添付上限がハードコードなのであとで直す
75d64d9 shrine設定周り修正
cbd78e8 typo修正, schema適用漏れ
84237fc 店舗画像テーブル作成
f8ff396 フォーム越しに店舗登録できるところまで
f429fb6 enum_help導入、prefectureテーブルは不要になったので削除、日本語化

今日は割と力仕事をしていた。そしてブランチを間違えたままコミットを重ねてしまい、面倒になってそのままプッシュした。いいんだひとりだから! カラム構造が似ているいくつかのテーブルを統合するかどうか毎回悩む。統合するメリットがあるかっていうとそれも特に無いような……。

どうでもいいのだけど、categoryってconcern作ってたところにcategoryってモデルを作ろうとしたら怒られてちょっと感動した。意外に手厚いな。

The name 'Category' is either already used in your application or reserved by Ruby on Rails. Please choose an alternative or use --force to skip this check and run this generator again.

本日の飯

f:id:perpouh:20210226202437p:plain
帆立の出汁で白菜と菜の花を煮たもの

元ネタは以下のツイート。

干し貝柱が思ったより高かったのでベビーホタテで代用、塩っけが無いので塩追加。 お酒は酔鯨。ちょっと酸味を感じる。

ほか

mohikanzの方で「胡乱」という言葉を使ったら「きゅ、きゅうらん」と反応があり、きゅうりのきゅうだとはわかるけどそういえばなんでその字で「きゅうり」なんだ? たぶん「うり」に続くところで音が引っ張られて「きゅ」になっただけで元々は「き/うり」だよな? その字で「き」って読むのか? と思って調べたら以下。

ja.wikipedia.org

和名キュウリの呼称は、漢字で「黄瓜」(きうり)と書かれ、熟した実が黄色くなることに由来する。「胡瓜」の中国音(クウクワ)が日本人には発音しにくかったため、瓜を日本での読み「ウリ」と発音し、「クウウリ」から「キュウリ」となったものと考えられている。

雑なハイブリッド語だった。表記は中国語、読みは瓜だけ日本語! っていうかクワウリからキュウリになるより元のキウリからキュウリになる方が楽じゃないこれ? 表記は中国語由来、読みは日本語由来とした方がまだ納得しやすいんだけど。

2021年02月25日

今日お世話になったページ

qiita.com

shrinerb.com

Shrineの導入はやったことがあったけどユニットテストはやったことがなかったので。 で、システムスペックってなんぞや?と思って検索して出てきたのが↓

qiita.com

リンク先とそのコメント欄含めてとてもよい記事でした。動画はちらっと見てやめちゃったけど。文章なら2秒で読めるところ何十秒もかけて読み上げられるのが無理。動画というフォーマットが私に合わない。

teratail.com

パラメータの意味がわからなかったのでたすかる。その機能に対して window ってネーミングどうなの? ネイティブ的には合ってるの?

qiita.com

workflowを手動実効でデバッグしたかったんだけど面倒くさそうだったので後回しにした。

api-sdk.navitime.co.jp

ナビタイムのAPIを使ったら住所から最寄り駅を検索することができそうなんだけど、料金表が公開されていないっぽいので怖気づいている。
でも住所から最寄り駅判定やりたいよなー。そのうちお問い合わせしてみようかな……ひと月三十万円とかだったらどうしよう……

本日の作業ログ

% git log --after="`date '+%Y-%m-%d'` 0:0" --oneline --branches *
6b82abb (HEAD -> develop) shrine導入、モデル追加
4fd5d2f いらないものがコミットされてしまっていた
08748bb 都道府県マスタ作成ついでにシーダー整備
39e0cc7 店舗詳細に関連記事を表示する想定。ソート順はあとでやる
ec61e68 kaminari導入

https://github.com/perpouh/tabete

本日の飯

f:id:perpouh:20210225201630p:plain
見切り品のパプリカと豚肉を炒めたもの。特筆すべきことは無い