ハトネコエ Web がくしゅうちょう

プログラミングやサーバー・Web制作、チームマネジメントなど得た技術のまとめ

プログラミング系

Wi-Fi 6E と Wi-Fi 6 と Wi-Fi 5 ルーターの速度を実測比較! 6 と 6e でも違いが!

Wi-Fi 6e 対応ルーターを購入したので、Wi-Fi 6e, 6, 5 でどれだけ速度に違いが出るのか、スピードテストのサイトを使って比較してみました!

複数の Google カレンダーを自動で同期させる【Google Apps Script】

複数のGoogleカレンダーのスケジュールを自動で定期的に同期させる方法について解説。Google Apps Script を使ったことのない方でも、スクリーンショット付きの丁寧な解説で、手順に合わせて設定を完了できます!

Vultr で Kubernetes ノード立ててみたのでメモ

Kubernetes 初心者として、まずはカンタンに始めようと思って、 Vultr でマネージドな Kubernetes を始めてみることにしたのでメモ書き。 1. ノードの立ち上げ https://my.vultr.com/kubernetes 内の「Add Cluster」からノードを作成します。 Cluster Name …

anyenv + n から asdf に乗り換えた感想

Ruby, Python, Node.js のバージョン管理に anyenv と n を使っていたのですが、asdf に乗り換えてみました。メリット・デメリットをまとめました。

プログラマーの俺流 Mac の初期設定【2023年版】

自分が最初にやったMacの初期設定について書き残しました。他の人のためになるところがあるかも? macOS Ventura で大きく変わった設定画面に対応しています。(スクショ環境は Sonoma)

Mojo🔥 を Docker🐳 で動かすようにしてみた

随時更新していくかもしれないし、日付が空いたら別記事にするかも。 Mojo をさわってみたのでメモしていく。 Mojo on Docker ローカルで動かせると楽なので github.com を作ってみた。 ARM CPU の Mac だとまともに動かないので、 Intel チップの Mac をま…

Homebrew Tap の SHA256 ハッシュを簡単に更新できるようにする

Homebrew Tap の SHA256 ハッシュを curl でひとつひとつ更新するのは大変なので、スクリプトでまとめて更新できるようにしました

【最速レポ】ISUCON夏祭り2023、最高すぎたのでレポートします!!

『ISUCON夏祭り2023』という、ISUCON参加者が登壇する勉強会や、ちょっぴりISUCONを体験できるハンズオンのある、豪華なイベントに参加してきたのでレポートします!

GoとRustで同じCLIアプリケーションを作ってみて感じた2つの違い

CLIアプリケーションをGo言語とRustのそれぞれで書いて感じた、それぞれの開発体験の長所についてまとめました

Squash and Merge されたブランチも削除できる git-branch-delete-merged をリリースしました

通常のマージに加え、Squash and merge がおこなわれたブランチも判定し削除をおこなうCLIアプリケーションを作成しました! 丁寧な確認で安全に削除できるのが特長です。

git-delete-squashed を深ぼって git オブジェクトにふれたよ

Squash and Merge されたローカルブランチを削除するCLIツールを読み解いて gitオブジェクトの概念を理解した話です。 https://github.com/not-an-aardvark/git-delete-squashed こちらのリポジトリの、 https://github.com/not-an-aardvark/git-delete-squa…

Selenium が ARM CPU だと Selenium::WebDriver::Error::SessionNotCreatedError が出る問題

Rails の rspec によるE2Eテスト(system spec)で Selenium を使うことがあると思うのですが、 selenium/standalone-chrome を使うと、以下のようなエラーが出て system spec が落ちてしまいます。 Selenium::WebDriver::Error::SessionNotCreatedError: Co…

Selenium 3 から 4 にしたら system spec が Net::ReadTimeout で通らなくなったときの対処

Rails の rspec でのE2Eテスト(system spec)用に Selenium を使っているのですが、 バージョンが Selenium 3.141.59-20210929 だったので、 「ぼちぼち上げるか〜」と最新の 4.10.0-20230607 にバージョンアップしようとしました。 selenium/standalone-ch…

Xamarin の後継? .NET MAUI で Windows 用メトロノームアプリを作ってみたよ!

.NET MAUI を使って Windows ストアアプリとして公開できるような、メトロノームアプリケーションを作った話。開発手段に .NET MAUI を使っての長所・短所を記しています。

Firebase の対抗馬?! Back4App を使ってみたよ!

Back4App とはなんなのか? Firebase の代わりになるのか? Parse との関係性を説明しつつ、Flutter で実際に作ってみた作例も見せながらご紹介

