つれづれなるおぎの

雑記の極み

【2024年1月】よかったもの月次報告

説明

「よいな~~」「なるほどな~~」など、心の琴線に触れたものをまとめています。 めちゃくちゃ前のことをふと思い出して書いたりもしているので、時系列はぐちゃぐちゃです。

1. ブログ記事「中年INTPがINTPに提案したい実践処世術」

何かしらの啓発っぽい文章を読むとき、「自分の場合で考えるとどういう差分があるか」「どういう人がこの文章刺さるんだろう」といった自分用に嚙み砕く必要があるのだが、この記事は全文ド直球で自分に刺さる。 自分のことをわかっている人が書いているという気分になる。 割とマジで毎日読んでいる。

2. 曲「ブルーアーカイブ Blue Archive OST 178」

手前ちゃんの曲。 特殊音の使い方がすごい(こなみ)。 何食ったらこんな曲作れるんですか??

3. 曲「Begin By Letting Go(Etherwood)-Covered by Jairo」

アルペジオの最後にインワードで落とすの、すこ。

4. 好物(峰岡豆腐、ポテサラ)の作り置き

僕は割と自炊する方だが、ぶっちゃけそんなに美味しくない。 これは下手だからとかではなく、自分が想像した味を目指して、作って、その味が出てくるだけなので、あまりにも予定調和すぎて面白くない。 やっぱり料理は人のために作るのがいいよな~~~というタイプ。

ただ、自分の好物を作り置きしておいたところとっても幸せな気分になった。 恐らく作った時と食べる時とで時間が空いているからであろう。 自分が作った感覚が薄く、わ~~~いってなる(語彙力)。

両方あんまり日持ちしないので、日持ちするよさげなもの募。

5. Copilotでのデバッグ

正直生成AI使えないな~~という気持ちがあったのだが、デバッグのときにかなりお世話になり、頭が上がらない。 デバッグって数ある原因の中から探す必要があるので、そもそも原因としてあり得るものの知識が不足していると結構どうしようもなくなっちゃう。 そういうときに、なんとな~~くあたりをつけてくれるので、かなり助かる。

使えないと感じていたのは、競プロとか専門用語多めの文章とか、あんまり得意タスクじゃないからだったっぽい。 慣れてくると自分でやった方が早い気がするけど、初学分野のときは積極的にぶん回していきたい。

6. 動画「#3 プロトタイプを作る【ギャラクティック・ノヴァのからくり時計を作ろう】」

すごい。 こういうの、どうやって勉強するんだろ……。

7. 料理をちゃんと作ること

1人暮らしを始めてからそろそろ1年経とうとしていて、自炊も子慣れてきた。 ただそのせいか、自分の手の届く範囲の料理しか作らなくなってきた。

そんな中、人の誕生日にご飯を作ることになり、色々勉強して作ってみた。 普段買わない食材の味・効果、その料理特有の気を配るポイントなどなど本当に色々なことが発見できた。 まだまだ世界は広い。 金銭・時間ともに結構使うのであまり頻繁には出来ないが、月一ぐらいでやろう。

8. 「やる気が出ない」は「脳がメモリを喰っている」状態だという事を理解しておくと「余計なファイルを削除する or デフラグ」で対応できます。

壁に貼っておきたい。

9. 触媒化学やっている人の筋力

先日、触媒化学の学会に参加した。 以前から気になっていたこととして、「どうやって新規合成ルートを見つけるんだろう??」というのがあった。 表に出てくる論文などはあくまで良い結果しか見えず、その前の失敗の数々は見えない。 「こういう触媒Aと触媒Bを使うと出来そうだよね~~」ってところまではわかるんだけど、その「こういう触媒」の候補はいっぱいある。 いったいどう選んでいるんだ……?

正解は「全部試す」だった。ナンダソレ。 リアルで「ました工法」を見るとは思わなかった……。 そりゃ理論いらないよな~~~。

10. ブログ記事「jQueryの作者による「毎日コードを書く」習慣の効果と自分で半年やってみた感想」

この記事、内容自体も面白いんだけど以下の部分がめちゃんこ共感出来た。

問題意識を無意識下に追いやると、通勤中でも食事中でも脳はbackground taskとして処理を続ける。そして答えは右脳が教えてくれる。

この感覚、めちゃくちゃわかるんだけど名前付いてたりするのかな……?

後最近は僕も毎日コード書こ~~~ってやっている。 やると楽しいのよなこれが。

おわりに

10個って多いな

amazonからscrapboxへ書籍情報を保存するbookmarklet

概要

↓の機能を拡張したものを作成した scrapbox.io

動機

大学生になってやたら本を触るようになった結果、どの本に書いてあったっけ……が多発した。 また今年度から一人暮らしをするにあたって、本の所在がもっとごちゃるのが容易に想像がつく。

いい感じに本を管理するシステムが欲しい!!!!!!

欲しい機能

  • 本の所在地の設定(実家、家、図書館、etc.)
  • バーコードスキャンで登録
  • Amazonから登録
  • 自由に感想・タグ付けしたい

既存の候補

実はかなり要件を満たしているものがある

Readee

readee.rakuten.co.jp

大体ほしいものが揃っているのだが

  • PCからの使用をあまり想定していない
  • 楽天のサービスなので、Amazonに対応する未来が見えない

と、個人的には結構致命的な弱点がある。

