HOMURA'STECH BLOG
programming memo & tech posts.
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Guidebook
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Poll
Rust で競プロやってみた:Boot camp for Beginners / easy100 / A - Wanna go back home
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - A to Z String
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - たてなが
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - String Rotation
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Contest with Drinks Easy
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - AcCepted
PREDUCTS の天板と FlexiSpot7 で最強の作業環境を手に入れたによってエンドゲームを迎えたと思われていた シリーズ:デスクツアーだが、物欲は止まる所を知らず5K2Kのモニターに手を出してしまった。
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Palace
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Tax Increase
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Small and Large Integers
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Good Distance
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Shiritori
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Counting Roads
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Maximal Value
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Some Sums
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Comparison
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Picture Frame
前回正常に表示できたかに見えたが、実は文章が長いと画面外にはみ出た領域が切れていた。 画面外にはみ出たものはスクロールできるように修正した。
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Lower
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Lucas Number
Rust で競プロやってみた:Boot camp for Beginners / easy100 / A - Fairness
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Palindromic Numbers
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - 美しい文字列
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Foods Loved by Everyone
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Low Elements
Rust で競プロやってみた:Boot camp for Beginners / easy100 / A - Range Product
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Exception Handling
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Five Dishes
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Attack Survival
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Prison
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Not Found
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Coins
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Postal Code
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Increment Decrement
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Varied
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Ruined Square
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Shift only
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Count Balls
Rust で競プロやってみた:Boot camp for Beginners / easy100 / D - Caracal vs Monster
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Count Order
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Nice Shopping
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Chocolate
Rust で競プロやってみた:Boot camp for Beginners / easy100 / A - Candy Distribution Again
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Next Prime
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Collatz Problem
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Toll Gates
Working with UI controls — SwiftUI Tutorials をやってみたのでメモ
Animating views and transitions — SwiftUI Tutorials をやってみたのでメモ
Drawing paths and shapes — SwiftUI Tutorials をやってみたのでメモ
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - ATCoder
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Alchemist
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Go to School
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Divide the Problems
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Replacing Integer
Rust で競プロやってみた:Boot camp for Beginners / easy100 / A - Cookie Exchange
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Traveling Salesman around Lake
Composing complex interfaces — SwiftUI Tutorials をやってみたのでメモ
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Break Number
Building lists and navigation — SwiftUI Tutorials をやってみたのでメモ
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Card Game for Two
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Collecting Balls (Easy Version)
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - 1 21
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Bingo
Creating and combining views — SwiftUI Tutorials をやってみたのでメモ
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Bishop
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Can you solve this?
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Tax Rate
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B - Qualification simulator
Rust で競プロやってみた:Boot camp for Beginners / easy100 / C - Rally
Rust で競プロやってみた:Boot camp for Beginners / easy100 / B. Power Socket
Amazonプライムデーで FlexiSpot7 が30%offになったので購入した。 それを機に憧れていた PREDUCTS の天板とその他諸々を買ったのでデスク周りを一新した
Domain Modeling Made Functional を読んでいるので読書メモ その2
Domain Modeling Made Functional を読んでいるので読書メモ その1
Rustでカリー化(currying)と部分適用(partial application)ができるのか試してみた。結論としては可能。
全ブラウザ対応したcontainer queryは何がスゴイのか? を読んで試してみたくなったのでこのブログのトップページに Hero Image を入れてみた
3カラム構成のページで各カラムの長さが違う場合に、例えば左カラムが画面外に出たら空いた部分に代替要素(ナビゲーションや back to top など)を出したいので Intersection Observer を使って実現できないか試した記録
ある程度大きなロジックを作る時、DDD(っぽい)ディレクトリ構成にすることが多いのだが、これまでよくやっていたパターンは DDD観点からみるとよくない気がしてきたので見直す。試しているだけの雑多なメモかつポエム的なものなので、結論はない。
prisma-client-rust の 0.6.1 を試していたら、`Undefined symbols for architecture arm64` で build が失敗した。解決方法をメモしておく。
Rust で DB 接続を試してみる。DBスキーマの管理とかは prisma 使いたいので、探してみたところ 非公式だが prisma-client-rust を見つけたので試してみる
next/image で Masonry レイアウトを実現するのは難しい という記事を書いたがレベルが上がって実現できるようになったので訂正記事を書く
Rust で作ったものをAWS Lambda で動かしてみようと思う。aws-lambda-rust-runtime を使えばできそうだったので試してみる。
ウソみたいに簡単! Tailwind CSSのみを使用してMasonryレイアウトを実装する方法 をみて、ブログの記事一覧を Masonry レイアウトにしようと思ったが next/image で実現するのは難しかったので img タグで普通に実装した。
Rust は簡単に monorepo が試せて良い。ただ、GitHub Actions で CI 環境を構築する上で Rust かつ monorepo 用のCI環境構築経験がないので素振りしておく。
MacBook Pro 13inch(late 2017) が調子悪くなってきたので、下取りに出して Mac Studio を購入した。ついでにデスク周りを整理したので最新状態を記録しておく
Next.jsで作ってるブログの記事がGoogleにindexされてないので困っている。ひとつづつ Search Console からクロールリクエストをあげても、らちが開かないのでまとめて index に登録されるように処理する。
url 貼って紹介したい時とか、amazonのリンク貼りたい時とかにただのリンクだと面白くないので、twitterのカードUI的なリッチなリンクを貼れるようにする
このブログ内のリンクを Next.js の <Link> や Twitter の Embed に変換したいので対応した
CWVの数値が悪かったので改善する。imgurにあげている画像を参照しているが、最適に表示できていなかったのでCWVの数値が悪い。next/imageの機能を使って最適化してみる
medium + Route53 から gatsby cloud + Route53 に変更した。を読んで、medium からデータを移行できることがわかったので、このブログに移行する。
前回の続き blog-starter-typescript で作ったプロジェクトにstorybookを導入する
ClassFunction を変数に代入すると、参照が代入されるだけかと思ったが意図しない動きをするので原因と対策をメモしておく
Next.js + Tailwind UI を使うとたった6時間で技術ブログのプロトタイプを作れるを参考に技術ブログを作り直してみる。そのためにやったことをメモする
有線に関しては最適化したが無線通信は最適化できていなかったので更なる改善を目指した。先に言っておくが、前のエントリの状態でもほとんどのご家庭には問題ない回線速度なのでこれ以降の対応はオーバーエンジニアリングである。
仕事ですぐに使えるTypeScript — 仕事ですぐに使えるTypeScript ドキュメント を勉強することにしたので、環境構築する。OS は mac を想定してるので、win の人は適当に読み替えてください。
snmp 等のポート開放確認のために nc を udp モードでを使うとnc がタイムアウトした時も succeeded と表示されるため、開放されているか確認できない。
正規表現チェックだけではダメ IPアドレスは2進数で扱える IPアドレス と サブネットマスクを `OR` した結果が サブネットマスクと同一なら問題ない
@Id が付いているパラメタにDB上で auto_increment が設定されている場合、そのパラメタにコード上で値を入れて persist() すると一意制約例外が発生する。
海外のエンジニアに、日本のシステム開発におけるバックアップの目的を聞かれたが答えられなかった。その時にBCP/DRのTierについての説明を聞いて感動したが、後日調べても日本語の記事が見当たらなかったので書いてみました。
ラムダ式のメソッドリファレンスを使った特に squid : UnusedPrivateMethod が発生した時の対処方法