Stick Breaker

Stick Breaker

AI時代のビッグデータと闘うデータサイエンティスト奮闘記

Bashのプロンプトが64文字の時だけバグる
TL;DR それはいつものようにコーディングに取り掛かろうとした矢先のことでした。 Video 私のシェルもついに反抗期を迎えたようです。 プロンプトの表示が突然おかしくなり、改行もされなくなってしまいました。 事象 プロンプトはpowerlineっぽい表示ですが、このプロンプトを生成するコマンドはRustで自作しています。 問題なのは、このプロンプトが特定の文字数になった時だけバグが起きてしまうということです。 つまり、プロンプトの表示幅が64文字になった時にだけこのような現象が生じたということです。 なので、例えばブランチ名を1文字だけ増やしたり減らしてみたりすると、この現象は解消...
Rust (actix-web) でBasic認証を実装する
背景 Actix-webでBasic認証を実装しようとしたけど情報があまり出てこなかったのでメモ Basic認証とは? Mozillaの説明が非常に分かりやすいのでそちらを参照するのが良いと思われます。。 簡単に言うと、クライアントがユーザ名とパスワードをBase64エンコードして送信し、サーバがそれをデコードしてパスワードを比較するという認証方法です。 パスワードが暗号化されないので、セキュリティ的にはあまり好ましい認証方式ではありません。 クライアント側がBasic認証しか対応していないなど特別な場合を除き、より安全な認証方式を用いるべきです。 実装 まず基本的なサーバを作る まず...
コンビニの滞在時間について考える
きっかけ ※どうでも良いという方は読み飛ばしてもらっても結構です。 最近東京に引っ越してきて、改めて東京の人の多さに驚かされている。 出社した日にコンビニで昼食を買おうと思って入店したら、レジには長蛇の列。 「コロナの時代にこんな人混みの中に並ばなきゃいけないなんて...」 こんなご時世だからこそ、人が多くいる場所での滞在時間は1秒でも短くしたいというのが本音だ。 「勤務開始前に予め買っておけばいいじゃん。」 確かにそれも一理あるのだが、自分としては新鮮で温かいアメリカンドックとコーヒーが欲しいのだ。 会社の電子レンジが壊れているから、温め直すこともできない。 そんな訳で、昼食...
avatar
Ryohei Machida
Persol Works Design Co., Ltd.