一方でISBNスキャンや本棚登録など、実体のある本に対する処理はとてもよくできており、更にcsvエクスポートもできる。すごい。

改めて要件を洗い出してみると、

  1. 蔵書&感想管理
  2. 欲しい本や覗いただけの本をメモ

の2パターンに分けられそう。

このうち1のみであればReadeeで十分。

2についてなのだが、このような「とりあえずメモしておきたい」系に強いのが

Scrapbox

scrapbox.io

ネットワーク型のメモ帳なので、メモのレベルが大体等しいものをひとまとめに管理するのが得意。 めちゃめちゃ使い倒すなら、とにかくタグ付けを頑張って検索でゴッソリとれるようにするのがよさそう。

今回は、1メモに対して1冊の情報を扱えるのでうってつけ。 (他にも日記、問題解説、議事録など、単位当たり1メモの運用ができるものに使うとよさげ)

AmazonからbookmarkletScrapboxのページを作成するのは既出で以下。

AmazonからScrapboxにスクラップするブックマークレット - Scrapbox研究会

追加で欲しいものは

  • 強制的に本棚のタグをつける
  • もうちょい情報を引っ張ってきてほしい
    • 分類、説明など
  • いくつかバグがある

この辺りを解消させる。

後はReadee -> Scrapboxの部分についてだが、csvエクスポートからpythonseleniumでちゃちゃっと書ければいいかなと(未実装)

(Readeeはこんな感じでまとまりました)

できたもの

デモ

機能説明

  • Amazonの書籍ページで機能
  • Scrapboxに本のタイトルをページ名、以下の情報を本文に追加
    • 入力フォーム
      • スペース区切りで単語を入力
      • 単語がそのままタグとして送信
    • ラジオボタン
      • ハードコーディングされた選択肢を表示
      • 初期値が設定されているので、選択を強要
      • 選択されたものをタグとして送信
    • その他の情報
      • リンクで書影を送信
      • 著者をリンク形式で送信
      • レビューの星、出版社、出版年、ランキングのカテゴリをタグとして送信
      • 本の説明をそのまま送信
  • 送信ボタンで新規タブにScrapboxへページ作成
    • Scrapboxがurlで管理しているため、存在しないページタイトルのurlを開くと新規で作成されたことになる

コード

github

github.com

下に書いた参考にしたコードを魔改造して超融合しただけなので、細かい部分は追っていません(特にパネルクラスの部分)

もし使用したい場合は

  1. main.jsの最下部にあるScrapboxのurlを自身のプロジェクトのものに
  2. ラジオボタン設定部分をお好きに変更
  3. コンパイル

の3点を行えばよいと思います。

初のJSコードなので拙さ丸出しだと思うので、もしご指摘あれば伝えて頂けると大喜びです。

残っている問題点

  • 同名ページがある場合、送信した内容がさらに追加されて二重になってしまう
    • ページが存在するか確認しようとしたが
      • urlにレスポンスがあるかどうかは、Scrapbox自体の仕様が「存在しないページのurlの場合新規作成」なので、必ず返ってきてしまう
      • プロジェクトのページを取得しスクレイピングのようにするのは、セキュリティで弾かれる(Content Security Policy)
    • となり、一旦やめた
    • Ctrl+Zで戻せるので、そこまで気にしなくていいかな
  • 電子書籍と紙書籍でタイトルが変わる(スペースの区切り方とかが変わったりしている)
    • これはAmazon側が悪い
    • 一応タイトルをISBNにすれば回避できるのかな??
    • 使っていくうちに、タイトルの変わり方が分かればハック的に解決できそう
  • 各種エラー処理がほぼない
    • これも使いながら確認する
  • コードが読みにく過ぎる

参考にしたもの

開発Tips

フロント・ナンモ・ワカラン的には色々と勉強になったことがあったので備忘録。

bookmarklet tips

そもそもbookmarkletは、bookmarkをクリックするだけでjsを動かすという実にシンプルなもの。

qiita.com

フロント・ナンモ・ワカラン的には障壁が小さくてとても助かった。

ただいくつか躓いた点があるのでメモ

コメント

jsでは普通コメントは//で書くが、最終的には一行になるので以降のコードが全てコメントアウトされてしまう。 基本的にインラインのコメント/**/を用いるとよさそう。

開発環境

いちいち

  1. ブックマーク左クリック
  2. 編集
  3. コードコピペ
  4. クリックして実行

するのがめんどくさい。

既に頭のいい人が考えてくれていた。

ブックマークレットの開発環境を考えてみた · GitHub

ただフロント・ナンモ・ワカラン的にはサーバーを立てる??ナニソレ??となった。

既に頭のいい人が考えてくれていた。

Live Server - Visual Studio Marketplace

VSCodeの拡張で、ワンクリックでlocalサーバーを立ててくれる。 今回はjsファイルのみが触れればokなので、細かい設定とかは気にしなくてヨシ!!!

chrome拡張のScriptAutoRunnerに、DOMへ対象のjsファイルをscriptとして突っ込むコードをパパっと書いて

(function (u) { var s = document.createElement(`script`); s.src = u; document.body.appendChild(s) })
("http://127.0.0.1:5500/library-manager/main.js")

後はvscodeの左下のボタンをポチーとすれば、F5のみで即実行できる!やったねたえちゃん!

かんそう

頭のいい人いっぱいいるなあ