Creator of RubyInstaller for Windows, rake-compiler and many other Ruby tools for devs. Job: @AREA_17_ Opinions: Mine

Paris, France
Joined October 2008
Last year I released the container image I use to compile @CrystalLanguage apps. You can use it to build and test against different version, 1.2, 1.3 or latest 1.5.1 This started a series of experiments on things I'm working on since then... 1/ 🧵
Decided to make public my Alpine-based, Crystal development container image: hydrofoil-crystal github.com/luislavena/hydrof… Quick demo of Radix library using it to automatically run specs on changes. Have fun! @CrystalLanguage #crystallang
2
4
2
19
I thought reference counting (ARC) would be slow compared to a garbage collector. Then I benchmarked my Ruby-like language. Most of the time went to malloc and free (61 to 85%), not to ARC (0 to 23%). Glad I measured before I optimized the wrong thing: luislavena.info/writing/roug…
1
61
A Ruby-like programming language with no garbage collector. I designed it, an agent wrote the compiler. Most of the bugs were memory bugs. No surprise there. July notes, with the hours and the token bill: luislavena.info/writing/roug…
1
93
Luis Lavena retweeted
Just shipped a clustered TLS certificate storage for Caddy in Uncloud 0.21 You can scale Caddy ingress across multiple machines, put it behind a load balancer and still get all your certificates automatically issued by Let's Encrypt. Caddy instances share ACME tokens through the cluster storage so any instance can answer a challenge. Once one gets a certificate, the others can use it too. Distributed locks coordinate issuance across machines. It's opt-in for now but planning to make it the default after thorough production testing. I bet this is the easiest way to run a highly available Caddy without using an external storage. This took me so much longer to implement than I anticipated but I can't get enough of this complex but beautiful world of leaderless distributed systems. As always my goal is to turn all that complexity into something simple to use. I'm glad we now have distributed locks we can use to coordinate concurrent operations in so many other places.
7
4
62
2,365
Luis Lavena retweeted
Lightpanda 1.0 is out ⚡ The browser we built from scratch for machines is out of beta and ready for production. > 10K commits > 1.7M passing Web Platform Tests subtests The full story: lightpanda.io/blog/posts/lig…
38
113
26
1,057
130,445
Luis Lavena retweeted
⌛️
2
5
18
1,337
Luis Lavena retweeted
Will be ranting about Uncloud.run this Wednesday at the Django Vienna meetup, at the beautiful @sentry office: meetup.com/django-vienna/eve… Come join if you feel like talking about self-hosting, K8s, and how we lost our ways (but maybe finding them again)
2
1
4
766
Luis Lavena retweeted
“Anything you leave unclear when prompting, the AI will fill with the statistical mean—with mediocrity” -@shanselman, encouraging devs/creators that it’s the job of the *humans* to bring the parts of our projects that move them above mediocrity.
1
4
1
25
4,792
I'm a Crystal @CrystalLanguage Core Team member and I created Kemal @crystalkemal (3.8k+ ⭐, 5M+ downloads). I've been building Crystal tools since 2015. Now I'm working on gcry, a %100 Crystal garbage collector for Crystal. Already at ~89% of Boehm GC throughput with ~0.95x RSS. I also maintain the entire Kemal ecosystem, run Crystal Weekly and Crystal Community, and write free books in Turkish and English. I can't find a job right now. So I'm going full time on Crystal Open Source. I need $1,000/month to keep doing this. If my work has helped you or your company, please consider sponsoring. 👉 github.com/sponsors/sdogruyo… Be part of Crystal's future. 💎 #crystallang
2
41
4
88
20,934
Sometimes Claude (Opus/Fable) wants me to read its mind: Claude Code: do you approve with this approach? (shows nothing for me to approve) Me: no, show me the plan *thinks* Claude Code: There, do you approve this approach? (there is nothing again in the output) 🙃
69
"Uncloud Hub is for the day you'd rather ship features than manage and monitor the monitoring stack." Suffered this exact pain more times than I can count. My cluster, my data + reliable monitoring. This is the right balance I have been waiting for.
I'm starting to build the next chapter of Uncloud: Uncloud Hub 🌐 Uncloud made deploying on your own servers easy. But production only really starts when the deploy finishes. Hub is the missing dashboard and observability stack for your clusters so you can see what’s happening in production and know when something needs attention. Monitoring is the one piece of infra that has to be up exactly when something bad happens. That's why Hub is a managed service that stays up even when your servers go down. You can keep enjoying self-hosting but skip building and monitoring the monitoring. And when something does break, you can point your AI agent at the cluster and telemetry and let it troubleshoot the incident for you. This is how I plan to fund Uncloud's full-time development. I put up a page with an early access list if you want to help shape it 🙏🧵
1
4
510
Luis Lavena retweeted
I'm starting to build the next chapter of Uncloud: Uncloud Hub 🌐 Uncloud made deploying on your own servers easy. But production only really starts when the deploy finishes. Hub is the missing dashboard and observability stack for your clusters so you can see what’s happening in production and know when something needs attention. Monitoring is the one piece of infra that has to be up exactly when something bad happens. That's why Hub is a managed service that stays up even when your servers go down. You can keep enjoying self-hosting but skip building and monitoring the monitoring. And when something does break, you can point your AI agent at the cluster and telemetry and let it troubleshoot the incident for you. This is how I plan to fund Uncloud's full-time development. I put up a page with an early access list if you want to help shape it 🙏🧵
5
5
2
49
2,987
Luis Lavena retweeted
Just shipped in Uncloud 0.20: secrets for your Compose services 🔐 Define a secret with x-command extension and then reference it as secret://name in env var. Uncloud resolves it at deploy time straight from 1Password, Bitwarden, AWS Secrets Manager, fnox, or any CLI you already use. Your prod secrets shouldn't live in your Compose file or in git.
6
2
21
651
I built an agent skill whose main job is to talk me out of building things. Yup, no more "great idea, here's the architecture." It demands evidence first, and only writes requirements if the idea survives. New video on YouTube: youtu.be/ZnNok4pVX4Y
1
86
Luis Lavena retweeted
Licensed to bench 🐼🏋️ We rebuilt our MCP tool surface, then gave the same tools to Lightpanda Agent. Same engine, time per task on GAIA benchmark: - Old MCP: 416s - New MCP: 219s - Native agent: 86s Cheaper and more accurate too 😎 We went through 5 iterations to get here. Full write up --> lightpanda.io/blog/posts/ben…
3
5
1
18
987
While recording a dev walkthrough of a new app, I kept seeing small bugs. Stopping to log each one would have broken my flow. So I decided to keep recording and just said them out loud. Then I built a tool to write the reports for me. 1/3
1
98
The tool reads the audio transcription from the recording, finds every spot where I called out a problem, and grabs a reference frame around the timestamp. Then it hands the frame and my own words to Claude vision, which writes the report. 2/3
1
84
One walkthrough, 9 bug reports. Each with severity, component, steps to reproduce. Best part: I never had to stop, and I didn't forget a single issue by the end. Now I have a reusable tool. I point it at any walkthrough and get a bug list back. 3/3
58
Opus vs Fable when building a new feature. Opus: github.com/luislavena/drift/… Fable: github.com/luislavena/drift/… I don't recall how long it took to Opus back in October to implement it, but the same prompt and context was given to Fable took ~2hr with a cost ~$55 in tokens. 1/
1
2
126
When facing auth issues with MySQL 8 in CI (something that crystal-mysql do not support and failed in tests), Opus decided to downgrade MySQL, only in CI, diff from local, but Fable opted to manually launch the container and keep local/CI parity when running tests. 4/
1
40
Overall performance: slow but good, surprised taking in consideration there isn't lot of data to train the models in Crystal Language. 5/5
31