Joined April 2009
31 Photos and videos
Pinned Tweet
26 Jul 2025
Puma, Falcon, or Pitchfork? Choosing the right web server for your Ruby app is a big decision. In my @railsconf talk, I break down the key differences, performance trade-offs, and how to choose the right one for your specific application. youtu.be/gLYx83CaCNw?si=s2zi…

5
9
49
9,369
Manu J retweeted
What does a rocketship look like, you ask? Well, we just signed a massive multi-million dollar deal with Microsoft to remove carbon dioxide. We can build in deeptech from India. LFG.
9
6
159
6,171
Welcome @ioquatix !
Another speaker is boarding the Deccan Queen on Rails🚂 Here's your hint: ⚡ Ruby Core Team Member ⚡ Creator of Falcon ⚡ Builder of the Async ecosystem Any guesses? 👀 #DeccanQueenOnRails #RubyOnRails #RailsCommunity #Pune
1
1
59
Manu J retweeted
Another speaker is boarding the Deccan Queen on Rails🚂 Here's your hint: ⚡ Ruby Core Team Member ⚡ Creator of Falcon ⚡ Builder of the Async ecosystem Any guesses? 👀 #DeccanQueenOnRails #RubyOnRails #RailsCommunity #Pune
2
6
1,184
Manu J retweeted
A new article on the perils of forgetting the basics in the heat of AI-assisted coding. Link below
4
10
31
4,527
Manu J retweeted
Elixir v1.20 released! Now officially a gradually typed language: Elixir type checks every single line of code, finding bugs and dead code, without developer overhead (no typing signatures) and extremely low false positives rate. Plus a faster compiler! Links and reports below.
56
307
1,466
116,241
Manu J retweeted
In case you are in the camp of “Andrew Tridgell is vibefucking rsync” please read this.l and adjust your priors. medium.com/@tridge60/rsync-a…
14
37
266
41,935
Manu J retweeted
Met a promising junior engineer for whom I don't have a good role for the moment. If you're hiring juniors pls take a look - x.com/Siddarth_0910
3
6
64
8,912
Manu J retweeted
Super cool news tonight: Rails realtime now runs on the server of your choice 🔥🔥🔥 Vova’s Action Cable server adapterization PR was merged 🥳. Same Channel and Connection code, swappable runtime underneath: Falcon, Fibers, async-cable. This is the groundwork AnyCable has been proving in production for years, now landing in Rails itself. People credit Rails’ longevity to DX. I think the secret behind it is adapterization pattern: every layer hides a default behind an interface, so the framework absorbs each new wave of innovation without a rewrite. Others wire it up with extra services. In Rails you swap the implementation as you wish, keeping the code intact. Two years in the making, with @ioquatix, @matthewd and @rafaelfranca steering the reviews. Congrats @palkan_tula 🥳
11
40
243
19,868
Manu J retweeted
I've got an agent in a loop optimizing a renderer with the goal to minimize frame times (and tests to measure). It got times down from 88ms to 2ms and allocations down from ~150K to 500. Sounds good, right? Wrong. This is exactly why agent psychosis is a big fucking problem. As an experiment, I rewrote the Ghostty core render state in Go, with access to identically laid out data structures as Ghostty and the exact same validation tests. I made a purposely naive renderer (simple, correct, but slow). 88ms per frame with 150,000 allocations (horrendous, lol)! I then kickstarted a Ralph loop to bring the frame times down. I told it it can't modify input data structures or the public API or tests (they're correct), but it can do anything else it wants. It got to work. It has worked for about 4 hours. I've spent around $350 on this experiment so far. The results? 88ms => 1.5ms 150K allocs => ~500 allocs Incredible right? Nope. My hand-written renderer I ported has frame times (same benchmark) of ~20us (0.020ms) and 0 allocations in the update path. This is the problem with psychosis and lacking systems understanding. If you don't understand the system, you're going to accept that this is an incredible result. If you understand the system, you'll see better solutions immediately and can do roughly 75x better on throughput. The people who blindly trust agent output are in the former camp. They're sheeple, overdrinking from a fountain of mediocrity. Standard disclaimer: I use AI all the time. I like AI. The point I'm making is to not blindly accept results. Think. Analyze. Learn.
308
979
8,938
791,181
WTF!!!
May 22
I had hacked CBSE's OSM (On-Screen Marking Portal) in February and had reported the vulnerabilities to CERT-In, but they were unable to patch most of them. I've written a detailed blog post about it here: ni5arga.com/blog/posts/hacki…
63
Manu J retweeted
May 25
Just added Skills to performance.dev/skills! Every article now has a Markdown version built for agents. Over time, I’ll be curating a living performance skill from everything I’ve learned along the way.
17
11
373
25,551
Manu J retweeted
Argent's screen describe tool now uses ~6x less context without compromising quality.

5
9
155
9,014
Manu J retweeted
May 20
Introducing performance.dev! A new space where I explore how the best apps in the world are built. First piece: How's Linear is so fast? a technical breakdown. performance.dev/how-is-linea…
94
177
2,166
526,526
Manu J retweeted
I've been recently experimenting with a new way to run e2e flows in React Native. Same maestro e2e test, same yaml, but 2-3x faster. learn about Ennio 🧵
25
42
559
58,841
Manu J retweeted
May 12
Her name was Lini Puthussery. She was 31 years old. A nurse at the Perambra Taluk Hospital in Kozhikode Kerala. She had been working there for six years. She had two sons. Ritul was five years old. Sidharth was two years old. In May 2018 the Nipah virus arrived in Kerala. Two brothers and a relative were brought to the hospital with symptoms nobody had seen before. Lini was on night duty when they arrived. She cared for them through the night. They died soon after. Confirmed Nipah positive. By Friday Lini herself had fallen ill. She was shifted to the ICU at Kozhikode Medical College Hospital. When she learned she had contracted the Nipah virus she asked the hospital not to allow her two sisters to visit. She did not want them exposed. From the ICU she wrote a note to her husband Sajeesh. “Sajeesh I am almost on my way. I don’t think I will be able to see you. Sorry. Please look after our little ones and take them to the Gulf. They should not be alone like our father. Lots of love.” She died on May 21, 2018. Her body was cremated quickly to prevent the spread of infection. Her family could not say a proper goodbye. She did not hesitate when the patients arrived. She did not ask who would care for her sons if she fell ill. She showed up for her shift and did her job. Today is International Nurses Day. Her name was Lini Puthussery. She deserves to be remembered.
158
2,469
10,513
248,020
Manu J retweeted
Pulled 120 malicious packages from @rubygems today. The target wasn't end users - it was RubyGems itself (XSS, data exfiltration). Reminder: sometimes the registry is the one under attack. #ruby #rubygems #security
3
21
122
9,524
Never seen this error from Google before in 20 plus years of using it.
3
336
Manu J retweeted
Carbon Fiber is a high performance Ruby Fiber Scheduler powered by Zig and libxev (same as used in Ghostty). I've just released a new version: updated to Zig 0.16, latest libxev. Some optimizations, too—it's now faster! (benchmarks in README) github.com/yaroslav/carbon_f…
2
7
33
2,168
Manu J retweeted
Really exciting to see Herb being adopted at GitHub! 🌿 Over the past months, the GitHub team has been running Herb across one of the largest Rails codebases out there where Herb helped uncover real issues missed by existing tooling while also providing invaluable feedback. 🙌
10
42
310
15,350
Manu J retweeted
Claiming that "all my code is now written by an agent" is ambiguous. It includes: 1. Folks who know what they are doing and care about software design, who can now produce code much faster. 2. Vibe coders who treat the agent as a black box that generates a working system. I validate daily that, with the current models, vibe coding is not suitable for building minimally maintainable systems. Agents introduce major internal quality issues quickly and spread them even faster because they echo existing patterns so well. I see two challenges for programmers today: First, learning how to do (1) properly: how to create the right context for agents, how to orchestrate them and manage their memory, how to remove toil, parallelize work, etc. In other words: maximize the value we can extract from this new sorcery. Second, vibe coding is fantastic for non-programmers to create value by doing things they could not do before: quickly iterating on ideas, automating workflows, building ad-hoc tools, and so on. The key question is: where internal software quality starts to matter, and how to enforce it without diminishing this new source of value. I am also increasingly convinced that many companies that blindly embrace vibe coding and chase futuristic PR headlines are about to discover the terrors of technical debt at scale.
12
12
110
8,876