AWS Lambda で SES を通してメール送信するときに送信元を文字化けさせない

AWS Lambda を使って、AWS SES を介したメール送信をおこなおうとしたら、日本語で記載した送信元が文字化け! どのようにしたら文字化けせず送るように出来たのか、説明いたします。

rubocop-rails で to_time が怒られなかったので調査した

rubocop (rubocop-rails) を使っていたら to_time が怒られなかった謎を調査するため、我々はアマゾンの奥地へと向かった…。そこで見つけたのは、今は禁じられし DateTime の姿だった!

QQEnglishのレッスン予約完了メールをGoogleカレンダーに反映させる【Google Apps Script】

QQEnglish のレッスン予約を勝手に Google カレンダーに登録してくれるよう、Google Apps Script を使って実現させてみました。 コードを載せているのでそのまま使えます。

esa から Notion へ API を駆使して移行した話

esa から Notion に、esa API と notion-py を使って移行した話です。 コメントを移行したり、画像をNotionに上げ直したりをスクリプトでおこなっています。

haml2slim を改善して haml から slim への移行をしやすくしました

haml から slim へ移行しようとして haml2slim を使用しようとしたところ、足りていない機能が多かったので大幅に改善しました。GitHub で公開中です

Amazon OpenSearch Service を使ってみてハマったところまとめ

Amazon OpenSearch Service を導入しようとしてハマったところをまとめます。 記事を残してくれた数多くの人に感謝です。 ハマったところいっぱいあったんですが、 逐一メモっていなかったので思い出した順に書いていきます。 ↓ 前回の Amazon OpenSearch Se…

AWS OpenSearch Dashboards に Google 認証でログインする方法

Amazon OpenSearch Service から作成した AWS OpenSearch Dashboards に、Google認証(Google Workspace を用いた SAML認証)でログインできるようにする方法を解説

Slack のメッセージにチャンネル名やユーザーへのメンションを埋め込みたいとき

Slack App (Slack Bot) を書いているときに、毎度やり方わからなくなるのでここに置いておく。 https://api.slack.com/reference/surfaces/formatting にすべてが書いてある。 チャンネル名を入れ込む https://api.slack.com/reference/surfaces/formatting#…

ランチタイムのグループ分けを自動で行う「UnitLunch」を改良しました

オンライン飲み会のグループ分けを考えるのが大変。。。自動化しないともう無理だ! 「ブレイクアウトルームの組分け、どうすればいい?」 と同僚から相談されて、ググったら出てきた を紹介しました。 「なるほど、良さそう。これでやってみるね」と言われ…

ArrayLib ライブラリが使えなくなったと思ったら使えた【Google Apps Script】

Google Apps Script を1社目に勤めていた頃から書いた経験あるのに ブログに「Google Apps Script」カテゴリーが今までなかったことに驚いたハトネコエです。 久しぶりに Google Apps Script を書こうとしたんですが、 Google Apps Script でスプレッドシー…

selenium/node-chrome と selenium/standalone-chrome の違い

selenium/node-chrome selenium/standalone-chrome どっちを使えばいいかわからなかったのでメモ。 通常は standalone-chrome を使えばOK。 じゃあ node-chrome は何に使えばいいのかっていうと、 これは Selenium Grid Hub といっしょに使う場合に使用。 ht…

リリースプルリクを gh-release-pr-generator で自動作成しよう!

GitHub でリリースプルリクエストを簡単に作れる gh-release-pr-generator を作成しました! Go言語製のCLIアプリケーションです。

Rails の Mountable Engine 側の _path や _url をメインアプリから呼び出す

Rails の Mountable Engine 側の routing を、 admin_app.users_path や admin_app.users_url のように xxx_path, xxx_url でメインアプリ側から呼び出す方法について説明しています

顔画像認識周りのメモ

手っ取り早いのは Haar-like OpenCV に分類器が同梱されていてすぐに使えるので、試してみるのはとっても簡単です。 これらの記事が詳しいです。 OpenCVを使った顔認識(Haar-like特徴分類器) Python+OpenCV で顔検出 - OpenCV に付属の評価器を試す 上の記…

prezto の rm や mv で確認プロンプトを出さないようにする

prezto を使っているんですが、 デフォルト設定だと rm や mv はそれぞれ rm -i や mv -i になっていて、 安全なのですがやや面倒に感じることもあります。 この機能をオフにするには、 vi ~/.zpreztorc で G でファイル末尾に移動したのち、 zstyle ':prezt…