全社の会で6万円を徴収されそうになるが、財布には2000円しか入っていない。
長机に布をかけて作業机にする。
失敗から学ぶRDBの正しい歩き方 (Software Design plus)
全体的にハラハラしながら読み進めることができてよかった。こんなことがあるのか、みたいな気持ちになりながら読む人もいるかもしれないけど、こんなことというのは起こりうるものである。
WebアプリケーションにおけるJOINだと、O/Rマッパを使ってないとき*1昔はよくやってたけど、今だと SELECT * FROM a
したあと SELECT * FROM b WHERE a_id IN (...)
してからアプリケーションでくっつける書き方のほうがすぐできるようになった。アプリケーションはスケールさせやすい、クエリを分けて書くと個別にチューニングしやすい、みたいな話題だと思う。
腐ったテーブル設計にしないのが一番よいけれど、知識が蒸留されていなかったとか、とにかく開発速度を上げるためにデータモデリングを犠牲にしたとか、いろいろな事情があって腐ってしまうこともあると思う。借金のようなものが強くのしかかってくる状態なので、どこかで工数をかけて返済したい。
*1:ISUCONとか
GIF/PNG/JPEG形式の画像だけがアップロードできる身分証送信フォームに身分証をアップロードするために、imagemagickをビルドしていた。Ubuntuで apt install imagemagick
でインストールできるimagemagickだとHEIF形式の画像の変換に対応していない。iPhoneで撮影した身分証の写真はHEIF形式で保存されている。画像の性質が性質なので、知らない画像変換Webサービスにアップロードするのは憚られる。
身分証の写真をアップロードするためにimagemagickをソースコードからビルドしている
— うたがわきき (@utgwkk) 2021年4月3日
そうこうしているうちにセッションが切れてログインからやり直しになった
— うたがわきき (@utgwkk) 2021年4月3日
mspaint.exe っていうソフト便利
— うたがわきき (@utgwkk) 2021年4月3日
あとで気づいたけど、iPhoneのカメラの設定を変えてから撮影し直すほうが早かったと思う。ところで最近のスマホで撮影した写真は巨大すぎてびっくりしがちで、撮影した後に convert -geometry 25%x25% input.jpg
ってやってる。
巨大すぎる写真を送り付けない、みたいなマナーがそのうち出てくる? 時代が逆行していそう。
だいたい以下をやったら、ソースコードからビルドしたimagemagickが使えるようになる。とくに目新しいことはしてないと思うけど参考にしてください。
# 古い (aptでインストールできる) imagemagickをとにかく消す $ sudo apt remove imagemagick imagemagick-6-common imagemagick-6.q16 # HEIF形式の画像を操作するためのライブラリを入れる $ sudo apt install libheif-dev # imagemagickをビルドする $ git clone https://github.com/ImageMagick/ImageMagick $ cd ImageMagick $ ./configure --prefix=/usr/local $ make -j8 # 引数は適宜調整してください $ sudo make install