2019-12-10

Raspberry Pi 4 と DHT11 で温湿度を取得するコードをじぶんで書いてみる

つい先日ですが、技適を通過して日本国内で電波を発射できる Raspberry Pi 4 がとうとう買えるようになったということで、スイッチサイエンスから販売されているものを購入しました。

OS は、普段から慣れ親しんでいる Arch Linux の ARM 向けビルドを利用しています。インストールも簡単で、https://archlinuxarm.org/platforms/armv8/broadcom/raspberry-pi-4 の Installation の手順をなぞれば、すぐに Linux で Raspberry Pi の世界が広がります。

手元に microSDHC カードに書き込めるコンピュータが MacBook Pro しかありませんでしたが、VirtualBox の USB サポートを使い、Arch Linux インストール用の ISO イメージを起動し、fdisk などを利用してセットアップしました。

最低限、手積みでやらざるを得ないセットアップの手順は https://scrapbox.io/mozamimy-public/Raspberry_Pi_4 にまとめてあるので、興味がある方はどうぞ。

2019-06-23

Salmon v0.5.0 をリリースしました

ゴールデンウィークにワーッと作って、以降もちまちまと改善を進めている Salmon ですが、v0.5.0 をリリースしました。

https://github.com/mozamimy/salmon/releases/tag/v0.5.0

ちなみに上の画像は、いらすとやの柿の葉寿司のイラストです。地元が奈良県ということもあり、柿の葉寿司大好きなのですよね。鮭も鯖も同じくらい好きです。お土産としては頭一つ抜けているので、奈良に行ってから東京に帰るときにお土産にしたいのですが、日持ちしないのが玉にきず。なので、新幹線の中でモグモグ食べることが多いです。

2019-06-16

週報 (2019-06 3 週目) | Terraform の aws_budgets_budget resource の改良を進めたり Cafe Obscura でコーヒーを吸ったり

先週書いた 週報 (2019-06 2 週目) | Mimikyu というミドルウェアを書いたり Gato Roboto を一通りクリアしたり に引き続き、なんとか 3 週続きましたね。果たしてこの調子でこのまま毎週続けることができるのでしょうか。

今週のハイライトは、

Mimikyu に関するブログ記事を書いた

2019-06-15

ElastiCache の configuration endpoint のフリをする Mimikyu というミドルウェアを作った

週報 (2019-06 2 週目) | Mimikyu というミドルウェアを書いたり Gato Roboto を一通りクリアしたり のエントリでもチラッと触れたのですが、ElastiCache の configuration endpoint のフリをする Mimikyu というミドルウェアを作ったので、それについて書いていきたいと思います。

実のところ、本番環境には投入することができなかったので実際の環境での利用実績はないです... が、ローカルでテストしたところ、ちゃんと動いているのでどんな環境でもうまく動くはず。

リポジトリは以下のリンクから。

mozamimy/mimikyu: Tiny proxy of ElastiCahce Memceched configuration endpoint

2019-06-08

週報 (2019-06 2 週目) | Mimikyu というミドルウェアを書いたり Gato Roboto を一通りクリアしたり

先週から始めてみた週報ですが、とりあえず 2 回は続きました。二度あることは三度あるということわざもあるので、このまま毎週続けられるといいですね。

先週の記事はこちら。

週報 (2019-06 1 週目) | Salmon v0.4.0・電気ブランとか Night in the Woods とか

今週のハイライトは、

2019-06-02

週報 (2019-06 1 週目) | Salmon v0.4.0・電気ブランとか Night in the Woods とか

「あのとき何やってたかなあ」と思い返すときに便利そうなのと、日々取り組んでいることについて人が見える場所に書いていくといろいろおトクな気がしてきたので、週報という形でぽつぽつと書いていくことにします。週一回くらいなら続けられそうな気がする。

今週のハイライトは、

ブログ記事をひとつ書いた

2019-06-01

Spot Fleet を使って割安にリモート (AWS) に開発環境を持つためのアレコレ

みなさん、開発をやっていますか? わたしはやっています。

わたしはどちらかといえば「なるべくモノを持たない主義」なので、家に計算機をあまり置かないようにしています。とはいえ、IX2105 といったルータやスイッチの類や、HP の MicroServer N54L が元気に稼働してたりはしますが..。

それはさておき、家に開発用に大きなデスクトップマシンを置きたくないということもあり、ここ数年はさくらの VPS で借りたインスタンスをリモートの開発マシンとして利用していました。ただ、ご家庭の計算機環境の Infrastructure as Code を実践し始める前からの年季の入ったインスタンスで、雑草が生え放題になっていてツギハギでなんとか動いているといった様子でした。また、使っていないときも動いているため、月額で契約する VPS は割高だなあという気持ちもありました。

そこで、開発環境をガッと AWS に移すことに決め、さらにスポットインスタンスを活用して、性能の良いインスタンスを割安に使える環境を作ることに決めました。

2019-05-11

Rust のプロジェクトを CircleCI でテストしてリリースまで自動化するための設定例

先日このブログを自作の Salmon という静的サイトジェネレータに移行した というエントリを書きましたが、快適に開発を進めていくために CI 環境を整えようと思いたち、ちまちまと CircleCI を設定していました。

以前から Travis CI を個人プロジェクトで利用してきましたが、少し前から本格的に CircleCI を利用しはじめてみたところ、非常に手に馴染む感じがして気に入りました。じつは CircleCI 2.0 になる前にも少し使ったことがあったのですが、2.0 になって Docker ベースになったため、もろもろの概念や裏側で何が起こっているのかも理解・推測しやすくて扱いやすいです。

不慣れなのではじめは上手に設定が書けませんでしたが、ドキュメントとにらめっこしながらパターンを学んでいき、ようやく Rust プロジェクトでコミットをプッシュするたびにテストを走らせ、リリース (docker push および cargo publish) するところまで自動化できたので、メモとしてこのエントリを書くことにしました。

設定を書く際には https://www.ncaq.net/2019/03/08/21/12/35/ のエントリも参考にしました。

2019-05-09

ElastiCache のパラメータグループの差分をシュッと見たい

RDS の場合だと GUI からパラメータグループの差分を見られて便利なのですが、ElastiCache にはそのような画面がない (ないよね?) ので、適当にスクリプトを書きました。

https://github.com/mozamimy/toolbox/blob/master/ruby/elasticache_param_diff/elasticache_param_diff.rb

{{ embed_code "/2019/05/09/elasticache_param_diff.rb" }}

実行すると、こんな感じで差分が出てきます。実際には色もついてきれいです。

2019-05-03

ブログを自作の静的サイトジェネレータ Salmon に移行しました

このブログを構成するためのフレームワークとして、ながらく Middleman を愛用してきましたが、このたび自作の静的サイトジェネレータであるところの Salmon に移行しました。一文字目は大文字にするのがカノニカルな表記です。

過去の記事はもちろん、この記事も Salmon を使って生成しています。まだ README をちゃんと書けていないので、この記事をたたき台にしようと思っています。

まだかわいいロゴがないので、イメージ画像としていらすとやからサーモンのおすしの画像をお借りしてきました。