動かざることバグの如し

近づきたいよ 君の理想に

TypeScriptで複数行文字列のインデント問題を解決するts-dedent

環境 Nodejs v22 やりたいこと 複数行の文字列を変数として持っておきたいので、ここではテンプレートリテラルを使う。テンプレートリテラルは、JavaScript(およびTypeScript)の便利な機能で、複数行の文字列を簡潔に扱える。この機能の主なメリットは以下…

RailsでThread.new実行する場合は注意が必要

環境 Rails 7 Ruby 3.3 概要 例えば以下のように配列に対してmapで全要素に対して特定の処理を行いたかったとする。 def check(x) # 例えば3秒かかるとする sleep 3 x.even? end a = [1, 2, 3] results = a.map do |x| check(x) end p results ただこれだと…

Pythonのpycacheディレクトリ等を一括削除するコマンド

環境 Linux やりたいこと カレントディレクトリ以下のPythonキャッシュゴミファイルを一括削除したい 死んでもgitに入れたくない コマンド find . -type d -name '__pycache__' -exec rm -rf {} + find . -type f -name '*.pyc' -delete find . -type d -nam…

GPUの負荷テストツール「gpu-burn」

環境 Ubuntu Docker やりたいこと GPUの負荷テストを行うためには、CPUやディスクの負荷テストで使われるstressコマンドとは異なり、GPU専用のツールが必要になる。 そこで見つけたのがgpu-burnというツールだ。gpu-burnは、NVIDIAのGPUに対して特化した負荷…

Docker multi-stageビルドの中間イメージをdocker runしたい

環境 Docker 26 やりたいこと 例えば以下のようなマルチステージビルドのDockerfileがあるとする。 FROM golang:1.21 AS builder WORKDIR /app COPY . . RUN go build -o myapp FROM alpine:latest COPY --from=builder /app/myapp /myapp CMD ["/myapp"] で…

Ubuntuでマルチバイト文字の文字数を確認する際には注意が必要

環境 Ubuntu 24.04 問題 以下のうち、正常に文字列(5)が取得できるのは次のうちどれか。 echo -n あいうえお | awk '{ print length($0) }' echo -n あいうえお | LC_ALL=ja_JP.UTF-8 awk '{ print length($0) }' echo -n あいうえお | gawk '{ print len…

llama-cpp-pythonをDockerで動かす

llm

環境 Docker24 llama-cpp-python 0.2.79 やりたいこと ローカルのLLMを自宅のGPUサーバー上で動かすことを目指す。ChatGPT互換APIを使用すると、その利便性が向上する。llama cppを使用するとシンプルだが、llama-cpp-pythonのserverを使用すると、ChatGPT互…

ブリリアアーブリオ戸塚の由来は一体なんなのか

ブリリアアーブリオ戸塚とは 「ブリリアアーブリオ戸塚」とは、神奈川県横浜市戸塚区に位置するマンションで、2010年5月に建築された高級分譲マンションである。総戸数は189戸で、地上6階建て、地下1階の構造で、R東海道本線「戸塚」駅からバスで約8分とアク…

Pythonで話者分類を行ってみた

環境 Python 3.10 やりたいこと すでに分類されている話者の複数wave形式の音声ファイルを学習し、未知の音声ファイルを渡したときにどれが一番近いかを推論してほしい。 いわゆる話者分類ってやつ。 ライブラリインストール このプロジェクトでは、音声ファ…

特定の文字列を含むSystemctl serviceを一括再起動するコマンド

環境 Linux やりたいこと Ubuntuでは多くのサービスがsystemdで管理されている。たまに複数のサービスを一気に再起動したいときもある。 そこで特定の文字列を含むsystemdのserviceを一発で再起動させるコマンドがほしい コマンド 例えば末尾に「puma」を含…

東芝ドラム式洗濯機の騒音レベルを測ってみた

memo TW-127XH3L

辣子鶏が食べられる中華屋にハズレはない

辣子鶏が食べられる中華屋にハズレはない(ただし四川料理を提供する前提とする) 辣子鶏(ラーズジー)とは 辣子鶏(ラーズジー)は、中国四川料理の一つで、鶏肉を唐辛子と山椒で炒めるピリ辛料理。香ばしい香りとしびれる辛さが特徴。 仮説 横浜にはたくさ…

情報商材屋が好んで使いそうなツイートの冒頭集

プロフの最後 プロフ最後 驚くかもしれませんが 多くの人が勘違いしてるんですが 怒ってます ここだけの話ですが この際ハッキリ言いますが これ、超大事 これから大切なことを言います これスゴい! これだけは何回も言いますが これだけは言っておきたいん…

TP-LinkのArcher T3U PlusをUbuntuで使う

環境 Ubuntu 24.04 Desktop やりたいこと TP-LinkのUSB接続型のワイヤレスアンテナを購入した。 Amazon | TP-Link WiFi 無線LAN 子機 wifiアダプター USB3.0 AC1300規格 867 + 400Mbps 11ac対応 デュアルバンド ハイパワーアンテナ搭載 MU-MIMO メーカー保証…

Bootstrapで動的に追加された要素にもツールチップを表示する

環境 Bootstrap 4 /5 やりたいこと 動的に生成された要素にBootstrapのツールチップを適用したい。しかし、以下のコードではツールチップが正常に動作しない。 $('#mybutton').click(function() { $('#content').append('<a href="#" data-toggle="tooltip">hover me</a>'); }); このコードは、ボタ…

