Reposted by Janko MarohnićMike Dalessio @flavorjon.es · 27/09/2026Hot Cell is ready to go if you're on Rails edge. Slides are up at mike.daless.io/prez/2026-09...mike.daless.io 081
Reposted by Janko MarohnićMike Dalessio @flavorjon.es · 25/09/2026I'm honored and humbled to join the Rails core team. I'll be focusing on security and improvements to Active Storage and Action Text. Please reach out if you have thoughts on what would make your work easier. 4516
Janko Marohnić @janko.io · 25/09/2026The amount of new features and improvements is massive 😃 Besides the awesome reactivity features, I love the language server improvements, such as ability to follow render calls (I can close my ruby-lsp-rails PR now 😄) and listing render call sites for current partial 👌 github.com/marcoroth/he...github.comRelease v0.11.0 · marcoroth/herbHerb v0.11 Herb v0.11 ships alongside ReActionView v0.6. Check out the "What's new in Herb v0.11" post on the Herb Blog. Parser Introduce ERBIterationBlockNode and iteration_nodes option by @marc... 000
Reposted by Janko MarohnićMarco 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. 36511
Reposted by Janko MarohnićS.E. Danesti @seedanesti.bsky.social · 19/09/2026Interviewer: "Where do you see yourself in 5 years?" Me: 1002049434
Janko Marohnić @janko.io · 16/09/2026Multiple tools using Rubydex already: Rubocop, Rubydex linter, RubyLens, ArchSpec, Enola... Still eagerly awaiting Ruby LSP release with Rubydex backend 🤞 020
Reposted by Janko MarohnićAndrew Mason @andrewm.codes · 16/09/2026New post: I added webmentions to my Bridgetown site. Replies, likes, and reposts from Bluesky can now show up directly under the original post. No comment system, no JavaScript widget, and the site stays completely static. I wrote up how it all works: andrewm.codes/p/adding-web...andrewm.codesAdding Webmentions to a Bridgetown SiteHow I added webmentions to my static Bridgetown site using webmention.io, Bridgy, and a nightly GitHub Actions job, so replies and likes from Bluesky show up right under my posts. 3103
Reposted by Janko MarohnićEuruko @euruko.org · 13/09/2026Last call: EuRuKo 2026 tickets close tomorrow at midnight CEST. @matz.bsky.social opening, @ko1s.bsky.social closing, @headius.bsky.social on JRuby. Brno, Sept 17–18. After tomorrow there's no late registration. 2026.euruko.org 062
Janko Marohnić @janko.io · 11/09/2026Here is a summary of my frustrations with MariaDB in my past jobs and why I wouldn't recommend it for production. www.reddit.com/r/rails/comm...reddit.comjanko-m's comment on "Is anyone using Rails with MariaDB?"Explore this conversation and more from the rails community 031
Reposted by Janko MarohnićBozhidar Batsov (a.k.a. Bug) @batsov.net · 10/09/2026RuboCop 1.91 is out and it's the most interesting release in quite a while. Try some of the new features like `--diff`, `--changed` and `--preview` and read all about the improvements here github.com/rubocop/rubo... #Rubygithub.comRelease RuboCop v1.91.0 · rubocop/rubocopNew features #15631: Add a preview channel for unstable behavior. (@bbatsov) #15627: Add a SARIF formatter. (@bbatsov) #15686: Add AllCops: FailLevel, the configuration equivalent of --fail-level.... 074
Reposted by Janko MarohnićPeter Ullrich @peterullrich.com · 08/09/2026🚨 Announcing Pushin 🚨 Now officially: I'm announcing Pushin.eu, a git hosting platform built and run entirely in Europe. Think GitHub/GitLab but European, better, and faster. Built with #ElixirLang and #RustLang. peterullrich.com/announcing-p...peterullrich.comAnnouncing PushinI'm launching Pushin.eu, a git hosting platform built and run entirely in Europe. 1114449
Janko Marohnić @janko.io · 06/09/2026For a long time I was trying to figure out whether the solution to my back pain is increasing flexibility, strengthening back & core, improving hip mobility, or doing frequent walks/runs. And now I think the answer is just “yes”. 140
Reposted by Janko MarohnićEuruko @euruko.org · 04/09/2026Two weeks out from EuRuKo 2026. Brno, 17–18 September. If you're still deciding, the flights are deciding for you 🎟️ 2026.euruko.org #Ruby #EuRuKo 011
Janko Marohnić @janko.io · 01/09/2026Booked the jj workshop by Andre and Kasper. I will finally see what all the rave is about 🤞 020
Janko Marohnić @janko.io · 01/09/2026Cool, you can now just wait for a certain write to be replicated before querying the replica. I can imagine automating this in Active Job, where current WAL state is serialized into the job and waited on. That way it should always be safe to read from replicas in jobs. 310
Reposted by Janko MarohnićJP 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 Janko MarohnićWaldo Jaquith @waldoj.mastodon.social.ap.brid.gy · 30/08/2026"With a bunch of generous assumptions, legitimate requests are only about 2% of git.kernel.org traffic — everything else are scrapers." (via @nelson people.kernel.org/monsieuricon/cree…people.kernel.orgCreepy crawliesComments 022
Reposted by Janko MarohnićEuruko @euruko.org · 26/08/2026𝗦𝗶𝘅 𝘄𝗼𝗿𝗸𝘀𝗵𝗼𝗽𝘀, 𝗼𝗻𝗲 𝗮𝗳𝘁𝗲𝗿𝗻𝗼𝗼𝗻 🛠️ Coding agents, jj instead of git, Koichi Sasada's Ruby Hack Challenge, time zone hell, Bluetooth in Ruby, and C extensions. 18 September in Brno. They run in parallel, so you're picking one – and rooms fill up. 2026.euruko.org/agenda.html #Ruby #EuRuKo 111
Janko Marohnić @janko.io · 26/08/2026This is the feature I missed the most from fugitive.vim, I finally have it in Zed now 🙌 110
Reposted by Janko MarohnićZed @zed.dev · 26/08/2026🚀 Zed v1.17 is out! Zed now previews CSV, TSV, PSV, and SSV files as interactive tables. You can sort and resize columns, then filter rows by selected values. Thanks HalavicH! 61677
Reposted by Janko MarohnićAndy Waite @andyw8.bsky.social · 26/08/2026New post: Using puma-dev with Conductor andywaite.com/2026/08/25/u...andywaite.comUsing puma-dev with Conductorpuma-dev is a useful tool for Rails developers. It’s a successor to pow, an older tool by Basecamp. 111
Janko Marohnić @janko.io · 25/08/2026Having also read the linked article, I realized enqueueing background jobs after commit isn't guaranteed. First thought was that SQL-based background libraries implicitly provide the transactional outbox. But at any serious scale a separate DB should be used. karolgalanciak.com/blog/2022/11...karolgalanciak.comThe inherent unreliability of after_commit callbacks and most service objects’ implementationService objects and/or after_commit callbacks are ubiquitous in most real-world Rails applications. Whether it’s a good idea or not (ActiveRecord callbacks - I’m looking at you) is a different story, ... 000
Janko Marohnić @janko.io · 25/08/2026Lexxy doesn't currently export its *.css files, so I can't import the CSS with Vite. Strange that this hasn't been addressed yet. github.com/basecamp/lex...github.comExpose published stylesheets via package.json exports by shved270189 · Pull Request #1105 · basecamp/lexxyProblem The published CSS files (dist/stylesheets/lexxy.css, lexxy-content.css, lexxy-editor.css, lexxy-variables.css) aren't reachable through package.json exports — the exports map only decla... 100
Reposted by Janko MarohnićJP Camara @jpcamara.com · 24/08/2026The docs on SolidQueue batches are… solid 😉 In addition, I wrote up this blog post to dig in a bit further on how to use batches in SolidQueue, including some code inspiration - like splitting a RubyLLM chat into parallel sub agents using batches jpcamara.com/2026/08/24/a...jpcamara.comA Guide to using Batches in SolidQueueSolidQueue is the default queue system shipped with Ruby on Rails. It’s a great choice for your jobs, and works out of the box with Postgres, SQLite and MySQL. It took two and a half years, but as of ... 1135
Janko Marohnić @janko.io · 24/08/2026Looking at all the security fixes in the latest Rodauth release, I don't think it pays off to implement authentication manually. Security is hard, and if a vulnerability is found in Rails authentication generator, you need to manually patch it in your application. github.com/jeremyevans/...github.comRodauth 2.47.0 Released · jeremyevans rodauth · Discussion #514Rodauth 2.47.0 has been released! Security Fixes to Address Reported Vulnerabilities There were a large number of reported vulnerabilities that are fixed in this version. While none are as critical... 130
Janko Marohnić @janko.io · 23/08/2026It turns out having Rodauth render Inertia.js components is pretty simple ✨ github.com/janko/rodaut... github.com/janko/rodaut... I let Claude lead me down the wrong path multiple times, thinking the integration would be more involved. In hindsight, I would've been much faster without AI 😅 0100
Reposted by Janko MarohnićCory LaViska @cory.laviska.com · 19/08/2026Target Multiple Classes with the Class Prefix Selector: .btn-* { … } Yes please! (Coming soon) Great post by @bram.us: www.bram.us/2026/08/20/t...bram.usThe Future of CSS: Target Multiple Classes with the Class Prefix SelectorTo target multiple classes that share the same prefix, you'd typically have to resort to brittle attribute selectors or add extra base classes to your markup. To make things easier, CSS is getting a n... 1195
Reposted by Janko MarohnićZed @zed.dev · 15/08/2026More Git goodness, coming to Zed! github.com/zed-industri...github.comSupport blaming parent revisions by SomeoneToIgnore · Pull Request #62614 · zed-industries/zedCloses #42583 Adds more tooltip entries and editor::BlameRevision, editor::BlamePreviousRevision actions to use. Started to highlight gutter blame entries that belong to currently annotated commit.... 4461
Reposted by Janko MarohnićZed @zed.dev · 12/08/2026Today we’re introducing Delta. Delta is a multiplayer environment for coding with agents and reviewing what they build, powered by DeltaDB. The first invites to our private beta are going out now. zed.dev/blog/introducing-delta 316217
Reposted by Janko MarohnićJean Boussier @byroot.bsky.social · 11/08/2026I'll probably release the final 3.0.0 version early September, so if you got time please try the RC1 and submit any feedback you may have: github.com/ruby/json/re...github.comRelease v3.0.0.rc1 · ruby/jsonWith the removal of the insecure create_additions option, JSON.load and JSON.dump are now safe to use. Them being unsafe by default caused multiple security vulnerabilites in the past. If you did d... 1242
Janko Marohnić @janko.io · 07/08/2026Got my copy 😍 The 2nd edition contains chapters on concurrency (incl. Ractors) static typing (RBS, Sorbet) and code optimization (profiling, JIT) – straight from a Ruby committer. I admire Jeremy Evans for his dedication, though being a technical reviewer isn’t the easiest either 😅 2121
Reposted by Janko MarohnićBozhidar Batsov (a.k.a. Bug) @batsov.net · 05/08/2026RuboCop 1.89 is out with improved rubydex integration that unlocks several project-wide analysis opportunities metaredux.com/posts/2026/0... Enjoy! #Rubymetaredux.comRuboCop 1.89: Project-Wide Analysis with RubydexRuboCop 1.89 is out, and it comes with the usual assortment of new cops and bug fixes. But there’s one theme running through this release that I’m particularly excited about, and that’s what I want to... 073
Reposted by Janko MarohnićGitHub @github.com · 31/07/2026Large changes are hard to review. Smaller pull requests make them easier to ship. Stacked PRs are now on GitHub. docs.github.com/en/pull-requests/ho… 2496
Reposted by Janko MarohnićMatija Marohnić @silvenon.com · 31/07/2026$ git history fixup <commit> is short for: $ git commit --fixup <commit> $ git rebase <commit>^ --autostash and it’s also instant AF 0101
Reposted by Janko MarohnićAndré Arko @indirect.io · 31/07/2026I wrote an update on the dispute with Ruby Central over Bundler and RubyGems. I'm sad it's reached this point, especially since Ruby Central's conferences are a big part of what convinced me to join the Ruby community back in the day. andre.arko.net/2026/07/30/rub…andre.arko.netRuby Central's Destructive LegacyAt conferences and meetups, and in conversations online, many Ruby developers have asked me about Ruby Central and my disagreement with them. This post is my attempt to answer the questions I’ve been getting over and over, covering: 1) what is Ruby Central doing now? 2) has the dispute over Bundler… 26826
Reposted by Janko MarohnićAnil Dash @anildash.com · 27/07/2026Just in case you still use any Basecamp products, DHH is crashing out about his AI product gently pointing out that it’s bad for him to have extermination fantasies about the Roma people. 862286643
Reposted by Janko MarohnićBrandon Weaver @baweaver.bsky.social · 30/07/2026Introducing GemCP: MCP tools for RubyGems. Ask your AI agent about gem compatibility, dependencies, versions, and ownership with data straight from RubyGems.org. `gem install gemcp` and add it to your MCP config. github.com/baweaver/gemcpgithub.com 296
Reposted by Janko MarohnićVictor Shepelev 🇺🇦 @zverok.bsky.social · 30/07/2026There is a heated discussion at /r/ruby around this article: po-ru.com/2026/07/29/i... My hot take on the matter is the (half-imaginary) MINASWAN principle is an artifact of much simpler times. Thread, out of nowhere:po-ru.comIt doesn’t matter whether “Matz is nice”I’ve met Matz once, I think, at EuRuKo in Krakow in 2010. We chatted briefly in Japanese. He seemed nice, but also quiet and reserved. At the time, he didn’t speak much English; perhaps he could speak... 131
Janko Marohnić @janko.io · 29/07/2026Blocking unfuzzed libvips loaders started being the default in ImageProcessing 2.0, but I didn't know how to push it over the finish line for Active Storage. Luckily for me, @flavorjon.es did his homework 👌 000
Reposted by Janko MarohnićMike Dalessio @flavorjon.es · 29/07/2026Upgrade Rails immediately, kids, this is a big one. github.com/rails/rails/...github.comPossible arbitrary file read and remote code execution in Active Storage variant processing### Impact In its default configuration, a Rails application that displays image variants may allow an unauthenticated attacker to read arbitrary files from the server, including the process envi... 14930
Reposted by Janko MarohnićKyle Shevlin (he/him) @kyleshevl.in · 28/07/2026Genuinely, I find myself working harder. One of my super powers was I was faster than you at designing & writing what I needed to. I needed that time saved to be able to regulate, avoid burnout. Now that’s taken from me. I can’t outpace you. You (proverbial) got to catch up to me for free. 2183
Reposted by Janko MarohnićTekin Süleyman ☕️ @tekin.co.uk · 18/07/2026Rails' embarrassing racist daddy is now calling for the ethnic cleansing of Europe over on his blog, but it's fine because he's nice to people at conferences. 1154
Reposted by Janko MarohnićEuruko @euruko.org · 15/07/2026Come to EuRuKo together – with friends, colleagues, or your whole team. 🚀 You can save when you come together: 3 tickets – save €100 5 tickets – save €250 10 tickets – save €660. 📍 September 17–18. 2026.euruko.org #EuRuKo2026 #RubyCommunity #Brno 022
Reposted by Janko MarohnićMarco Roth @marcoroth.dev · 16/07/2026I just released Insta, a new snapshot testing library for Ruby, live at RubyConf in Las Vegas! Extracted from Herb's test suite and inspired by @mitsuhiko.at's fantastic insta library for Rust. `gem "insta"` 2298
Reposted by Janko MarohnićZed @zed.dev · 15/07/2026🚀 Zed v1.11 is out! Zed now has dedicated Staged Changes and Unstaged Changes multibuffers where you can review, stage, unstage, or restore individual hunks. Thanks drbh! 31125
Reposted by Janko MarohnićRadan @radan.dev · 15/07/2026Broadcasting Turbo refresh adds an extra round trip and a debounce delay. Broadcasting the content directly fixes that, but introduces a race condition. Here's how to keep fast, immediate updates without race conditions: radan.dev/articles/tur...radan.devWhen broadcasting a Turbo refresh is not enough: faster UX with versioned immediate updatesThe simplest way to make a page collaborative with Hotwire and Rails is to subscribe to changes and broadcast a refresh when relevant models update. 031
Janko Marohnić @janko.io · 13/07/2026Shrine 3.9.0 released, mostly polishing some rough edges and increasing compatibility between plugins. shrinerb.com/docs/release... And we've reached zero issues again after a long time 🤘🏻shrinerb.comShrine 3.9.0 | ShrineNew features 031
Janko Marohnić @janko.io · 11/07/2026Just upgraded Shrine demo apps & wiki from Uppy v2 to v5, Rails 6.x to 8.x, replaced Webpacker with importmaps, and upgraded Docusaurus v2 => v3. Something that would be a PITA to do manually was done in a breeze by Claude Code 🥂 020
Reposted by Janko MarohnićHans Schnedlitz @hansschnedlitz.com · 09/07/2026RubyEvents Guides is now live. Over the last few months, I talked to Rubyists who want to help the community keep going. Some want to restart a local meetup. Some are organizing their first small conference. Some already run events and want to make the next one better. 31410
Janko Marohnić @janko.io · 04/07/2026People encouraging investing forget to mention that inflation is also a compounding negative force. "If you invest $100/mo for 10 years with 10% annual return, you will have put in $12k but would have ~$20k total". Adjusted for inflation in Czechia, that would be ~$10k invested and ~$13k total. 100