テキストエディタ開発の参考にしたもの

ライフワークとして、炊紙というテキストエディタを開発している。一般的なテキストエディタよりちょっと風変わりで、三次元空間上でテキストを編集するユーザーインタフェイスの価値検証が主な目的のテキストエディタだ。 github.com なぜ、そんなものを作…

ビルド結果に影響を与えるファイルを突き止めろ!

ソースコードをリポジトリからチェックアウトしてビルドする際に 「このビルドを実行する時、どのファイルが参照され成果物に影響するだろうか?」 と考えたことはありますか? 「このディレクトリの変更だけ監視してCIを走らせればオッケーです」 「このコ…

同じビルドやテストを何度も実行しないための GitHub Actions

前回 同じビルドやテストを何度も実行しない方法 として GitHub Actions での実現方法や sver というコマンドラインツールを紹介しました。 今回、汎用的に使える部分を sver-actions として切り出したので紹介します。 内部動作の詳細については 同じビルド…

同じビルドやテストを何度も実行しない方法

GitHub Actions で同じビルドやテストを何度も実行しない方法を紹介します。ホストランナーを ubuntu-linux にした場合、実行する必要のないジョブは 10 秒程度でスキップ可能です。

システムの利用者に安全に独自のビジネスロジックを定義させる

SaaS の活用が日々盛んになってきている昨今。皆様精力的に SaaS システムを開発されていますでしょうか。 私は最近、子供とScratch3.0でゲームを作ったりしています。 マルチテナントシステムが利用者の個別要件を受け入れるためには さて、マルチテナント…

プログラマとミールキット

男子厨房に入らず。そんな時代はとうに過ぎた現代。しかし我が家のキッチンは依然妻の独壇場となっていた。 手伝いをしようにも男子大学生自炊飯(必修)しか履修していない我が身では土曜に餃子を包んだり、焼きそば、たこ焼き程度が貢献できる限界であった。…

チームのやっていきを言葉にする

先日 ovento というイベントで対外発表をしてきた。 Osaka Venture Today Meetup という freee さんの主催するイベントで、技術的に良い話をしながら参加企業が良いエンジニアと出会って良いことが起きればいいなという感じの会。 kansai-venture.connpass.c…

「コンピュータシステムの理論と実装」をRustで。

良い本がある コンピュータシステムの理論と実装という良い本がある。 コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方作者: Noam Nisan,Shimon Schocken,斎藤康毅出版社/メーカー: オライリージャパン発売日: 2015/03/25メディア: 単行本…

リモートワーク、ひとりでやるか、みんなでやるか

前置き 自分はいま週に3日の在宅勤務、2日はオフィスに出社という働き方を3年程度続けている。 このペース自体は3年間ほとんど変わっていないのだが、2018年1月からチームとしての仕事のやり方が大きく変わった。 具体的にはチームでモブプログラミングと1週…

パターンマッチングマン

この正月休みにルービックキューブを久しぶりにやったら、終盤の手順を忘れていて完成目前で失敗してしまった。 何度かやって、急がずにやればふたたび3分程度で解けるレベルに戻ったようだ。 昔、友人に「ルービックキューブの解放なんてパターンを覚える…

マルチテナントアーキテクチャについて

SaaSシステムを開発しているみなさま、お元気でしょうか。 SaaSシステムというといわゆるWebサービスよりももう少しBtoBの雰囲気が漂ってまいります。 SaaSシステムでは契約者(ここではテナントと呼ぶ)が複数いて、テナント毎に複数のログインユーザーやロ…

続・Web系の自分が想像と障害で学んだバッチ処理・設計の基本

バッチ処理というのがそれ単体で勉強するのが難しく勉強しようとすると何に手を付けるべきかさっぱりわからないということは、先日のブログで述べたとおり。 自分が経験の中で得てきた知見は正しいのかどうか、世間の人に見てもらいたかったというのが書いた…

Web系の自分が想像と障害で学んだバッチ処理・設計の基本

バッチ処理というのはそれ単体で勉強しようとするとなかなか何を勉強したらいいのかわからないことが多い。 特に経験がWeb系ばっかりだと、いざバッチ処理を実装しようとした時に基本的なノウハウを知らないままに書いてしまうことが多い。 バッチ処理という…

Doma勉強会

Doma勉強会に行ってきた。具体的にはこれ。 kanjava.connpass.com 資料はこれ Doma実践 メモから View層までDomaのエンティティやドメインオブジェクトを持ち込む? うらがみさんとしては結構やってるとのこと。 JAX-RSでControllerの引数として受け取るとこ…

DevLOVE関西行ってきた。

具体的にはこれ。 https://devlove-kansai.doorkeeper.jp/events/36446 以下、自分の勝手な解釈が多々含まれるけど感じたこと、きいたことをまとめる。 「エンジニアが幸せな人生を過ごすための学び方、関わり方、あり方」というエモーショナルなタイトルで…

fitdesk使用感日記

fitdeskを買ってからというもの、PCに向かうとき=fitdeskぐらいの勢いで乗っている。PCがfitdeskの上においてあるのだから当たり前なんだけど。 実際にfitdeskを買うまでは「これはとてもいいものだからオフィスへの導入を考えてもいいものなのでは」ぐらい…

トマトジュース

トマトジュースは健康にもダイエットにもよいということなので安直ながらのみ始めた。 娘もちびっ子には珍しくトマトジュースが飲めるっぽいので一緒にのんでいる。 健康でも開発でも何事も銀の弾丸はないので継続あるのみなのだ。

プログラマー vs 運動不足

きっかけ プログラマーは、だいたい運動不足になりやすい仕事だ。 PCに向かって色々調べ物している時やプログラミングしている時が一番楽しい時なので、動かなければいけないという差し迫った状況にないと際限なくPCの前で座っている人も少なくない。 オフィ…

cronのクラスタリングサポート(CentOS7)

ある日、突如 cron に疑問を感じ man cron を実行してみた。 たまたま CentOS7 だったのだが、「CLUSTERING SUPPORT」なるセクションがありびっくりした。 cronでクラスタリングとな! びっくりしたのはいいが、実際に何をやってくれるのかはさっぱりわから…