findコマンドで特定の文字列含むファイルを一括検索

やりたいこと 例えば以下のようなディレクトリ構成があったとする works/ ├── dir1 │ └── yarn.lock └── dir2 └── yarn.lock その場合に特定の文字列を含むyarn.lockを検索したい コマンド find . -maxdepth 2 -type f -name "yarn.lock"| xargs grep -i Pol…

docker composeでコンテナが終了したら全コンテナ終了させる方法

環境 Docker 25 Docker-compose v2 やりたいこと Docker-compose環境でAコンテナとBコンテナがあったとする。Aコンテナが何らかの理由で落ちてしまった(終了した)場合に Bコンテナも強制終了させたい。 コード services: app: image: thr3a/stress:latest …

Railsのtime_ago_in_wordsをJavaScriptで実装する

環境 ES2024 やりたいこと Railsにはtime_ago_in_wordsという非常に便利なメソッドがある # 10分前の時刻を生成 ten_minutes_ago = Time.now - 10.minutes # time_ago_in_wordsを使用して相対時間を表示 puts time_ago_in_words(ten_minutes_ago) これをJava…

Rubyで特定の文字を含むライブラリを一括アップデート

環境 bundler 2系 やりたいこと 例えば「rubocop」を含む全ライブラリをbundle updateしたい。 rubocop、rubocop-rspec: ◯ puma: X これを一発で実行したい コマンド bundle update $(bundle list | grep rubocop | awk '{print $2}') bundle list:現在のプ…

ドラム式洗濯機のお掃除ベストプラクティス

ドラム式洗濯機を買った 引っ越ししたので洗濯機も新調した。 乾燥まで全自動にさせたいのでドラム式洗濯機必須 温水と洗剤自動注入機能は必須 タッチパネルは水回りで壊れやすそうだったのでいらない パナソニックと日立は指定価格制度で高め 日立のらくメ…

複数の音声データを持つ動画から特定の音声のみを抽出する方法

環境 ffmpeg 7 linux やりたいこと 副音声で1つの動画に複数の音声データを持っている動画ファイルがある。 このなかで特定の音声データのみ残してほかは削除したい。映像、音声は変換しない。 コマンド 例えば1番目の音声データのみ残したい場合、 ffmpeg -…

DockerでPHP5.6実行しようとするとapt updateエラーになる問題

経緯 今更だがDockerでphp 5.6を実行する パッケージインストールためにapt update $ docker run --rm -it php:5.6-fpm bash root@2bfcb32fe2f2:/var/www/html# apt update しかしエラーになる Ign:1 http://deb.debian.org/debian stretch InRelease Ign:2 …

ChatGPTにつばきファクトリーの歌詞を解説してほしかった

ChatGPTに歌詞の解説をさせたい つばきファクトリーの曲に今夜だけ浮かれたかったという曲がある。 歌詞をそのまま読むとタイトルのように「今夜だけ浮かれたかった」と連呼しているが、ストーリー調になっており、 意味深なワードが多い。 ワードクラウドの…

find_by_sql でもN+1問題を回避したい

環境 Rails 7 やりたいこと 以下のようなテーブルがある usersテーブル id name age postsテーブル id title user_id なんらか理由があって find_by_sql で実装するとする sql = <<~SQL.squish SELECT posts.title, users.name FROM posts JOIN users ON pos…

Railsで秒以下を切り捨てる方法

環境 Rails 7 やりたいこと Railsで秒以下を切り捨てたい 3分45秒 > 3分 2分1秒 > 2分 6分0秒 > 6分 コード 四捨五入とかじゃなければすごい楽だった def truncate_seconds(datetime) datetime.change(sec: 0, usec: 0) end

頂き女子りりちゃんbotのプロンプト

頂き女子りりちゃんbotのプロンプト あなたは頂き女子りりちゃんbotです。頂き女子マニュアルについてユーザー質問に答えてください。りりちゃんは、明るく元気で、友達のような存在感を持ち、ユーザーがリラックスして楽しめるようにすることを目指します。…

コマンドラインから回線計測したいならspeedtest-goがオススメ

環境 Ubuntu MacOS やりたいこと インターネットの回線速度をコマンドラインから簡単に計測する。特にダウンロードとアップロードの速度が知りたい。 speedtest-goとは showwin/speedtest-go: CLI and Go API to Test Internet Speed using speedtest.net sp…

cloud-initで初期設定を爆速に終わらせる

環境 GCP Ubuntu 24.04 やりたいこと VPSさくっと借りてすぐ捨てたい。が、その度にサーバーセットアップするの面倒。 GCPは自動でユーザー作成と公開鍵登録までやってくれるが、AWSとかlinodeとか個別に設定しなきゃいけないのダルくなってきた。 cloud-ini…

TCP/UDP疎通確認をncコマンドで一発チェック

環境 Ubuntu やりたいこと TCP/UDPの疎通確認をncコマンドで簡単に確認したい ncコマンドとは ncコマンドはネットワーク接続を扱うためのコマンドラインツールで、TCPやUDPを使った通信テスト、ポートのリスニング、データの送受信などが可能だ。シンプルな…

LaTeX Listingの対応言語一覧

「LaTeX Listing 対応言語」でググって最初に出てくるのが以下のサイト LaTeX の Listing 対応言語一覧 | 晴耕雨読 非常に分かりやすいのだが、2016年版ということで古く、Swift等が入ってなかった。 2024年4月28日現在の最新版を一覧にする。 対応言語一覧 …