Lucian Ghinda @lucianghinda.com · 5hHave to come back to share this extra trick: Whenever the agent makes a mistake ask it to write 10 times in their memory: "I am sorry. I will make no mistakes next time" 021
Lucian Ghinda @lucianghinda.com · 8hI don't understand why you all are complaining about code quality when using AI. Don't you use the the best engineering practice and always finish your loop/graph/pyramid of agentic harness with: > Think deep. Make no mistakes. Follow all standards. Think in ASD-STE100 ? 250
Reposted by Lucian GhindaMarco Roth @marcoroth.dev · 24/09/2026Today is a big day for Herb! It's built into Rails 8.2 by default for all HTML+ERB views. My talk at #RailsWorld in Austin today answered three questions: What is Herb? What ships in Rails 8.2? And what does this enable? Herb v0.11 and ReActionView v0.6 released alongside it. 36813
Reposted by Lucian GhindaAmsterdam Ruby Meetup @amsrb.org · 24/09/2026The first talk of the night is from Stanislav Katkov about #Ruby documentation! 033
Reposted by Lucian GhindaAaron Patterson @tenderlove.dev · 24/09/2026Support Local Variables arxiv.org/pdf/2609.01502arxiv.org 1132
Lucian Ghinda @lucianghinda.com · 10/09/2026The creator of superpowers plugin kindly asked us to change the name of github.com/lucianghind... to something else and not use superpowers. So I need your help for choosing a new name for this project. What would you think it should be called?github.comGitHub - lucianghinda/superpowers-ruby: Claude Code superpowers: core skills library for Ruby and Ruby on Rails projectsClaude Code superpowers: core skills library for Ruby and Ruby on Rails projects - lucianghinda/superpowers-ruby 010
Lucian Ghinda @lucianghinda.com · 09/09/2026And then I hand the documents to Codex with Astra on Medium and a prompt that is like this: Implement using Luna subagents the specifications found at docs/<specs> which will do the work and sometimes tell me things like this (I read them for fun bc I don't trust I verify 😄 ) 000
Lucian Ghinda @lucianghinda.com · 09/09/2026Basically I first run: github.com/lucianghind... to generate a high level idea of what I want to implement Then I run a codebase-research and change-spec skills which will soon be added to superpowers-ruby cause I think I tested them for almost 2 weeks and they are very goodgithub.comGitHub - lucianghinda/superplanning: Superplanning is a Skill for AI Agents that helps you plan a new product or featureSuperplanning is a Skill for AI Agents that helps you plan a new product or feature - lucianghinda/superplanning 100
Lucian Ghinda @lucianghinda.com · 09/09/2026Most of my work these days on my personal projects (which are a bunch of small Ruby gems that I use in various projects) is using Astra medium to orchestrate and Luna subagents to implement and execute various tasks. 110
Lucian Ghinda @lucianghinda.com · 09/09/2026These are just token ids not vector embeddings so the LLM will not work directly with them. They also have no meaning except to allocate an integer to a chunk of text (token) But it is still nice to decompose and explore how a prompt/context is transformed. 000
Lucian Ghinda @lucianghinda.com · 09/09/2026I was creating some content for #GoodEnoughAgents workshop and wanted to make it even more practical so I found this gem that provides an interface to tiktoken algorithm from @OpenAI An LLM model never "reads" your text, it works with numbers. gem install tiktoken_ruby 100
Lucian Ghinda @lucianghinda.com · 08/09/2026So looking forward to build more stuff together. I did a similar thing this year in a way forced to choose to focus on a smaller set of projects and my family. 000
Lucian Ghinda @lucianghinda.com · 08/09/2026Did not have time to announce that together with @skatkov.com we will deliver a workshop about Good Enough Agents at EuRuKo 2026 but now seems late cause it is fully booked :) Looking forward to meeting everybody at @euruko.org 032
Reposted by Lucian Ghindatapster @mileswoodroffe.com · 03/09/2026If you’re in London next week, it would be great to see you at “Ruby in London” at Mindful Chef HQ, where me, Tobias and Tom are all speaking. Lots of #rubyfriends already coming but room for a few more! It’s going to be a busy one! www.meetup.com/ruby-in-lond... #ruby #railsmeetup.comRuby in London with Mindful Chef, Wed, Sep 9, 2026, 5:30 PM | MeetupWelcome back to another Ruby in London meetup!! The event will be hosted again by the wonderful team at Mindful Chef on Wednesday 9th September at 5.30pm. Speakers/Talks 084
Lucian Ghinda @lucianghinda.com · 03/09/2026Even bigger now that also Codex has issues bsky.app/profile/luci... 100
Lucian Ghinda @lucianghinda.com · 03/09/2026I think one important change from Anthropic related to Fable 5.1 is the Data Retention There are a lot of organisations who disabled Fable due to data retention policy. And it seems Anthropic does not plan to disable it but maybe this EFS could help more organisations use Fable 020
Reposted by Lucian Ghindahsbt @hsbt.org · 02/09/2026RubyGems 4.0.20 and Bundler 4.0.20 are out. This is a cumulative bug fix release for the 4.0 series, and it backports the fixes for running gem and Bundler under RUBY_BOX=1 on Ruby 4.0: blog.rubygems.org/2026/09/02/4...blog.rubygems.org4.0.20 ReleasedRubyGems 4.0.20 includes enhancements, bug fixes and documentation and Bundler 4.0.20 includes enhancements, bug fixes and documentation. 0135
Reposted by Lucian GhindaPeter Zhu @peterzhu.ca · 02/09/2026Ruby's GC and ZJIT got a new collab! We recently introduced inlining of the garbage collector's fastpath into ZJIT. Read more about it here: railsatscale.com/2026-09-01-z...railsatscale.comZJIT 🤝 GC: Inlining GC Fastpath in ZJITObject allocations from the garbage collector are now inlined in ZJIT. 1145
Reposted by Lucian GhindaJohn Nunemaker @johnnunemaker.com · 02/09/2026Nice little pattern for background tasks that need to be rate limited a bit: start to start throttling. If you need 1/sec, don't sleep 1. Sleep for the difference 1 minus the duration of the work. 051
Reposted by Lucian GhindaRachael Wright-Munn @chael.codes · 02/09/2026I try to make this a little better every month and automate it a bit more so I can spend more time on little details and customizations. I'm particularly proud of this edition. ♥️ 051
Lucian Ghinda @lucianghinda.com · 01/09/2026Time to trim the worktrees. 100 worktrees in 3 months. 40 of those were created in August, 22 in July and 34 in June, 4 today :) - 66 were used for code review, bake-offs and reproducing bugs - 34 were active development 020
Lucian Ghinda @lucianghinda.com · 01/09/2026disable_console_loggers! to mute, enable_console_loggers! to restore. No console restart needed. Full write-up: allaboutcoding.ghinda.com/adding-a-he... If you have a better pattern for this, I would like to see it.allaboutcoding.ghinda.comAdding a helper to silence logging in Rails consoleRails.application.console runs a block only when bin/rails console starts, never in web or job processes. Define disable_console_loggers! and enable_console_loggers! there once and stop pasting logger levels into every session. 000
Lucian Ghinda @lucianghinda.com · 01/09/2026For a single query, Rails already ships a scoped tool: ```ruby ActiveRecord::Base.logger.silence do User.where(created_at: 1.week.ago..).count end ``` 100
Lucian Ghinda @lucianghinda.com · 01/09/2026Why does a def inside a block work as a console helper? A method defined in a block lands on Object. And in rails console, self is main, an instance of Object. ```ruby Object.instance_method(:hello).owner # => Object ``` 100
Lucian Ghinda @lucianghinda.com · 01/09/2026Add this to config/initializers/console_helpers.rb: ```ruby Rails.application.console do def disable_console_loggers! @previous_log_levels ||= console_loggers.to_h { |l| [l, l.level] } @previous_log_levels.each_key { |l| l.level = :error } end end ``` 100
Lucian Ghinda @lucianghinda.com · 01/09/2026Rails.application.console registers a block that runs only when bin/rails console boots. This will only be loaded in console, not web process nor jobs. The Rails configuration guides document it as the console-only hook. That makes it the correct home for helpers like this. 100
Lucian Ghinda @lucianghinda.com · 01/09/2026In development the console logs every SQL query and every cache line. Sometimes it is great for debugging. But some other times it is terrible when I want to copy console output into an agent CLI. I only wanted the thing scripts I run printed there. No extra SQL log lines 100
Lucian Ghinda @lucianghinda.com · 01/09/2026For a while I pasted this into every Rails console session: ActiveRecord::Base.logger.level = Logger::ERROR Rails has a hook built for exactly this: Rails.application.console. 120
Lucian Ghinda @lucianghinda.com · 01/09/2026Rails.application.console registers a block that runs only when bin/rails console boots. This will only be loaded in console, not web process nor jobs. The Rails configuration guides document it as the console-only hook. That makes it the correct home for helpers like this. 000
Lucian Ghinda @lucianghinda.com · 01/09/2026In development the console logs every SQL query and every cache line. Sometimes it is great for debugging. But some other times it is terrible when I want to copy console output into an agent CLI. I only wanted the thing scripts I run printed there. No extra SQL log lines 100
Lucian Ghinda @lucianghinda.com · 01/09/2026For a while I pasted this into every Rails console session: ActiveRecord::Base.logger.level = Logger::ERROR Rails has a hook built for exactly this: Rails.application.console. 120
Reposted by Lucian GhindaJochen Lillich @geewiz.dev · 31/08/2026Did you know that you can literally multiply array elements in #Ruby? `[1, 2, 3] * 3 # => [1, 2, 3, 1, 2, 3, 1, 2, 3]` And with a scalar string, it’s a shortcut for `join`: ``` h = { a: 1, b: 2} h.map { |pair| pair * "=" } * ", " # => "a=1, b=2" ``` 041
Reposted by Lucian GhindaJP Camara @jpcamara.com · 31/08/2026Here’s the SolidQueue batches 2.5 year architectural journey, filled with O(n^2) algorithms, hot row contention, excessive jobs, and much in between. There’s a strong chance you’ll learn a thing or two - I certainly did 😮💨 jpcamara.com/2026/08/31/s...jpcamara.comSolidQueue Batches: evolution and architectureWhen Rosa first released SolidQueue, she did a fantastic talk on the internals of how it works and what trade-offs she made when building it. You should give it a watch. It’s where I first learned how... 1125
Reposted by Lucian Ghindahsbt @hsbt.org · 31/08/2026RubyGems and Bundler now pass their full test suites with RUBY_BOX=1. I am working toward Ruby 4.1 so that Ruby::Box is stable enough for real projects. bugs.ruby-lang.org/issues/22275bugs.ruby-lang.orgMisc #22275: Ruby::Box support plan for RubyGems and Bundler - Ruby - Ruby Issue Tracking SystemRedmine 083
Lucian Ghinda @lucianghinda.com · 31/08/2026I could be biased as I grew in times of IRC and chat with text based interfaces where slash commands were used a lot. For me `/` is a better fit symbol for something that looks like a command or something to be executed than the `$` but could be a personal preference maybe? 140
Lucian Ghinda @lucianghinda.com · 31/08/2026When I think about commands and triggering skills I have to say I like a lot more the way Claude Code does it in TUI with "/" than Codex TUI that uses "$" For me slash is much more a hint for a command than $ which gives me vibes of PHP :) 340
Lucian Ghinda @lucianghinda.com · 29/08/2026If you have time and budget (or remaining limits on any agent) I suggest you take this github.com/lucianghinda... and change it maybe to include some code that you have and run variations of instructions for Codex and see which one you like more.github.com 010
Lucian Ghinda @lucianghinda.com · 28/08/2026I like the idea of Claude that goes beyond what I have asked and tells me about a possible bug and investigation to be done as followup. But I wish it would have made that text a bit more structured by default. 110
Lucian Ghinda @lucianghinda.com · 28/08/2026Compare with Claude Code style. I know it is not the same task but this wall of text. This is Claude Code with "simple technical English" instruction added in user injected Claude(dot)md Still makes me re-read twice some parts. 110
Lucian Ghinda @lucianghinda.com · 28/08/2026Have to say I like a lot more this default style from Codex TUI to present the proposed changes. It is brief, it has the right keywords highlighted, it shows me the approaches considered so far, and it shows with bullet points the proposed architecture. 100
Lucian Ghinda @lucianghinda.com · 27/08/2026Oh forgot the link to the gem: github.com/lucianghinda... I did not had time to put a video there about how it works as I am probably the only user :Pgithub.comGitHub - lucianghinda/hunk-review-changes: Review a diff hunk-by-hunk in your browser, then hand the comments back to your AI coding agent.Review a diff hunk-by-hunk in your browser, then hand the comments back to your AI coding agent. - lucianghinda/hunk-review-changes 010
Lucian Ghinda @lucianghinda.com · 27/08/2026Oh you are not so far away :) here is a screenshot from today when I was trying out some stuff part of the vectors embeddings, directions and matrices playing with some very small embeddings. 110
Lucian Ghinda @lucianghinda.com · 27/08/2026I even wrote this small gem that you can ask to battle review and it will put Claude Code and Codex to fight pro and against each hunk diff and then spin a Sinatra server (just for fun) with a HTML page wher I can add my own comments. 110
Lucian Ghinda @lucianghinda.com · 27/08/2026This was not a very serious task. I wanted to do a small funny API server for participants to play with. Usually I do bakeoffs between agents (models + harness) and prompt variations on the same model and adversarial reviews. 120
Lucian Ghinda @lucianghinda.com · 27/08/2026Ah of course it agrees with me on my architectural choices that I also wrote in a file in that folder :) I shared this as a funny thing as I was discussing back and forth about the architecture of a server for participants to play with and at some point I challenged just a bit my own decision 110
Lucian Ghinda @lucianghinda.com · 27/08/2026I like it when AI confirms my stack choices: Ruby on Rails + @avohq.io PS: Working on a new workshop, more details soon 220
Reposted by Lucian GhindaStanislav (Stas) Katkov @skatkov.com · 27/08/2026Gem documentation viewer for developer that don't want to leave the Terminal. 051
Lucian Ghinda @lucianghinda.com · 27/08/2026I am testing is in various ways and forms and thinking to include it in superpowers-ruby project this weekend github.com/lucianghind...github.comGitHub - lucianghinda/superpowers-ruby: Claude Code superpowers: core skills library for Ruby and Ruby on Rails projectsClaude Code superpowers: core skills library for Ruby and Ruby on Rails projects - lucianghinda/superpowers-ruby 000