[
  {
    "path": "README.md",
    "content": "# Awesome Ruby blogs [![Awesome](https://awesome.re/badge-flat2.svg)](https://awesome.re) [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/all.opml)\n\n> A curated list of Awesome Ruby blogs and newsletters for ruby developers and newbies.\n> Inspired by [Awesome Python blogs](https://github.com/mikeyny/awesome-python-blogs)\n\n![Ruby](https://raw.githubusercontent.com/github/explore/80688e429a7d4ef2fca1e82350fe8e3517d3494d/topics/ruby/ruby.png)\n\n\n## Table of contents\n\n- Blog Sections\n  - [Newsletter](#newsletter-)\n  - [Social News Aggregation](#social-news-aggregation-)\n  - [Community](#community-)\n  - [Personal](#personal-)\n  - [Company](#company-)\n  - [Podcast](#podcast-)\n  - [Screencast / Livestream](#screencast--livestream-)\n  - [Other Awesome Ruby and Blogs Lists](#other-awesome-ruby-and-blogs-lists-)\n- [Contribution Guidelines](#contribution-guidelines)\n\n## Newsletter [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/newsletter.opml)\n\n* [Awesome Ruby Newsletter](https://ruby.libhunt.com/newsletter) ([rss](https://ruby.libhunt.com/newsletter/feed))\n* [Decoded Rails Newsletter](https://decoded-rails.beehiiv.com)\n* [FastRuby newsletter](https://www.fastruby.io/newsletter)\n* [Full Stack Ruby on Rails Weekly Bookmarks](https://dcyoungdev.substack.com/) ([rss](https://dcyoungdev.substack.com/feed))\n* [Hotwire Native Weekly](https://newsletter.masilotti.com/) ([rss](https://newsletter.masilotti.com/feed))\n* [Hotwire Weekly](https://www.hotwireweekly.com/) ([rss](https://www.hotwireweekly.com/rss.xml))\n* [Joe Masilotti's newsletter](https://masilotti.com/newsletter/) ([rss](https://masilotti.com/feed.xml))\n* [One Ruby Thing](https://andycroll.com/ruby) ([rss](https://andycroll.com/index.xml))\n* [Ruby Around the World Newsletter](https://rubyaroundtheworld.com/)\n* [Ruby Biscuit](https://www.rubybiscuit.fr/) ([rss](https://www.rubybiscuit.fr/feed))\n* [Ruby Daily](https://rubydaily.org/) ([rss](https://rubydaily.org/feeds_subdomain/RubyDaily/))\n* [Ruby on Rails - Monthly](https://sajjadumar.substack.com/) ([rss](https://sajjadumar.substack.com/feed))\n* [Ruby Weekly](https://rubyweekly.com/) ([rss](https://rubyweekly.com/rss/))\n* [Ruby weekly newsletter (discu.eu)](https://discu.eu/weekly/ruby/)\n* [RubyFlow](https://rubyflow.com/) ([rss](https://rubyflow.com/rss))\n* [Rubyland](https://rubyland.news/) ([rss](https://rubyland.news/feed.rss))\n* [Short Ruby Newsletter](https://newsletter.shortruby.com/) ([rss](https://feed.newsletter.shortruby.com))\n* [Static Ruby Monthly](https://static-ruby.eremin.eu/)\n* [Sustainable Development and More](https://buttondown.com/davetron5000) ([rss](https://buttondown.com/davetron5000/rss))\n* [The Code Gardener](https://the.codegardener.com/) ([rss](https://the.codegardener.com/rss/))\n* [The RailsNotes Newsletter](https://railsnotes.xyz/newsletter) ([rss](https://railsnotes.xyz/feed.xml))\n* [This week in Rails](https://rails-weekly.ongoodbits.com/) ([rss](https://rails-weekly.ongoodbits.com/feed))\n* [Token Ruby](https://www.tokenruby.com/) ([rss](https://tokenruby.com/rss))\n* [Trailblazer newsletter](https://trailblazer.to/2.0/newsletter.html)\n* [Women On Rails Newsletter](https://womenonrailsinternational.substack.com/) ([rss](https://womenonrailsinternational.substack.com/feed))\n\n\n## Social news aggregation [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/social_news_aggregation.opml)\n\n* [daily.dev](https://app.daily.dev/search?q=rails)\n* [Dev.to Ruby](https://dev.to/t/ruby)\n* [DevZone (Old Codeguida)](https://devzone.org.ua/tag/ruby) ([rss](https://devzone.org.ua/feed/tag/ruby))\n* [Habr Ruby](https://habr.com/ru/hubs/ruby/articles/) ([rss](https://habr.com/ru/rss/hubs/ruby/articles/?fl=ru))\n* [Hashnode ruby](https://hashnode.com/n/ruby)\n* [Hashnode rubyonrails](https://hashnode.com/n/rubyonrails) ([rss](https://hashnode.com/n/rubyonrails/rss))\n* [Human Coders News Ruby](https://news.humancoders.com/t/ruby) ([rss](https://news.humancoders.com/t/ruby/items/feed))\n* [Mastodon ruby.social](https://ruby.social/explore)\n* [Medium Ruby](https://medium.com/tag/ruby) ([rss](https://medium.com/sitemap/sitemap.xml))\n* [Reddit Ruby](https://www.reddit.com/r/ruby/)\n* [RoboRuby (Ruby AI News)](https://rubyai.beehiiv.com/)\n* [RubyNews](https://ruby.news/)\n\n\n## Community [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/community.opml)\n\n* [AnyCable](https://anycable.io/blog/)\n* [Beautiful Ruby](https://beautifulruby.com/code)\n* [BestWeb Ventures](https://blog.bestwebventures.in/archive)\n* [Blog Yet](https://blogyet.com/categories/coding/blog_posts)\n* [Bloggie 'rails'](https://bloggie.io/community/rails)\n* [Bloggie 'ruby'](https://bloggie.io/community/ruby)\n* [Blogging On Rails](https://onrails.blog/) ([rss](https://onrails.blog/feed/))\n* [Boring Rails](https://boringrails.com/articles) ([rss](https://boringrails.com/feed.xml))\n* [Bridgetown](https://www.bridgetownrb.com/blog/) ([rss](https://www.bridgetownrb.com/feed.xml))\n* [Bundler](https://bundler.io/blog/) ([rss](https://bundler.io/blog/feed.xml))\n* [Business Class Blog (Josef Strzibny)](https://businessclasskit.com/blog) ([rss](https://businessclasskit.com/blog/feed.xml))\n* [Code With Rails](https://codewithrails.com/) ([rss](https://codewithrails.com/rss.xml))\n* [Daily Dev Tools](https://dailydevtools.com/blog)\n* [Digital Ocean (Old scotch.io)](https://www.digitalocean.com/community/tutorials?q=%5BRuby%5D) ([rss](https://www.digitalocean.com/community/tutorials.atom))\n* [Drifting Ruby](https://www.driftingruby.com/episodes) ([rss](https://www.driftingruby.com//episodes/feed.atom))\n* [Drifting Ruby Blog](https://blog.driftingruby.com/) ([rss](https://blog.driftingruby.com/rss/))\n* [dry-rb](https://dry-rb.org/news/) ([rss](https://dry-rb.org/feed.xml))\n* [Fullstack Ruby (Old ruby3.dev)](https://www.fullstackruby.dev/articles) ([rss](https://www.fullstackruby.dev/feed.xml))\n* [GoRails](https://gorails.com/episodes) ([rss](https://gorails.com/blog.rss))\n* [Hanami](https://hanamirb.org/blog/) ([rss](https://hanamirb.org/atom.xml))\n* [HanamiMastery](https://hanamimastery.com/) ([rss](https://hanamimastery.com/feed.xml))\n* [Hexdevs](https://www.hexdevs.com/posts/) ([rss](https://www.hexdevs.com/index.xml))\n* [Maki Sushi Tech](https://makisushi.io/)\n* [Monospace Mentor (Jochen Lillich)](https://monospacementor.com/blog/) ([rss](https://monospacementor.com/feed/))\n* [Opal](https://opalrb.com/blog/)\n* [Past Rubies (Web archive)](https://web.archive.org/web/20230610191100/https://pastrubies.live/)\n* [Practicing Ruby](https://practicingruby.com/) ([rss](https://practicingruby.com/feed.xml))\n* [Programming Zen (Antonio Cangiano)](https://programmingzen.com/category/programming/) ([rss](https://programmingzen.com/category/programming/feed/))\n* [Rails](https://rubyonrails.org/blog/) ([rss](https://rubyonrails.org/feed.xml))\n* [Rails at Scale](https://railsatscale.com/) ([rss](https://railsatscale.com/feed.xml))\n* [Rails Designer](https://railsdesigner.com/articles/) ([rss](https://railsdesigner.com/feed.xml))\n* [Rails Explained](https://www.railsexplained.com/) ([rss](https://www.railsexplained.com/feed.xml))\n* [Rails Insights](https://railsinsights.com/)\n* [Rails Runner](https://therailsrunner.com/)\n* [RailsApps](https://blog.railsapps.org/) ([rss](https://blog.railsapps.org/rss))\n* [RailsGrowth](https://railsgrowth.com/) ([rss](https://railsgrowth.com/rss/))\n* [RailsNotes Blog](https://railsnotes.xyz) ([rss](https://railsnotes.xyz/feed.xml))\n* [ROM](https://rom-rb.org/blog/)\n* [Ronin](https://ronin-rb.dev/blog/) ([rss](https://ronin-rb.dev/blog/atom.xml))\n* [ROR Tips](https://ror.tips) ([rss](https://ror.tips/feed.xml))\n* [RorVsWild](https://www.rorvswild.com/blog) ([rss](https://www.rorvswild.com/blog.rss))\n* [RSpec](http://rspec.info/blog/) ([rss](http://rspec.info/blog/feed.xml))\n* [Ruby Job Board (Web archive)](https://web.archive.org/web/20230204025503/https://www.rubyjobboard.com/blog)\n* [Ruby Tutorial (Web archive)](https://web.archive.org/web/20231230055220/https://rubytutorial.io/)\n* [RubyCademy (Medium)](https://medium.com/rubycademy) ([rss](https://medium.com/feed/rubycademy))\n* [RubyEnv](https://rubyenv.app/blog)\n* [RubyGems](https://blog.rubygems.org/) ([rss](https://blog.rubygems.org/atom.xml))\n* [RubyInside](https://medium.com/rubyinside) ([rss](https://medium.com/feed/rubyinside))\n* [Rubyist Magazine (Rubima)](https://magazine.rubyist.net/) ([rss](https://magazine.rubyist.net/feed.xml))\n* [RubyOnRails.BA](https://rubyonrails.ba/)\n* [RubyPigeon](https://www.rubypigeon.com/) ([rss](https://www.rubypigeon.com/feed.xml))\n* [RubyTapas](https://www.rubytapas.com/) ([rss](https://www.rubytapas.com/feed/))\n* [RubyWorks](http://rubyworks.github.io/index.html)\n* [SciRuby](http://sciruby.com/blog/) ([rss](http://sciruby.com/atom.xml))\n* [Sequel](http://sequel.jeremyevans.net/blog.html)\n* [Short Ruby Email Courses](https://learn.shortruby.com/blog) ([rss](https://learn.shortruby.com/blog/feed))\n* [Sinatra](https://sinatrarb.com/blog.html) ([rss](https://sinatrarb.com/sinatra.github.com/feed.xml))\n* [Sorbet](https://sorbet.org/blog/) ([rss](https://sorbet.org/blog/atom.xml))\n* [Taylor (Sean Earle)](https://taylormadetech.dev/blog/) ([rss](https://taylormadetech.dev/feed.xml))\n* [Test Driving Rails Blog (Josef Strzibny)](https://testdrivingrails.com/blog) ([rss](https://testdrivingrails.com/blog/feed.xml))\n* [The JRuby Blog](https://blog.jruby.org/) ([rss](https://blog.jruby.org/feed))\n* [The Lazy Log](https://web.archive.org/web/20230924230511/https://thelazylog.com/)\n* [This Week in Rails](https://world.hey.com/this.week.in.rails) ([rss](https://world.hey.com/this.week.in.rails/feed.atom))\n* [Thnk And Grow](https://blog.thnkandgrow.com/) ([rss](https://blog.thnkandgrow.com/feed/))\n* [Webcrunch](https://webcrunch.com/posts) ([rss](https://webcrunch.com/feed.rss))\n* [Why Ruby?](https://whyruby.info/)\n* [With a Twist](https://withatwist.dev/) ([rss](https://withatwist.dev/feed.xml))\n\n\n## Personal [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/personal.opml)\n\n* [Aaron Patterson](https://tenderlovemaking.com/) ([rss](https://tenderlovemaking.com/atom.xml))\n* [Aaron Sumner (Left of the Dev (formerly Everyday Rails))](https://leftofthe.dev/) ([rss](https://leftofthe.dev/atom.xml))\n* [Abhay Nikam](https://www.abhaynikam.me/) ([rss](https://www.abhaynikam.me/rss.xml))\n* [Abhilash M A](https://abhionrails.com/)\n* [Aboobacker MK](https://aboobacker.in/posts/) ([rss](https://aboobacker.in/feed.xml))\n* [Adam Tomeček](https://blog.tmck.cz/) ([rss](https://blog.tmck.cz/feed.xml))\n* [Adrien Siami](https://blog.siami.fr/) ([rss](https://blog.siami.fr/feed.xml))\n* [Agnieszka Małaszkiewicz](https://womanonrails.com/tags/#Ruby) ([rss](https://womanonrails.com/feed.xml))\n* [Ahmed](https://aonemd.com/) ([rss](https://aonemd.com/index.xml))\n* [Ahmed Nadar (hashnode)](https://ahmednadar.hashnode.dev) ([rss](https://ahmednadar.hashnode.dev/rss.xml))\n* [Ahmed Nadar (Web archive)](https://web.archive.org/web/20240719180311/http://www.ahmednadar.com/posts)\n* [Akshay Birajdar](https://bytes.akshaybirajdar.com/) ([rss](https://bytes.akshaybirajdar.com/feed.xml))\n* [Akshay Khot (Write Software, Well)](https://www.writesoftwarewell.com/) ([rss](https://www.writesoftwarewell.com/rss/))\n* [Akshay Mohite](https://www.rubyinrails.com/) ([rss](https://www.rubyinrails.com/feed.xml))\n* [Alberto Almagro](https://albertoalmagro.com/blog/) ([rss](https://albertoalmagro.com/feed/))\n* [Aleksandr Ulanov](https://ualeks.dev/posts/)\n* [Alessandro Rodi](https://coorasse.com/) ([rss](https://coorasse.com/feed.xml))\n* [Alessandro Rodi (Medium)](https://medium.com/@coorasse) ([rss](https://medium.com/feed/@coorasse))\n* [Alex Piechowski](https://piechowski.io/post/)\n* [Alex Taylor](https://alextaylor.ca/archive/) ([rss](https://alextaylor.ca/atom.xml))\n* [Alexander Butt-Piercey](https://apiercey.github.io/posts/) ([rss](https://apiercey.github.io/posts/index.xml))\n* [Alexandre Barret](https://alexbarret.com/blog/) ([rss](https://alexbarret.com/feed.xml))\n* [Alexey Poimtsev](https://alec-c4.com/) ([rss](https://alec-c4.com/rss.xml))\n* [Alexey Vasiliev](https://leopard.in.ua/) ([rss](http://leopard.in.ua/rss.xml))\n* [Alexis Bernard](https://alexis.bernard.io/) ([rss](https://alexis.bernard.io/blog.rss))\n* [Amir Sharif](https://www.amirsharif.com/) ([rss](https://www.amirsharif.com/feed.rss))\n* [Ana Nunes da Silva (Web archive)](https://web.archive.org/web/20240814203350/https://www.ananunesdasilva.com/posts)\n* [Andrea Fomera](https://afomera.dev/posts)\n* [Andrei Kaleshka](https://blog.widefix.com/articles/) ([rss](https://widefix.com/blog/feed.xml))\n* [Andrei Maxim](https://andreimaxim.com/) ([rss](https://andreimaxim.com/feed.xml))\n* [Andres Chacon](https://a-chacon.com/en/blog) ([rss](https://a-chacon.com/en/feed.xml))\n* [Andrew Atkinson](https://andyatkinson.com/tag#ruby-on-rails)\n* [Andrew Kane](https://ankane.org/) ([rss](https://ankane.org/feed.rss))\n* [Andrew Nesbitt](https://nesbitt.io/posts/) ([rss](https://nesbitt.io/feed.xml))\n* [Andrey Eremin](https://www.eremin.eu/tags/ruby/page) ([rss](https://www.eremin.eu/feed/blog/feed.xml))\n* [Andrii Konchyn](https://andrykonchin.github.io/) ([rss](https://andrykonchin.github.io/feed.xml))\n* [André Arko](https://andre.arko.net/) ([rss](https://andre.arko.net/atom.xml))\n* [Andy Croll](https://andycroll.com/) ([rss](https://andycroll.com/index.xml))\n* [Andy Leverenz](https://webcrunch.com/posts) ([rss](https://webcrunch.com/feed.rss))\n* [Andy Maleh](https://andymaleh.blogspot.com/) ([rss](https://andymaleh.blogspot.com/feeds/posts/default))\n* [Andy Waite](https://andywaite.com/) ([rss](https://andywaite.com/feed.xml))\n* [Ankit Gupta](https://ankit-gupta.com/blog/tag/ruby) ([rss](https://ankit-gupta.com/feed.xml))\n* [Anna Gavrilova](https://kotogavr.vercel.app/blog)\n* [Anthony Drake](https://www.t27duck.com/posts) ([rss](https://www.t27duck.com/posts.xml))\n* [Anton Davydov](https://www.davydovanton.com/blog/) ([rss](https://www.davydovanton.com/atom.xml))\n* [Aotokitsuruya](https://blog.aotoki.me/en/) ([rss](https://blog.aotoki.me/en/index.xml))\n* [Aristóteles Coutinho](https://aristotelescoutinho.com.br/)\n* [Augusts Bautra](https://epigene.github.io/) ([rss](https://epigene.github.io/feed.xml))\n* [Austin Ziegler](https://www.halostatue.ca/) ([rss](https://www.halostatue.ca/index.xml))\n* [Avdi Grimm](https://avdi.codes/blog/) ([rss](https://avdi.codes/feed/))\n* [Avi Flombaum](https://code.avi.nyc) ([rss](https://code.avi.nyc/rss.xml))\n* [Axel Kee](https://rubyyagi.com/) ([rss](https://rubyyagi.com/feed.xml))\n* [Ayush Newatia](https://binarysolo.blog/) ([rss](https://binarysolo.blog/feed.xml))\n* [Balázs Kutil](https://balazs.kutilovi.cz/) ([rss](https://balazs.kutilovi.cz/index.xml))\n* [Bamchi](https://bamchi.me) ([rss](https://bamchi.me/en/feed))\n* [Ben Koshy](https://benkoshy.github.io/) ([rss](https://benkoshy.github.io/feed.xml))\n* [Ben Pickles](https://www.benpickles.com/articles) ([rss](https://www.benpickles.com/articles.atom))\n* [Ben Sheldon](https://island94.org/archives) ([rss](https://island94.org/feed.xml))\n* [Benito Serna](https://bhserna.com/posts.html) ([rss](https://bhserna.com/feed.xml))\n* [Benjamin Fleischer](https://www.benjaminfleischer.com/) ([rss](https://www.benjaminfleischer.com/atom.xml))\n* [Benoit Daloze](https://eregon.me/blog/) ([rss](https://eregon.me/blog/feed.xml))\n* [Benoit Tigeot](https://benoittgt.github.io/blog/) ([rss](https://benoittgt.github.io/feed/feed.xml))\n* [Bernie Chiu](https://berniechiu.github.io/blog/) ([rss](https://berniechiu.github.io/blog/sitemap.xml))\n* [Bhumi](https://theleafnode.com/) ([rss](https://theleafnode.com/feed.xml))\n* [Bill Tihen](https://btihen.dev/posts/ruby/) ([rss](https://btihen.dev/posts/ruby/index.xml))\n* [Bohdan Pohorilets](https://bpohoriletz.github.io/) ([rss](https://bpohoriletz.github.io/feed.xml))\n* [Borja Garcia de Vinuesa Ordovás](https://bgvo.io/) ([rss](https://bgvo.io/feed.xml))\n* [Bozhidar Batsov](https://metaredux.com/) ([rss](https://metaredux.com/feed.xml))\n* [Brad Gessler](https://bradgessler.com/)\n* [Bradley Schaefer (Soulcutter)](https://www.soulcutter.com/) ([rss](https://www.soulcutter.com/feed.xml))\n* [Brandon Casci](https://www.brandoncasci.com/) ([rss](https://www.brandoncasci.com/feed.xml))\n* [Brendan Bondurant](https://brendanbondurant.com/35-2/) ([rss](https://brendanbondurant.com/feed/))\n* [Bruno Sutic](https://brunosutic.com/) ([rss](https://brunosutic.com/blog/feed))\n* [Bèr Kessels](https://berk.es/archive.html) ([rss](https://berk.es/2007/09/27/snipplr-drupals-code-snippet-feed/))\n* [Caleb Hearth](https://calebhearth.com/tags/rails) ([rss](https://calebhearth.com/atom.xml))\n* [Caleb Woods](https://www.calebwoods.com/) ([rss](https://www.calebwoods.com/feed.xml))\n* [Carl Wiedemann](https://carlwiedemann.github.io/) ([rss](https://carlwiedemann.github.io/feed.xml))\n* [Carmine Paolino](https://paolino.me/) ([rss](https://paolino.me/feed.xml))\n* [Cassey Lottman](https://cassey.dev/) ([rss](https://cassey.dev/rss/))\n* [Cezar Halmagean](https://mixandgo.com/learn)\n* [Charles Oliver Nutter](https://blog.headius.com/) ([rss](https://blog.headius.com/feed.xml))\n* [Chen Kinnrot](https://kinnrot.github.io/) ([rss](https://kinnrot.github.io/feed.xml))\n* [Chris Blunt](https://www.chrisblunt.com/) ([rss](https://www.chrisblunt.com/feed/))\n* [Chris Dillon](https://squarism.com/archive/) ([rss](https://squarism.com/feed.xml))\n* [Chris Kottom](https://chriskottom.com/articles/) ([rss](https://chriskottom.com/articles/feed.xml))\n* [Chris Seaton](https://chrisseaton.com/)\n* [Chris Sinjakli](https://blog.sinjakli.co.uk/) ([rss](https://blog.sinjakli.co.uk/feed.xml))\n* [Christoph Lupprich](https://christoph.luppri.ch/)\n* [CJ Avilla](https://www.cjav.dev/articles)\n* [Clayton Lengel-Zigich](https://railsboilerplate.com/articles)\n* [Cody Norman](https://www.codynorman.com/posts/) ([rss](https://codynorman.com/feed.xml))\n* [Damian C. Rossney](https://rossney.net/articles/) ([rss](https://rossney.net/feed.xml))\n* [Dan Croak](https://dancroak.com/)\n* [Dan Mayer](https://www.mayerdan.com/)\n* [Daniela Baron](https://danielabaron.me/) ([rss](https://danielabaron.me/rss.xml))\n* [Daniil Svetlov](https://dansvetlov.me/)\n* [Darius Pirvulescu](https://organicdarius.com/blog/) ([rss](https://organicdarius.com/blog/feed.xml))\n* [Dave Faliskie](https://1manstartup.com/blogs)\n* [David Boureau (AlsoHelp)](https://alsohelp.com/blog) ([rss](https://alsohelp.com/rss.xml))\n* [David Boureau (saaslit)](https://saaslit.com/blog)\n* [David Bryant Copeland](https://naildrivin5.com/) ([rss](https://naildrivin5.com/atom.xml))\n* [David Colby](https://www.colby.so/) ([rss](https://colby.so/atom.xml))\n* [David Heinemeier Hansson](https://world.hey.com/dhh) ([rss](https://world.hey.com/dhh/feed.atom))\n* [David Morales (DevelClan)](https://develclan.com/) ([rss](https://develclan.com/rss.xml))\n* [David Silva](https://davidslv.uk/) ([rss](https://davidslv.uk/feed.xml))\n* [Dean DeHart](https://deanin.com/blog/) ([rss](https://deanin.com/wp-json/wp/v2/pages/175))\n* [Dean Perry](https://deanpcmad.com/blog/)\n* [Deep dive](https://shime.sh/) ([rss](https://shime.sh/feed.xml))\n* [Deepak Mahakale](https://deepakmahakale.com/blog/) ([rss](https://deepakmahakale.com/blog/feed.xml))\n* [Denis Defreyne](https://denisdefreyne.com/contact/) ([rss](https://denisdefreyne.com/feeds/weeknotes.xml))\n* [Dennis Martinez](https://dennmart.com/tags/rails/)\n* [Dennis Martinez](https://dev-tester.com/) ([rss](https://dev-tester.com/rss/))\n* [Dennis Paagman](https://paagman.dev/articles/) ([rss](https://paagman.dev/feed.xml))\n* [Derk-Jan Karrenbeld](https://derk-jan.com/articles)\n* [Devanil](https://devanil.dev/blog/) ([rss](https://devanil.dev/rss.xml))\n* [Dhaval Singh](https://www.dsdev.in/) ([rss](https://www.dsdev.in/rss.xml))\n* [Dick Davis](https://dick.codes/) ([rss](https://dick.codes/feed.xml))\n* [Dimiter Petrov](https://dimiterpetrov.com/blog) ([rss](https://dimiterpetrov.com/blog/feed.xml))\n* [Dimitris Zorbas](https://zorbash.com/tags/ruby/) ([rss](https://zorbash.com/tags/ruby/index.xml))\n* [Dirk Jonker](https://dirkjonker.bearblog.dev/) ([rss](https://dirkjonker.bearblog.dev/feed/))\n* [Dmitriy Ivliev](https://blog.ivda.dev/) ([rss](https://blog.ivda.dev/rss.xml))\n* [Dmitry Gutov](https://gutov.dev/) ([rss](https://gutov.dev/feed.xml))\n* [Dmitry Ishkov](https://www.dmitry-ishkov.com) ([rss](https://www.dmitry-ishkov.com/feeds/posts/default))\n* [Dmitry Tsepelev](https://dmitrytsepelev.dev/tag/ruby) ([rss](https://dmitrytsepelev.dev/feed.xml))\n* [Dom Christie](https://domchristie.co.uk/) ([rss](https://domchristie.co.uk/feed.xml))\n* [Donn Felker](https://www.donnfelker.com/blog/) ([rss](https://www.donnfelker.com/feed/))\n* [Dwight Watson](https://www.dwightwatson.com/tags/ruby-on-rails)\n* [Délon R. Newman](https://delonnewman.name/articles) ([rss](https://delonnewman.name/articles/feed.xml))\n* [Eileen M. Uchitelle](https://eileencodes.com/) ([rss](http://eileencodes.com/feed.xml))\n* [Eliot Sykes](https://eliotsykes.com/) ([rss](https://eliotsykes.com/feed/))\n* [Emmanuel Hayford (hayford.dev)](https://hayford.dev/) ([rss](https://hayford.dev/rss/))\n* [Ender Ahmet Yurt](https://enderahmetyurt.com/) ([rss](https://enderahmetyurt.com/rss/))\n* [Enrico Teotti](https://teotti.com/topics/ruby/) ([rss](https://teotti.com/feed.xml))\n* [Eric London](https://ericlondon.com/) ([rss](https://ericlondon.com/feed.xml))\n* [Erik Minkel](https://www.erikminkel.com/) ([rss](https://www.erikminkel.com/rss/))\n* [Evgeniy Demin](https://evgeniydemin.medium.com/) ([rss](https://medium.com/feed/@evgeniydemin))\n* [Felice Forby](https://feliceforby.com/) ([rss](https://feliceforby.com/posts_feed))\n* [Felipe Contreras](https://felipec.wordpress.com/category/development/) ([rss](https://felipec.wordpress.com/feed/))\n* [Felipe Philipp](https://felipeelias.github.io/) ([rss](https://felipeelias.github.io/feed.xml))\n* [Felipe Vogel](https://fpsvogel.com/posts/) ([rss](https://fpsvogel.com/feed.xml))\n* [Filip Vrba](https://filipvrba.github.io/cv/)\n* [Finnian Anderson](https://finnian.io/tags/ruby/) ([rss](https://finnian.io/tags/ruby/index.xml))\n* [Florent Guilleux](https://www.florentguilleux.fr/) ([rss](https://www.florentguilleux.fr/rss.xml))\n* [Frank Groeneveld](https://frankgroeneveld.nl/) ([rss](https://frankgroeneveld.nl/feed/))\n* [Garrett Dimon](https://garrettdimon.com/journal/posts) ([rss](https://garrettdimon.com/feed))\n* [Gavin Miller (Web archive)](https://web.archive.org/web/20240518235427/http://gavinmiller.io/archives/)\n* [Gavin Morrice](https://handyrailstips.com/)\n* [Gergő Sulymosi](https://gergo.dev/) ([rss](https://gergo.dev/atom.xml))\n* [Gernot Gradwohl](https://austrian-nerd.dev/) ([rss](https://austrian-nerd.dev/index.xml))\n* [Giménez Silva Germán Alberto](https://rubystacknews.com/) ([rss](https://rubystacknews.com/feed/))\n* [Giorgi Mezurnishvili](https://mzrn.sh/) ([rss](https://mzrn.sh/feed.xml))\n* [Giovanni Panasiti](https://www.panasiti.me/blog/) ([rss](https://www.panasiti.me/feed.xml))\n* [Glauco Custodio](https://glaucocustodio.github.io/) ([rss](https://glaucocustodio.github.io/feed.xml))\n* [Goulven Champenois](https://pro.userland.fr/en/articles/) ([rss](https://pro.userland.fr/feed.xml))\n* [Greg Molnar](https://greg.molnar.io/blog/) ([rss](https://greg.molnar.io/feed.xml))\n* [Greg Molnar (railstricks)](https://pombomailer.com/n/railstricks)\n* [Greg Navis](https://www.gregnavis.com/articles.html) ([rss](https://www.gregnavis.com/feed.xml))\n* [Gregg Kellogg](https://greggkellogg.net/categories/ruby/)\n* [Guillaume Briday](https://guillaumebriday.fr/articles) ([rss](https://guillaumebriday.fr/articles.xml))\n* [Hal Brodigan (postmodern)](http://postmodern.github.io/blog/) ([rss](http://postmodern.github.io/atom.xml))\n* [Hartley McGuire](https://skipkayhil.github.io/blog)\n* [Haseeb Annadamban](https://haseebeqx.com/posts/) ([rss](https://haseebeqx.com/posts/index.xml))\n* [Hegwin Wang](https://hegwin.me/en)\n* [Henrik Nyh](https://thepugautomatic.com/tag/ruby/) ([rss](https://thepugautomatic.com/atom.xml))\n* [Henry Maddocks](https://henry.bearblog.dev/blog/) ([rss](https://henry.bearblog.dev/about/feed/?type=rss))\n* [hoshino tsuyoshi](https://hoshinotsuyoshi.com/tags/ruby/)\n* [Hrvoje Šimić](https://shime.sh/til/) ([rss](https://shime.sh/feed.xml))\n* [Igor Aleksandrov](https://igor.works/archive)\n* [Igor Guzak](https://medium.com/@igor04) ([rss](https://medium.com/feed/@igor04))\n* [Igor Kuznetsov](https://medium.com/@igkuz) ([rss](https://medium.com/feed/@igkuz))\n* [Igor Morozov](https://www.morozov.is/)\n* [Igor Springer (Web archive)](https://web.archive.org/web/20240618125641/https://frontdeveloper.pl/blog-posts/)\n* [Ilya Bylich](https://iliabylich.github.io/) ([rss](https://iliabylich.github.io/index.xml))\n* [Ilya Krukowski](https://bodrovis.tech/)\n* [Ismael Celis](https://ismaelcelis.com/) ([rss](https://ismaelcelis.com/index.xml))\n* [Ivo Anjo](https://ivoanjo.me/) ([rss](https://ivoanjo.me/feed.xml))\n* [J. Scott Johnson](https://fuzzyblog.io/blog/category.html#rails) ([rss](http://fuzzyblog.io/blog/feed.xml))\n* [Jacob Swanner](https://jacobswanner.com/development/) ([rss](https://jacobswanner.com/atom.xml))\n* [Jake Worth](https://www.jakeworth.com/posts/) ([rss](https://jakeworth.com/posts/index.xml))\n* [Jake Zimmerman](https://blog.jez.io/#all-posts) ([rss](https://blog.jez.io/atom.xml))\n* [Jakob Skjerning](https://mentalized.net/) ([rss](https://mentalized.net/journal/entries.xml))\n* [James Golick](https://www.jamesgolick.com/) ([rss](http://feeds.feedburner.com/JamesOnSoftware))\n* [James Hibbard](https://hibbard.eu/) ([rss](https://hibbard.eu/feed.xml))\n* [Jamie Schembri](https://schembri.me/) ([rss](https://schembri.me/rss/))\n* [Jamis Buck](http://weblog.jamisbuck.org/archives.html)\n* [Jamis Buck](https://weblog.jamisbuck.org/archives.html) ([rss](https://feeds.feedburner.com/buckblog))\n* [Jan Matuszewski](https://jmatuszewski.com/) ([rss](https://jmatuszewski.com/feed.xml))\n* [Janko Marohnić](https://janko.io/) ([rss](https://janko.io/feed.xml))\n* [Jared Norman](https://jardo.dev/blog?topic=ruby-rails) ([rss](https://jardo.dev/blog.xml))\n* [Jason Charnes](https://jasoncharnes.com/articles/) ([rss](https://jasoncharnes.com/feed.xml))\n* [Jason Fleetwood-Bold](https://jasonfleetwoodboldt.com/topics/programming/) ([rss](https://jasonfleetwoodboldt.com/feed/))\n* [Jason Swett](https://www.codewithjason.com/articles/) ([rss](https://www.codewithjason.com/wp-json/wp/v2/pages/415))\n* [Jason York](https://predicatemethod.com/archives/) ([rss](https://predicatemethod.com/feed.xml))\n* [Javier Cervantes](https://www.rubynewbie.org/) ([rss](https://www.rubynewbie.org/feed.xml))\n* [JD Gonzales](https://jd.codes/) ([rss](https://jd.codes/index.xml))\n* [Jean Boussier](https://byroot.github.io/) ([rss](https://byroot.github.io/feed.xml))\n* [Jemma Issroff](https://jemma.dev/) ([rss](https://jemma.dev/blog/published.xml))\n* [Jens Eickmeyer](https://scratchpad.blog/) ([rss](https://scratchpad.blog/feed.xml))\n* [Jeremy Friesen](https://takeonrules.com/tags/programming/) ([rss](https://takeonrules.com/index.json))\n* [Jeremy Kreutzbender](https://jeremykreutzbender.com/blog?tags=ruby%2Cruby-on-rails)\n* [Jeroen Weeink](https://craftingruby.com/) ([rss](https://craftingruby.com/feed.xml))\n* [Jess Brown](https://bjessbrown.com/)\n* [Jesse B. Hannah](https://jbhannah.net/)\n* [Jesus Castello](https://www.rubyguides.com/ruby-post-index/) ([rss](https://www.rubyguides.com/feed/))\n* [Jim Weirich (Web archive)](https://web.archive.org/web/20241013050338/https://www.onestepback.org/articles/index.html)\n* [Jimmy Chao (Web archive)](https://web.archive.org/web/20241013050343/http://neethack.com/tags/ruby/)\n* [Joe Masilotti](https://masilotti.com/articles/) ([rss](https://masilotti.com/feed.xml))\n* [Joel Drapper](https://joel.drapper.me/) ([rss](https://joel.drapper.me/rss.xml))\n* [Joey Wang](https://joeywang.github.io/) ([rss](https://joeywang.github.io/feed.xml))\n* [John Hawthorn](https://www.johnhawthorn.com/) ([rss](https://www.johnhawthorn.com/atom.xml))\n* [John Nunemaker](https://www.johnnunemaker.com/) ([rss](https://www.johnnunemaker.com/rss/))\n* [John Skiles Skinner](https://johnskinnerportfolio.com/blog/index.html) ([rss](https://johnskinnerportfolio.com/feed.xml))\n* [Jon Sullivan](https://jonsully.net/blog/) ([rss](https://jonsully.net/rss.xml))\n* [Jonas Brusman](https://jonas.brusman.se/articles/) ([rss](https://jonas.brusman.se/rss.xml))\n* [Jonathan Rochkind](https://bibwild.wordpress.com/) ([rss](https://bibwild.wordpress.com/feed/))\n* [Jorge Manrubia](https://world.hey.com/jorge) ([rss](https://world.hey.com/jorge/feed.atom))\n* [Jose Farias](https://jose.omg.lol/) ([rss](https://jose.omg.lol/feed.xml))\n* [Josef Strzibny](https://nts.strzibny.name/tag/ruby/) ([rss](https://nts.strzibny.name/feed.xml))\n* [Josh Frankel](https://joshfrankel.me/blog/) ([rss](https://joshfrankel.me/feed.xml))\n* [Josh McArthur](https://www.joshmcarthur.com/) ([rss](https://joshmcarthur.com/feed/))\n* [Josh Thompson](https://www.intermediateruby.com/articles) ([rss](https://www.intermediateruby.com/atom.xml))\n* [Joyful Bikeshedding](https://www.joyfulbikeshedding.com/blog/tags/ruby.html) ([rss](https://www.joyfulbikeshedding.com/feed.xml))\n* [JP Camara](https://jpcamara.com/categories/ruby/) ([rss](https://jpcamara.com/categories/ruby/feed.xml))\n* [Juanito Fatas](https://juanitofatas.com/tags/ruby)\n* [Julia Chan](https://juliachan.dev/)\n* [Julia Evans](https://jvns.ca/) ([rss](https://jvns.ca/atom.xml))\n* [Julian Rubisch](https://hotwire.club/blog/) ([rss](https://hotwire.club/feed.xml))\n* [Juliana Dias](https://blog.juliana.dev/blog) ([rss](https://blog.juliana.dev/feed.xml))\n* [Julija Alieckaja](https://medium.com/@alieckaja) ([rss](https://medium.com/feed/@alieckaja))\n* [Julik Tarkhanov](https://blog.julik.nl/) ([rss](https://blog.julik.nl/feed.atom.xml))\n* [Justin Cypret](https://justincypret.com/) ([rss](https://justincypret.com/feed.xml))\n* [Justin Gordon](http://www.railsonmaui.com/)\n* [Justin Searls](https://justin.searls.co/posts/) ([rss](https://justin.searls.co/atom.xml))\n* [Jônatas Davi Paganini](https://ideia.me/categories.html#ruby-ref) ([rss](https://ideia.me/atom.xml))\n* [Kadu Diógenes](https://kdiogenes.github.io/) ([rss](https://kdiogenes.github.io/feed.xml))\n* [Kallin Nagelberg](https://happycampers.dance/) ([rss](http://happycampers.dance/feed.xml))\n* [Karol Bąk](https://kukicola.io/) ([rss](https://kukicola.io/feed.xml))\n* [Karol Galanciak](https://karolgalanciak.com/blog/) ([rss](https://karolgalanciak.com/feed.xml))\n* [Kasper Timm Hansen](https://kaspth.com/posts) ([rss](https://kaspth.com/posts_feed))\n* [Kasper Timm Hansen (buttondown)](https://buttondown.com/kaspth/archive/) ([rss](https://buttondown.com/kaspth/rss))\n* [Kevin Glowacz](https://kevin.glowacz.info/) ([rss](https://kevin.glowacz.info/feed.xml))\n* [Kevin Murphy](https://kevinjmurphy.com/posts/) ([rss](https://kevinjmurphy.com/posts/index.xml))\n* [Kevin Newton](https://kddnewton.com/) ([rss](https://kddnewton.com/feed.xml))\n* [Kevin Sylvestre](https://ksylvest.com/) ([rss](https://ksylvest.com/feed.atom))\n* [Khaja Minhajuddin](https://minhajuddin.com/tags/ruby/) ([rss](https://minhajuddin.com/atom.xml))\n* [Kir Shatrov](https://kirshatrov.com/posts)\n* [Kiril Mitov](https://kmitov.com/posts/tag/rails/) ([rss](https://kmitov.com/feed/))\n* [Kirill Platonov](https://kirillplatonov.com/posts/) ([rss](https://kirillplatonov.com/feed.xml))\n* [Koichi Sasada](https://dev.to/ko1) ([rss](https://dev.to/feed/ko1))\n* [Kris Bogdanov](https://fullstackheroes.com/tutorials/rails/)\n* [Kris Leech](https://www.teamcoding.com/)\n* [Kuba Suder](https://journal.mackuba.eu/archive/) ([rss](https://journal.mackuba.eu/feed.xml))\n* [Kyle Keesling](https://kylekeesling.com/posts) ([rss](https://kylekeesling.com/feed.xml))\n* [Kyrylo Silin](https://kyrylo.org/) ([rss](https://kyrylo.org/feed.xml))\n* [Landon Gray](https://thedayisntgray.github.io/) ([rss](https://thedayisntgray.github.io/feed.xml))\n* [Lars Peters](https://larsp.de/) ([rss](https://larsp.de/rss/))\n* [Lazarus Lazaridis](https://iridakos.com/) ([rss](https://iridakos.com/feed.xml))\n* [Leandro Proença](https://leandronsp.com/?tag=ruby)\n* [Linas Juškevičius](https://kaukas.mataroa.blog/) ([rss](https://kaukas.mataroa.blog/rss/))\n* [Lovro Bikić](https://lovro-bikic.github.io/) ([rss](https://lovro-bikic.github.io/feed.xml))\n* [Luan Nguye - fullstackrubyonrails.com (Web archive)](http://web.archive.org/web/20210513003707/https://fullstackrubyonrails.com/)\n* [Luan Nguyen](https://luanotes.medium.com/) ([rss](https://medium.com/feed/@luanotes))\n* [Luca Guidi](https://lucaguidi.com/) ([rss](https://lucaguidi.com/rss.xml))\n* [Lucas Dohmen](https://lucas.dohmen.io/) ([rss](https://lucas.dohmen.io/feed.xml))\n* [Lucas Luitjes](https://blog.luitjes.it/)\n* [Lucian Ghinda](https://allaboutcoding.ghinda.com/) ([rss](https://allaboutcoding.ghinda.com/rss.xml))\n* [Lucian Ghinda (Notes)](https://notes.ghinda.com/) ([rss](https://notes.ghinda.com/feed.atom))\n* [Luiz Eduardo Kowalski](https://www.luizkowalski.net/) ([rss](https://www.luizkowalski.net/rss/))\n* [Luke Jahnke](https://nastystereo.com/)\n* [Lynn Chang](https://lynnbright.com/) ([rss](https://lynnbright.com/rss.xml))\n* [Maciej Litwiniuk](https://maciej.litwiniuk.net/posts/) ([rss](https://maciej.litwiniuk.net/index.xml))\n* [Maciej Mensfeld](https://mensfeld.pl/) ([rss](https://mensfeld.pl/feed/))\n* [Mahbub Zaman](https://mahbub.ninja/blog)\n* [Manuel Farez](https://manufarez.com/)\n* [Marc Busqué](https://waiting-for-dev.github.io/) ([rss](https://waiting-for-dev.github.io/feed.xml))\n* [Marcin Ostrowski (rubyonai.com)](https://rubyonai.com/) ([rss](https://rubyonai.com/rss/))\n* [Marco Roth](https://marcoroth.dev/blog) ([rss](https://marcoroth.dev/feed.xml))\n* [Mario Alberto Chávez Cárdenas](https://mariochavez.io/) ([rss](https://mariochavez.io/feed.xml))\n* [Mark Godwin (railscraft)](https://railscraft.hashnode.dev/) ([rss](https://railscraft.hashnode.dev/rss.xml))\n* [Martin Emde](https://martinemde.com/) ([rss](https://martinemde.com/rss.xml))\n* [Mateus Pereira](https://pearprogramming.blog/posts/)\n* [Mateusz Białowąs](https://mateuszbialowas.com/) ([rss](https://mateuszbialowas.com/rss.xml))\n* [Matheus Richard](https://www.matheusrich.com/all/) ([rss](http://matheusrich.com/feed.xml))\n* [Mathieu Eustachy](https://mathieu-eustachy.com/articles)\n* [Matias Korhonen](https://www.randomerrata.com/) ([rss](https://www.randomerrata.com/feed.xml))\n* [Matt Brictson](https://mattbrictson.com/blog) ([rss](https://mattbrictson.com/blog.atom))\n* [Matthew Hutchinson](https://matthewhutchinson.net/)\n* [Mattia Roccoberton](https://www.blocknot.es/) ([rss](https://www.blocknot.es/feed.xml))\n* [Max Braga](https://hellomax.me/archives/) ([rss](https://hellomax.me/feed.xml))\n* [Max Tikhomirov](https://metacircu1ar.github.io/blog.html) ([rss](https://metacircu1ar.github.io/feed.xml))\n* [Maxime Lapointe](https://maxlap.dev/blog/) ([rss](https://maxlap.dev/blog/feed.xml))\n* [Michael Dominick](https://dominickm.com/tag/ruby/) ([rss](https://dominickm.com/feed/))\n* [Michael Grosser](https://grosser.it/) ([rss](https://grosser.it/feed/))\n* [Michael Nelson (Web archive)](https://web.archive.org/web/20241004080114/http://nelsonware.com/ruby.html)\n* [Michael Wallbaum (Web archive)](https://web.archive.org/web/20251111112151/https://mwallba.io/)\n* [Michal Kazmierczak](https://mkaz.me/blog/)\n* [Michal Papis (Web archive)](https://web.archive.org/web/20220929231743/http://niczsoft.com/)\n* [Mikael Henriksson](https://mhenrixon.com/articles)\n* [Mike Coutermarsh](https://www.mikecoutermarsh.com/) ([rss](https://www.mikecoutermarsh.com/rss/))\n* [Mike McQuaid](https://mikemcquaid.com/) ([rss](https://mikemcquaid.com/atom.xml))\n* [Mike Pack (Web archive)](http://web.archive.org/web/20220625075232/http://mikepackdev.com/)\n* [Mike Perham](https://www.mikeperham.com/) ([rss](https://mikeperham.com/index.xml))\n* [Mike Rogers (Web archive)](https://web.archive.org/web/20220627032657/https://mikerogers.io/posts/)\n* [Mike Wilson](https://www.mikewilson.dev/) ([rss](https://www.mikewilson.dev/feed.xml))\n* [Mikhail Klimenko](https://blog.klimenko.site/) ([rss](https://blog.klimenko.site/feed.xml))\n* [Miles Woodroffe](https://mileswoodroffe.com/tags/rails) ([rss](https://mileswoodroffe.com/feed.xml))\n* [Mohammad A. Ali](https://oldmoe.blog/) ([rss](https://oldmoe.blog/feed/))\n* [Mohit Sindhwani](https://notepad.onghu.com/) ([rss](https://notepad.onghu.com/feed.xml))\n* [Moncef Belyamani](https://www.moncefbelyamani.com/tags/ruby/) ([rss](https://www.moncefbelyamani.com/feed.xml))\n* [Mário Nzualo](https://www.marionzualo.com/blog/) ([rss](https://www.marionzualo.com/feed/))\n* [Máximo Mussini](https://maximomussini.com/) ([rss](https://maximomussini.com/feed.xml))\n* [Nate Berkopec](https://www.speedshop.co/blog/) ([rss](https://www.speedshop.co/feed.xml))\n* [Nicholas](https://wasabigeek.com/blog/) ([rss](https://wasabigeek.com/rss.xml))\n* [Nick Hammond](https://www.fromthekeyboard.com/) ([rss](https://www.fromthekeyboard.com/rss/))\n* [Nick Schwaderer (blog.schwad.org)](https://blog.schwad.org/) ([rss](https://blog.schwad.org/feed))\n* [Nick Schwaderer (schwad.github.io)](https://schwad.github.io/) ([rss](https://schwad.github.io/feed.xml))\n* [Nick Sutterer](https://apotonick.wordpress.com/) ([rss](https://apotonick.wordpress.com/feed/))\n* [Nikita Misharin](https://thesmartnik.com/) ([rss](https://thesmartnik.com/feed.xml))\n* [Nikola Đuza](https://pragmaticpineapple.com/) ([rss](https://pragmaticpineapple.com/rss.xml))\n* [Nitanshu Verma](https://nitanshu.github.io/posts/) ([rss](https://nitanshu.github.io/feed.xml))\n* [Nithin Bekal](https://nithinbekal.com/) ([rss](https://nithinbekal.com/feed.xml))\n* [Noah Gibbs](https://codefol.io/tags/ruby/) ([rss](https://codefol.io/feed.xml))\n* [Noel Rappin](https://noelrappin.com/blog/) ([rss](https://noelrappin.com//blog/index.xml))\n* [Nolan Phillips](https://blog.nolanphillips.com/) ([rss](https://blog.nolanphillips.com/rss.xml))\n* [Olly Headey](https://olly.world/archive) ([rss](https://olly.world/feed.xml))\n* [Owais](https://owaiskhan.me/blog)\n* [Pablo Enoc](https://enocc.com/) ([rss](https://enocc.com/feed.xml))\n* [Pat Allan](https://freelancing-gods.com/posts/index.html)\n* [Pat Shaughnessy](https://patshaughnessy.net/)\n* [Paul Sadauskas](https://blog.theamazingrando.com/) ([rss](https://blog.theamazingrando.com/feed.xml))\n* [Paweł Dąbrowski](https://www.paweldabrowski.com/articles) ([rss](https://www.paweldabrowski.com/undefined/rss/feed.xml))\n* [Paweł Dąbrowski (Long live Ruby)](https://longliveruby.com/)\n* [Paweł Dąbrowski (Ruby hero) (Web archive)](https://web.archive.org/web/20241122134223/https://rubyhero.dev/)\n* [Paweł Świątkowski](https://katafrakt.me/posts/) ([rss](https://katafrakt.me/feed.xml))\n* [Peter Keogh](https://keoghpe.github.io/) ([rss](https://keoghpe.github.io/feed.xml))\n* [Peter Morgenstern](https://www.petergundel.de/)\n* [Peter Ohler](http://www.ohler.com/dev/index.html)\n* [Peter Solnica](https://solnic.dev/) ([rss](https://solnic.dev/rss/))\n* [Peter Zhu](https://blog.peterzhu.ca/) ([rss](https://blog.peterzhu.ca/feed.xml))\n* [Petr Hlavicka](https://petr.codes/blog/) ([rss](https://petr.codes/feed.xml))\n* [Phil Pirozhkov](https://fili.pp.ru/) ([rss](https://fili.pp.ru/feed.xml))\n* [Philippe Creux](https://pcreux.com/) ([rss](https://pcreux.com/feed.xml))\n* [Piotr Chmolowski](https://ptrchm.com/posts/) ([rss](https://ptrchm.com/posts/index.xml))\n* [Piotr Murach](https://piotrmurach.com/) ([rss](https://piotrmurach.com/feed.xml))\n* [Prabin Poudel](https://prabinpoudel.com.np/articles/) ([rss](https://prabinpoudel.com.np/atom.xml))\n* [Prabin Poudel (Zero Config Rails)](https://blog.zeroconfigrails.com/) ([rss](https://blog.zeroconfigrails.com/rss.xml))\n* [Prateek Choudhary](https://www.prateekcodes.dev/)\n* [Premysl Donat](https://masa331.github.io/)\n* [Rachael Wright-Munn](https://www.chael.codes/) ([rss](https://www.chael.codes/feed.xml))\n* [Radan Skorić](https://radanskoric.com/tags/ruby/) ([rss](https://radanskoric.com/feed.xml))\n* [Radoslav Stankov (Rado's Blog)](https://blog.rstankov.com/tag/ruby/) ([rss](https://blog.rstankov.com/rss/))\n* [Radoslav Stankov (Rado's Tips)](https://tips.rstankov.com/archive) ([rss](https://tips.rstankov.com/feed))\n* [Rafael Montas](https://www.rafaelmontas.com/) ([rss](https://www.rafaelmontas.com/feed.xml))\n* [Rahoul Baruah](https://theartandscienceofruby.com/) ([rss](https://theartandscienceofruby.com/rss/))\n* [Remi Mercier](https://remimercier.com/blog/) ([rss](https://remimercier.com/feed.xml))\n* [Renato Nitta](https://renatonitta.com/) ([rss](https://renatonitta.com/feed/))\n* [Rich Steinmetz](https://richstone.io/tag/ruby/) ([rss](https://richstone.io/rss/))\n* [Richard Huang (Web archive)](http://web.archive.org/web/20210923031801/https://blog.huangzhimin.com/)\n* [Richard Schneeman](https://schneems.com/) ([rss](https://schneems.com/feed.xml))\n* [Rico Sta. Cruz](https://ricostacruz.com/til/) ([rss](https://ricostacruz.com/til/rss.xml))\n* [Rob Lacey](https://robl.me/posts)\n* [Rob Race](https://robrace.dev/) ([rss](https://robrace.dev/blog/rss.xml))\n* [Rob Zolkos](https://www.zolkos.com/) ([rss](https://www.zolkos.com/feed.xml))\n* [Robby Russell](https://robbyonrails.com/) ([rss](https://robbyonrails.com/feed.xml))\n* [Robert](https://0x1eef.github.io/posts/)\n* [Robert Pankowecki](https://pankowecki.pl/) ([rss](https://pankowecki.pl/index.xml))\n* [Rodrigo Rosenfeld Rosas](https://rosenfeld.page/articles/tags/ruby) ([rss](https://rosenfeld.page/articles/tags/ruby/atom))\n* [Roland Lopez](https://rolandsoftwares.com/content/)\n* [Roland Studer](https://rstuder.ch/) ([rss](https://rstuder.ch/feed.xml))\n* [Ronan Limon Duparcmeur](https://2-45.pm/articles/) ([rss](https://2-45.pm/feed.xml))\n* [Ross](https://www.reinhardt.io/blog/) ([rss](http://reinhardt.io/feed.xml))\n* [Ross Kaffenberger](https://rossta.net/blog/) ([rss](https://rossta.net/feed.xml))\n* [Ross Kaffenberger (Joy of Rails)](https://joyofrails.com/) ([rss](https://joyofrails.com/feed))\n* [Ruslan Gafurov](https://gafur.me/blog/)\n* [Rustam A. Gasanov (Web archive)](http://web.archive.org/web/20220503193002/http://rustamagasanov.com/)\n* [Ryan Bates](https://rbates.dev/) ([rss](https://rbates.dev/rss.xml))\n* [Ryan Bigg](https://ryanbigg.com/blog) ([rss](https://ryanbigg.com/feed.xml))\n* [Ryan Davis](https://www.zenspider.com/ruby/tags/ruby.html) ([rss](https://www.zenspider.com/atom.xml))\n* [Ryan Johnston](https://ryjo.codes/)\n* [Sahil Gadimbayli](https://www.ramblingcode.dev/tags/ruby/) ([rss](https://www.ramblingcode.dev/tags/ruby/index.xml))\n* [Samuel Williams](https://www.codeotaku.com/journal/index) ([rss](https://www.codeotaku.com/journal/atom))\n* [Sandi Metz](https://sandimetz.com/blog) ([rss](https://sandimetz.com/blog?format=rss))\n* [Scott Bartell](https://scottbartell.com/) ([rss](https://scottbartell.com/feed.xml))\n* [Scott Hanselman](https://www.hanselman.com/blog/category/ruby) ([rss](https://www.hanselman.com/blog/feed/rss))\n* [Scott Johnson](https://fuzzyblog.io/blog/tag.html#ruby) ([rss](http://fuzzyblog.io/blog/feed.xml))\n* [Scott Watermasysk](https://scottw.com/) ([rss](https://scottw.com/feed.xml))\n* [Scott Werner](https://worksonmymachine.substack.com/) ([rss](https://worksonmymachine.substack.com/feed))\n* [Sean C Davis](https://www.seancdavis.com/topics/ruby/) ([rss](https://www.seancdavis.com/feed.xml))\n* [Seb Wilgosz](https://swilgosz.hashnode.dev/) ([rss](https://swilgosz.hashnode.dev/rss.xml))\n* [Shayon Mukherjee](https://www.shayon.dev/post/) ([rss](https://www.shayon.dev/post/index.xml))\n* [Shiva Bhusal](https://shivabhusal.com/)\n* [Shivam Chahar](https://www.shivamchahar.com/posts) ([rss](https://www.shivamchahar.com/feed.xml))\n* [Sid Krishnan](https://ducktypelabs.com/)\n* [Sihui Huang](https://www.sihui.io/category/ruby-on-rails/) ([rss](https://www.sihui.io/feed/))\n* [Sreeram Venkitesh](https://sreeram.xyz/blog) ([rss](https://sreeram.xyz/feed.xml))\n* [Stan Lo](https://st0012.dev/) ([rss](https://st0012.dev/rss.xml))\n* [Stanislav Katkov](https://skatkov.com/blog) ([rss](https://skatkov.com/feed.xml))\n* [Stanko Krtalić](https://stanko.io/articles) ([rss](https://stanko.io/articles/rss))\n* [Stefan Botzenhart](https://www.botzenhart.io/articles) ([rss](https://www.botzenhart.io/undefined/rss/feed.xml))\n* [Stefan Wienert](https://www.stefanwienert.de/categories/ruby/) ([rss](https://www.stefanwienert.de/feed.xml))\n* [Stefan Wintermeyer](https://medium.com/@wintermeyer) ([rss](https://medium.com/feed/@wintermeyer))\n* [Stephan Kämper](https://seasidetesting.com/) ([rss](https://seasidetesting.com/feed/))\n* [Stephen Ierodiaconou](https://www.diaconou.com/blog/)\n* [Stephen Margheim](https://fractaledmind.github.io/posts/) ([rss](https://fractaledmind.github.io/feed.xml))\n* [Steve Klabnik](https://steveklabnik.com/writing) ([rss](https://steveklabnik.com/feed.xml))\n* [Steve Polito](https://stevepolito.design/blog) ([rss](https://stevepolito.design/feed.xml))\n* [Steven Harman](https://stevenharman.net/archive) ([rss](https://stevenharman.net/feed.xml))\n* [Steven Yue](https://stevenyue.com/) ([rss](https://stevenyue.com/feed.xml))\n* [Stuart Frost](https://www.stufro.com/) ([rss](https://www.stufro.com/%20/feed.xml))\n* [Stuart Yamartino](https://stuyam.com/blog)\n* [Sulman Baig](https://sulmanweb.com/) ([rss](https://sulmanweb.com/rss.xml))\n* [Suraj Mishra](https://monorails.substack.com/) ([rss](https://monorails.substack.com/feed))\n* [Swapnil Gourshete (RailsExamples)](https://railsexamples.com/index.html)\n* [Tejas Bubane](https://tejasbubane.github.io/tags/ruby/) ([rss](https://tejasbubane.github.io/rss.xml))\n* [Tekin Süleyman](https://tekin.co.uk/writing/) ([rss](https://tekin.co.uk/atom.xml))\n* [Thomas Countz](https://thomascountz.com/) ([rss](https://thomascountz.com/atom.xml))\n* [Thomas Hurst](https://hur.st/)\n* [Thomas Leitner](https://gettalong.org/posts.html) ([rss](https://gettalong.org/posts.rss))\n* [Tiago (honeyryder)](https://honeyryderchuck.gitlab.io/posts/) ([rss](https://honeyryderchuck.gitlab.io/atom.xml))\n* [Tim Riley](https://timriley.info/posts) ([rss](https://timriley.info/posts_feed))\n* [Tom Dalling](https://www.tomdalling.com/blog/) ([rss](https://www.tomdalling.com/blog/feed/))\n* [Tom de Bruijn](https://tomdebruijn.com/) ([rss](https://tomdebruijn.com/feed.xml))\n* [Tom Mango](https://sleepingpotato.com/) ([rss](https://sleepingpotato.com/rss/))\n* [Tom Stuart](https://tomstu.art/articles) ([rss](https://tomstu.art/articles.atom))\n* [Tomas Valent](https://blog.eq8.eu/) ([rss](https://blog.eq8.eu/feed.xml))\n* [Tony Ennis](https://www.tonyennis.com/dev)\n* [Tristan Dunn](https://tristandunn.com) ([rss](https://tristandunn.com/feed))\n* [Tristan Penman](https://tristanpenman.com/blog/) ([rss](https://tristanpenman.com/feed.xml))\n* [Tuomas Jomppanen](https://www.jomppanen.com/archive)\n* [Tëma Bolshakov](https://blog.bolshakov.dev/) ([rss](https://blog.bolshakov.dev/feed.xml))\n* [Unathi Chonco](https://blog.unathichonco.com/) ([rss](https://blog.unathichonco.com/rss.xml))\n* [Vasiliy Ermolovich](https://nashby.github.io/) ([rss](https://nashby.github.io/atom.xml))\n* [Vasily Polovnyov](https://vasily.polovnyov.ru/) ([rss](https://vasily.polovnyov.ru/feed.xml))\n* [Vicente Reig](https://oss.vicente.services/dspy.rb/blog/)\n* [Victor Afanasev](https://vifreefly.github.io/) ([rss](https://vifreefly.github.io/feed.xml))\n* [Victor Shepelev (zverok)](https://zverok.space/writing/) ([rss](https://zverok.space/feed.xml))\n* [Victor Wynne](https://victorwynne.com/vault/) ([rss](https://victorwynne.com/feed.xml))\n* [Vinay Keerthi](https://tech.stonecharioteer.com/posts/) ([rss](https://tech.stonecharioteer.com/posts/index.xml))\n* [Vini Oyama](https://vinioyama.com/blog/) ([rss](https://vinioyama.com/feed/))\n* [Vitalii Elenhaupt](https://veelenga.github.io/) ([rss](https://veelenga.github.io/feed.xml))\n* [Vito Botta (Web archive)](https://web.archive.org/web/20230803211048/https://vitobotta.com/tags/ruby/)\n* [Vladislav Kopylov](https://kopilov-vlad.medium.com/) ([rss](https://medium.com/feed/@kopilov-vlad))\n* [Way Mondo](https://waymondo.com/) ([rss](https://waymondo.com/index.xml))\n* [Weston Ganger](https://westonganger.com/posts)\n* [Will Jessop](https://willj.net/tags/ruby/) ([rss](https://willj.net/rss.xml))\n* [William Kennedy](https://williamkennedy.ninja/posts/) ([rss](https://williamkennedy.ninja/feed.xml))\n* [Yaroslav Shmarov](https://blog.corsego.com/)\n* [Yatish Mehta](https://yatishmehta.com/blog)\n* [Yegor Bugayenko](https://www.yegor256.com/tag/ruby.html) ([rss](https://www.yegor256.com/rss.xml))\n* [Yehuda Katz](https://yehudakatz.com/) ([rss](https://yehudakatz.com/rss/))\n* [Yevhen Kuzminov](http://stdout.in/en) ([rss](http://stdout.in/en/cat/all.rss))\n* [Yorick Peterse](https://yorickpeterse.com/) ([rss](https://yorickpeterse.com/feed.xml))\n* [Yoshiki](https://takagi.blog/tags/ruby/) ([rss](https://takagi.blog/tags/ruby/rss.xml))\n* [Younes SERRAJ](https://younes.codes/) ([rss](https://younes.codes/posts.rss))\n* [Youssef Boulkaid](https://blog.yboulkaid.com/blog) ([rss](https://blog.yboulkaid.com/feed.xml))\n* [Yuri Bocharov](https://blog.yuribocharov.dev/) ([rss](https://blog.yuribocharov.dev/feed.xml))\n* [Zacharias Dyna Knudsen](https://za.chari.as/)\n* [Zil Norvilis](https://norvilis.com) ([rss](https://norvilis.com/feed.xml))\n* [Владимир Мирошниченко](https://gururuby.ru/) ([rss](https://gururuby.ru/atom.xml))\n* [Иван Шихалев](https://shikhalev.github.io/tech/programming/ruby/) ([rss](https://shikhalev.github.io/feed.xml))\n\n\n## Company [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/company.opml)\n\n* [2n](https://www.2n.pl/blog?tag=ruby)\n* [37signals](https://dev.37signals.com/) ([rss](https://dev.37signals.com/feed/posts.xml))\n* [8th Light](https://8thlight.com/insights/) ([rss](https://8thlight.com/insights/feed/rss.xml))\n* [AbstractBrain](https://answers.abstractbrain.com/)\n* [Acuments](https://acuments.com/blog.html)\n* [Aha!](https://www.aha.io/engineering) ([rss](https://www.aha.io/blog/feed.xml))\n* [Airbrake](https://blog.airbrake.io/) ([rss](https://blog.airbrake.io/rss.xml))\n* [Alchemists](https://www.alchemists.io/articles/) ([rss](https://www.alchemists.io/feeds/news.xml))\n* [Appfolio Engineering](https://engineering.appfolio.com/) ([rss](https://engineering.appfolio.com/appfolio-engineering?format=rss))\n* [AppSignal](https://blog.appsignal.com/category/ruby-magic.html) ([rss](https://blog.appsignal.com/category/ruby-magic-feed.xml))\n* [Arkency](https://blog.arkency.com/) ([rss](https://blog.arkency.com/feed.xml))\n* [Avo](https://avohq.io/blog) ([rss](https://avohq.io/blog/rss))\n* [Bacancy](https://www.bacancytechnology.com/blog/ruby-on-rails/) ([rss](https://www.bacancytechnology.com/blog/wp-json/wp/v2/categories/35))\n* [Bemi](https://blog.bemi.io/) ([rss](https://blog.bemi.io/rss/))\n* [BetaCraft](https://betacraft.com/category/ruby/) ([rss](https://betacraft.com/feed/))\n* [BigBinary](https://www.bigbinary.com/blog) ([rss](https://www.bigbinary.com/blog/feed.xml))\n* [BootrAils (Web archive)](https://web.archive.org/web/20231206233411/https://www.bootrails.com/blog/)\n* [BoTree Technologies](https://www.botreetechnologies.com/blog/category/technology/ruby-on-rails/) ([rss](https://www.botreetechnologies.com/blog/feed/))\n* [Brainspec](http://brainspec.com/blog/) ([rss](http://brainspec.com/blog/atom.xml))\n* [Carbonfive](https://web.archive.org/web/20240907200053/https://blog.carbonfive.com/category/ruby/)\n* [Carmatec](https://www.carmatec.com/blog/) ([rss](https://www.carmatec.com/feed/))\n* [Census](https://census.dev/) ([rss](https://census.dev/blog?format=rss))\n* [Chaps (Web archive)](http://web.archive.org/web/20211127030701/https://blog.chaps.io/)\n* [Cloud 66](https://blog.cloud66.com/)\n* [CloudBees (Old CodeShip, Rollout)](https://www.cloudbees.com/blog)\n* [Codemancers](https://www.codemancers.com/blog/?tag=rails) ([rss](https://www.codemancers.com/rss.xml))\n* [Codeminer 42](https://blog.codeminer42.com/) ([rss](https://blog.codeminer42.com/feed/))\n* [Codica](https://www.codica.com/blog/) ([rss](https://www.codica.com/rss.xml))\n* [Collective Idea](https://collectiveidea.com/blog/labels/rails/) ([rss](https://collectiveidea.com/blog/feed/))\n* [Cookpad](https://sourcediving.com/tagged/ruby) ([rss](https://sourcediving.com/feed))\n* [Cycode (Old Bearer)](https://cycode.com/blog/) ([rss](https://cycode.com/feed/))\n* [Datarockets](https://datarockets.com/blog/)\n* [Decode Fix](https://decodefix.com/tag/ruby/) ([rss](https://decodefix.com/feed/))\n* [DeepSource](https://deepsource.com/blog)\n* [DotRuby](https://www.dotruby.com/articles) ([rss](https://www.dotruby.com/articles.atom))\n* [Doximity](https://technology.doximity.com/sitemaps)\n* [Engine Yard](https://www.engineyard.com/blog/tag/ruby-on-rails/) ([rss](https://www.engineyard.com/blog/tag/ruby-on-rails/feed/))\n* [Evil Martians](https://evilmartians.com/chronicles) ([rss](https://evilmartians.com/chronicles.atom))\n* [Fast Ruby](https://www.fastruby.io/blog) ([rss](https://fastruby.io/blog/rss.xml))\n* [Faster Than Light](https://fasterthanlight.me/blog)\n* [Featurist](https://archive.featurist.co.uk/blog/)\n* [FireHydrant](https://firehydrant.com/blog/) ([rss](https://firehydrant.com/rss.xml))\n* [Flagrant](https://www.beflagrant.com/blog/) ([rss](https://www.beflagrant.com/feed.xml))\n* [Fly.io](https://fly.io/ruby-dispatch/) ([rss](https://fly.io/ruby-dispatch/feed.xml))\n* [FreeAgent](https://engineering.freeagent.com/tag/ruby/) ([rss](https://engineering.freeagent.com/feed/))\n* [Getaround](https://getaround.tech/) ([rss](https://getaround.tech/feed.xml))\n* [Good Enough](https://goodenough.us/blog/) ([rss](https://goodenough.us/feed.xml))\n* [Grab Tech](https://engineering.grab.com/tags#ruby) ([rss](https://engineering.grab.com/feed.xml))\n* [Gurzu](https://gurzu.com/blog/)\n* [Gusto](https://engineering.gusto.com/tagged/ruby-on-rails) ([rss](https://engineering.gusto.com/feed))\n* [Hashrocket](https://hashrocket.com/blog/tags/ruby) ([rss](https://hashrocket.com/blog.rss))\n* [Heroku](https://blog.heroku.com/) ([rss](https://blog.heroku.com/feed/))\n* [Hint (Web archive)](https://web.archive.org/web/20230129054448/https://hint.io/blog)\n* [Hix on Rails (Web archive)](http://web.archive.org/web/20221126215144/https://hixonrails.com/ruby-on-rails-tutorials/)\n* [Honeybadger](https://www.honeybadger.io/blog/) ([rss](https://www.honeybadger.io/blog/feed.xml))\n* [Hybrd](https://hybrd.co/posts) ([rss](https://hybrd.co/posts.atom))\n* [Icelab](https://www.icelab.com.au/notes)\n* [Ideamotive](https://www.ideamotive.co/blog) ([rss](https://www.ideamotive.co/blog/rss.xml))\n* [Infinum](https://infinum.com/blog/category/engineering/) ([rss](https://infinum.com/blog/category/engineering/feed/))\n* [iRonin.IT](https://www.ironin.it/blog.html)\n* [JetRockets](https://jetrockets.com/blog) ([rss](https://jetrockets.com/blog.rss))\n* [JetRuby](https://jetruby.com/blog/) ([rss](https://jetruby.com/feed/))\n* [JetThoughts](https://jetthoughts.com/blog/)\n* [Judoscale](https://judoscale.com/blog) ([rss](https://judoscale.com/rss.xml))\n* [Kiprosh](https://blog.kiprosh.com/tag/ruby/) ([rss](https://blog.kiprosh.com/rss/))\n* [Knapsack Pro](https://docs.knapsackpro.com/blog/) ([rss](https://docs.knapsackpro.com/feed.xml))\n* [Kolosek](https://kolosek.com/tag/ruby-on-rails/) ([rss](https://kolosek.com/blog/rss/))\n* [Learnetto](https://learnetto.com/blog) ([rss](https://learnetto.com/blog/rss))\n* [Los Angeles AI Apps](https://losangelesaiapps.com/blog/)\n* [Lunar Logic](https://lunarlogic.com/blog)\n* [ManageIQ](https://www.manageiq.org/blog/tags/ruby/) ([rss](http://manageiq.org/feed.xml))\n* [Microverse](https://www.microverse.org/blog-categories/ruby-on-rails)\n* [Mintbit](https://www.mintbit.com/blog/) ([rss](https://www.mintbit.com/feed.xml))\n* [Mkdev](https://mkdev.me/posts) ([rss](https://mkdev.me/posts.atom))\n* [mmtm](https://mmtm.io/articles/page/1/)\n* [Monterail](https://www.monterail.com/blog/topic/ruby-rails)\n* [Nebulab](https://nebulab.com/blog/tags/ruby-on-rails)\n* [Netguru](https://www.netguru.com/blog/topic/ruby) ([rss](https://www.netguru.com/blog/rss.xml))\n* [Netskin](https://www.netskin.com/posts)\n* [Nopio](https://www.nopio.com/blog/category/ruby-on-rails/)\n* [Olio](https://tech.olioex.com/) ([rss](https://tech.olioex.com/feed.xml))\n* [Ombu Labs](https://www.ombulabs.com/blog) ([rss](https://www.ombulabs.com/blog/rss.xml))\n* [Planet Argon](https://blog.planetargon.com/blog) ([rss](https://blog.planetargon.com/blog/entries.rss))\n* [PlanetScale](https://planetscale.com/blog) ([rss](https://planetscale.com/blog/feed.atom))\n* [Plataformatec](https://blog.plataformatec.com.br/tag/rails/) ([rss](https://blog.plataformatec.com.br/feed/))\n* [Prefab](https://prefab.cloud/blog/) ([rss](https://prefab.cloud/blog/rss.xml))\n* [Primevise](https://primevise.com/blog)\n* [Prograils](https://prograils.com/by_tag/ruby)\n* [Qameta](https://qameta.com/posts/) ([rss](https://qameta.com/index.xml))\n* [RailsCarma](https://www.railscarma.com/blog/) ([rss](https://www.railscarma.com/feed/))\n* [RailsForge](https://blog.railsforgedev.com/)\n* [RailsReviews](https://www.railsreviews.com/articles)\n* [Railsware](https://railsware.com/blog/) ([rss](https://railsware.com/blog/feed/))\n* [Rebased](https://blog.rebased.pl/) ([rss](https://blog.rebased.pl/feed.xml))\n* [Red Hat](https://developers.redhat.com/blog)\n* [Reintech](https://reintech.io/blog?technology=ruby)\n* [Reinteractive](https://reinteractive.com/articles/index?category=rails)\n* [RNDSOFT](https://blog.rnds.pro/) ([rss](https://blog.rnds.pro/data/rss))\n* [Rootstrap](https://www.rootstrap.com/blog)\n* [Ruby & Elixir MobiDev Team Blog](https://ruby.mobidev.biz/posts/) ([rss](https://ruby.mobidev.biz/posts/index.xml))\n* [Ruby Elders](https://rubyelders.com/writings.html) ([rss](https://rubyelders.com/writings.atom))\n* [RubyGarage](https://rubygarage.org/blog) ([rss](https://rubygarage.org/blog.rss))\n* [Rubyroid Labs](https://rubyroidlabs.com/blog/category/ror-web-dev/) ([rss](https://rubyroidlabs.com/blog/feed/))\n* [Saeloun](https://blog.saeloun.com/) ([rss](https://blog.saeloun.com/feed.xml))\n* [Scout](https://scoutapm.com/blog)\n* [Scriptday](https://scriptday.com/blog/)\n* [Selleo](https://selleo.com/blog)\n* [Semaphore](https://semaphoreci.com/blog)\n* [SerpApi](https://serpapi.com/blog/tag/ruby/) ([rss](https://serpapi.com/blog/rss/))\n* [ShakaCode](https://www.shakacode.com/blog/ruby/)\n* [Shopify](https://shopify.engineering)\n* [Simple Thread](https://www.simplethread.com/tag/rails/) ([rss](https://www.simplethread.com/feed/))\n* [SINAPTIA](https://sinaptia.dev/blog/)\n* [Skylight](https://blog.skylight.io/) ([rss](https://blog.skylight.io/rss/))\n* [Sloboda Studio](https://sloboda-studio.com/) ([rss](https://sloboda-studio.com/feed/rdf/))\n* [Snyk](https://snyk.io/blog/) ([rss](https://snyk.io/blog/feed/))\n* [Splitwise](https://blog.splitwise.com/) ([rss](https://blog.splitwise.com/feed/))\n* [Spritle](https://www.spritle.com/blog/category/ruby/) ([rss](https://www.spritle.com/blog/feed/))\n* [Sqreen (Web archive)](https://web.archive.org/web/20230526152638/https://blog.sqreen.com/category/ruby-on-rails/)\n* [Square](https://developer.squareup.com/blog/archive/tags/ruby/) ([rss](https://developer.squareup.com/blog/rss.xml))\n* [Storm](https://stormconsultancy.co.uk/blog/)\n* [Super Good Software](https://supergood.software/blog/) ([rss](https://supergood.software/rss.xml))\n* [Svitla Systems](https://svitla.com/blog/)\n* [Syndicode](https://syndicode.com/blog/)\n* [Telos Labs](https://www.teloslabs.co/blog)\n* [Terminalwire](https://terminalwire.com/articles)\n* [Test Double](https://testdouble.com/insights)\n* [The Codest](https://thecodest.co/blog/)\n* [The Dev Post (Truemark)](https://www.thedevpost.com/) ([rss](https://www.thedevpost.com/feed/))\n* [thoughtbot](https://thoughtbot.com/blog)\n* [Tight](https://tight.no/)\n* [Toptal](https://www.toptal.com/developers/blog/back-end)\n* [Tosbourn](https://tosbourn.com/ruby/) ([rss](https://tosbourn.com/feed.xml))\n* [Twilio](https://www.twilio.com/en-us/blog) ([rss](https://www.twilio.com/sitemap.xml))\n* [Ubicloud](https://www.ubicloud.com/blog/) ([rss](https://www.ubicloud.com/rss/rss.xml))\n* [Unagi](https://unagisoftware.com/articles/?_taxonomy=ruby-on-rails)\n* [Varvet (Web archive)](https://web.archive.org/web/20220314030350/https://www.varvet.com/tag/ruby/)\n* [Vector Logic](https://www.vector-logic.com/blog/posts) ([rss](https://www.vector-logic.com/blog/posts.rss))\n* [Visuality](https://www.visuality.pl/posts)\n* [VisualMode](https://www.visualmode.dev/blog)\n* [Wonolo](https://engineeringblog.wonolo.com/tag/ruby) ([rss](https://engineeringblog.wonolo.com/tag/ruby/rss.xml))\n\n\n## Podcast [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/podcast.opml)\n\n* [Code and the Coding Coders who Code it](https://podcast.drbragg.dev) ([rss](https://feeds.buzzsprout.com/1927628.rss))\n* [Code with Jason](https://www.codewithjason.com/podcast) ([rss](https://feeds.buzzsprout.com/1878319.rss))\n* [Dead Code](https://shows.acast.com/dead-code) ([rss](https://feeds.acast.com/public/shows/dead-code))\n* [Friendly Show](https://www.friendly.show) ([rss](https://feeds.buzzsprout.com/2278525.rss))\n* [IndieRails](https://www.indierails.com) ([rss](https://feeds.transistor.fm/indierails))\n* [On Rails](https://onrails.buzzsprout.com) ([rss](https://feeds.buzzsprout.com/2462975.rss))\n* [Remote Ruby](https://www.remoteruby.com/) ([rss](https://feeds.buzzsprout.com/2260490.rss))\n* [Rooftop Ruby Podcast](https://www.rooftopruby.com/) ([rss](https://feeds.buzzsprout.com/2108545.rss))\n* [Ruby Rogues](https://topenddevs.com/podcasts/ruby-rogues/) ([rss](https://www.spreaker.com/show/6102073/episodes/feed))\n* [The Bike Shed](https://bikeshed.thoughtbot.com) ([rss](https://bikeshed.thoughtbot.com/rss))\n* [The Ruby Gems Podcast](https://www.buzzsprout.com/2509083) ([rss](https://feeds.buzzsprout.com/2509083.rss))\n* [The Ruby on Rails Podcast](https://www.therubyonrailspodcast.com/) ([rss](https://www.therubyonrailspodcast.com/rss))\n\n\n## Screencast / Livestream [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/screencast_livestream.opml)\n\n* [ChaelCodes](https://www.twitch.tv/ChaelCodes)\n* [CJ Avilla](https://www.youtube.com/@cjav_dev) ([rss](https://www.youtube.com/feeds/videos.xml?channel_id=UCYUC-bdnQRJDhZRL2c_NKVw))\n* [Conner Jensen](https://www.youtube.com/@aiwithconner) ([rss](https://www.youtube.com/feeds/videos.xml?channel_id=UCUeZ3YgblYkMQt0wJP3OR-Q))\n* [Deanin](https://www.youtube.com/@Deanin) ([rss](https://www.youtube.com/feeds/videos.xml?channel_id=UCRQv-3VvPT9mArF5RfrlpKQ))\n* [Higher Theory Dev](https://www.youtube.com/@HigherTheoryDev) ([rss](https://www.youtube.com/feeds/videos.xml?channel_id=UCJeItdDBizxD7-BXnSSrE9w))\n* [Ken Greeff](https://www.youtube.com/@kengreeff) ([rss](https://www.youtube.com/feeds/videos.xml?channel_id=UCuya5UWfi4fMvhQin-JosRA))\n* [pushcx](https://push.cx/stream) ([rss](https://push.cx/feed.xml))\n* [Ruby Australia](https://www.youtube.com/@RubyAustralia) ([rss](https://www.youtube.com/feeds/videos.xml?channel_id=UCr38SHAvOKMDyX3-8lhvJHA))\n* [SupeRails](https://www.youtube.com/@SupeRails) ([rss](https://www.youtube.com/feeds/videos.xml?channel_id=UCyr6ZTmztFW3FB4qG_97FoA))\n* [TenderlovesCoolStuff](https://www.youtube.com/@TenderlovesCoolStuff) ([rss](https://www.youtube.com/feeds/videos.xml?channel_id=UCCwuRBRF-IPihV4bob3Ko2w))\n* [TypeFast](https://www.youtube.com/@typefastco)\n* [Webcrunch](https://www.youtube.com/@Webcrunch) ([rss](https://www.youtube.com/feeds/videos.xml?channel_id=UCzePijHDYnVHIXW6HYTL4dg))\n\n\n## Other Awesome Ruby (and blogs) Lists [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/other.opml)\n\n* [abdelhai/awesome-dev-blogs#ruby](https://github.com/abdelhai/awesome-dev-blogs#ruby)\n* [Awesome Newsletters Ruby](https://github.com/zudochkin/awesome-newsletters#ruby)\n* [AwesomeRubyist/awesome_resource_list](https://github.com/AwesomeRubyist/awesome_resource_list)\n* [ayarotsky/awesome-rails-with-postgres](https://github.com/ayarotsky/awesome-rails-with-postgres)\n* [Darhazer/awesome-rspec](https://github.com/Darhazer/awesome-rspec)\n* [dreikanter/ruby-bookmarks](https://github.com/dreikanter/ruby-bookmarks)\n* [endymion1818/awesome-developer-blogs](https://github.com/endymion1818/awesome-developer-blogs)\n* [fpsvogel/learn-ruby](https://github.com/fpsvogel/learn-ruby)\n* [gramantin/awesome-rails](https://github.com/gramantin/awesome-rails)\n* [inputsh/awesome-blogs](https://github.com/inputsh/awesome-blogs)\n* [jkup/awesome-personal-blogs](https://github.com/jkup/awesome-personal-blogs)\n* [learn-anything/blogs#ruby](https://github.com/learn-anything/blogs#ruby)\n* [letsila/awesome-blogs](https://github.com/letsila/awesome-blogs)\n* [markets/awesome-ruby](https://github.com/markets/awesome-ruby)\n* [okuramasafumi/awesome-ruby-articles](https://github.com/okuramasafumi/awesome-ruby-articles)\n* [pgilad/awesome-blogs](https://github.com/pgilad/awesome-blogs)\n* [Planet Argon - 2020 Ruby on Rails Community Survey Results](https://rails-hosting.com/2020/#learning)\n* [sdogruyol/awesome-ruby](https://github.com/sdogruyol/awesome-ruby)\n\n\n## Contribution Guidelines\n\n* Please search previous suggestions before making a new one, as yours may be a duplicate.\n* If the blog has many articles, choose the link with `Ruby` / `Rails` category ( or tag).\n* Feel free for send pull request!\n\n### Link a blog to Awesome Ruby blogs\n\n1. **Fork** this repository.\n2. **Edit** the appropriate data file by adding your blog's details. Be sure to place it under the most appropriate category.\n3. **Run** `bin/build_readme` to regenerate the `README.md` with your new entry.\n4. **Commit** your changes and open a pull request against the `master` branch.\n\n#### Data Structure\n\nEach blog entry should follow this YAML structure:\n\n```yaml\n- name: Blog Name\n  url: https://example.com/blog\n  rss: https://example.com/feed.xml  # Optional RSS feed URL\n  locked: true  # Optional: prevents automatic updates (see Locking Policy)\n```\n\n**Required fields:**\n- `name`: The display name of the blog\n- `url`: The URL to the blog or blog category page\n\n**Optional fields:**\n- `rss`: RSS/Atom feed URL for the blog\n- `locked`: Boolean to prevent automatic RSS updates. Set to false to individually pick which rss feed to query.\n\n#### Available Blog Categories\n\nChoose the most appropriate category for your blog:\n\n* **`data/newsletter.yml`** - Ruby newsletters and weekly digests\n* **`data/social_news_aggregation.yml`** - Social platforms and news aggregators\n* **`data/community.yml`** - Open source projects, frameworks, and community blogs\n* **`data/personal.yml`** - Individual developer blogs and personal sites\n* **`data/company.yml`** - Corporate engineering blogs and company publications\n* **`data/podcast.yml`** - Podcasts focused on Ruby and its ecosystem\n* **`data/screencast_livestream.yml`** - Screencasts and livestreams\n* **`data/other.yml`** - Lists and resources that don't fit other categories\n\nNote, Web archive and GitHub entries are permanently locked and never updated automatically\n\n## License\n[![CC0](https://licensebuttons.net/p/zero/1.0/88x31.png)](https://creativecommons.org/publicdomain/zero/1.0/)\n\n"
  },
  {
    "path": "bin/HOUSE_KEEPING.md",
    "content": "# HOUSE_KEEPING\n\n## Cleanup dead links\n\nTODO\n\n## Fetching RSS Feeds\n\nUse `bin/fetch_rss` to automatically discover and update RSS feeds:\n\n```bash\n# Update only unlocked entries (default)\nbin/fetch_rss data/personal.yml\n\n# Force update all entries in a category\nbin/fetch_rss --force all data/newsletter.yml\n\n# Update only entries without RSS feeds\nbin/fetch_rss --force norss data/company.yml data/personal.yml\n```\n\nAvailable force modes:\n- `unlocked` (default): Only update unlocked entries. Allows fine grained search on specific blog entries.\n- `all`: Update all entries regardless of lock status\n- `norss`: Update only entries that don't have RSS feeds\n\n**Note:** Web archive entries are never updated regardless of the mode or lock status."
  },
  {
    "path": "bin/build_opmls",
    "content": "#!/usr/bin/env ruby\n\n# Generate OPML files for multiple catefories\n\nrequire \"yaml\"\nrequire \"rexml/document\"\nrequire \"pathname\"\nrequire \"time\"\n\n# === HELPER METHODS ===\n\ndef category(data_path)\n  # Extract the category from the data path\n  # Example: data/community.yml => community\n  File.basename(data_path, File.extname(data_path))\nend\n\ndef write_opml_document(path)\n  formatter = REXML::Formatters::Pretty.new\n  formatter.compact = true  # avoids lots of extra whitespace\n\n  doc = REXML::Document.new\n  doc << REXML::XMLDecl.new(\"1.0\", \"UTF-8\")\n  opml = doc.add_element(\"opml\", { \"version\" => \"2.0\" })\n  head = opml.add_element(\"head\")\n  head.add_element(\"title\").text = \"Subscriptions\"\n  head.add_element(\"dateCreated\").text = \"Sat, 30 Aug 2025 11:45:00 +1200\"\n  head.add_element(\"dateModified\").text = Time.now.rfc2822\n  body = opml.add_element(\"body\")\n\n  yield body\n\n  File.open(path, \"wb\") do |f|\n    formatted_content = \"\"\n    formatter.write(doc, formatted_content)\n    f.write(formatted_content)\n  end\nend\n\ndef build_opml_category(opml_body, category:, blogs:)\n  category_outline = opml_body.add_element(\"outline\", \"text\" => \"Awesome Ruby Blogs: #{category}\")\n  blogs.each do |blog|\n    next unless blog['rss']\n    category_outline.add_element(\"outline\", \"type\" => \"rss\", \"text\" => blog[\"name\"], \"xmlUrl\" => blog[\"rss\"])\n  end\nend\n\n# === GENERATE OPMLS ====\n\nyaml = Dir.glob('data/**').each.with_object({}) do |file, data|\n  data[file] = YAML.load_file(file)\nend\n\n# CREATE A GLOBAL OPML ENTRY\nwrite_opml_document(\"opml/all.opml\") do |opml_body|\n  yaml.each do |path, blogs|\n    build_opml_category(opml_body, category: category(path), blogs: blogs)\n  end\nend\n\n# CREATE CAETGORY OPML ENTRY\nyaml.each do |path, blogs|\n  # This converts path like data/community.yml to opml/community.opml\n  opml_path = File.join(\"opml\", \"#{category(path)}.opml\")\n  write_opml_document(opml_path) do |opml_body|\n    build_opml_category(opml_body, category: category(path), blogs: blogs)\n  end\nend\n"
  },
  {
    "path": "bin/build_readme",
    "content": "#!/usr/bin/env ruby\nrequire \"yaml\"\n\ndef build_links(data)\n  data.sort_by { |blog| blog['name'].to_s.downcase }\n      .reduce(\"\") do |result, blog|\n        result += format(\"* [%<name>s](%<url>s)\",\n          name: blog['name'].to_s.gsub(\"|\", \"-\"),\n          url: blog['url'],\n        )\n        if blog['rss']\n          result += format(\" ([rss](%<rss>s))\", rss: blog['rss'])\n        end\n        result += \"\\n\"\n      end\nend\n\n# Refresh OPML files\n\n`bin/build_opmls`\n\n# Build README\n\nyaml = Dir.glob('data/**').each.with_object({}) do |file, data|\n  data[file] = YAML.load_file(file)\nend\n\nFile.open('README.md', 'wb') do |f|\n  category_lists = {\n    newsletter:              build_links(yaml['data/newsletter.yml']),\n    social_news_aggregation: build_links(yaml['data/social_news_aggregation.yml']),\n    community:               build_links(yaml['data/community.yml']),\n    personal:                build_links(yaml['data/personal.yml']),\n    company:                 build_links(yaml['data/company.yml']),\n    podcast:                 build_links(yaml['data/podcast.yml']),\n    screencast_livestream:   build_links(yaml['data/screencast_livestream.yml']),\n    other:                   build_links(yaml['data/other.yml']),\n  }\n\n  f.write format(<<~README, **category_lists)\n    # Awesome Ruby blogs [![Awesome](https://awesome.re/badge-flat2.svg)](https://awesome.re) [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/all.opml)\n\n    > A curated list of Awesome Ruby blogs and newsletters for ruby developers and newbies.\n    > Inspired by [Awesome Python blogs](https://github.com/mikeyny/awesome-python-blogs)\n\n    ![Ruby](https://raw.githubusercontent.com/github/explore/80688e429a7d4ef2fca1e82350fe8e3517d3494d/topics/ruby/ruby.png)\n\n\n    ## Table of contents\n\n    - Blog Sections\n      - [Newsletter](#newsletter-)\n      - [Social News Aggregation](#social-news-aggregation-)\n      - [Community](#community-)\n      - [Personal](#personal-)\n      - [Company](#company-)\n      - [Podcast](#podcast-)\n      - [Screencast / Livestream](#screencast--livestream-)\n      - [Other Awesome Ruby and Blogs Lists](#other-awesome-ruby-and-blogs-lists-)\n    - [Contribution Guidelines](#contribution-guidelines)\n\n    ## Newsletter [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/newsletter.opml)\n\n    %{newsletter}\n\n    ## Social news aggregation [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/social_news_aggregation.opml)\n\n    %{social_news_aggregation}\n\n    ## Community [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/community.opml)\n\n    %{community}\n\n    ## Personal [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/personal.opml)\n\n    %{personal}\n\n    ## Company [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/company.opml)\n\n    %{company}\n\n    ## Podcast [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/podcast.opml)\n\n    %{podcast}\n\n    ## Screencast / Livestream [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/screencast_livestream.opml)\n\n    %{screencast_livestream}\n\n    ## Other Awesome Ruby (and blogs) Lists [![OPML](https://img.shields.io/badge/OPML-000000?style=flat-square&color=orange)](/opml/other.opml)\n\n    %{other}\n\n    ## Contribution Guidelines\n\n    * Please search previous suggestions before making a new one, as yours may be a duplicate.\n    * If the blog has many articles, choose the link with `Ruby` / `Rails` category ( or tag).\n    * Feel free for send pull request!\n\n    ### Link a blog to Awesome Ruby blogs\n\n    1. **Fork** this repository.\n    2. **Edit** the appropriate data file by adding your blog's details. Be sure to place it under the most appropriate category.\n    3. **Run** `bin/build_readme` to regenerate the `README.md` with your new entry.\n    4. **Commit** your changes and open a pull request against the `master` branch.\n\n    #### Data Structure\n\n    Each blog entry should follow this YAML structure:\n\n    ```yaml\n    - name: Blog Name\n      url: https://example.com/blog\n      rss: https://example.com/feed.xml  # Optional RSS feed URL\n      locked: true  # Optional: prevents automatic updates (see Locking Policy)\n    ```\n\n    **Required fields:**\n    - `name`: The display name of the blog\n    - `url`: The URL to the blog or blog category page\n\n    **Optional fields:**\n    - `rss`: RSS/Atom feed URL for the blog\n    - `locked`: Boolean to prevent automatic RSS updates. Set to false to individually pick which rss feed to query.\n\n    #### Available Blog Categories\n\n    Choose the most appropriate category for your blog:\n\n    * **`data/newsletter.yml`** - Ruby newsletters and weekly digests\n    * **`data/social_news_aggregation.yml`** - Social platforms and news aggregators\n    * **`data/community.yml`** - Open source projects, frameworks, and community blogs\n    * **`data/personal.yml`** - Individual developer blogs and personal sites\n    * **`data/company.yml`** - Corporate engineering blogs and company publications\n    * **`data/podcast.yml`** - Podcasts focused on Ruby and its ecosystem\n    * **`data/screencast_livestream.yml`** - Screencasts and livestreams\n    * **`data/other.yml`** - Lists and resources that don't fit other categories\n\n    Note, Web archive and GitHub entries are permanently locked and never updated automatically\n\n    ## License\n    [![CC0](https://licensebuttons.net/p/zero/1.0/88x31.png)](https://creativecommons.org/publicdomain/zero/1.0/)\n\n  README\nend\n"
  },
  {
    "path": "bin/fetch_rss",
    "content": "#!/usr/bin/env ruby\n\nrequire \"bundler/inline\"\n\ngemfile(true) do\n  source \"https://rubygems.org\"\n  gem \"debug\"\n  gem \"async\"\n  gem \"feedbag\"\nend\n\nrequire \"yaml\"\nrequire \"debug\"\nrequire \"async\"\nrequire \"async/barrier\"\nrequire \"async/semaphore\"\nrequire \"feedbag\"\nrequire 'optparse'\n\n# === PARSE CLI OPTIONS ===\n\noptions = { force: :unlocked, categories: [] } # Default CLI options\n\nparser = OptionParser.new do |opts|\n  opts.banner = \"Usage: bin/fetch_rss [options] data_file1 data_file2 ...\"\n\n  opts.on(\"--force MODE\", [:all, :norss, :unlocked], \"Force mode (all, norss, unlocked) Default: unlocked\") do |mode|\n    options[:force] = mode\n  end\n\n  opts.on(\"-h\", \"--help\", \"Show this help\") do\n    puts opts\n    exit\n  end\nend\n\nparser.order!(ARGV)         # Parse options first\noptions[:categories] = ARGV # Remaining arguments are categories\n\nunless options[:categories].any?\n  puts <<~OUTPUT\n\n    Pass at least one data file to fetch.\n    Check bin/fetch_rss --help for usage\n  OUTPUT\n  exit 1\nend\n\n# === HELPER METHODS ===\n\ndef feedsearch(url)\n  print \".\"\n  site_host = URI(url).host\n  # Reject feed urls that are captured but from another site than the url\n  # provided and returns the first rss url found\n  Feedbag.find(url, { open_timeout: 5, read_timeout: 5 }).select do |feed_url|\n    url.include? URI(feed_url).host\n  end.first\nend\n\ndef update_blog?(blog, mode: :unlocked)\n  # Never update web archive blogs and github links\n  return false if blog['url'].include?('web.archive.org')\n  return false if blog['url'].include?('github.com')\n\n  case mode\n  when :unlocked then !blog.fetch('locked', true) # blog entries are all locked by default unless specified\n  when :all      then true\n  when :norss    then blog['rss'].nil?\n  end\nend\n\n# === SEARCH FOR RSS FEEDS ===\n\ndata = options[:categories].each.with_object({}) do |category, data|\n  data[category] = YAML.load_file(category)\nend\n\nAsync do |task|\n  barrier = Async::Barrier.new\n  semaphore = Async::Semaphore.new(10, parent: barrier) # limit the number of concurrent searches\n\n  result = data.each.with_object({}) do |(category, blogs), new_data|\n    puts \"\\nQuerying category: #{category}\"\n    new_data[category] = blogs.map do |blog|\n      semaphore.async do\n        rss_link = blog['rss']\n        if update_blog?(blog, mode: options[:force])\n          rss_link = feedsearch(blog['url'])\n        end\n\n        locked = blog['locked']\n        if blog.key?('locked') && rss_link\n          locked = nil\n        end\n\n        blog.merge('rss' => rss_link, 'locked' => locked).compact\n      end\n    end\n  end\n\n  barrier.wait\n\n  result.transform_values! do |values|\n    values.map(&:result)\n  end\n\n  result.each do |category, blogs|\n    File.open(category, \"wb\") { |f| f.write blogs.to_yaml }\n  end\nensure\n  barrier&.stop\nend\n"
  },
  {
    "path": "bin/sort_data",
    "content": "#!/usr/bin/env ruby\nrequire \"yaml\"\n\nyaml = Dir.glob('data/**').each.with_object({}) do |file, data|\n  YAML.load_file(file).sort_by { |blog| blog['name'].to_s.downcase }.then do |data|\n    File.open(file, \"wb\") { |f| f.write data.to_yaml }\n  end\nend\n"
  },
  {
    "path": "data/community.yml",
    "content": "---\n- name: AnyCable\n  url: https://anycable.io/blog/\n- name: Beautiful Ruby\n  url: https://beautifulruby.com/code\n- name: BestWeb Ventures\n  url: https://blog.bestwebventures.in/archive\n- name: Blog Yet\n  url: https://blogyet.com/categories/coding/blog_posts\n- name: Bloggie 'rails'\n  url: https://bloggie.io/community/rails\n- name: Bloggie 'ruby'\n  url: https://bloggie.io/community/ruby\n- name: Blogging On Rails\n  url: https://onrails.blog/\n  rss: https://onrails.blog/feed/\n- name: Boring Rails\n  url: https://boringrails.com/articles\n  rss: https://boringrails.com/feed.xml\n- name: Bridgetown\n  url: https://www.bridgetownrb.com/blog/\n  rss: https://www.bridgetownrb.com/feed.xml\n- name: Bundler\n  url: https://bundler.io/blog/\n  rss: https://bundler.io/blog/feed.xml\n- name: Business Class Blog (Josef Strzibny)\n  url: https://businessclasskit.com/blog\n  rss: https://businessclasskit.com/blog/feed.xml\n- name: Code With Rails\n  url: https://codewithrails.com/\n  rss: https://codewithrails.com/rss.xml\n- name: Daily Dev Tools\n  url: https://dailydevtools.com/blog\n- name: Digital Ocean (Old scotch.io)\n  url: https://www.digitalocean.com/community/tutorials?q=%5BRuby%5D\n  rss: https://www.digitalocean.com/community/tutorials.atom\n- name: Drifting Ruby\n  url: https://www.driftingruby.com/episodes\n  rss: https://www.driftingruby.com//episodes/feed.atom\n- name: Drifting Ruby Blog\n  url: https://blog.driftingruby.com/\n  rss: https://blog.driftingruby.com/rss/\n- name: dry-rb\n  url: https://dry-rb.org/news/\n  rss: https://dry-rb.org/feed.xml\n- name: Fullstack Ruby (Old ruby3.dev)\n  url: https://www.fullstackruby.dev/articles\n  rss: https://www.fullstackruby.dev/feed.xml\n- name: GoRails\n  url: https://gorails.com/episodes\n  rss: https://gorails.com/blog.rss\n- name: Hanami\n  url: https://hanamirb.org/blog/\n  rss: https://hanamirb.org/atom.xml\n- name: HanamiMastery\n  url: https://hanamimastery.com/\n  rss: https://hanamimastery.com/feed.xml\n- name: Hexdevs\n  url: https://www.hexdevs.com/posts/\n  rss: https://www.hexdevs.com/index.xml\n- name: Maki Sushi Tech\n  url: https://makisushi.io/\n- name: Monospace Mentor (Jochen Lillich)\n  url: https://monospacementor.com/blog/\n  rss: https://monospacementor.com/feed/\n- name: Opal\n  url: https://opalrb.com/blog/\n- name: Past Rubies (Web archive)\n  url: https://web.archive.org/web/20230610191100/https://pastrubies.live/\n- name: Practicing Ruby\n  url: https://practicingruby.com/\n  rss: https://practicingruby.com/feed.xml\n- name: Programming Zen (Antonio Cangiano)\n  url: https://programmingzen.com/category/programming/\n  rss: https://programmingzen.com/category/programming/feed/\n- name: Rails\n  url: https://rubyonrails.org/blog/\n  rss: https://rubyonrails.org/feed.xml\n- name: Rails at Scale\n  url: https://railsatscale.com/\n  rss: https://railsatscale.com/feed.xml\n- name: Rails Designer\n  url: https://railsdesigner.com/articles/\n  rss: https://railsdesigner.com/feed.xml\n- name: Rails Explained\n  url: https://www.railsexplained.com/\n  rss: https://www.railsexplained.com/feed.xml\n- name: Rails Insights\n  url: https://railsinsights.com/\n- name: Rails Runner\n  url: https://therailsrunner.com/\n- name: RailsApps\n  url: https://blog.railsapps.org/\n  rss: https://blog.railsapps.org/rss\n- name: RailsGrowth\n  url: https://railsgrowth.com/\n  rss: https://railsgrowth.com/rss/\n- name: RailsNotes Blog\n  url: https://railsnotes.xyz\n  rss: https://railsnotes.xyz/feed.xml\n- name: ROM\n  url: https://rom-rb.org/blog/\n- name: Ronin\n  url: https://ronin-rb.dev/blog/\n  rss: https://ronin-rb.dev/blog/atom.xml\n- name: ROR Tips\n  url: https://ror.tips\n  rss: https://ror.tips/feed.xml\n- name: RorVsWild\n  url: https://www.rorvswild.com/blog\n  rss: https://www.rorvswild.com/blog.rss\n- name: RSpec\n  url: http://rspec.info/blog/\n  rss: http://rspec.info/blog/feed.xml\n- name: Ruby Job Board (Web archive)\n  url: https://web.archive.org/web/20230204025503/https://www.rubyjobboard.com/blog\n- name: Ruby Tutorial (Web archive)\n  url: https://web.archive.org/web/20231230055220/https://rubytutorial.io/\n- name: RubyCademy (Medium)\n  url: https://medium.com/rubycademy\n  rss: https://medium.com/feed/rubycademy\n- name: RubyEnv\n  url: https://rubyenv.app/blog\n- name: RubyGems\n  url: https://blog.rubygems.org/\n  rss: https://blog.rubygems.org/atom.xml\n- name: RubyInside\n  url: https://medium.com/rubyinside\n  rss: https://medium.com/feed/rubyinside\n- name: Rubyist Magazine (Rubima)\n  url: https://magazine.rubyist.net/\n  rss: https://magazine.rubyist.net/feed.xml\n- name: RubyOnRails.BA\n  url: https://rubyonrails.ba/\n- name: RubyPigeon\n  url: https://www.rubypigeon.com/\n  rss: https://www.rubypigeon.com/feed.xml\n- name: RubyTapas\n  url: https://www.rubytapas.com/\n  rss: https://www.rubytapas.com/feed/\n- name: RubyWorks\n  url: http://rubyworks.github.io/index.html\n- name: SciRuby\n  url: http://sciruby.com/blog/\n  rss: http://sciruby.com/atom.xml\n- name: Sequel\n  url: http://sequel.jeremyevans.net/blog.html\n- name: Short Ruby Email Courses\n  url: https://learn.shortruby.com/blog\n  rss: https://learn.shortruby.com/blog/feed\n- name: Sinatra\n  url: https://sinatrarb.com/blog.html\n  rss: https://sinatrarb.com/sinatra.github.com/feed.xml\n- name: Sorbet\n  url: https://sorbet.org/blog/\n  rss: https://sorbet.org/blog/atom.xml\n- name: Taylor (Sean Earle)\n  url: https://taylormadetech.dev/blog/\n  rss: https://taylormadetech.dev/feed.xml\n- name: Test Driving Rails Blog (Josef Strzibny)\n  url: https://testdrivingrails.com/blog\n  rss: https://testdrivingrails.com/blog/feed.xml\n- name: The JRuby Blog\n  url: https://blog.jruby.org/\n  rss: https://blog.jruby.org/feed\n- name: The Lazy Log\n  url: https://web.archive.org/web/20230924230511/https://thelazylog.com/\n- name: This Week in Rails\n  url: https://world.hey.com/this.week.in.rails\n  rss: https://world.hey.com/this.week.in.rails/feed.atom\n- name: Thnk And Grow\n  url: https://blog.thnkandgrow.com/\n  rss: https://blog.thnkandgrow.com/feed/\n- name: Webcrunch\n  url: https://webcrunch.com/posts\n  rss: https://webcrunch.com/feed.rss\n- name: Why Ruby?\n  url: https://whyruby.info/\n- name: With a Twist\n  url: https://withatwist.dev/\n  rss: https://withatwist.dev/feed.xml\n"
  },
  {
    "path": "data/company.yml",
    "content": "---\n- name: 2n\n  url: https://www.2n.pl/blog?tag=ruby\n- name: 37signals\n  url: https://dev.37signals.com/\n  rss: https://dev.37signals.com/feed/posts.xml\n- name: 8th Light\n  url: https://8thlight.com/insights/\n  rss: https://8thlight.com/insights/feed/rss.xml\n- name: AbstractBrain\n  url: https://answers.abstractbrain.com/\n- name: Acuments\n  url: https://acuments.com/blog.html\n- name: Aha!\n  url: https://www.aha.io/engineering\n  rss: https://www.aha.io/blog/feed.xml\n- name: Airbrake\n  url: https://blog.airbrake.io/\n  rss: https://blog.airbrake.io/rss.xml\n- name: Alchemists\n  url: https://www.alchemists.io/articles/\n  rss: https://www.alchemists.io/feeds/news.xml\n- name: Appfolio Engineering\n  url: https://engineering.appfolio.com/\n  rss: https://engineering.appfolio.com/appfolio-engineering?format=rss\n- name: AppSignal\n  url: https://blog.appsignal.com/category/ruby-magic.html\n  rss: https://blog.appsignal.com/category/ruby-magic-feed.xml\n- name: Arkency\n  url: https://blog.arkency.com/\n  rss: https://blog.arkency.com/feed.xml\n- name: Avo\n  url: https://avohq.io/blog\n  rss: https://avohq.io/blog/rss\n- name: Bacancy\n  url: https://www.bacancytechnology.com/blog/ruby-on-rails/\n  rss: https://www.bacancytechnology.com/blog/wp-json/wp/v2/categories/35\n- name: Bemi\n  url: https://blog.bemi.io/\n  rss: https://blog.bemi.io/rss/\n- name: BetaCraft\n  url: https://betacraft.com/category/ruby/\n  rss: https://betacraft.com/feed/\n- name: BigBinary\n  url: https://www.bigbinary.com/blog\n  rss: https://www.bigbinary.com/blog/feed.xml\n- name: BootrAils (Web archive)\n  url: https://web.archive.org/web/20231206233411/https://www.bootrails.com/blog/\n- name: BoTree Technologies\n  url: https://www.botreetechnologies.com/blog/category/technology/ruby-on-rails/\n  rss: https://www.botreetechnologies.com/blog/feed/\n- name: Brainspec\n  url: http://brainspec.com/blog/\n  rss: http://brainspec.com/blog/atom.xml\n- name: Carbonfive\n  url: https://web.archive.org/web/20240907200053/https://blog.carbonfive.com/category/ruby/\n- name: Carmatec\n  url: https://www.carmatec.com/blog/\n  rss: https://www.carmatec.com/feed/\n- name: Census\n  url: https://census.dev/\n  rss: https://census.dev/blog?format=rss\n- name: Chaps (Web archive)\n  url: http://web.archive.org/web/20211127030701/https://blog.chaps.io/\n- name: Cloud 66\n  url: https://blog.cloud66.com/\n- name: CloudBees (Old CodeShip, Rollout)\n  url: https://www.cloudbees.com/blog\n- name: Codemancers\n  url: https://www.codemancers.com/blog/?tag=rails\n  rss: https://www.codemancers.com/rss.xml\n- name: Codeminer 42\n  url: https://blog.codeminer42.com/\n  rss: https://blog.codeminer42.com/feed/\n- name: Codica\n  url: https://www.codica.com/blog/\n  rss: https://www.codica.com/rss.xml\n- name: Collective Idea\n  url: https://collectiveidea.com/blog/labels/rails/\n  rss: https://collectiveidea.com/blog/feed/\n- name: Cookpad\n  url: https://sourcediving.com/tagged/ruby\n  rss: https://sourcediving.com/feed\n- name: Cycode (Old Bearer)\n  url: https://cycode.com/blog/\n  rss: https://cycode.com/feed/\n- name: Datarockets\n  url: https://datarockets.com/blog/\n- name: Decode Fix\n  url: https://decodefix.com/tag/ruby/\n  rss: https://decodefix.com/feed/\n- name: DeepSource\n  url: https://deepsource.com/blog\n- name: DotRuby\n  url: https://www.dotruby.com/articles\n  rss: https://www.dotruby.com/articles.atom\n- name: Doximity\n  url: https://technology.doximity.com/sitemaps\n- name: Engine Yard\n  url: https://www.engineyard.com/blog/tag/ruby-on-rails/\n  rss: https://www.engineyard.com/blog/tag/ruby-on-rails/feed/\n- name: Evil Martians\n  url: https://evilmartians.com/chronicles\n  rss: https://evilmartians.com/chronicles.atom\n- name: Fast Ruby\n  url: https://www.fastruby.io/blog\n  rss: https://fastruby.io/blog/rss.xml\n- name: Faster Than Light\n  url: https://fasterthanlight.me/blog\n- name: Featurist\n  url: https://archive.featurist.co.uk/blog/\n- name: FireHydrant\n  url: https://firehydrant.com/blog/\n  rss: https://firehydrant.com/rss.xml\n- name: Flagrant\n  url: https://www.beflagrant.com/blog/\n  rss: https://www.beflagrant.com/feed.xml\n- name: Fly.io\n  url: https://fly.io/ruby-dispatch/\n  rss: https://fly.io/ruby-dispatch/feed.xml\n- name: FreeAgent\n  url: https://engineering.freeagent.com/tag/ruby/\n  rss: https://engineering.freeagent.com/feed/\n- name: Getaround\n  url: https://getaround.tech/\n  rss: https://getaround.tech/feed.xml\n- name: Good Enough\n  url: https://goodenough.us/blog/\n  rss: https://goodenough.us/feed.xml\n- name: Grab Tech\n  url: https://engineering.grab.com/tags#ruby\n  rss: https://engineering.grab.com/feed.xml\n- name: Gurzu\n  url: https://gurzu.com/blog/\n- name: Gusto\n  url: https://engineering.gusto.com/tagged/ruby-on-rails\n  rss: https://engineering.gusto.com/feed\n- name: Hashrocket\n  url: https://hashrocket.com/blog/tags/ruby\n  rss: https://hashrocket.com/blog.rss\n- name: Heroku\n  url: https://blog.heroku.com/\n  rss: https://blog.heroku.com/feed/\n- name: Hint (Web archive)\n  url: https://web.archive.org/web/20230129054448/https://hint.io/blog\n- name: Hix on Rails (Web archive)\n  url: http://web.archive.org/web/20221126215144/https://hixonrails.com/ruby-on-rails-tutorials/\n- name: Honeybadger\n  url: https://www.honeybadger.io/blog/\n  rss: https://www.honeybadger.io/blog/feed.xml\n- name: Hybrd\n  url: https://hybrd.co/posts\n  rss: https://hybrd.co/posts.atom\n- name: Icelab\n  url: https://www.icelab.com.au/notes\n- name: Ideamotive\n  url: https://www.ideamotive.co/blog\n  rss: https://www.ideamotive.co/blog/rss.xml\n- name: Infinum\n  url: https://infinum.com/blog/category/engineering/\n  rss: https://infinum.com/blog/category/engineering/feed/\n- name: iRonin.IT\n  url: https://www.ironin.it/blog.html\n- name: JetRockets\n  url: https://jetrockets.com/blog\n  rss: https://jetrockets.com/blog.rss\n- name: JetRuby\n  url: https://jetruby.com/blog/\n  rss: https://jetruby.com/feed/\n- name: JetThoughts\n  url: https://jetthoughts.com/blog/\n- name: Judoscale\n  url: https://judoscale.com/blog\n  rss: https://judoscale.com/rss.xml\n- name: Kiprosh\n  url: https://blog.kiprosh.com/tag/ruby/\n  rss: https://blog.kiprosh.com/rss/\n- name: Knapsack Pro\n  url: https://docs.knapsackpro.com/blog/\n  rss: https://docs.knapsackpro.com/feed.xml\n- name: Kolosek\n  url: https://kolosek.com/tag/ruby-on-rails/\n  rss: https://kolosek.com/blog/rss/\n- name: Learnetto\n  url: https://learnetto.com/blog\n  rss: https://learnetto.com/blog/rss\n- name: Los Angeles AI Apps\n  url: https://losangelesaiapps.com/blog/\n- name: Lunar Logic\n  url: https://lunarlogic.com/blog\n- name: ManageIQ\n  url: https://www.manageiq.org/blog/tags/ruby/\n  rss: http://manageiq.org/feed.xml\n- name: Microverse\n  url: https://www.microverse.org/blog-categories/ruby-on-rails\n- name: Mintbit\n  url: https://www.mintbit.com/blog/\n  rss: https://www.mintbit.com/feed.xml\n- name: Mkdev\n  url: https://mkdev.me/posts\n  rss: https://mkdev.me/posts.atom\n- name: mmtm\n  url: https://mmtm.io/articles/page/1/\n- name: Monterail\n  url: https://www.monterail.com/blog/topic/ruby-rails\n- name: Nebulab\n  url: https://nebulab.com/blog/tags/ruby-on-rails\n- name: Netguru\n  url: https://www.netguru.com/blog/topic/ruby\n  rss: https://www.netguru.com/blog/rss.xml\n- name: Netskin\n  url: https://www.netskin.com/posts\n- name: Nopio\n  url: https://www.nopio.com/blog/category/ruby-on-rails/\n- name: Olio\n  url: https://tech.olioex.com/\n  rss: https://tech.olioex.com/feed.xml\n- name: Ombu Labs\n  url: https://www.ombulabs.com/blog\n  rss: https://www.ombulabs.com/blog/rss.xml\n- name: Planet Argon\n  url: https://blog.planetargon.com/blog\n  rss: https://blog.planetargon.com/blog/entries.rss\n- name: PlanetScale\n  url: https://planetscale.com/blog\n  rss: https://planetscale.com/blog/feed.atom\n- name: Plataformatec\n  url: https://blog.plataformatec.com.br/tag/rails/\n  rss: https://blog.plataformatec.com.br/feed/\n- name: Prefab\n  url: https://prefab.cloud/blog/\n  rss: https://prefab.cloud/blog/rss.xml\n- name: Primevise\n  url: https://primevise.com/blog\n- name: Prograils\n  url: https://prograils.com/by_tag/ruby\n- name: Qameta\n  url: https://qameta.com/posts/\n  rss: https://qameta.com/index.xml\n- name: RailsCarma\n  url: https://www.railscarma.com/blog/\n  rss: https://www.railscarma.com/feed/\n- name: RailsForge\n  url: https://blog.railsforgedev.com/\n- name: RailsReviews\n  url: https://www.railsreviews.com/articles\n- name: Railsware\n  url: https://railsware.com/blog/\n  rss: https://railsware.com/blog/feed/\n- name: Rebased\n  url: https://blog.rebased.pl/\n  rss: https://blog.rebased.pl/feed.xml\n- name: Red Hat\n  url: https://developers.redhat.com/blog\n- name: Reintech\n  url: https://reintech.io/blog?technology=ruby\n- name: Reinteractive\n  url: https://reinteractive.com/articles/index?category=rails\n- name: RNDSOFT\n  url: https://blog.rnds.pro/\n  rss: https://blog.rnds.pro/data/rss\n- name: Rootstrap\n  url: https://www.rootstrap.com/blog\n- name: Ruby & Elixir MobiDev Team Blog\n  url: https://ruby.mobidev.biz/posts/\n  rss: https://ruby.mobidev.biz/posts/index.xml\n- name: Ruby Elders\n  url: https://rubyelders.com/writings.html\n  rss: https://rubyelders.com/writings.atom\n- name: RubyGarage\n  url: https://rubygarage.org/blog\n  rss: https://rubygarage.org/blog.rss\n- name: Rubyroid Labs\n  url: https://rubyroidlabs.com/blog/category/ror-web-dev/\n  rss: https://rubyroidlabs.com/blog/feed/\n- name: Saeloun\n  url: https://blog.saeloun.com/\n  rss: https://blog.saeloun.com/feed.xml\n- name: Scout\n  url: https://scoutapm.com/blog\n- name: Scriptday\n  url: https://scriptday.com/blog/\n- name: Selleo\n  url: https://selleo.com/blog\n- name: Semaphore\n  url: https://semaphoreci.com/blog\n- name: SerpApi\n  url: https://serpapi.com/blog/tag/ruby/\n  rss: https://serpapi.com/blog/rss/\n- name: ShakaCode\n  url: https://www.shakacode.com/blog/ruby/\n- name: Shopify\n  url: https://shopify.engineering\n- name: Simple Thread\n  url: https://www.simplethread.com/tag/rails/\n  rss: https://www.simplethread.com/feed/\n- name: SINAPTIA\n  url: https://sinaptia.dev/blog/\n- name: Skylight\n  url: https://blog.skylight.io/\n  rss: https://blog.skylight.io/rss/\n- name: Sloboda Studio\n  url: https://sloboda-studio.com/\n  rss: https://sloboda-studio.com/feed/rdf/\n- name: Snyk\n  url: https://snyk.io/blog/\n  rss: https://snyk.io/blog/feed/\n- name: Splitwise\n  url: https://blog.splitwise.com/\n  rss: https://blog.splitwise.com/feed/\n- name: Spritle\n  url: https://www.spritle.com/blog/category/ruby/\n  rss: https://www.spritle.com/blog/feed/\n- name: Sqreen (Web archive)\n  url: https://web.archive.org/web/20230526152638/https://blog.sqreen.com/category/ruby-on-rails/\n- name: Square\n  url: https://developer.squareup.com/blog/archive/tags/ruby/\n  rss: https://developer.squareup.com/blog/rss.xml\n- name: Storm\n  url: https://stormconsultancy.co.uk/blog/\n- name: Super Good Software\n  url: https://supergood.software/blog/\n  rss: https://supergood.software/rss.xml\n- name: Svitla Systems\n  url: https://svitla.com/blog/\n- name: Syndicode\n  url: https://syndicode.com/blog/\n- name: Telos Labs\n  url: https://www.teloslabs.co/blog\n- name: Terminalwire\n  url: https://terminalwire.com/articles\n- name: Test Double\n  url: https://testdouble.com/insights\n- name: The Codest\n  url: https://thecodest.co/blog/\n- name: The Dev Post (Truemark)\n  url: https://www.thedevpost.com/\n  rss: https://www.thedevpost.com/feed/\n- name: thoughtbot\n  url: https://thoughtbot.com/blog\n- name: Tight\n  url: https://tight.no/\n- name: Toptal\n  url: https://www.toptal.com/developers/blog/back-end\n- name: Tosbourn\n  url: https://tosbourn.com/ruby/\n  rss: https://tosbourn.com/feed.xml\n- name: Twilio\n  url: https://www.twilio.com/en-us/blog\n  rss: https://www.twilio.com/sitemap.xml\n- name: Ubicloud\n  url: https://www.ubicloud.com/blog/\n  rss: https://www.ubicloud.com/rss/rss.xml\n- name: Unagi\n  url: https://unagisoftware.com/articles/?_taxonomy=ruby-on-rails\n- name: Varvet (Web archive)\n  url: https://web.archive.org/web/20220314030350/https://www.varvet.com/tag/ruby/\n- name: Vector Logic\n  url: https://www.vector-logic.com/blog/posts\n  rss: https://www.vector-logic.com/blog/posts.rss\n- name: Visuality\n  url: https://www.visuality.pl/posts\n- name: VisualMode\n  url: https://www.visualmode.dev/blog\n- name: Wonolo\n  url: https://engineeringblog.wonolo.com/tag/ruby\n  rss: https://engineeringblog.wonolo.com/tag/ruby/rss.xml\n"
  },
  {
    "path": "data/newsletter.yml",
    "content": "---\n- name: Awesome Ruby Newsletter\n  url: https://ruby.libhunt.com/newsletter\n  rss: https://ruby.libhunt.com/newsletter/feed\n- name: Decoded Rails Newsletter\n  url: https://decoded-rails.beehiiv.com\n- name: FastRuby newsletter\n  url: https://www.fastruby.io/newsletter\n- name: Full Stack Ruby on Rails Weekly Bookmarks\n  url: https://dcyoungdev.substack.com/\n  rss: https://dcyoungdev.substack.com/feed\n- name: Hotwire Native Weekly\n  url: https://newsletter.masilotti.com/\n  rss: https://newsletter.masilotti.com/feed\n- name: Hotwire Weekly\n  url: https://www.hotwireweekly.com/\n  rss: https://www.hotwireweekly.com/rss.xml\n- name: Joe Masilotti's newsletter\n  url: https://masilotti.com/newsletter/\n  rss: https://masilotti.com/feed.xml\n- name: One Ruby Thing\n  url: https://andycroll.com/ruby\n  rss: https://andycroll.com/index.xml\n- name: Ruby Around the World Newsletter\n  url: https://rubyaroundtheworld.com/\n- name: Ruby Biscuit\n  url: https://www.rubybiscuit.fr/\n  rss: https://www.rubybiscuit.fr/feed\n- name: Ruby Daily\n  url: https://rubydaily.org/\n  rss: https://rubydaily.org/feeds_subdomain/RubyDaily/\n- name: Ruby on Rails - Monthly\n  url: https://sajjadumar.substack.com/\n  rss: https://sajjadumar.substack.com/feed\n- name: Ruby Weekly\n  url: https://rubyweekly.com/\n  rss: https://rubyweekly.com/rss/\n- name: Ruby weekly newsletter (discu.eu)\n  url: https://discu.eu/weekly/ruby/\n- name: RubyFlow\n  url: https://rubyflow.com/\n  rss: https://rubyflow.com/rss\n- name: Rubyland\n  url: https://rubyland.news/\n  rss: https://rubyland.news/feed.rss\n- name: Short Ruby Newsletter\n  url: https://newsletter.shortruby.com/\n  rss: https://feed.newsletter.shortruby.com\n- name: Static Ruby Monthly\n  url: https://static-ruby.eremin.eu/\n- name: Sustainable Development and More\n  url: https://buttondown.com/davetron5000\n  rss: https://buttondown.com/davetron5000/rss\n- name: The Code Gardener\n  url: https://the.codegardener.com/\n  rss: https://the.codegardener.com/rss/\n- name: The RailsNotes Newsletter\n  url: https://railsnotes.xyz/newsletter\n  rss: https://railsnotes.xyz/feed.xml\n- name: This week in Rails\n  url: https://rails-weekly.ongoodbits.com/\n  rss: https://rails-weekly.ongoodbits.com/feed\n- name: Token Ruby\n  url: https://www.tokenruby.com/\n  rss: https://tokenruby.com/rss\n- name: Trailblazer newsletter\n  url: https://trailblazer.to/2.0/newsletter.html\n- name: Women On Rails Newsletter\n  url: https://womenonrailsinternational.substack.com/\n  rss: https://womenonrailsinternational.substack.com/feed\n"
  },
  {
    "path": "data/other.yml",
    "content": "---\n- name: abdelhai/awesome-dev-blogs#ruby\n  url: https://github.com/abdelhai/awesome-dev-blogs#ruby\n- name: Awesome Newsletters Ruby\n  url: https://github.com/zudochkin/awesome-newsletters#ruby\n- name: AwesomeRubyist/awesome_resource_list\n  url: https://github.com/AwesomeRubyist/awesome_resource_list\n- name: ayarotsky/awesome-rails-with-postgres\n  url: https://github.com/ayarotsky/awesome-rails-with-postgres\n- name: Darhazer/awesome-rspec\n  url: https://github.com/Darhazer/awesome-rspec\n- name: dreikanter/ruby-bookmarks\n  url: https://github.com/dreikanter/ruby-bookmarks\n- name: endymion1818/awesome-developer-blogs\n  url: https://github.com/endymion1818/awesome-developer-blogs\n- name: fpsvogel/learn-ruby\n  url: https://github.com/fpsvogel/learn-ruby\n- name: gramantin/awesome-rails\n  url: https://github.com/gramantin/awesome-rails\n- name: inputsh/awesome-blogs\n  url: https://github.com/inputsh/awesome-blogs\n- name: jkup/awesome-personal-blogs\n  url: https://github.com/jkup/awesome-personal-blogs\n- name: learn-anything/blogs#ruby\n  url: https://github.com/learn-anything/blogs#ruby\n- name: letsila/awesome-blogs\n  url: https://github.com/letsila/awesome-blogs\n- name: markets/awesome-ruby\n  url: https://github.com/markets/awesome-ruby\n- name: okuramasafumi/awesome-ruby-articles\n  url: https://github.com/okuramasafumi/awesome-ruby-articles\n- name: pgilad/awesome-blogs\n  url: https://github.com/pgilad/awesome-blogs\n- name: Planet Argon - 2020 Ruby on Rails Community Survey Results\n  url: https://rails-hosting.com/2020/#learning\n- name: sdogruyol/awesome-ruby\n  url: https://github.com/sdogruyol/awesome-ruby\n"
  },
  {
    "path": "data/personal.yml",
    "content": "---\n- name: Aaron Patterson\n  url: https://tenderlovemaking.com/\n  rss: https://tenderlovemaking.com/atom.xml\n- name: Aaron Sumner (Left of the Dev (formerly Everyday Rails))\n  url: https://leftofthe.dev/\n  rss: https://leftofthe.dev/atom.xml\n- name: Abhay Nikam\n  url: https://www.abhaynikam.me/\n  rss: https://www.abhaynikam.me/rss.xml\n- name: Abhilash M A\n  url: https://abhionrails.com/\n- name: Aboobacker MK\n  url: https://aboobacker.in/posts/\n  rss: https://aboobacker.in/feed.xml\n- name: Adam Tomeček\n  url: https://blog.tmck.cz/\n  rss: https://blog.tmck.cz/feed.xml\n- name: Adrien Siami\n  url: https://blog.siami.fr/\n  rss: https://blog.siami.fr/feed.xml\n- name: Agnieszka Małaszkiewicz\n  url: https://womanonrails.com/tags/#Ruby\n  rss: https://womanonrails.com/feed.xml\n- name: Ahmed\n  url: https://aonemd.com/\n  rss: https://aonemd.com/index.xml\n- name: Ahmed Nadar (hashnode)\n  url: https://ahmednadar.hashnode.dev\n  rss: https://ahmednadar.hashnode.dev/rss.xml\n- name: Ahmed Nadar (Web archive)\n  url: https://web.archive.org/web/20240719180311/http://www.ahmednadar.com/posts\n- name: Akshay Birajdar\n  url: https://bytes.akshaybirajdar.com/\n  rss: https://bytes.akshaybirajdar.com/feed.xml\n- name: Akshay Khot (Write Software, Well)\n  url: https://www.writesoftwarewell.com/\n  rss: https://www.writesoftwarewell.com/rss/\n- name: Akshay Mohite\n  url: https://www.rubyinrails.com/\n  rss: https://www.rubyinrails.com/feed.xml\n- name: Alberto Almagro\n  url: https://albertoalmagro.com/blog/\n  rss: https://albertoalmagro.com/feed/\n- name: Aleksandr Ulanov\n  url: https://ualeks.dev/posts/\n- name: Alessandro Rodi\n  url: https://coorasse.com/\n  rss: https://coorasse.com/feed.xml\n- name: Alessandro Rodi (Medium)\n  url: https://medium.com/@coorasse\n  rss: https://medium.com/feed/@coorasse\n- name: Alex Piechowski\n  url: https://piechowski.io/post/\n- name: Alex Taylor\n  url: https://alextaylor.ca/archive/\n  rss: https://alextaylor.ca/atom.xml\n- name: Alexander Butt-Piercey\n  url: https://apiercey.github.io/posts/\n  rss: https://apiercey.github.io/posts/index.xml\n- name: Alexandre Barret\n  url: https://alexbarret.com/blog/\n  rss: https://alexbarret.com/feed.xml\n- name: Alexey Poimtsev\n  url: https://alec-c4.com/\n  rss: https://alec-c4.com/rss.xml\n- name: Alexey Vasiliev\n  url: https://leopard.in.ua/\n  rss: http://leopard.in.ua/rss.xml\n- name: Alexis Bernard\n  url: https://alexis.bernard.io/\n  rss: https://alexis.bernard.io/blog.rss\n- name: Amir Sharif\n  url: https://www.amirsharif.com/\n  rss: https://www.amirsharif.com/feed.rss\n- name: Ana Nunes da Silva (Web archive)\n  url: https://web.archive.org/web/20240814203350/https://www.ananunesdasilva.com/posts\n- name: Andrea Fomera\n  url: https://afomera.dev/posts\n- name: Andrei Kaleshka\n  url: https://blog.widefix.com/articles/\n  rss: https://widefix.com/blog/feed.xml\n- name: Andrei Maxim\n  url: https://andreimaxim.com/\n  rss: https://andreimaxim.com/feed.xml\n- name: Andres Chacon\n  url: https://a-chacon.com/en/blog\n  rss: https://a-chacon.com/en/feed.xml\n- name: Andrew Atkinson\n  url: https://andyatkinson.com/tag#ruby-on-rails\n- name: Andrew Kane\n  url: https://ankane.org/\n  rss: https://ankane.org/feed.rss\n- name: Andrew Nesbitt\n  url: https://nesbitt.io/posts/\n  rss: https://nesbitt.io/feed.xml\n- name: Andrey Eremin\n  url: https://www.eremin.eu/tags/ruby/page\n  rss: https://www.eremin.eu/feed/blog/feed.xml\n- name: Andrii Konchyn\n  url: https://andrykonchin.github.io/\n  rss: https://andrykonchin.github.io/feed.xml\n- name: André Arko\n  url: https://andre.arko.net/\n  rss: https://andre.arko.net/atom.xml\n- name: Andy Croll\n  url: https://andycroll.com/\n  rss: https://andycroll.com/index.xml\n- name: Andy Leverenz\n  url: https://webcrunch.com/posts\n  rss: https://webcrunch.com/feed.rss\n- name: Andy Maleh\n  url: https://andymaleh.blogspot.com/\n  rss: https://andymaleh.blogspot.com/feeds/posts/default\n- name: Andy Waite\n  url: https://andywaite.com/\n  rss: https://andywaite.com/feed.xml\n- name: Ankit Gupta\n  url: https://ankit-gupta.com/blog/tag/ruby\n  rss: https://ankit-gupta.com/feed.xml\n- name: Anna Gavrilova\n  url: https://kotogavr.vercel.app/blog\n- name: Anthony Drake\n  url: https://www.t27duck.com/posts\n  rss: https://www.t27duck.com/posts.xml\n- name: Anton Davydov\n  url: https://www.davydovanton.com/blog/\n  rss: https://www.davydovanton.com/atom.xml\n- name: Aotokitsuruya\n  url: https://blog.aotoki.me/en/\n  rss: https://blog.aotoki.me/en/index.xml\n- name: Aristóteles Coutinho\n  url: https://aristotelescoutinho.com.br/\n- name: Augusts Bautra\n  url: https://epigene.github.io/\n  rss: https://epigene.github.io/feed.xml\n- name: Austin Ziegler\n  url: https://www.halostatue.ca/\n  rss: https://www.halostatue.ca/index.xml\n- name: Avdi Grimm\n  url: https://avdi.codes/blog/\n  rss: https://avdi.codes/feed/\n- name: Avi Flombaum\n  url: https://code.avi.nyc\n  rss: https://code.avi.nyc/rss.xml\n- name: Axel Kee\n  url: https://rubyyagi.com/\n  rss: https://rubyyagi.com/feed.xml\n- name: Ayush Newatia\n  url: https://binarysolo.blog/\n  rss: https://binarysolo.blog/feed.xml\n- name: Balázs Kutil\n  url: https://balazs.kutilovi.cz/\n  rss: https://balazs.kutilovi.cz/index.xml\n- name: Bamchi\n  url: https://bamchi.me\n  rss: https://bamchi.me/en/feed\n- name: Ben Koshy\n  url: https://benkoshy.github.io/\n  rss: https://benkoshy.github.io/feed.xml\n- name: Ben Pickles\n  url: https://www.benpickles.com/articles\n  rss: https://www.benpickles.com/articles.atom\n- name: Ben Sheldon\n  url: https://island94.org/archives\n  rss: https://island94.org/feed.xml\n- name: Benito Serna\n  url: https://bhserna.com/posts.html\n  rss: https://bhserna.com/feed.xml\n- name: Benjamin Fleischer\n  url: https://www.benjaminfleischer.com/\n  rss: https://www.benjaminfleischer.com/atom.xml\n- name: Benoit Daloze\n  url: https://eregon.me/blog/\n  rss: https://eregon.me/blog/feed.xml\n- name: Benoit Tigeot\n  url: https://benoittgt.github.io/blog/\n  rss: https://benoittgt.github.io/feed/feed.xml\n- name: Bernie Chiu\n  url: https://berniechiu.github.io/blog/\n  rss: https://berniechiu.github.io/blog/sitemap.xml\n- name: Bhumi\n  url: https://theleafnode.com/\n  rss: https://theleafnode.com/feed.xml\n- name: Bill Tihen\n  url: https://btihen.dev/posts/ruby/\n  rss: https://btihen.dev/posts/ruby/index.xml\n- name: Bohdan Pohorilets\n  url: https://bpohoriletz.github.io/\n  rss: https://bpohoriletz.github.io/feed.xml\n- name: Borja Garcia de Vinuesa Ordovás\n  url: https://bgvo.io/\n  rss: https://bgvo.io/feed.xml\n- name: Bozhidar Batsov\n  url: https://metaredux.com/\n  rss: https://metaredux.com/feed.xml\n- name: Brad Gessler\n  url: https://bradgessler.com/\n- name: Bradley Schaefer (Soulcutter)\n  url: https://www.soulcutter.com/\n  rss: https://www.soulcutter.com/feed.xml\n- name: Brandon Casci\n  url: https://www.brandoncasci.com/\n  rss: https://www.brandoncasci.com/feed.xml\n- name: Brendan Bondurant\n  url: https://brendanbondurant.com/35-2/\n  rss: https://brendanbondurant.com/feed/\n- name: Bruno Sutic\n  url: https://brunosutic.com/\n  rss: https://brunosutic.com/blog/feed\n- name: Bèr Kessels\n  url: https://berk.es/archive.html\n  rss: https://berk.es/2007/09/27/snipplr-drupals-code-snippet-feed/\n- name: Caleb Hearth\n  url: https://calebhearth.com/tags/rails\n  rss: https://calebhearth.com/atom.xml\n- name: Caleb Woods\n  url: https://www.calebwoods.com/\n  rss: https://www.calebwoods.com/feed.xml\n- name: Carl Wiedemann\n  url: https://carlwiedemann.github.io/\n  rss: https://carlwiedemann.github.io/feed.xml\n- name: Carmine Paolino\n  url: https://paolino.me/\n  rss: https://paolino.me/feed.xml\n- name: Cassey Lottman\n  url: https://cassey.dev/\n  rss: https://cassey.dev/rss/\n- name: Cezar Halmagean\n  url: https://mixandgo.com/learn\n- name: Charles Oliver Nutter\n  url: https://blog.headius.com/\n  rss: https://blog.headius.com/feed.xml\n- name: Chen Kinnrot\n  url: https://kinnrot.github.io/\n  rss: https://kinnrot.github.io/feed.xml\n- name: Chris Blunt\n  url: https://www.chrisblunt.com/\n  rss: https://www.chrisblunt.com/feed/\n- name: Chris Dillon\n  url: https://squarism.com/archive/\n  rss: https://squarism.com/feed.xml\n- name: Chris Kottom\n  url: https://chriskottom.com/articles/\n  rss: https://chriskottom.com/articles/feed.xml\n- name: Chris Seaton\n  url: https://chrisseaton.com/\n- name: Chris Sinjakli\n  url: https://blog.sinjakli.co.uk/\n  rss: https://blog.sinjakli.co.uk/feed.xml\n- name: Christoph Lupprich\n  url: https://christoph.luppri.ch/\n- name: CJ Avilla\n  url: https://www.cjav.dev/articles\n- name: Clayton Lengel-Zigich\n  url: https://railsboilerplate.com/articles\n- name: Cody Norman\n  url: https://www.codynorman.com/posts/\n  rss: https://codynorman.com/feed.xml\n- name: Damian C. Rossney\n  url: https://rossney.net/articles/\n  rss: https://rossney.net/feed.xml\n- name: Dan Croak\n  url: https://dancroak.com/\n- name: Dan Mayer\n  url: https://www.mayerdan.com/\n- name: Daniela Baron\n  url: https://danielabaron.me/\n  rss: https://danielabaron.me/rss.xml\n- name: Daniil Svetlov\n  url: https://dansvetlov.me/\n- name: Darius Pirvulescu\n  url: https://organicdarius.com/blog/\n  rss: https://organicdarius.com/blog/feed.xml\n- name: Dave Faliskie\n  url: https://1manstartup.com/blogs\n- name: David Boureau (AlsoHelp)\n  url: https://alsohelp.com/blog\n  rss: https://alsohelp.com/rss.xml\n- name: David Boureau (saaslit)\n  url: https://saaslit.com/blog\n- name: David Bryant Copeland\n  url: https://naildrivin5.com/\n  rss: https://naildrivin5.com/atom.xml\n- name: David Colby\n  url: https://www.colby.so/\n  rss: https://colby.so/atom.xml\n- name: David Heinemeier Hansson\n  url: https://world.hey.com/dhh\n  rss: https://world.hey.com/dhh/feed.atom\n- name: David Morales (DevelClan)\n  url: https://develclan.com/\n  rss: https://develclan.com/rss.xml\n- name: David Silva\n  url: https://davidslv.uk/\n  rss: https://davidslv.uk/feed.xml\n- name: Dean DeHart\n  url: https://deanin.com/blog/\n  rss: https://deanin.com/wp-json/wp/v2/pages/175\n- name: Dean Perry\n  url: https://deanpcmad.com/blog/\n- name: Deep dive\n  url: https://shime.sh/\n  rss: https://shime.sh/feed.xml\n- name: Deepak Mahakale\n  url: https://deepakmahakale.com/blog/\n  rss: https://deepakmahakale.com/blog/feed.xml\n- name: Denis Defreyne\n  url: https://denisdefreyne.com/contact/\n  rss: https://denisdefreyne.com/feeds/weeknotes.xml\n- name: Dennis Martinez\n  url: https://dennmart.com/tags/rails/\n- name: Dennis Martinez\n  url: https://dev-tester.com/\n  rss: https://dev-tester.com/rss/\n- name: Dennis Paagman\n  url: https://paagman.dev/articles/\n  rss: https://paagman.dev/feed.xml\n- name: Derk-Jan Karrenbeld\n  url: https://derk-jan.com/articles\n- name: Devanil\n  url: https://devanil.dev/blog/\n  rss: https://devanil.dev/rss.xml\n- name: Dhaval Singh\n  url: https://www.dsdev.in/\n  rss: https://www.dsdev.in/rss.xml\n- name: Dick Davis\n  url: https://dick.codes/\n  rss: https://dick.codes/feed.xml\n- name: Dimiter Petrov\n  url: https://dimiterpetrov.com/blog\n  rss: https://dimiterpetrov.com/blog/feed.xml\n- name: Dimitris Zorbas\n  url: https://zorbash.com/tags/ruby/\n  rss: https://zorbash.com/tags/ruby/index.xml\n- name: Dirk Jonker\n  url: https://dirkjonker.bearblog.dev/\n  rss: https://dirkjonker.bearblog.dev/feed/\n- name: Dmitriy Ivliev\n  url: https://blog.ivda.dev/\n  rss: https://blog.ivda.dev/rss.xml\n- name: Dmitry Gutov\n  url: https://gutov.dev/\n  rss: https://gutov.dev/feed.xml\n- name: Dmitry Ishkov\n  url: https://www.dmitry-ishkov.com\n  rss: https://www.dmitry-ishkov.com/feeds/posts/default\n- name: Dmitry Tsepelev\n  url: https://dmitrytsepelev.dev/tag/ruby\n  rss: https://dmitrytsepelev.dev/feed.xml\n- name: Dom Christie\n  url: https://domchristie.co.uk/\n  rss: https://domchristie.co.uk/feed.xml\n- name: Donn Felker\n  url: https://www.donnfelker.com/blog/\n  rss: https://www.donnfelker.com/feed/\n- name: Dwight Watson\n  url: https://www.dwightwatson.com/tags/ruby-on-rails\n- name: Délon R. Newman\n  url: https://delonnewman.name/articles\n  rss: https://delonnewman.name/articles/feed.xml\n- name: Eileen M. Uchitelle\n  url: https://eileencodes.com/\n  rss: http://eileencodes.com/feed.xml\n- name: Eliot Sykes\n  url: https://eliotsykes.com/\n  rss: https://eliotsykes.com/feed/\n- name: Emmanuel Hayford (hayford.dev)\n  url: https://hayford.dev/\n  rss: https://hayford.dev/rss/\n- name: Ender Ahmet Yurt\n  url: https://enderahmetyurt.com/\n  rss: https://enderahmetyurt.com/rss/\n- name: Enrico Teotti\n  url: https://teotti.com/topics/ruby/\n  rss: https://teotti.com/feed.xml\n- name: Eric London\n  url: https://ericlondon.com/\n  rss: https://ericlondon.com/feed.xml\n- name: Erik Minkel\n  url: https://www.erikminkel.com/\n  rss: https://www.erikminkel.com/rss/\n- name: Evgeniy Demin\n  url: https://evgeniydemin.medium.com/\n  rss: https://medium.com/feed/@evgeniydemin\n- name: Felice Forby\n  url: https://feliceforby.com/\n  rss: https://feliceforby.com/posts_feed\n- name: Felipe Contreras\n  url: https://felipec.wordpress.com/category/development/\n  rss: https://felipec.wordpress.com/feed/\n- name: Felipe Philipp\n  url: https://felipeelias.github.io/\n  rss: https://felipeelias.github.io/feed.xml\n- name: Felipe Vogel\n  url: https://fpsvogel.com/posts/\n  rss: https://fpsvogel.com/feed.xml\n- name: Filip Vrba\n  url: https://filipvrba.github.io/cv/\n- name: Finnian Anderson\n  url: https://finnian.io/tags/ruby/\n  rss: https://finnian.io/tags/ruby/index.xml\n- name: Florent Guilleux\n  url: https://www.florentguilleux.fr/\n  rss: https://www.florentguilleux.fr/rss.xml\n- name: Frank Groeneveld\n  url: https://frankgroeneveld.nl/\n  rss: https://frankgroeneveld.nl/feed/\n- name: Garrett Dimon\n  url: https://garrettdimon.com/journal/posts\n  rss: https://garrettdimon.com/feed\n- name: Gavin Miller (Web archive)\n  url: https://web.archive.org/web/20240518235427/http://gavinmiller.io/archives/\n- name: Gavin Morrice\n  url: https://handyrailstips.com/\n- name: Gergő Sulymosi\n  url: https://gergo.dev/\n  rss: https://gergo.dev/atom.xml\n- name: Gernot Gradwohl\n  url: https://austrian-nerd.dev/\n  rss: https://austrian-nerd.dev/index.xml\n- name: Giménez Silva Germán Alberto\n  url: https://rubystacknews.com/\n  rss: https://rubystacknews.com/feed/\n- name: Giorgi Mezurnishvili\n  url: https://mzrn.sh/\n  rss: https://mzrn.sh/feed.xml\n- name: Giovanni Panasiti\n  url: https://www.panasiti.me/blog/\n  rss: https://www.panasiti.me/feed.xml\n- name: Glauco Custodio\n  url: https://glaucocustodio.github.io/\n  rss: https://glaucocustodio.github.io/feed.xml\n- name: Goulven Champenois\n  url: https://pro.userland.fr/en/articles/\n  rss: https://pro.userland.fr/feed.xml\n- name: Greg Molnar\n  url: https://greg.molnar.io/blog/\n  rss: https://greg.molnar.io/feed.xml\n- name: Greg Molnar (railstricks)\n  url: https://pombomailer.com/n/railstricks\n- name: Greg Navis\n  url: https://www.gregnavis.com/articles.html\n  rss: https://www.gregnavis.com/feed.xml\n- name: Gregg Kellogg\n  url: https://greggkellogg.net/categories/ruby/\n- name: Guillaume Briday\n  url: https://guillaumebriday.fr/articles\n  rss: https://guillaumebriday.fr/articles.xml\n- name: Hal Brodigan (postmodern)\n  url: http://postmodern.github.io/blog/\n  rss: http://postmodern.github.io/atom.xml\n- name: Hartley McGuire\n  url: https://skipkayhil.github.io/blog\n- name: Haseeb Annadamban\n  url: https://haseebeqx.com/posts/\n  rss: https://haseebeqx.com/posts/index.xml\n- name: Hegwin Wang\n  url: https://hegwin.me/en\n- name: Henrik Nyh\n  url: https://thepugautomatic.com/tag/ruby/\n  rss: https://thepugautomatic.com/atom.xml\n- name: Henry Maddocks\n  url: https://henry.bearblog.dev/blog/\n  rss: https://henry.bearblog.dev/about/feed/?type=rss\n- name: hoshino tsuyoshi\n  url: https://hoshinotsuyoshi.com/tags/ruby/\n- name: Hrvoje Šimić\n  url: https://shime.sh/til/\n  rss: https://shime.sh/feed.xml\n- name: Igor Aleksandrov\n  url: https://igor.works/archive\n- name: Igor Guzak\n  url: https://medium.com/@igor04\n  rss: https://medium.com/feed/@igor04\n- name: Igor Kuznetsov\n  url: https://medium.com/@igkuz\n  rss: https://medium.com/feed/@igkuz\n- name: Igor Morozov\n  url: https://www.morozov.is/\n- name: Igor Springer (Web archive)\n  url: https://web.archive.org/web/20240618125641/https://frontdeveloper.pl/blog-posts/\n- name: Ilya Bylich\n  url: https://iliabylich.github.io/\n  rss: https://iliabylich.github.io/index.xml\n- name: Ilya Krukowski\n  url: https://bodrovis.tech/\n- name: Ismael Celis\n  url: https://ismaelcelis.com/\n  rss: https://ismaelcelis.com/index.xml\n- name: Ivo Anjo\n  url: https://ivoanjo.me/\n  rss: https://ivoanjo.me/feed.xml\n- name: J. Scott Johnson\n  url: https://fuzzyblog.io/blog/category.html#rails\n  rss: http://fuzzyblog.io/blog/feed.xml\n- name: Jacob Swanner\n  url: https://jacobswanner.com/development/\n  rss: https://jacobswanner.com/atom.xml\n- name: Jake Worth\n  url: https://www.jakeworth.com/posts/\n  rss: https://jakeworth.com/posts/index.xml\n- name: Jake Zimmerman\n  url: https://blog.jez.io/#all-posts\n  rss: https://blog.jez.io/atom.xml\n- name: Jakob Skjerning\n  url: https://mentalized.net/\n  rss: https://mentalized.net/journal/entries.xml\n- name: James Golick\n  url: https://www.jamesgolick.com/\n  rss: http://feeds.feedburner.com/JamesOnSoftware\n- name: James Hibbard\n  url: https://hibbard.eu/\n  rss: https://hibbard.eu/feed.xml\n- name: Jamie Schembri\n  url: https://schembri.me/\n  rss: https://schembri.me/rss/\n- name: Jamis Buck\n  url: http://weblog.jamisbuck.org/archives.html\n- name: Jamis Buck\n  url: https://weblog.jamisbuck.org/archives.html\n  rss: https://feeds.feedburner.com/buckblog\n- name: Jan Matuszewski\n  url: https://jmatuszewski.com/\n  rss: https://jmatuszewski.com/feed.xml\n- name: Janko Marohnić\n  url: https://janko.io/\n  rss: https://janko.io/feed.xml\n- name: Jared Norman\n  url: https://jardo.dev/blog?topic=ruby-rails\n  rss: https://jardo.dev/blog.xml\n- name: Jason Charnes\n  url: https://jasoncharnes.com/articles/\n  rss: https://jasoncharnes.com/feed.xml\n- name: Jason Fleetwood-Bold\n  url: https://jasonfleetwoodboldt.com/topics/programming/\n  rss: https://jasonfleetwoodboldt.com/feed/\n- name: Jason Swett\n  url: https://www.codewithjason.com/articles/\n  rss: https://www.codewithjason.com/wp-json/wp/v2/pages/415\n- name: Jason York\n  url: https://predicatemethod.com/archives/\n  rss: https://predicatemethod.com/feed.xml\n- name: Javier Cervantes\n  url: https://www.rubynewbie.org/\n  rss: https://www.rubynewbie.org/feed.xml\n- name: JD Gonzales\n  url: https://jd.codes/\n  rss: https://jd.codes/index.xml\n- name: Jean Boussier\n  url: https://byroot.github.io/\n  rss: https://byroot.github.io/feed.xml\n- name: Jemma Issroff\n  url: https://jemma.dev/\n  rss: https://jemma.dev/blog/published.xml\n- name: Jens Eickmeyer\n  url: https://scratchpad.blog/\n  rss: https://scratchpad.blog/feed.xml\n- name: Jeremy Friesen\n  url: https://takeonrules.com/tags/programming/\n  rss: https://takeonrules.com/index.json\n- name: Jeremy Kreutzbender\n  url: https://jeremykreutzbender.com/blog?tags=ruby%2Cruby-on-rails\n- name: Jeroen Weeink\n  url: https://craftingruby.com/\n  rss: https://craftingruby.com/feed.xml\n- name: Jess Brown\n  url: https://bjessbrown.com/\n- name: Jesse B. Hannah\n  url: https://jbhannah.net/\n- name: Jesus Castello\n  url: https://www.rubyguides.com/ruby-post-index/\n  rss: https://www.rubyguides.com/feed/\n- name: Jim Weirich (Web archive)\n  url: https://web.archive.org/web/20241013050338/https://www.onestepback.org/articles/index.html\n- name: Jimmy Chao (Web archive)\n  url: https://web.archive.org/web/20241013050343/http://neethack.com/tags/ruby/\n- name: Joe Masilotti\n  url: https://masilotti.com/articles/\n  rss: https://masilotti.com/feed.xml\n- name: Joel Drapper\n  url: https://joel.drapper.me/\n  rss: https://joel.drapper.me/rss.xml\n- name: Joey Wang\n  url: https://joeywang.github.io/\n  rss: https://joeywang.github.io/feed.xml\n- name: John Hawthorn\n  url: https://www.johnhawthorn.com/\n  rss: https://www.johnhawthorn.com/atom.xml\n- name: John Nunemaker\n  url: https://www.johnnunemaker.com/\n  rss: https://www.johnnunemaker.com/rss/\n- name: John Skiles Skinner\n  url: https://johnskinnerportfolio.com/blog/index.html\n  rss: https://johnskinnerportfolio.com/feed.xml\n- name: Jon Sullivan\n  url: https://jonsully.net/blog/\n  rss: https://jonsully.net/rss.xml\n- name: Jonas Brusman\n  url: https://jonas.brusman.se/articles/\n  rss: https://jonas.brusman.se/rss.xml\n- name: Jonathan Rochkind\n  url: https://bibwild.wordpress.com/\n  rss: https://bibwild.wordpress.com/feed/\n- name: Jorge Manrubia\n  url: https://world.hey.com/jorge\n  rss: https://world.hey.com/jorge/feed.atom\n- name: Jose Farias\n  url: https://jose.omg.lol/\n  rss: https://jose.omg.lol/feed.xml\n- name: Josef Strzibny\n  url: https://nts.strzibny.name/tag/ruby/\n  rss: https://nts.strzibny.name/feed.xml\n- name: Josh Frankel\n  url: https://joshfrankel.me/blog/\n  rss: https://joshfrankel.me/feed.xml\n- name: Josh McArthur\n  url: https://www.joshmcarthur.com/\n  rss: https://joshmcarthur.com/feed/\n- name: Josh Thompson\n  url: https://www.intermediateruby.com/articles\n  rss: https://www.intermediateruby.com/atom.xml\n- name: Joyful Bikeshedding\n  url: https://www.joyfulbikeshedding.com/blog/tags/ruby.html\n  rss: https://www.joyfulbikeshedding.com/feed.xml\n- name: JP Camara\n  url: https://jpcamara.com/categories/ruby/\n  rss: https://jpcamara.com/categories/ruby/feed.xml\n- name: Juanito Fatas\n  url: https://juanitofatas.com/tags/ruby\n- name: Julia Chan\n  url: https://juliachan.dev/\n- name: Julia Evans\n  url: https://jvns.ca/\n  rss: https://jvns.ca/atom.xml\n- name: Julian Rubisch\n  url: https://hotwire.club/blog/\n  rss: https://hotwire.club/feed.xml\n- name: Juliana Dias\n  url: https://blog.juliana.dev/blog\n  rss: https://blog.juliana.dev/feed.xml\n- name: Julija Alieckaja\n  url: https://medium.com/@alieckaja\n  rss: https://medium.com/feed/@alieckaja\n- name: Julik Tarkhanov\n  url: https://blog.julik.nl/\n  rss: https://blog.julik.nl/feed.atom.xml\n- name: Justin Cypret\n  url: https://justincypret.com/\n  rss: https://justincypret.com/feed.xml\n- name: Justin Gordon\n  url: http://www.railsonmaui.com/\n- name: Justin Searls\n  url: https://justin.searls.co/posts/\n  rss: https://justin.searls.co/atom.xml\n- name: Jônatas Davi Paganini\n  url: https://ideia.me/categories.html#ruby-ref\n  rss: https://ideia.me/atom.xml\n- name: Kadu Diógenes\n  url: https://kdiogenes.github.io/\n  rss: https://kdiogenes.github.io/feed.xml\n- name: Kallin Nagelberg\n  url: https://happycampers.dance/\n  rss: http://happycampers.dance/feed.xml\n- name: Karol Bąk\n  url: https://kukicola.io/\n  rss: https://kukicola.io/feed.xml\n- name: Karol Galanciak\n  url: https://karolgalanciak.com/blog/\n  rss: https://karolgalanciak.com/feed.xml\n- name: Kasper Timm Hansen\n  url: https://kaspth.com/posts\n  rss: https://kaspth.com/posts_feed\n- name: Kasper Timm Hansen (buttondown)\n  url: https://buttondown.com/kaspth/archive/\n  rss: https://buttondown.com/kaspth/rss\n- name: Kevin Glowacz\n  url: https://kevin.glowacz.info/\n  rss: https://kevin.glowacz.info/feed.xml\n- name: Kevin Murphy\n  url: https://kevinjmurphy.com/posts/\n  rss: https://kevinjmurphy.com/posts/index.xml\n- name: Kevin Newton\n  url: https://kddnewton.com/\n  rss: https://kddnewton.com/feed.xml\n- name: Kevin Sylvestre\n  url: https://ksylvest.com/\n  rss: https://ksylvest.com/feed.atom\n- name: Khaja Minhajuddin\n  url: https://minhajuddin.com/tags/ruby/\n  rss: https://minhajuddin.com/atom.xml\n- name: Kir Shatrov\n  url: https://kirshatrov.com/posts\n- name: Kiril Mitov\n  url: https://kmitov.com/posts/tag/rails/\n  rss: https://kmitov.com/feed/\n- name: Kirill Platonov\n  url: https://kirillplatonov.com/posts/\n  rss: https://kirillplatonov.com/feed.xml\n- name: Koichi Sasada\n  url: https://dev.to/ko1\n  rss: https://dev.to/feed/ko1\n- name: Kris Bogdanov\n  url: https://fullstackheroes.com/tutorials/rails/\n- name: Kris Leech\n  url: https://www.teamcoding.com/\n- name: Kuba Suder\n  url: https://journal.mackuba.eu/archive/\n  rss: https://journal.mackuba.eu/feed.xml\n- name: Kyle Keesling\n  url: https://kylekeesling.com/posts\n  rss: https://kylekeesling.com/feed.xml\n- name: Kyrylo Silin\n  url: https://kyrylo.org/\n  rss: https://kyrylo.org/feed.xml\n- name: Landon Gray\n  url: https://thedayisntgray.github.io/\n  rss: https://thedayisntgray.github.io/feed.xml\n- name: Lars Peters\n  url: https://larsp.de/\n  rss: https://larsp.de/rss/\n- name: Lazarus Lazaridis\n  url: https://iridakos.com/\n  rss: https://iridakos.com/feed.xml\n- name: Leandro Proença\n  url: https://leandronsp.com/?tag=ruby\n- name: Linas Juškevičius\n  url: https://kaukas.mataroa.blog/\n  rss: https://kaukas.mataroa.blog/rss/\n- name: Lovro Bikić\n  url: https://lovro-bikic.github.io/\n  rss: https://lovro-bikic.github.io/feed.xml\n- name: Luan Nguye - fullstackrubyonrails.com (Web archive)\n  url: http://web.archive.org/web/20210513003707/https://fullstackrubyonrails.com/\n- name: Luan Nguyen\n  url: https://luanotes.medium.com/\n  rss: https://medium.com/feed/@luanotes\n- name: Luca Guidi\n  url: https://lucaguidi.com/\n  rss: https://lucaguidi.com/rss.xml\n- name: Lucas Dohmen\n  url: https://lucas.dohmen.io/\n  rss: https://lucas.dohmen.io/feed.xml\n- name: Lucas Luitjes\n  url: https://blog.luitjes.it/\n- name: Lucian Ghinda\n  url: https://allaboutcoding.ghinda.com/\n  rss: https://allaboutcoding.ghinda.com/rss.xml\n- name: Lucian Ghinda (Notes)\n  url: https://notes.ghinda.com/\n  rss: https://notes.ghinda.com/feed.atom\n- name: Luiz Eduardo Kowalski\n  url: https://www.luizkowalski.net/\n  rss: https://www.luizkowalski.net/rss/\n- name: Luke Jahnke\n  url: https://nastystereo.com/\n- name: Lynn Chang\n  url: https://lynnbright.com/\n  rss: https://lynnbright.com/rss.xml\n- name: Maciej Litwiniuk\n  url: https://maciej.litwiniuk.net/posts/\n  rss: https://maciej.litwiniuk.net/index.xml\n- name: Maciej Mensfeld\n  url: https://mensfeld.pl/\n  rss: https://mensfeld.pl/feed/\n- name: Mahbub Zaman\n  url: https://mahbub.ninja/blog\n- name: Manuel Farez\n  url: https://manufarez.com/\n- name: Marc Busqué\n  url: https://waiting-for-dev.github.io/\n  rss: https://waiting-for-dev.github.io/feed.xml\n- name: Marcin Ostrowski (rubyonai.com)\n  url: https://rubyonai.com/\n  rss: https://rubyonai.com/rss/\n- name: Marco Roth\n  url: https://marcoroth.dev/blog\n  rss: https://marcoroth.dev/feed.xml\n- name: Mario Alberto Chávez Cárdenas\n  url: https://mariochavez.io/\n  rss: https://mariochavez.io/feed.xml\n- name: Mark Godwin (railscraft)\n  url: https://railscraft.hashnode.dev/\n  rss: https://railscraft.hashnode.dev/rss.xml\n- name: Martin Emde\n  url: https://martinemde.com/\n  rss: https://martinemde.com/rss.xml\n- name: Mateus Pereira\n  url: https://pearprogramming.blog/posts/\n- name: Mateusz Białowąs\n  url: https://mateuszbialowas.com/\n  rss: https://mateuszbialowas.com/rss.xml\n- name: Matheus Richard\n  url: https://www.matheusrich.com/all/\n  rss: http://matheusrich.com/feed.xml\n- name: Mathieu Eustachy\n  url: https://mathieu-eustachy.com/articles\n- name: Matias Korhonen\n  url: https://www.randomerrata.com/\n  rss: https://www.randomerrata.com/feed.xml\n- name: Matt Brictson\n  url: https://mattbrictson.com/blog\n  rss: https://mattbrictson.com/blog.atom\n- name: Matthew Hutchinson\n  url: https://matthewhutchinson.net/\n- name: Mattia Roccoberton\n  url: https://www.blocknot.es/\n  rss: https://www.blocknot.es/feed.xml\n- name: Max Braga\n  url: https://hellomax.me/archives/\n  rss: https://hellomax.me/feed.xml\n- name: Max Tikhomirov\n  url: https://metacircu1ar.github.io/blog.html\n  rss: https://metacircu1ar.github.io/feed.xml\n- name: Maxime Lapointe\n  url: https://maxlap.dev/blog/\n  rss: https://maxlap.dev/blog/feed.xml\n- name: Michael Dominick\n  url: https://dominickm.com/tag/ruby/\n  rss: https://dominickm.com/feed/\n- name: Michael Grosser\n  url: https://grosser.it/\n  rss: https://grosser.it/feed/\n- name: Michael Nelson (Web archive)\n  url: https://web.archive.org/web/20241004080114/http://nelsonware.com/ruby.html\n- name: Michael Wallbaum (Web archive)\n  url: https://web.archive.org/web/20251111112151/https://mwallba.io/\n- name: Michal Kazmierczak\n  url: https://mkaz.me/blog/\n- name: Michal Papis (Web archive)\n  url: https://web.archive.org/web/20220929231743/http://niczsoft.com/\n- name: Mikael Henriksson\n  url: https://mhenrixon.com/articles\n- name: Mike Coutermarsh\n  url: https://www.mikecoutermarsh.com/\n  rss: https://www.mikecoutermarsh.com/rss/\n- name: Mike McQuaid\n  url: https://mikemcquaid.com/\n  rss: https://mikemcquaid.com/atom.xml\n- name: Mike Pack (Web archive)\n  url: http://web.archive.org/web/20220625075232/http://mikepackdev.com/\n- name: Mike Perham\n  url: https://www.mikeperham.com/\n  rss: https://mikeperham.com/index.xml\n- name: Mike Rogers (Web archive)\n  url: https://web.archive.org/web/20220627032657/https://mikerogers.io/posts/\n- name: Mike Wilson\n  url: https://www.mikewilson.dev/\n  rss: https://www.mikewilson.dev/feed.xml\n- name: Mikhail Klimenko\n  url: https://blog.klimenko.site/\n  rss: https://blog.klimenko.site/feed.xml\n- name: Miles Woodroffe\n  url: https://mileswoodroffe.com/tags/rails\n  rss: https://mileswoodroffe.com/feed.xml\n- name: Mohammad A. Ali\n  url: https://oldmoe.blog/\n  rss: https://oldmoe.blog/feed/\n- name: Mohit Sindhwani\n  url: https://notepad.onghu.com/\n  rss: https://notepad.onghu.com/feed.xml\n- name: Moncef Belyamani\n  url: https://www.moncefbelyamani.com/tags/ruby/\n  rss: https://www.moncefbelyamani.com/feed.xml\n- name: Mário Nzualo\n  url: https://www.marionzualo.com/blog/\n  rss: https://www.marionzualo.com/feed/\n- name: Máximo Mussini\n  url: https://maximomussini.com/\n  rss: https://maximomussini.com/feed.xml\n- name: Nate Berkopec\n  url: https://www.speedshop.co/blog/\n  rss: https://www.speedshop.co/feed.xml\n- name: Nicholas\n  url: https://wasabigeek.com/blog/\n  rss: https://wasabigeek.com/rss.xml\n- name: Nick Hammond\n  url: https://www.fromthekeyboard.com/\n  rss: https://www.fromthekeyboard.com/rss/\n- name: Nick Schwaderer (blog.schwad.org)\n  url: https://blog.schwad.org/\n  rss: https://blog.schwad.org/feed\n- name: Nick Schwaderer (schwad.github.io)\n  url: https://schwad.github.io/\n  rss: https://schwad.github.io/feed.xml\n- name: Nick Sutterer\n  url: https://apotonick.wordpress.com/\n  rss: https://apotonick.wordpress.com/feed/\n- name: Nikita Misharin\n  url: https://thesmartnik.com/\n  rss: https://thesmartnik.com/feed.xml\n- name: Nikola Đuza\n  url: https://pragmaticpineapple.com/\n  rss: https://pragmaticpineapple.com/rss.xml\n- name: Nitanshu Verma\n  url: https://nitanshu.github.io/posts/\n  rss: https://nitanshu.github.io/feed.xml\n- name: Nithin Bekal\n  url: https://nithinbekal.com/\n  rss: https://nithinbekal.com/feed.xml\n- name: Noah Gibbs\n  url: https://codefol.io/tags/ruby/\n  rss: https://codefol.io/feed.xml\n- name: Noel Rappin\n  url: https://noelrappin.com/blog/\n  rss: https://noelrappin.com//blog/index.xml\n- name: Nolan Phillips\n  url: https://blog.nolanphillips.com/\n  rss: https://blog.nolanphillips.com/rss.xml\n- name: Olly Headey\n  url: https://olly.world/archive\n  rss: https://olly.world/feed.xml\n- name: Owais\n  url: https://owaiskhan.me/blog\n- name: Pablo Enoc\n  url: https://enocc.com/\n  rss: https://enocc.com/feed.xml\n- name: Pat Allan\n  url: https://freelancing-gods.com/posts/index.html\n- name: Pat Shaughnessy\n  url: https://patshaughnessy.net/\n- name: Paul Sadauskas\n  url: https://blog.theamazingrando.com/\n  rss: https://blog.theamazingrando.com/feed.xml\n- name: Paweł Dąbrowski\n  url: https://www.paweldabrowski.com/articles\n  rss: https://www.paweldabrowski.com/undefined/rss/feed.xml\n- name: Paweł Dąbrowski (Long live Ruby)\n  url: https://longliveruby.com/\n- name: Paweł Dąbrowski (Ruby hero) (Web archive)\n  url: https://web.archive.org/web/20241122134223/https://rubyhero.dev/\n- name: Paweł Świątkowski\n  url: https://katafrakt.me/posts/\n  rss: https://katafrakt.me/feed.xml\n- name: Peter Keogh\n  url: https://keoghpe.github.io/\n  rss: https://keoghpe.github.io/feed.xml\n- name: Peter Morgenstern\n  url: https://www.petergundel.de/\n- name: Peter Ohler\n  url: http://www.ohler.com/dev/index.html\n- name: Peter Solnica\n  url: https://solnic.dev/\n  rss: https://solnic.dev/rss/\n- name: Peter Zhu\n  url: https://blog.peterzhu.ca/\n  rss: https://blog.peterzhu.ca/feed.xml\n- name: Petr Hlavicka\n  url: https://petr.codes/blog/\n  rss: https://petr.codes/feed.xml\n- name: Phil Pirozhkov\n  url: https://fili.pp.ru/\n  rss: https://fili.pp.ru/feed.xml\n- name: Philippe Creux\n  url: https://pcreux.com/\n  rss: https://pcreux.com/feed.xml\n- name: Piotr Chmolowski\n  url: https://ptrchm.com/posts/\n  rss: https://ptrchm.com/posts/index.xml\n- name: Piotr Murach\n  url: https://piotrmurach.com/\n  rss: https://piotrmurach.com/feed.xml\n- name: Prabin Poudel\n  url: https://prabinpoudel.com.np/articles/\n  rss: https://prabinpoudel.com.np/atom.xml\n- name: Prabin Poudel (Zero Config Rails)\n  url: https://blog.zeroconfigrails.com/\n  rss: https://blog.zeroconfigrails.com/rss.xml\n- name: Prateek Choudhary\n  url: https://www.prateekcodes.dev/\n- name: Premysl Donat\n  url: https://masa331.github.io/\n- name: Rachael Wright-Munn\n  url: https://www.chael.codes/\n  rss: https://www.chael.codes/feed.xml\n- name: Radan Skorić\n  url: https://radanskoric.com/tags/ruby/\n  rss: https://radanskoric.com/feed.xml\n- name: Radoslav Stankov (Rado's Blog)\n  url: https://blog.rstankov.com/tag/ruby/\n  rss: https://blog.rstankov.com/rss/\n- name: Radoslav Stankov (Rado's Tips)\n  url: https://tips.rstankov.com/archive\n  rss: https://tips.rstankov.com/feed\n- name: Rafael Montas\n  url: https://www.rafaelmontas.com/\n  rss: https://www.rafaelmontas.com/feed.xml\n- name: Rahoul Baruah\n  url: https://theartandscienceofruby.com/\n  rss: https://theartandscienceofruby.com/rss/\n- name: Remi Mercier\n  url: https://remimercier.com/blog/\n  rss: https://remimercier.com/feed.xml\n- name: Renato Nitta\n  url: https://renatonitta.com/\n  rss: https://renatonitta.com/feed/\n- name: Rich Steinmetz\n  url: https://richstone.io/tag/ruby/\n  rss: https://richstone.io/rss/\n- name: Richard Huang (Web archive)\n  url: http://web.archive.org/web/20210923031801/https://blog.huangzhimin.com/\n- name: Richard Schneeman\n  url: https://schneems.com/\n  rss: https://schneems.com/feed.xml\n- name: Rico Sta. Cruz\n  url: https://ricostacruz.com/til/\n  rss: https://ricostacruz.com/til/rss.xml\n- name: Rob Lacey\n  url: https://robl.me/posts\n- name: Rob Race\n  url: https://robrace.dev/\n  rss: https://robrace.dev/blog/rss.xml\n- name: Rob Zolkos\n  url: https://www.zolkos.com/\n  rss: https://www.zolkos.com/feed.xml\n- name: Robby Russell\n  url: https://robbyonrails.com/\n  rss: https://robbyonrails.com/feed.xml\n- name: Robert\n  url: https://0x1eef.github.io/posts/\n- name: Robert Pankowecki\n  url: https://pankowecki.pl/\n  rss: https://pankowecki.pl/index.xml\n- name: Rodrigo Rosenfeld Rosas\n  url: https://rosenfeld.page/articles/tags/ruby\n  rss: https://rosenfeld.page/articles/tags/ruby/atom\n- name: Roland Lopez\n  url: https://rolandsoftwares.com/content/\n- name: Roland Studer\n  url: https://rstuder.ch/\n  rss: https://rstuder.ch/feed.xml\n- name: Ronan Limon Duparcmeur\n  url: https://2-45.pm/articles/\n  rss: https://2-45.pm/feed.xml\n- name: Ross\n  url: https://www.reinhardt.io/blog/\n  rss: http://reinhardt.io/feed.xml\n- name: Ross Kaffenberger\n  url: https://rossta.net/blog/\n  rss: https://rossta.net/feed.xml\n- name: Ross Kaffenberger (Joy of Rails)\n  url: https://joyofrails.com/\n  rss: https://joyofrails.com/feed\n- name: Ruslan Gafurov\n  url: https://gafur.me/blog/\n- name: Rustam A. Gasanov (Web archive)\n  url: http://web.archive.org/web/20220503193002/http://rustamagasanov.com/\n- name: Ryan Bates\n  url: https://rbates.dev/\n  rss: https://rbates.dev/rss.xml\n- name: Ryan Bigg\n  url: https://ryanbigg.com/blog\n  rss: https://ryanbigg.com/feed.xml\n- name: Ryan Davis\n  url: https://www.zenspider.com/ruby/tags/ruby.html\n  rss: https://www.zenspider.com/atom.xml\n- name: Ryan Johnston\n  url: https://ryjo.codes/\n- name: Sahil Gadimbayli\n  url: https://www.ramblingcode.dev/tags/ruby/\n  rss: https://www.ramblingcode.dev/tags/ruby/index.xml\n- name: Samuel Williams\n  url: https://www.codeotaku.com/journal/index\n  rss: https://www.codeotaku.com/journal/atom\n- name: Sandi Metz\n  url: https://sandimetz.com/blog\n  rss: https://sandimetz.com/blog?format=rss\n- name: Scott Bartell\n  url: https://scottbartell.com/\n  rss: https://scottbartell.com/feed.xml\n- name: Scott Hanselman\n  url: https://www.hanselman.com/blog/category/ruby\n  rss: https://www.hanselman.com/blog/feed/rss\n- name: Scott Johnson\n  url: https://fuzzyblog.io/blog/tag.html#ruby\n  rss: http://fuzzyblog.io/blog/feed.xml\n- name: Scott Watermasysk\n  url: https://scottw.com/\n  rss: https://scottw.com/feed.xml\n- name: Scott Werner\n  url: https://worksonmymachine.substack.com/\n  rss: https://worksonmymachine.substack.com/feed\n- name: Sean C Davis\n  url: https://www.seancdavis.com/topics/ruby/\n  rss: https://www.seancdavis.com/feed.xml\n- name: Seb Wilgosz\n  url: https://swilgosz.hashnode.dev/\n  rss: https://swilgosz.hashnode.dev/rss.xml\n- name: Shayon Mukherjee\n  url: https://www.shayon.dev/post/\n  rss: https://www.shayon.dev/post/index.xml\n- name: Shiva Bhusal\n  url: https://shivabhusal.com/\n- name: Shivam Chahar\n  url: https://www.shivamchahar.com/posts\n  rss: https://www.shivamchahar.com/feed.xml\n- name: Sid Krishnan\n  url: https://ducktypelabs.com/\n- name: Sihui Huang\n  url: https://www.sihui.io/category/ruby-on-rails/\n  rss: https://www.sihui.io/feed/\n- name: Sreeram Venkitesh\n  url: https://sreeram.xyz/blog\n  rss: https://sreeram.xyz/feed.xml\n- name: Stan Lo\n  url: https://st0012.dev/\n  rss: https://st0012.dev/rss.xml\n- name: Stanislav Katkov\n  url: https://skatkov.com/blog\n  rss: https://skatkov.com/feed.xml\n- name: Stanko Krtalić\n  url: https://stanko.io/articles\n  rss: https://stanko.io/articles/rss\n- name: Stefan Botzenhart\n  url: https://www.botzenhart.io/articles\n  rss: https://www.botzenhart.io/undefined/rss/feed.xml\n- name: Stefan Wienert\n  url: https://www.stefanwienert.de/categories/ruby/\n  rss: https://www.stefanwienert.de/feed.xml\n- name: Stefan Wintermeyer\n  url: https://medium.com/@wintermeyer\n  rss: https://medium.com/feed/@wintermeyer\n- name: Stephan Kämper\n  url: https://seasidetesting.com/\n  rss: https://seasidetesting.com/feed/\n- name: Stephen Ierodiaconou\n  url: https://www.diaconou.com/blog/\n- name: Stephen Margheim\n  url: https://fractaledmind.github.io/posts/\n  rss: https://fractaledmind.github.io/feed.xml\n- name: Steve Klabnik\n  url: https://steveklabnik.com/writing\n  rss: https://steveklabnik.com/feed.xml\n- name: Steve Polito\n  url: https://stevepolito.design/blog\n  rss: https://stevepolito.design/feed.xml\n- name: Steven Harman\n  url: https://stevenharman.net/archive\n  rss: https://stevenharman.net/feed.xml\n- name: Steven Yue\n  url: https://stevenyue.com/\n  rss: https://stevenyue.com/feed.xml\n- name: Stuart Frost\n  url: https://www.stufro.com/\n  rss: https://www.stufro.com/%20/feed.xml\n- name: Stuart Yamartino\n  url: https://stuyam.com/blog\n- name: Sulman Baig\n  url: https://sulmanweb.com/\n  rss: https://sulmanweb.com/rss.xml\n- name: Suraj Mishra\n  url: https://monorails.substack.com/\n  rss: https://monorails.substack.com/feed\n- name: Swapnil Gourshete (RailsExamples)\n  url: https://railsexamples.com/index.html\n- name: Tejas Bubane\n  url: https://tejasbubane.github.io/tags/ruby/\n  rss: https://tejasbubane.github.io/rss.xml\n- name: Tekin Süleyman\n  url: https://tekin.co.uk/writing/\n  rss: https://tekin.co.uk/atom.xml\n- name: Thomas Countz\n  url: https://thomascountz.com/\n  rss: https://thomascountz.com/atom.xml\n- name: Thomas Hurst\n  url: https://hur.st/\n- name: Thomas Leitner\n  url: https://gettalong.org/posts.html\n  rss: https://gettalong.org/posts.rss\n- name: Tiago (honeyryder)\n  url: https://honeyryderchuck.gitlab.io/posts/\n  rss: https://honeyryderchuck.gitlab.io/atom.xml\n- name: Tim Riley\n  url: https://timriley.info/posts\n  rss: https://timriley.info/posts_feed\n- name: Tom Dalling\n  url: https://www.tomdalling.com/blog/\n  rss: https://www.tomdalling.com/blog/feed/\n- name: Tom de Bruijn\n  url: https://tomdebruijn.com/\n  rss: https://tomdebruijn.com/feed.xml\n- name: Tom Mango\n  url: https://sleepingpotato.com/\n  rss: https://sleepingpotato.com/rss/\n- name: Tom Stuart\n  url: https://tomstu.art/articles\n  rss: https://tomstu.art/articles.atom\n- name: Tomas Valent\n  url: https://blog.eq8.eu/\n  rss: https://blog.eq8.eu/feed.xml\n- name: Tony Ennis\n  url: https://www.tonyennis.com/dev\n- name: Tristan Dunn\n  url: https://tristandunn.com\n  rss: https://tristandunn.com/feed\n- name: Tristan Penman\n  url: https://tristanpenman.com/blog/\n  rss: https://tristanpenman.com/feed.xml\n- name: Tuomas Jomppanen\n  url: https://www.jomppanen.com/archive\n- name: Tëma Bolshakov\n  url: https://blog.bolshakov.dev/\n  rss: https://blog.bolshakov.dev/feed.xml\n- name: Unathi Chonco\n  url: https://blog.unathichonco.com/\n  rss: https://blog.unathichonco.com/rss.xml\n- name: Vasiliy Ermolovich\n  url: https://nashby.github.io/\n  rss: https://nashby.github.io/atom.xml\n- name: Vasily Polovnyov\n  url: https://vasily.polovnyov.ru/\n  rss: https://vasily.polovnyov.ru/feed.xml\n- name: Vicente Reig\n  url: https://oss.vicente.services/dspy.rb/blog/\n- name: Victor Afanasev\n  url: https://vifreefly.github.io/\n  rss: https://vifreefly.github.io/feed.xml\n- name: Victor Shepelev (zverok)\n  url: https://zverok.space/writing/\n  rss: https://zverok.space/feed.xml\n- name: Victor Wynne\n  url: https://victorwynne.com/vault/\n  rss: https://victorwynne.com/feed.xml\n- name: Vinay Keerthi\n  url: https://tech.stonecharioteer.com/posts/\n  rss: https://tech.stonecharioteer.com/posts/index.xml\n- name: Vini Oyama\n  url: https://vinioyama.com/blog/\n  rss: https://vinioyama.com/feed/\n- name: Vitalii Elenhaupt\n  url: https://veelenga.github.io/\n  rss: https://veelenga.github.io/feed.xml\n- name: Vito Botta (Web archive)\n  url: https://web.archive.org/web/20230803211048/https://vitobotta.com/tags/ruby/\n- name: Vladislav Kopylov\n  url: https://kopilov-vlad.medium.com/\n  rss: https://medium.com/feed/@kopilov-vlad\n- name: Way Mondo\n  url: https://waymondo.com/\n  rss: https://waymondo.com/index.xml\n- name: Weston Ganger\n  url: https://westonganger.com/posts\n- name: Will Jessop\n  url: https://willj.net/tags/ruby/\n  rss: https://willj.net/rss.xml\n- name: William Kennedy\n  url: https://williamkennedy.ninja/posts/\n  rss: https://williamkennedy.ninja/feed.xml\n- name: Yaroslav Shmarov\n  url: https://blog.corsego.com/\n- name: Yatish Mehta\n  url: https://yatishmehta.com/blog\n- name: Yegor Bugayenko\n  url: https://www.yegor256.com/tag/ruby.html\n  rss: https://www.yegor256.com/rss.xml\n- name: Yehuda Katz\n  url: https://yehudakatz.com/\n  rss: https://yehudakatz.com/rss/\n- name: Yevhen Kuzminov\n  url: http://stdout.in/en\n  rss: http://stdout.in/en/cat/all.rss\n- name: Yorick Peterse\n  url: https://yorickpeterse.com/\n  rss: https://yorickpeterse.com/feed.xml\n- name: Yoshiki\n  url: https://takagi.blog/tags/ruby/\n  rss: https://takagi.blog/tags/ruby/rss.xml\n- name: Younes SERRAJ\n  url: https://younes.codes/\n  rss: https://younes.codes/posts.rss\n- name: Youssef Boulkaid\n  url: https://blog.yboulkaid.com/blog\n  rss: https://blog.yboulkaid.com/feed.xml\n- name: Yuri Bocharov\n  url: https://blog.yuribocharov.dev/\n  rss: https://blog.yuribocharov.dev/feed.xml\n- name: Zacharias Dyna Knudsen\n  url: https://za.chari.as/\n- name: Zil Norvilis\n  url: https://norvilis.com\n  rss: https://norvilis.com/feed.xml\n- name: Владимир Мирошниченко\n  url: https://gururuby.ru/\n  rss: https://gururuby.ru/atom.xml\n- name: Иван Шихалев\n  url: https://shikhalev.github.io/tech/programming/ruby/\n  rss: https://shikhalev.github.io/feed.xml\n"
  },
  {
    "path": "data/podcast.yml",
    "content": "---\n- name: Code and the Coding Coders who Code it\n  url: https://podcast.drbragg.dev\n  rss: https://feeds.buzzsprout.com/1927628.rss\n- name: Code with Jason\n  url: https://www.codewithjason.com/podcast\n  rss: https://feeds.buzzsprout.com/1878319.rss\n- name: Dead Code\n  url: https://shows.acast.com/dead-code\n  rss: https://feeds.acast.com/public/shows/dead-code\n- name: Friendly Show\n  url: https://www.friendly.show\n  rss: https://feeds.buzzsprout.com/2278525.rss\n- name: IndieRails\n  url: https://www.indierails.com\n  rss: https://feeds.transistor.fm/indierails\n- name: On Rails\n  url: https://onrails.buzzsprout.com\n  rss: https://feeds.buzzsprout.com/2462975.rss\n- name: Remote Ruby\n  url: https://www.remoteruby.com/\n  rss: https://feeds.buzzsprout.com/2260490.rss\n- name: Rooftop Ruby Podcast\n  url: https://www.rooftopruby.com/\n  rss: https://feeds.buzzsprout.com/2108545.rss\n- name: Ruby Rogues\n  url: https://topenddevs.com/podcasts/ruby-rogues/\n  rss: https://www.spreaker.com/show/6102073/episodes/feed\n- name: The Bike Shed\n  url: https://bikeshed.thoughtbot.com\n  rss: https://bikeshed.thoughtbot.com/rss\n- name: The Ruby Gems Podcast\n  url: https://www.buzzsprout.com/2509083\n  rss: https://feeds.buzzsprout.com/2509083.rss\n- name: The Ruby on Rails Podcast\n  url: https://www.therubyonrailspodcast.com/\n  rss: https://www.therubyonrailspodcast.com/rss\n"
  },
  {
    "path": "data/screencast_livestream.yml",
    "content": "---\n- name: ChaelCodes\n  url: https://www.twitch.tv/ChaelCodes\n- name: CJ Avilla\n  url: https://www.youtube.com/@cjav_dev\n  rss: https://www.youtube.com/feeds/videos.xml?channel_id=UCYUC-bdnQRJDhZRL2c_NKVw\n- name: Conner Jensen\n  url: https://www.youtube.com/@aiwithconner\n  rss: https://www.youtube.com/feeds/videos.xml?channel_id=UCUeZ3YgblYkMQt0wJP3OR-Q\n- name: Deanin\n  url: https://www.youtube.com/@Deanin\n  rss: https://www.youtube.com/feeds/videos.xml?channel_id=UCRQv-3VvPT9mArF5RfrlpKQ\n- name: Higher Theory Dev\n  url: https://www.youtube.com/@HigherTheoryDev\n  rss: https://www.youtube.com/feeds/videos.xml?channel_id=UCJeItdDBizxD7-BXnSSrE9w\n- name: Ken Greeff\n  url: https://www.youtube.com/@kengreeff\n  rss: https://www.youtube.com/feeds/videos.xml?channel_id=UCuya5UWfi4fMvhQin-JosRA\n- name: pushcx\n  url: https://push.cx/stream\n  rss: https://push.cx/feed.xml\n- name: Ruby Australia\n  url: https://www.youtube.com/@RubyAustralia\n  rss: https://www.youtube.com/feeds/videos.xml?channel_id=UCr38SHAvOKMDyX3-8lhvJHA\n- name: SupeRails\n  url: https://www.youtube.com/@SupeRails\n  rss: https://www.youtube.com/feeds/videos.xml?channel_id=UCyr6ZTmztFW3FB4qG_97FoA\n- name: TenderlovesCoolStuff\n  url: https://www.youtube.com/@TenderlovesCoolStuff\n  rss: https://www.youtube.com/feeds/videos.xml?channel_id=UCCwuRBRF-IPihV4bob3Ko2w\n- name: TypeFast\n  url: https://www.youtube.com/@typefastco\n- name: Webcrunch\n  url: https://www.youtube.com/@Webcrunch\n  rss: https://www.youtube.com/feeds/videos.xml?channel_id=UCzePijHDYnVHIXW6HYTL4dg\n"
  },
  {
    "path": "data/social_news_aggregation.yml",
    "content": "---\n- name: daily.dev\n  url: https://app.daily.dev/search?q=rails\n- name: Dev.to Ruby\n  url: https://dev.to/t/ruby\n- name: DevZone (Old Codeguida)\n  url: https://devzone.org.ua/tag/ruby\n  rss: https://devzone.org.ua/feed/tag/ruby\n- name: Habr Ruby\n  url: https://habr.com/ru/hubs/ruby/articles/\n  rss: https://habr.com/ru/rss/hubs/ruby/articles/?fl=ru\n- name: Hashnode ruby\n  url: https://hashnode.com/n/ruby\n- name: Hashnode rubyonrails\n  url: https://hashnode.com/n/rubyonrails\n  rss: https://hashnode.com/n/rubyonrails/rss\n- name: Human Coders News Ruby\n  url: https://news.humancoders.com/t/ruby\n  rss: https://news.humancoders.com/t/ruby/items/feed\n- name: Mastodon ruby.social\n  url: https://ruby.social/explore\n- name: Medium Ruby\n  url: https://medium.com/tag/ruby\n  rss: https://medium.com/sitemap/sitemap.xml\n- name: Reddit Ruby\n  url: https://www.reddit.com/r/ruby/\n- name: RoboRuby (Ruby AI News)\n  url: https://rubyai.beehiiv.com/\n- name: RubyNews\n  url: https://ruby.news/\n"
  },
  {
    "path": "opml/all.opml",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<opml version='2.0'>\n  <head>\n    <title>Subscriptions</title>\n    <dateCreated>Sat, 30 Aug 2025 11:45:00 +1200</dateCreated>\n    <dateModified>Mon, 23 Mar 2026 10:38:52 +0300</dateModified>\n  </head>\n  <body>\n    <outline text='Awesome Ruby Blogs: community'>\n      <outline type='rss' text='Blogging On Rails' xmlUrl='https://onrails.blog/feed/'/>\n      <outline type='rss' text='Boring Rails' xmlUrl='https://boringrails.com/feed.xml'/>\n      <outline type='rss' text='Bridgetown' xmlUrl='https://www.bridgetownrb.com/feed.xml'/>\n      <outline type='rss' text='Bundler' xmlUrl='https://bundler.io/blog/feed.xml'/>\n      <outline type='rss' text='Business Class Blog (Josef Strzibny)' xmlUrl='https://businessclasskit.com/blog/feed.xml'/>\n      <outline type='rss' text='Code With Rails' xmlUrl='https://codewithrails.com/rss.xml'/>\n      <outline type='rss' text='Digital Ocean (Old scotch.io)' xmlUrl='https://www.digitalocean.com/community/tutorials.atom'/>\n      <outline type='rss' text='Drifting Ruby' xmlUrl='https://www.driftingruby.com//episodes/feed.atom'/>\n      <outline type='rss' text='Drifting Ruby Blog' xmlUrl='https://blog.driftingruby.com/rss/'/>\n      <outline type='rss' text='dry-rb' xmlUrl='https://dry-rb.org/feed.xml'/>\n      <outline type='rss' text='Fullstack Ruby (Old ruby3.dev)' xmlUrl='https://www.fullstackruby.dev/feed.xml'/>\n      <outline type='rss' text='GoRails' xmlUrl='https://gorails.com/blog.rss'/>\n      <outline type='rss' text='Hanami' xmlUrl='https://hanamirb.org/atom.xml'/>\n      <outline type='rss' text='HanamiMastery' xmlUrl='https://hanamimastery.com/feed.xml'/>\n      <outline type='rss' text='Hexdevs' xmlUrl='https://www.hexdevs.com/index.xml'/>\n      <outline type='rss' text='Monospace Mentor (Jochen Lillich)' xmlUrl='https://monospacementor.com/feed/'/>\n      <outline type='rss' text='Practicing Ruby' xmlUrl='https://practicingruby.com/feed.xml'/>\n      <outline type='rss' text='Programming Zen (Antonio Cangiano)' xmlUrl='https://programmingzen.com/category/programming/feed/'/>\n      <outline type='rss' text='Rails' xmlUrl='https://rubyonrails.org/feed.xml'/>\n      <outline type='rss' text='Rails at Scale' xmlUrl='https://railsatscale.com/feed.xml'/>\n      <outline type='rss' text='Rails Designer' xmlUrl='https://railsdesigner.com/feed.xml'/>\n      <outline type='rss' text='Rails Explained' xmlUrl='https://www.railsexplained.com/feed.xml'/>\n      <outline type='rss' text='RailsApps' xmlUrl='https://blog.railsapps.org/rss'/>\n      <outline type='rss' text='RailsGrowth' xmlUrl='https://railsgrowth.com/rss/'/>\n      <outline type='rss' text='RailsNotes Blog' xmlUrl='https://railsnotes.xyz/feed.xml'/>\n      <outline type='rss' text='Ronin' xmlUrl='https://ronin-rb.dev/blog/atom.xml'/>\n      <outline type='rss' text='ROR Tips' xmlUrl='https://ror.tips/feed.xml'/>\n      <outline type='rss' text='RorVsWild' xmlUrl='https://www.rorvswild.com/blog.rss'/>\n      <outline type='rss' text='RSpec' xmlUrl='http://rspec.info/blog/feed.xml'/>\n      <outline type='rss' text='RubyCademy (Medium)' xmlUrl='https://medium.com/feed/rubycademy'/>\n      <outline type='rss' text='RubyGems' xmlUrl='https://blog.rubygems.org/atom.xml'/>\n      <outline type='rss' text='RubyInside' xmlUrl='https://medium.com/feed/rubyinside'/>\n      <outline type='rss' text='Rubyist Magazine (Rubima)' xmlUrl='https://magazine.rubyist.net/feed.xml'/>\n      <outline type='rss' text='RubyPigeon' xmlUrl='https://www.rubypigeon.com/feed.xml'/>\n      <outline type='rss' text='RubyTapas' xmlUrl='https://www.rubytapas.com/feed/'/>\n      <outline type='rss' text='SciRuby' xmlUrl='http://sciruby.com/atom.xml'/>\n      <outline type='rss' text='Short Ruby Email Courses' xmlUrl='https://learn.shortruby.com/blog/feed'/>\n      <outline type='rss' text='Sinatra' xmlUrl='https://sinatrarb.com/sinatra.github.com/feed.xml'/>\n      <outline type='rss' text='Sorbet' xmlUrl='https://sorbet.org/blog/atom.xml'/>\n      <outline type='rss' text='Taylor (Sean Earle)' xmlUrl='https://taylormadetech.dev/feed.xml'/>\n      <outline type='rss' text='Test Driving Rails Blog (Josef Strzibny)' xmlUrl='https://testdrivingrails.com/blog/feed.xml'/>\n      <outline type='rss' text='The JRuby Blog' xmlUrl='https://blog.jruby.org/feed'/>\n      <outline type='rss' text='This Week in Rails' xmlUrl='https://world.hey.com/this.week.in.rails/feed.atom'/>\n      <outline type='rss' text='Thnk And Grow' xmlUrl='https://blog.thnkandgrow.com/feed/'/>\n      <outline type='rss' text='Webcrunch' xmlUrl='https://webcrunch.com/feed.rss'/>\n      <outline type='rss' text='With a Twist' xmlUrl='https://withatwist.dev/feed.xml'/>\n    </outline>\n    <outline text='Awesome Ruby Blogs: company'>\n      <outline type='rss' text='37signals' xmlUrl='https://dev.37signals.com/feed/posts.xml'/>\n      <outline type='rss' text='8th Light' xmlUrl='https://8thlight.com/insights/feed/rss.xml'/>\n      <outline type='rss' text='Aha!' xmlUrl='https://www.aha.io/blog/feed.xml'/>\n      <outline type='rss' text='Airbrake' xmlUrl='https://blog.airbrake.io/rss.xml'/>\n      <outline type='rss' text='Alchemists' xmlUrl='https://www.alchemists.io/feeds/news.xml'/>\n      <outline type='rss' text='Appfolio Engineering' xmlUrl='https://engineering.appfolio.com/appfolio-engineering?format=rss'/>\n      <outline type='rss' text='AppSignal' xmlUrl='https://blog.appsignal.com/category/ruby-magic-feed.xml'/>\n      <outline type='rss' text='Arkency' xmlUrl='https://blog.arkency.com/feed.xml'/>\n      <outline type='rss' text='Avo' xmlUrl='https://avohq.io/blog/rss'/>\n      <outline type='rss' text='Bacancy' xmlUrl='https://www.bacancytechnology.com/blog/wp-json/wp/v2/categories/35'/>\n      <outline type='rss' text='Bemi' xmlUrl='https://blog.bemi.io/rss/'/>\n      <outline type='rss' text='BetaCraft' xmlUrl='https://betacraft.com/feed/'/>\n      <outline type='rss' text='BigBinary' xmlUrl='https://www.bigbinary.com/blog/feed.xml'/>\n      <outline type='rss' text='BoTree Technologies' xmlUrl='https://www.botreetechnologies.com/blog/feed/'/>\n      <outline type='rss' text='Brainspec' xmlUrl='http://brainspec.com/blog/atom.xml'/>\n      <outline type='rss' text='Carmatec' xmlUrl='https://www.carmatec.com/feed/'/>\n      <outline type='rss' text='Census' xmlUrl='https://census.dev/blog?format=rss'/>\n      <outline type='rss' text='Codemancers' xmlUrl='https://www.codemancers.com/rss.xml'/>\n      <outline type='rss' text='Codeminer 42' xmlUrl='https://blog.codeminer42.com/feed/'/>\n      <outline type='rss' text='Codica' xmlUrl='https://www.codica.com/rss.xml'/>\n      <outline type='rss' text='Collective Idea' xmlUrl='https://collectiveidea.com/blog/feed/'/>\n      <outline type='rss' text='Cookpad' xmlUrl='https://sourcediving.com/feed'/>\n      <outline type='rss' text='Cycode (Old Bearer)' xmlUrl='https://cycode.com/feed/'/>\n      <outline type='rss' text='Decode Fix' xmlUrl='https://decodefix.com/feed/'/>\n      <outline type='rss' text='DotRuby' xmlUrl='https://www.dotruby.com/articles.atom'/>\n      <outline type='rss' text='Engine Yard' xmlUrl='https://www.engineyard.com/blog/tag/ruby-on-rails/feed/'/>\n      <outline type='rss' text='Evil Martians' xmlUrl='https://evilmartians.com/chronicles.atom'/>\n      <outline type='rss' text='Fast Ruby' xmlUrl='https://fastruby.io/blog/rss.xml'/>\n      <outline type='rss' text='FireHydrant' xmlUrl='https://firehydrant.com/rss.xml'/>\n      <outline type='rss' text='Flagrant' xmlUrl='https://www.beflagrant.com/feed.xml'/>\n      <outline type='rss' text='Fly.io' xmlUrl='https://fly.io/ruby-dispatch/feed.xml'/>\n      <outline type='rss' text='FreeAgent' xmlUrl='https://engineering.freeagent.com/feed/'/>\n      <outline type='rss' text='Getaround' xmlUrl='https://getaround.tech/feed.xml'/>\n      <outline type='rss' text='Good Enough' xmlUrl='https://goodenough.us/feed.xml'/>\n      <outline type='rss' text='Grab Tech' xmlUrl='https://engineering.grab.com/feed.xml'/>\n      <outline type='rss' text='Gusto' xmlUrl='https://engineering.gusto.com/feed'/>\n      <outline type='rss' text='Hashrocket' xmlUrl='https://hashrocket.com/blog.rss'/>\n      <outline type='rss' text='Heroku' xmlUrl='https://blog.heroku.com/feed/'/>\n      <outline type='rss' text='Honeybadger' xmlUrl='https://www.honeybadger.io/blog/feed.xml'/>\n      <outline type='rss' text='Hybrd' xmlUrl='https://hybrd.co/posts.atom'/>\n      <outline type='rss' text='Ideamotive' xmlUrl='https://www.ideamotive.co/blog/rss.xml'/>\n      <outline type='rss' text='Infinum' xmlUrl='https://infinum.com/blog/category/engineering/feed/'/>\n      <outline type='rss' text='JetRockets' xmlUrl='https://jetrockets.com/blog.rss'/>\n      <outline type='rss' text='JetRuby' xmlUrl='https://jetruby.com/feed/'/>\n      <outline type='rss' text='Judoscale' xmlUrl='https://judoscale.com/rss.xml'/>\n      <outline type='rss' text='Kiprosh' xmlUrl='https://blog.kiprosh.com/rss/'/>\n      <outline type='rss' text='Knapsack Pro' xmlUrl='https://docs.knapsackpro.com/feed.xml'/>\n      <outline type='rss' text='Kolosek' xmlUrl='https://kolosek.com/blog/rss/'/>\n      <outline type='rss' text='Learnetto' xmlUrl='https://learnetto.com/blog/rss'/>\n      <outline type='rss' text='ManageIQ' xmlUrl='http://manageiq.org/feed.xml'/>\n      <outline type='rss' text='Mintbit' xmlUrl='https://www.mintbit.com/feed.xml'/>\n      <outline type='rss' text='Mkdev' xmlUrl='https://mkdev.me/posts.atom'/>\n      <outline type='rss' text='Netguru' xmlUrl='https://www.netguru.com/blog/rss.xml'/>\n      <outline type='rss' text='Olio' xmlUrl='https://tech.olioex.com/feed.xml'/>\n      <outline type='rss' text='Ombu Labs' xmlUrl='https://www.ombulabs.com/blog/rss.xml'/>\n      <outline type='rss' text='Planet Argon' xmlUrl='https://blog.planetargon.com/blog/entries.rss'/>\n      <outline type='rss' text='PlanetScale' xmlUrl='https://planetscale.com/blog/feed.atom'/>\n      <outline type='rss' text='Plataformatec' xmlUrl='https://blog.plataformatec.com.br/feed/'/>\n      <outline type='rss' text='Prefab' xmlUrl='https://prefab.cloud/blog/rss.xml'/>\n      <outline type='rss' text='Qameta' xmlUrl='https://qameta.com/index.xml'/>\n      <outline type='rss' text='RailsCarma' xmlUrl='https://www.railscarma.com/feed/'/>\n      <outline type='rss' text='Railsware' xmlUrl='https://railsware.com/blog/feed/'/>\n      <outline type='rss' text='Rebased' xmlUrl='https://blog.rebased.pl/feed.xml'/>\n      <outline type='rss' text='RNDSOFT' xmlUrl='https://blog.rnds.pro/data/rss'/>\n      <outline type='rss' text='Ruby &amp; Elixir MobiDev Team Blog' xmlUrl='https://ruby.mobidev.biz/posts/index.xml'/>\n      <outline type='rss' text='Ruby Elders' xmlUrl='https://rubyelders.com/writings.atom'/>\n      <outline type='rss' text='RubyGarage' xmlUrl='https://rubygarage.org/blog.rss'/>\n      <outline type='rss' text='Rubyroid Labs' xmlUrl='https://rubyroidlabs.com/blog/feed/'/>\n      <outline type='rss' text='Saeloun' xmlUrl='https://blog.saeloun.com/feed.xml'/>\n      <outline type='rss' text='SerpApi' xmlUrl='https://serpapi.com/blog/rss/'/>\n      <outline type='rss' text='Simple Thread' xmlUrl='https://www.simplethread.com/feed/'/>\n      <outline type='rss' text='Skylight' xmlUrl='https://blog.skylight.io/rss/'/>\n      <outline type='rss' text='Sloboda Studio' xmlUrl='https://sloboda-studio.com/feed/rdf/'/>\n      <outline type='rss' text='Snyk' xmlUrl='https://snyk.io/blog/feed/'/>\n      <outline type='rss' text='Splitwise' xmlUrl='https://blog.splitwise.com/feed/'/>\n      <outline type='rss' text='Spritle' xmlUrl='https://www.spritle.com/blog/feed/'/>\n      <outline type='rss' text='Square' xmlUrl='https://developer.squareup.com/blog/rss.xml'/>\n      <outline type='rss' text='Super Good Software' xmlUrl='https://supergood.software/rss.xml'/>\n      <outline type='rss' text='The Dev Post (Truemark)' xmlUrl='https://www.thedevpost.com/feed/'/>\n      <outline type='rss' text='Tosbourn' xmlUrl='https://tosbourn.com/feed.xml'/>\n      <outline type='rss' text='Twilio' xmlUrl='https://www.twilio.com/sitemap.xml'/>\n      <outline type='rss' text='Ubicloud' xmlUrl='https://www.ubicloud.com/rss/rss.xml'/>\n      <outline type='rss' text='Vector Logic' xmlUrl='https://www.vector-logic.com/blog/posts.rss'/>\n      <outline type='rss' text='Wonolo' xmlUrl='https://engineeringblog.wonolo.com/tag/ruby/rss.xml'/>\n    </outline>\n    <outline text='Awesome Ruby Blogs: newsletter'>\n      <outline type='rss' text='Awesome Ruby Newsletter' xmlUrl='https://ruby.libhunt.com/newsletter/feed'/>\n      <outline type='rss' text='Full Stack Ruby on Rails Weekly Bookmarks' xmlUrl='https://dcyoungdev.substack.com/feed'/>\n      <outline type='rss' text='Hotwire Native Weekly' xmlUrl='https://newsletter.masilotti.com/feed'/>\n      <outline type='rss' text='Hotwire Weekly' xmlUrl='https://www.hotwireweekly.com/rss.xml'/>\n      <outline type='rss' text='Joe Masilotti&apos;s newsletter' xmlUrl='https://masilotti.com/feed.xml'/>\n      <outline type='rss' text='One Ruby Thing' xmlUrl='https://andycroll.com/index.xml'/>\n      <outline type='rss' text='Ruby Biscuit' xmlUrl='https://www.rubybiscuit.fr/feed'/>\n      <outline type='rss' text='Ruby Daily' xmlUrl='https://rubydaily.org/feeds_subdomain/RubyDaily/'/>\n      <outline type='rss' text='Ruby on Rails - Monthly' xmlUrl='https://sajjadumar.substack.com/feed'/>\n      <outline type='rss' text='Ruby Weekly' xmlUrl='https://rubyweekly.com/rss/'/>\n      <outline type='rss' text='RubyFlow' xmlUrl='https://rubyflow.com/rss'/>\n      <outline type='rss' text='Rubyland' xmlUrl='https://rubyland.news/feed.rss'/>\n      <outline type='rss' text='Short Ruby Newsletter' xmlUrl='https://feed.newsletter.shortruby.com'/>\n      <outline type='rss' text='Sustainable Development and More' xmlUrl='https://buttondown.com/davetron5000/rss'/>\n      <outline type='rss' text='The Code Gardener' xmlUrl='https://the.codegardener.com/rss/'/>\n      <outline type='rss' text='The RailsNotes Newsletter' xmlUrl='https://railsnotes.xyz/feed.xml'/>\n      <outline type='rss' text='This week in Rails' xmlUrl='https://rails-weekly.ongoodbits.com/feed'/>\n      <outline type='rss' text='Token Ruby' xmlUrl='https://tokenruby.com/rss'/>\n      <outline type='rss' text='Women On Rails Newsletter' xmlUrl='https://womenonrailsinternational.substack.com/feed'/>\n    </outline>\n    <outline text='Awesome Ruby Blogs: other'/>\n    <outline text='Awesome Ruby Blogs: personal'>\n      <outline type='rss' text='Aaron Patterson' xmlUrl='https://tenderlovemaking.com/atom.xml'/>\n      <outline type='rss' text='Aaron Sumner (Left of the Dev (formerly Everyday Rails))' xmlUrl='https://leftofthe.dev/atom.xml'/>\n      <outline type='rss' text='Abhay Nikam' xmlUrl='https://www.abhaynikam.me/rss.xml'/>\n      <outline type='rss' text='Aboobacker MK' xmlUrl='https://aboobacker.in/feed.xml'/>\n      <outline type='rss' text='Adam Tomeček' xmlUrl='https://blog.tmck.cz/feed.xml'/>\n      <outline type='rss' text='Adrien Siami' xmlUrl='https://blog.siami.fr/feed.xml'/>\n      <outline type='rss' text='Agnieszka Małaszkiewicz' xmlUrl='https://womanonrails.com/feed.xml'/>\n      <outline type='rss' text='Ahmed' xmlUrl='https://aonemd.com/index.xml'/>\n      <outline type='rss' text='Ahmed Nadar (hashnode)' xmlUrl='https://ahmednadar.hashnode.dev/rss.xml'/>\n      <outline type='rss' text='Akshay Birajdar' xmlUrl='https://bytes.akshaybirajdar.com/feed.xml'/>\n      <outline type='rss' text='Akshay Khot (Write Software, Well)' xmlUrl='https://www.writesoftwarewell.com/rss/'/>\n      <outline type='rss' text='Akshay Mohite' xmlUrl='https://www.rubyinrails.com/feed.xml'/>\n      <outline type='rss' text='Alberto Almagro' xmlUrl='https://albertoalmagro.com/feed/'/>\n      <outline type='rss' text='Alessandro Rodi' xmlUrl='https://coorasse.com/feed.xml'/>\n      <outline type='rss' text='Alessandro Rodi (Medium)' xmlUrl='https://medium.com/feed/@coorasse'/>\n      <outline type='rss' text='Alex Taylor' xmlUrl='https://alextaylor.ca/atom.xml'/>\n      <outline type='rss' text='Alexander Butt-Piercey' xmlUrl='https://apiercey.github.io/posts/index.xml'/>\n      <outline type='rss' text='Alexandre Barret' xmlUrl='https://alexbarret.com/feed.xml'/>\n      <outline type='rss' text='Alexey Poimtsev' xmlUrl='https://alec-c4.com/rss.xml'/>\n      <outline type='rss' text='Alexey Vasiliev' xmlUrl='http://leopard.in.ua/rss.xml'/>\n      <outline type='rss' text='Alexis Bernard' xmlUrl='https://alexis.bernard.io/blog.rss'/>\n      <outline type='rss' text='Amir Sharif' xmlUrl='https://www.amirsharif.com/feed.rss'/>\n      <outline type='rss' text='Andrei Kaleshka' xmlUrl='https://widefix.com/blog/feed.xml'/>\n      <outline type='rss' text='Andrei Maxim' xmlUrl='https://andreimaxim.com/feed.xml'/>\n      <outline type='rss' text='Andres Chacon' xmlUrl='https://a-chacon.com/en/feed.xml'/>\n      <outline type='rss' text='Andrew Kane' xmlUrl='https://ankane.org/feed.rss'/>\n      <outline type='rss' text='Andrew Nesbitt' xmlUrl='https://nesbitt.io/feed.xml'/>\n      <outline type='rss' text='Andrey Eremin' xmlUrl='https://www.eremin.eu/feed/blog/feed.xml'/>\n      <outline type='rss' text='Andrii Konchyn' xmlUrl='https://andrykonchin.github.io/feed.xml'/>\n      <outline type='rss' text='André Arko' xmlUrl='https://andre.arko.net/atom.xml'/>\n      <outline type='rss' text='Andy Croll' xmlUrl='https://andycroll.com/index.xml'/>\n      <outline type='rss' text='Andy Leverenz' xmlUrl='https://webcrunch.com/feed.rss'/>\n      <outline type='rss' text='Andy Maleh' xmlUrl='https://andymaleh.blogspot.com/feeds/posts/default'/>\n      <outline type='rss' text='Andy Waite' xmlUrl='https://andywaite.com/feed.xml'/>\n      <outline type='rss' text='Ankit Gupta' xmlUrl='https://ankit-gupta.com/feed.xml'/>\n      <outline type='rss' text='Anthony Drake' xmlUrl='https://www.t27duck.com/posts.xml'/>\n      <outline type='rss' text='Anton Davydov' xmlUrl='https://www.davydovanton.com/atom.xml'/>\n      <outline type='rss' text='Aotokitsuruya' xmlUrl='https://blog.aotoki.me/en/index.xml'/>\n      <outline type='rss' text='Augusts Bautra' xmlUrl='https://epigene.github.io/feed.xml'/>\n      <outline type='rss' text='Austin Ziegler' xmlUrl='https://www.halostatue.ca/index.xml'/>\n      <outline type='rss' text='Avdi Grimm' xmlUrl='https://avdi.codes/feed/'/>\n      <outline type='rss' text='Avi Flombaum' xmlUrl='https://code.avi.nyc/rss.xml'/>\n      <outline type='rss' text='Axel Kee' xmlUrl='https://rubyyagi.com/feed.xml'/>\n      <outline type='rss' text='Ayush Newatia' xmlUrl='https://binarysolo.blog/feed.xml'/>\n      <outline type='rss' text='Balázs Kutil' xmlUrl='https://balazs.kutilovi.cz/index.xml'/>\n      <outline type='rss' text='Bamchi' xmlUrl='https://bamchi.me/en/feed'/>\n      <outline type='rss' text='Ben Koshy' xmlUrl='https://benkoshy.github.io/feed.xml'/>\n      <outline type='rss' text='Ben Pickles' xmlUrl='https://www.benpickles.com/articles.atom'/>\n      <outline type='rss' text='Ben Sheldon' xmlUrl='https://island94.org/feed.xml'/>\n      <outline type='rss' text='Benito Serna' xmlUrl='https://bhserna.com/feed.xml'/>\n      <outline type='rss' text='Benjamin Fleischer' xmlUrl='https://www.benjaminfleischer.com/atom.xml'/>\n      <outline type='rss' text='Benoit Daloze' xmlUrl='https://eregon.me/blog/feed.xml'/>\n      <outline type='rss' text='Benoit Tigeot' xmlUrl='https://benoittgt.github.io/feed/feed.xml'/>\n      <outline type='rss' text='Bernie Chiu' xmlUrl='https://berniechiu.github.io/blog/sitemap.xml'/>\n      <outline type='rss' text='Bhumi' xmlUrl='https://theleafnode.com/feed.xml'/>\n      <outline type='rss' text='Bill Tihen' xmlUrl='https://btihen.dev/posts/ruby/index.xml'/>\n      <outline type='rss' text='Bohdan Pohorilets' xmlUrl='https://bpohoriletz.github.io/feed.xml'/>\n      <outline type='rss' text='Borja Garcia de Vinuesa Ordovás' xmlUrl='https://bgvo.io/feed.xml'/>\n      <outline type='rss' text='Bozhidar Batsov' xmlUrl='https://metaredux.com/feed.xml'/>\n      <outline type='rss' text='Bradley Schaefer (Soulcutter)' xmlUrl='https://www.soulcutter.com/feed.xml'/>\n      <outline type='rss' text='Brandon Casci' xmlUrl='https://www.brandoncasci.com/feed.xml'/>\n      <outline type='rss' text='Brendan Bondurant' xmlUrl='https://brendanbondurant.com/feed/'/>\n      <outline type='rss' text='Bruno Sutic' xmlUrl='https://brunosutic.com/blog/feed'/>\n      <outline type='rss' text='Bèr Kessels' xmlUrl='https://berk.es/2007/09/27/snipplr-drupals-code-snippet-feed/'/>\n      <outline type='rss' text='Caleb Hearth' xmlUrl='https://calebhearth.com/atom.xml'/>\n      <outline type='rss' text='Caleb Woods' xmlUrl='https://www.calebwoods.com/feed.xml'/>\n      <outline type='rss' text='Carl Wiedemann' xmlUrl='https://carlwiedemann.github.io/feed.xml'/>\n      <outline type='rss' text='Carmine Paolino' xmlUrl='https://paolino.me/feed.xml'/>\n      <outline type='rss' text='Cassey Lottman' xmlUrl='https://cassey.dev/rss/'/>\n      <outline type='rss' text='Charles Oliver Nutter' xmlUrl='https://blog.headius.com/feed.xml'/>\n      <outline type='rss' text='Chen Kinnrot' xmlUrl='https://kinnrot.github.io/feed.xml'/>\n      <outline type='rss' text='Chris Blunt' xmlUrl='https://www.chrisblunt.com/feed/'/>\n      <outline type='rss' text='Chris Dillon' xmlUrl='https://squarism.com/feed.xml'/>\n      <outline type='rss' text='Chris Kottom' xmlUrl='https://chriskottom.com/articles/feed.xml'/>\n      <outline type='rss' text='Chris Sinjakli' xmlUrl='https://blog.sinjakli.co.uk/feed.xml'/>\n      <outline type='rss' text='Cody Norman' xmlUrl='https://codynorman.com/feed.xml'/>\n      <outline type='rss' text='Damian C. Rossney' xmlUrl='https://rossney.net/feed.xml'/>\n      <outline type='rss' text='Daniela Baron' xmlUrl='https://danielabaron.me/rss.xml'/>\n      <outline type='rss' text='Darius Pirvulescu' xmlUrl='https://organicdarius.com/blog/feed.xml'/>\n      <outline type='rss' text='David Boureau (AlsoHelp)' xmlUrl='https://alsohelp.com/rss.xml'/>\n      <outline type='rss' text='David Bryant Copeland' xmlUrl='https://naildrivin5.com/atom.xml'/>\n      <outline type='rss' text='David Colby' xmlUrl='https://colby.so/atom.xml'/>\n      <outline type='rss' text='David Heinemeier Hansson' xmlUrl='https://world.hey.com/dhh/feed.atom'/>\n      <outline type='rss' text='David Morales (DevelClan)' xmlUrl='https://develclan.com/rss.xml'/>\n      <outline type='rss' text='David Silva' xmlUrl='https://davidslv.uk/feed.xml'/>\n      <outline type='rss' text='Dean DeHart' xmlUrl='https://deanin.com/wp-json/wp/v2/pages/175'/>\n      <outline type='rss' text='Deep dive' xmlUrl='https://shime.sh/feed.xml'/>\n      <outline type='rss' text='Deepak Mahakale' xmlUrl='https://deepakmahakale.com/blog/feed.xml'/>\n      <outline type='rss' text='Denis Defreyne' xmlUrl='https://denisdefreyne.com/feeds/weeknotes.xml'/>\n      <outline type='rss' text='Dennis Martinez' xmlUrl='https://dev-tester.com/rss/'/>\n      <outline type='rss' text='Dennis Paagman' xmlUrl='https://paagman.dev/feed.xml'/>\n      <outline type='rss' text='Devanil' xmlUrl='https://devanil.dev/rss.xml'/>\n      <outline type='rss' text='Dhaval Singh' xmlUrl='https://www.dsdev.in/rss.xml'/>\n      <outline type='rss' text='Dick Davis' xmlUrl='https://dick.codes/feed.xml'/>\n      <outline type='rss' text='Dimiter Petrov' xmlUrl='https://dimiterpetrov.com/blog/feed.xml'/>\n      <outline type='rss' text='Dimitris Zorbas' xmlUrl='https://zorbash.com/tags/ruby/index.xml'/>\n      <outline type='rss' text='Dirk Jonker' xmlUrl='https://dirkjonker.bearblog.dev/feed/'/>\n      <outline type='rss' text='Dmitriy Ivliev' xmlUrl='https://blog.ivda.dev/rss.xml'/>\n      <outline type='rss' text='Dmitry Gutov' xmlUrl='https://gutov.dev/feed.xml'/>\n      <outline type='rss' text='Dmitry Ishkov' xmlUrl='https://www.dmitry-ishkov.com/feeds/posts/default'/>\n      <outline type='rss' text='Dmitry Tsepelev' xmlUrl='https://dmitrytsepelev.dev/feed.xml'/>\n      <outline type='rss' text='Dom Christie' xmlUrl='https://domchristie.co.uk/feed.xml'/>\n      <outline type='rss' text='Donn Felker' xmlUrl='https://www.donnfelker.com/feed/'/>\n      <outline type='rss' text='Délon R. Newman' xmlUrl='https://delonnewman.name/articles/feed.xml'/>\n      <outline type='rss' text='Eileen M. Uchitelle' xmlUrl='http://eileencodes.com/feed.xml'/>\n      <outline type='rss' text='Eliot Sykes' xmlUrl='https://eliotsykes.com/feed/'/>\n      <outline type='rss' text='Emmanuel Hayford (hayford.dev)' xmlUrl='https://hayford.dev/rss/'/>\n      <outline type='rss' text='Ender Ahmet Yurt' xmlUrl='https://enderahmetyurt.com/rss/'/>\n      <outline type='rss' text='Enrico Teotti' xmlUrl='https://teotti.com/feed.xml'/>\n      <outline type='rss' text='Eric London' xmlUrl='https://ericlondon.com/feed.xml'/>\n      <outline type='rss' text='Erik Minkel' xmlUrl='https://www.erikminkel.com/rss/'/>\n      <outline type='rss' text='Evgeniy Demin' xmlUrl='https://medium.com/feed/@evgeniydemin'/>\n      <outline type='rss' text='Felice Forby' xmlUrl='https://feliceforby.com/posts_feed'/>\n      <outline type='rss' text='Felipe Contreras' xmlUrl='https://felipec.wordpress.com/feed/'/>\n      <outline type='rss' text='Felipe Philipp' xmlUrl='https://felipeelias.github.io/feed.xml'/>\n      <outline type='rss' text='Felipe Vogel' xmlUrl='https://fpsvogel.com/feed.xml'/>\n      <outline type='rss' text='Finnian Anderson' xmlUrl='https://finnian.io/tags/ruby/index.xml'/>\n      <outline type='rss' text='Florent Guilleux' xmlUrl='https://www.florentguilleux.fr/rss.xml'/>\n      <outline type='rss' text='Frank Groeneveld' xmlUrl='https://frankgroeneveld.nl/feed/'/>\n      <outline type='rss' text='Garrett Dimon' xmlUrl='https://garrettdimon.com/feed'/>\n      <outline type='rss' text='Gergő Sulymosi' xmlUrl='https://gergo.dev/atom.xml'/>\n      <outline type='rss' text='Gernot Gradwohl' xmlUrl='https://austrian-nerd.dev/index.xml'/>\n      <outline type='rss' text='Giménez Silva Germán Alberto' xmlUrl='https://rubystacknews.com/feed/'/>\n      <outline type='rss' text='Giorgi Mezurnishvili' xmlUrl='https://mzrn.sh/feed.xml'/>\n      <outline type='rss' text='Giovanni Panasiti' xmlUrl='https://www.panasiti.me/feed.xml'/>\n      <outline type='rss' text='Glauco Custodio' xmlUrl='https://glaucocustodio.github.io/feed.xml'/>\n      <outline type='rss' text='Goulven Champenois' xmlUrl='https://pro.userland.fr/feed.xml'/>\n      <outline type='rss' text='Greg Molnar' xmlUrl='https://greg.molnar.io/feed.xml'/>\n      <outline type='rss' text='Greg Navis' xmlUrl='https://www.gregnavis.com/feed.xml'/>\n      <outline type='rss' text='Guillaume Briday' xmlUrl='https://guillaumebriday.fr/articles.xml'/>\n      <outline type='rss' text='Hal Brodigan (postmodern)' xmlUrl='http://postmodern.github.io/atom.xml'/>\n      <outline type='rss' text='Haseeb Annadamban' xmlUrl='https://haseebeqx.com/posts/index.xml'/>\n      <outline type='rss' text='Henrik Nyh' xmlUrl='https://thepugautomatic.com/atom.xml'/>\n      <outline type='rss' text='Henry Maddocks' xmlUrl='https://henry.bearblog.dev/about/feed/?type=rss'/>\n      <outline type='rss' text='Hrvoje Šimić' xmlUrl='https://shime.sh/feed.xml'/>\n      <outline type='rss' text='Igor Guzak' xmlUrl='https://medium.com/feed/@igor04'/>\n      <outline type='rss' text='Igor Kuznetsov' xmlUrl='https://medium.com/feed/@igkuz'/>\n      <outline type='rss' text='Ilya Bylich' xmlUrl='https://iliabylich.github.io/index.xml'/>\n      <outline type='rss' text='Ismael Celis' xmlUrl='https://ismaelcelis.com/index.xml'/>\n      <outline type='rss' text='Ivo Anjo' xmlUrl='https://ivoanjo.me/feed.xml'/>\n      <outline type='rss' text='J. Scott Johnson' xmlUrl='http://fuzzyblog.io/blog/feed.xml'/>\n      <outline type='rss' text='Jacob Swanner' xmlUrl='https://jacobswanner.com/atom.xml'/>\n      <outline type='rss' text='Jake Worth' xmlUrl='https://jakeworth.com/posts/index.xml'/>\n      <outline type='rss' text='Jake Zimmerman' xmlUrl='https://blog.jez.io/atom.xml'/>\n      <outline type='rss' text='Jakob Skjerning' xmlUrl='https://mentalized.net/journal/entries.xml'/>\n      <outline type='rss' text='James Golick' xmlUrl='http://feeds.feedburner.com/JamesOnSoftware'/>\n      <outline type='rss' text='James Hibbard' xmlUrl='https://hibbard.eu/feed.xml'/>\n      <outline type='rss' text='Jamie Schembri' xmlUrl='https://schembri.me/rss/'/>\n      <outline type='rss' text='Jamis Buck' xmlUrl='https://feeds.feedburner.com/buckblog'/>\n      <outline type='rss' text='Jan Matuszewski' xmlUrl='https://jmatuszewski.com/feed.xml'/>\n      <outline type='rss' text='Janko Marohnić' xmlUrl='https://janko.io/feed.xml'/>\n      <outline type='rss' text='Jared Norman' xmlUrl='https://jardo.dev/blog.xml'/>\n      <outline type='rss' text='Jason Charnes' xmlUrl='https://jasoncharnes.com/feed.xml'/>\n      <outline type='rss' text='Jason Fleetwood-Bold' xmlUrl='https://jasonfleetwoodboldt.com/feed/'/>\n      <outline type='rss' text='Jason Swett' xmlUrl='https://www.codewithjason.com/wp-json/wp/v2/pages/415'/>\n      <outline type='rss' text='Jason York' xmlUrl='https://predicatemethod.com/feed.xml'/>\n      <outline type='rss' text='Javier Cervantes' xmlUrl='https://www.rubynewbie.org/feed.xml'/>\n      <outline type='rss' text='JD Gonzales' xmlUrl='https://jd.codes/index.xml'/>\n      <outline type='rss' text='Jean Boussier' xmlUrl='https://byroot.github.io/feed.xml'/>\n      <outline type='rss' text='Jemma Issroff' xmlUrl='https://jemma.dev/blog/published.xml'/>\n      <outline type='rss' text='Jens Eickmeyer' xmlUrl='https://scratchpad.blog/feed.xml'/>\n      <outline type='rss' text='Jeremy Friesen' xmlUrl='https://takeonrules.com/index.json'/>\n      <outline type='rss' text='Jeroen Weeink' xmlUrl='https://craftingruby.com/feed.xml'/>\n      <outline type='rss' text='Jesus Castello' xmlUrl='https://www.rubyguides.com/feed/'/>\n      <outline type='rss' text='Joe Masilotti' xmlUrl='https://masilotti.com/feed.xml'/>\n      <outline type='rss' text='Joel Drapper' xmlUrl='https://joel.drapper.me/rss.xml'/>\n      <outline type='rss' text='Joey Wang' xmlUrl='https://joeywang.github.io/feed.xml'/>\n      <outline type='rss' text='John Hawthorn' xmlUrl='https://www.johnhawthorn.com/atom.xml'/>\n      <outline type='rss' text='John Nunemaker' xmlUrl='https://www.johnnunemaker.com/rss/'/>\n      <outline type='rss' text='John Skiles Skinner' xmlUrl='https://johnskinnerportfolio.com/feed.xml'/>\n      <outline type='rss' text='Jon Sullivan' xmlUrl='https://jonsully.net/rss.xml'/>\n      <outline type='rss' text='Jonas Brusman' xmlUrl='https://jonas.brusman.se/rss.xml'/>\n      <outline type='rss' text='Jonathan Rochkind' xmlUrl='https://bibwild.wordpress.com/feed/'/>\n      <outline type='rss' text='Jorge Manrubia' xmlUrl='https://world.hey.com/jorge/feed.atom'/>\n      <outline type='rss' text='Jose Farias' xmlUrl='https://jose.omg.lol/feed.xml'/>\n      <outline type='rss' text='Josef Strzibny' xmlUrl='https://nts.strzibny.name/feed.xml'/>\n      <outline type='rss' text='Josh Frankel' xmlUrl='https://joshfrankel.me/feed.xml'/>\n      <outline type='rss' text='Josh McArthur' xmlUrl='https://joshmcarthur.com/feed/'/>\n      <outline type='rss' text='Josh Thompson' xmlUrl='https://www.intermediateruby.com/atom.xml'/>\n      <outline type='rss' text='Joyful Bikeshedding' xmlUrl='https://www.joyfulbikeshedding.com/feed.xml'/>\n      <outline type='rss' text='JP Camara' xmlUrl='https://jpcamara.com/categories/ruby/feed.xml'/>\n      <outline type='rss' text='Julia Evans' xmlUrl='https://jvns.ca/atom.xml'/>\n      <outline type='rss' text='Julian Rubisch' xmlUrl='https://hotwire.club/feed.xml'/>\n      <outline type='rss' text='Juliana Dias' xmlUrl='https://blog.juliana.dev/feed.xml'/>\n      <outline type='rss' text='Julija Alieckaja' xmlUrl='https://medium.com/feed/@alieckaja'/>\n      <outline type='rss' text='Julik Tarkhanov' xmlUrl='https://blog.julik.nl/feed.atom.xml'/>\n      <outline type='rss' text='Justin Cypret' xmlUrl='https://justincypret.com/feed.xml'/>\n      <outline type='rss' text='Justin Searls' xmlUrl='https://justin.searls.co/atom.xml'/>\n      <outline type='rss' text='Jônatas Davi Paganini' xmlUrl='https://ideia.me/atom.xml'/>\n      <outline type='rss' text='Kadu Diógenes' xmlUrl='https://kdiogenes.github.io/feed.xml'/>\n      <outline type='rss' text='Kallin Nagelberg' xmlUrl='http://happycampers.dance/feed.xml'/>\n      <outline type='rss' text='Karol Bąk' xmlUrl='https://kukicola.io/feed.xml'/>\n      <outline type='rss' text='Karol Galanciak' xmlUrl='https://karolgalanciak.com/feed.xml'/>\n      <outline type='rss' text='Kasper Timm Hansen' xmlUrl='https://kaspth.com/posts_feed'/>\n      <outline type='rss' text='Kasper Timm Hansen (buttondown)' xmlUrl='https://buttondown.com/kaspth/rss'/>\n      <outline type='rss' text='Kevin Glowacz' xmlUrl='https://kevin.glowacz.info/feed.xml'/>\n      <outline type='rss' text='Kevin Murphy' xmlUrl='https://kevinjmurphy.com/posts/index.xml'/>\n      <outline type='rss' text='Kevin Newton' xmlUrl='https://kddnewton.com/feed.xml'/>\n      <outline type='rss' text='Kevin Sylvestre' xmlUrl='https://ksylvest.com/feed.atom'/>\n      <outline type='rss' text='Khaja Minhajuddin' xmlUrl='https://minhajuddin.com/atom.xml'/>\n      <outline type='rss' text='Kiril Mitov' xmlUrl='https://kmitov.com/feed/'/>\n      <outline type='rss' text='Kirill Platonov' xmlUrl='https://kirillplatonov.com/feed.xml'/>\n      <outline type='rss' text='Koichi Sasada' xmlUrl='https://dev.to/feed/ko1'/>\n      <outline type='rss' text='Kuba Suder' xmlUrl='https://journal.mackuba.eu/feed.xml'/>\n      <outline type='rss' text='Kyle Keesling' xmlUrl='https://kylekeesling.com/feed.xml'/>\n      <outline type='rss' text='Kyrylo Silin' xmlUrl='https://kyrylo.org/feed.xml'/>\n      <outline type='rss' text='Landon Gray' xmlUrl='https://thedayisntgray.github.io/feed.xml'/>\n      <outline type='rss' text='Lars Peters' xmlUrl='https://larsp.de/rss/'/>\n      <outline type='rss' text='Lazarus Lazaridis' xmlUrl='https://iridakos.com/feed.xml'/>\n      <outline type='rss' text='Linas Juškevičius' xmlUrl='https://kaukas.mataroa.blog/rss/'/>\n      <outline type='rss' text='Lovro Bikić' xmlUrl='https://lovro-bikic.github.io/feed.xml'/>\n      <outline type='rss' text='Luan Nguyen' xmlUrl='https://medium.com/feed/@luanotes'/>\n      <outline type='rss' text='Luca Guidi' xmlUrl='https://lucaguidi.com/rss.xml'/>\n      <outline type='rss' text='Lucas Dohmen' xmlUrl='https://lucas.dohmen.io/feed.xml'/>\n      <outline type='rss' text='Lucian Ghinda' xmlUrl='https://allaboutcoding.ghinda.com/rss.xml'/>\n      <outline type='rss' text='Lucian Ghinda (Notes)' xmlUrl='https://notes.ghinda.com/feed.atom'/>\n      <outline type='rss' text='Luiz Eduardo Kowalski' xmlUrl='https://www.luizkowalski.net/rss/'/>\n      <outline type='rss' text='Lynn Chang' xmlUrl='https://lynnbright.com/rss.xml'/>\n      <outline type='rss' text='Maciej Litwiniuk' xmlUrl='https://maciej.litwiniuk.net/index.xml'/>\n      <outline type='rss' text='Maciej Mensfeld' xmlUrl='https://mensfeld.pl/feed/'/>\n      <outline type='rss' text='Marc Busqué' xmlUrl='https://waiting-for-dev.github.io/feed.xml'/>\n      <outline type='rss' text='Marcin Ostrowski (rubyonai.com)' xmlUrl='https://rubyonai.com/rss/'/>\n      <outline type='rss' text='Marco Roth' xmlUrl='https://marcoroth.dev/feed.xml'/>\n      <outline type='rss' text='Mario Alberto Chávez Cárdenas' xmlUrl='https://mariochavez.io/feed.xml'/>\n      <outline type='rss' text='Mark Godwin (railscraft)' xmlUrl='https://railscraft.hashnode.dev/rss.xml'/>\n      <outline type='rss' text='Martin Emde' xmlUrl='https://martinemde.com/rss.xml'/>\n      <outline type='rss' text='Mateusz Białowąs' xmlUrl='https://mateuszbialowas.com/rss.xml'/>\n      <outline type='rss' text='Matheus Richard' xmlUrl='http://matheusrich.com/feed.xml'/>\n      <outline type='rss' text='Matias Korhonen' xmlUrl='https://www.randomerrata.com/feed.xml'/>\n      <outline type='rss' text='Matt Brictson' xmlUrl='https://mattbrictson.com/blog.atom'/>\n      <outline type='rss' text='Mattia Roccoberton' xmlUrl='https://www.blocknot.es/feed.xml'/>\n      <outline type='rss' text='Max Braga' xmlUrl='https://hellomax.me/feed.xml'/>\n      <outline type='rss' text='Max Tikhomirov' xmlUrl='https://metacircu1ar.github.io/feed.xml'/>\n      <outline type='rss' text='Maxime Lapointe' xmlUrl='https://maxlap.dev/blog/feed.xml'/>\n      <outline type='rss' text='Michael Dominick' xmlUrl='https://dominickm.com/feed/'/>\n      <outline type='rss' text='Michael Grosser' xmlUrl='https://grosser.it/feed/'/>\n      <outline type='rss' text='Mike Coutermarsh' xmlUrl='https://www.mikecoutermarsh.com/rss/'/>\n      <outline type='rss' text='Mike McQuaid' xmlUrl='https://mikemcquaid.com/atom.xml'/>\n      <outline type='rss' text='Mike Perham' xmlUrl='https://mikeperham.com/index.xml'/>\n      <outline type='rss' text='Mike Wilson' xmlUrl='https://www.mikewilson.dev/feed.xml'/>\n      <outline type='rss' text='Mikhail Klimenko' xmlUrl='https://blog.klimenko.site/feed.xml'/>\n      <outline type='rss' text='Miles Woodroffe' xmlUrl='https://mileswoodroffe.com/feed.xml'/>\n      <outline type='rss' text='Mohammad A. Ali' xmlUrl='https://oldmoe.blog/feed/'/>\n      <outline type='rss' text='Mohit Sindhwani' xmlUrl='https://notepad.onghu.com/feed.xml'/>\n      <outline type='rss' text='Moncef Belyamani' xmlUrl='https://www.moncefbelyamani.com/feed.xml'/>\n      <outline type='rss' text='Mário Nzualo' xmlUrl='https://www.marionzualo.com/feed/'/>\n      <outline type='rss' text='Máximo Mussini' xmlUrl='https://maximomussini.com/feed.xml'/>\n      <outline type='rss' text='Nate Berkopec' xmlUrl='https://www.speedshop.co/feed.xml'/>\n      <outline type='rss' text='Nicholas' xmlUrl='https://wasabigeek.com/rss.xml'/>\n      <outline type='rss' text='Nick Hammond' xmlUrl='https://www.fromthekeyboard.com/rss/'/>\n      <outline type='rss' text='Nick Schwaderer (blog.schwad.org)' xmlUrl='https://blog.schwad.org/feed'/>\n      <outline type='rss' text='Nick Schwaderer (schwad.github.io)' xmlUrl='https://schwad.github.io/feed.xml'/>\n      <outline type='rss' text='Nick Sutterer' xmlUrl='https://apotonick.wordpress.com/feed/'/>\n      <outline type='rss' text='Nikita Misharin' xmlUrl='https://thesmartnik.com/feed.xml'/>\n      <outline type='rss' text='Nikola Đuza' xmlUrl='https://pragmaticpineapple.com/rss.xml'/>\n      <outline type='rss' text='Nitanshu Verma' xmlUrl='https://nitanshu.github.io/feed.xml'/>\n      <outline type='rss' text='Nithin Bekal' xmlUrl='https://nithinbekal.com/feed.xml'/>\n      <outline type='rss' text='Noah Gibbs' xmlUrl='https://codefol.io/feed.xml'/>\n      <outline type='rss' text='Noel Rappin' xmlUrl='https://noelrappin.com//blog/index.xml'/>\n      <outline type='rss' text='Nolan Phillips' xmlUrl='https://blog.nolanphillips.com/rss.xml'/>\n      <outline type='rss' text='Olly Headey' xmlUrl='https://olly.world/feed.xml'/>\n      <outline type='rss' text='Pablo Enoc' xmlUrl='https://enocc.com/feed.xml'/>\n      <outline type='rss' text='Paul Sadauskas' xmlUrl='https://blog.theamazingrando.com/feed.xml'/>\n      <outline type='rss' text='Paweł Dąbrowski' xmlUrl='https://www.paweldabrowski.com/undefined/rss/feed.xml'/>\n      <outline type='rss' text='Paweł Świątkowski' xmlUrl='https://katafrakt.me/feed.xml'/>\n      <outline type='rss' text='Peter Keogh' xmlUrl='https://keoghpe.github.io/feed.xml'/>\n      <outline type='rss' text='Peter Solnica' xmlUrl='https://solnic.dev/rss/'/>\n      <outline type='rss' text='Peter Zhu' xmlUrl='https://blog.peterzhu.ca/feed.xml'/>\n      <outline type='rss' text='Petr Hlavicka' xmlUrl='https://petr.codes/feed.xml'/>\n      <outline type='rss' text='Phil Pirozhkov' xmlUrl='https://fili.pp.ru/feed.xml'/>\n      <outline type='rss' text='Philippe Creux' xmlUrl='https://pcreux.com/feed.xml'/>\n      <outline type='rss' text='Piotr Chmolowski' xmlUrl='https://ptrchm.com/posts/index.xml'/>\n      <outline type='rss' text='Piotr Murach' xmlUrl='https://piotrmurach.com/feed.xml'/>\n      <outline type='rss' text='Prabin Poudel' xmlUrl='https://prabinpoudel.com.np/atom.xml'/>\n      <outline type='rss' text='Prabin Poudel (Zero Config Rails)' xmlUrl='https://blog.zeroconfigrails.com/rss.xml'/>\n      <outline type='rss' text='Rachael Wright-Munn' xmlUrl='https://www.chael.codes/feed.xml'/>\n      <outline type='rss' text='Radan Skorić' xmlUrl='https://radanskoric.com/feed.xml'/>\n      <outline type='rss' text='Radoslav Stankov (Rado&apos;s Blog)' xmlUrl='https://blog.rstankov.com/rss/'/>\n      <outline type='rss' text='Radoslav Stankov (Rado&apos;s Tips)' xmlUrl='https://tips.rstankov.com/feed'/>\n      <outline type='rss' text='Rafael Montas' xmlUrl='https://www.rafaelmontas.com/feed.xml'/>\n      <outline type='rss' text='Rahoul Baruah' xmlUrl='https://theartandscienceofruby.com/rss/'/>\n      <outline type='rss' text='Remi Mercier' xmlUrl='https://remimercier.com/feed.xml'/>\n      <outline type='rss' text='Renato Nitta' xmlUrl='https://renatonitta.com/feed/'/>\n      <outline type='rss' text='Rich Steinmetz' xmlUrl='https://richstone.io/rss/'/>\n      <outline type='rss' text='Richard Schneeman' xmlUrl='https://schneems.com/feed.xml'/>\n      <outline type='rss' text='Rico Sta. Cruz' xmlUrl='https://ricostacruz.com/til/rss.xml'/>\n      <outline type='rss' text='Rob Race' xmlUrl='https://robrace.dev/blog/rss.xml'/>\n      <outline type='rss' text='Rob Zolkos' xmlUrl='https://www.zolkos.com/feed.xml'/>\n      <outline type='rss' text='Robby Russell' xmlUrl='https://robbyonrails.com/feed.xml'/>\n      <outline type='rss' text='Robert Pankowecki' xmlUrl='https://pankowecki.pl/index.xml'/>\n      <outline type='rss' text='Rodrigo Rosenfeld Rosas' xmlUrl='https://rosenfeld.page/articles/tags/ruby/atom'/>\n      <outline type='rss' text='Roland Studer' xmlUrl='https://rstuder.ch/feed.xml'/>\n      <outline type='rss' text='Ronan Limon Duparcmeur' xmlUrl='https://2-45.pm/feed.xml'/>\n      <outline type='rss' text='Ross' xmlUrl='http://reinhardt.io/feed.xml'/>\n      <outline type='rss' text='Ross Kaffenberger' xmlUrl='https://rossta.net/feed.xml'/>\n      <outline type='rss' text='Ross Kaffenberger (Joy of Rails)' xmlUrl='https://joyofrails.com/feed'/>\n      <outline type='rss' text='Ryan Bates' xmlUrl='https://rbates.dev/rss.xml'/>\n      <outline type='rss' text='Ryan Bigg' xmlUrl='https://ryanbigg.com/feed.xml'/>\n      <outline type='rss' text='Ryan Davis' xmlUrl='https://www.zenspider.com/atom.xml'/>\n      <outline type='rss' text='Sahil Gadimbayli' xmlUrl='https://www.ramblingcode.dev/tags/ruby/index.xml'/>\n      <outline type='rss' text='Samuel Williams' xmlUrl='https://www.codeotaku.com/journal/atom'/>\n      <outline type='rss' text='Sandi Metz' xmlUrl='https://sandimetz.com/blog?format=rss'/>\n      <outline type='rss' text='Scott Bartell' xmlUrl='https://scottbartell.com/feed.xml'/>\n      <outline type='rss' text='Scott Hanselman' xmlUrl='https://www.hanselman.com/blog/feed/rss'/>\n      <outline type='rss' text='Scott Johnson' xmlUrl='http://fuzzyblog.io/blog/feed.xml'/>\n      <outline type='rss' text='Scott Watermasysk' xmlUrl='https://scottw.com/feed.xml'/>\n      <outline type='rss' text='Scott Werner' xmlUrl='https://worksonmymachine.substack.com/feed'/>\n      <outline type='rss' text='Sean C Davis' xmlUrl='https://www.seancdavis.com/feed.xml'/>\n      <outline type='rss' text='Seb Wilgosz' xmlUrl='https://swilgosz.hashnode.dev/rss.xml'/>\n      <outline type='rss' text='Shayon Mukherjee' xmlUrl='https://www.shayon.dev/post/index.xml'/>\n      <outline type='rss' text='Shivam Chahar' xmlUrl='https://www.shivamchahar.com/feed.xml'/>\n      <outline type='rss' text='Sihui Huang' xmlUrl='https://www.sihui.io/feed/'/>\n      <outline type='rss' text='Sreeram Venkitesh' xmlUrl='https://sreeram.xyz/feed.xml'/>\n      <outline type='rss' text='Stan Lo' xmlUrl='https://st0012.dev/rss.xml'/>\n      <outline type='rss' text='Stanislav Katkov' xmlUrl='https://skatkov.com/feed.xml'/>\n      <outline type='rss' text='Stanko Krtalić' xmlUrl='https://stanko.io/articles/rss'/>\n      <outline type='rss' text='Stefan Botzenhart' xmlUrl='https://www.botzenhart.io/undefined/rss/feed.xml'/>\n      <outline type='rss' text='Stefan Wienert' xmlUrl='https://www.stefanwienert.de/feed.xml'/>\n      <outline type='rss' text='Stefan Wintermeyer' xmlUrl='https://medium.com/feed/@wintermeyer'/>\n      <outline type='rss' text='Stephan Kämper' xmlUrl='https://seasidetesting.com/feed/'/>\n      <outline type='rss' text='Stephen Margheim' xmlUrl='https://fractaledmind.github.io/feed.xml'/>\n      <outline type='rss' text='Steve Klabnik' xmlUrl='https://steveklabnik.com/feed.xml'/>\n      <outline type='rss' text='Steve Polito' xmlUrl='https://stevepolito.design/feed.xml'/>\n      <outline type='rss' text='Steven Harman' xmlUrl='https://stevenharman.net/feed.xml'/>\n      <outline type='rss' text='Steven Yue' xmlUrl='https://stevenyue.com/feed.xml'/>\n      <outline type='rss' text='Stuart Frost' xmlUrl='https://www.stufro.com/%20/feed.xml'/>\n      <outline type='rss' text='Sulman Baig' xmlUrl='https://sulmanweb.com/rss.xml'/>\n      <outline type='rss' text='Suraj Mishra' xmlUrl='https://monorails.substack.com/feed'/>\n      <outline type='rss' text='Tejas Bubane' xmlUrl='https://tejasbubane.github.io/rss.xml'/>\n      <outline type='rss' text='Tekin Süleyman' xmlUrl='https://tekin.co.uk/atom.xml'/>\n      <outline type='rss' text='Thomas Countz' xmlUrl='https://thomascountz.com/atom.xml'/>\n      <outline type='rss' text='Thomas Leitner' xmlUrl='https://gettalong.org/posts.rss'/>\n      <outline type='rss' text='Tiago (honeyryder)' xmlUrl='https://honeyryderchuck.gitlab.io/atom.xml'/>\n      <outline type='rss' text='Tim Riley' xmlUrl='https://timriley.info/posts_feed'/>\n      <outline type='rss' text='Tom Dalling' xmlUrl='https://www.tomdalling.com/blog/feed/'/>\n      <outline type='rss' text='Tom de Bruijn' xmlUrl='https://tomdebruijn.com/feed.xml'/>\n      <outline type='rss' text='Tom Mango' xmlUrl='https://sleepingpotato.com/rss/'/>\n      <outline type='rss' text='Tom Stuart' xmlUrl='https://tomstu.art/articles.atom'/>\n      <outline type='rss' text='Tomas Valent' xmlUrl='https://blog.eq8.eu/feed.xml'/>\n      <outline type='rss' text='Tristan Dunn' xmlUrl='https://tristandunn.com/feed'/>\n      <outline type='rss' text='Tristan Penman' xmlUrl='https://tristanpenman.com/feed.xml'/>\n      <outline type='rss' text='Tëma Bolshakov' xmlUrl='https://blog.bolshakov.dev/feed.xml'/>\n      <outline type='rss' text='Unathi Chonco' xmlUrl='https://blog.unathichonco.com/rss.xml'/>\n      <outline type='rss' text='Vasiliy Ermolovich' xmlUrl='https://nashby.github.io/atom.xml'/>\n      <outline type='rss' text='Vasily Polovnyov' xmlUrl='https://vasily.polovnyov.ru/feed.xml'/>\n      <outline type='rss' text='Victor Afanasev' xmlUrl='https://vifreefly.github.io/feed.xml'/>\n      <outline type='rss' text='Victor Shepelev (zverok)' xmlUrl='https://zverok.space/feed.xml'/>\n      <outline type='rss' text='Victor Wynne' xmlUrl='https://victorwynne.com/feed.xml'/>\n      <outline type='rss' text='Vinay Keerthi' xmlUrl='https://tech.stonecharioteer.com/posts/index.xml'/>\n      <outline type='rss' text='Vini Oyama' xmlUrl='https://vinioyama.com/feed/'/>\n      <outline type='rss' text='Vitalii Elenhaupt' xmlUrl='https://veelenga.github.io/feed.xml'/>\n      <outline type='rss' text='Vladislav Kopylov' xmlUrl='https://medium.com/feed/@kopilov-vlad'/>\n      <outline type='rss' text='Way Mondo' xmlUrl='https://waymondo.com/index.xml'/>\n      <outline type='rss' text='Will Jessop' xmlUrl='https://willj.net/rss.xml'/>\n      <outline type='rss' text='William Kennedy' xmlUrl='https://williamkennedy.ninja/feed.xml'/>\n      <outline type='rss' text='Yegor Bugayenko' xmlUrl='https://www.yegor256.com/rss.xml'/>\n      <outline type='rss' text='Yehuda Katz' xmlUrl='https://yehudakatz.com/rss/'/>\n      <outline type='rss' text='Yevhen Kuzminov' xmlUrl='http://stdout.in/en/cat/all.rss'/>\n      <outline type='rss' text='Yorick Peterse' xmlUrl='https://yorickpeterse.com/feed.xml'/>\n      <outline type='rss' text='Yoshiki' xmlUrl='https://takagi.blog/tags/ruby/rss.xml'/>\n      <outline type='rss' text='Younes SERRAJ' xmlUrl='https://younes.codes/posts.rss'/>\n      <outline type='rss' text='Youssef Boulkaid' xmlUrl='https://blog.yboulkaid.com/feed.xml'/>\n      <outline type='rss' text='Yuri Bocharov' xmlUrl='https://blog.yuribocharov.dev/feed.xml'/>\n      <outline type='rss' text='Zil Norvilis' xmlUrl='https://norvilis.com/feed.xml'/>\n      <outline type='rss' text='Владимир Мирошниченко' xmlUrl='https://gururuby.ru/atom.xml'/>\n      <outline type='rss' text='Иван Шихалев' xmlUrl='https://shikhalev.github.io/feed.xml'/>\n    </outline>\n    <outline text='Awesome Ruby Blogs: podcast'>\n      <outline type='rss' text='Code and the Coding Coders who Code it' xmlUrl='https://feeds.buzzsprout.com/1927628.rss'/>\n      <outline type='rss' text='Code with Jason' xmlUrl='https://feeds.buzzsprout.com/1878319.rss'/>\n      <outline type='rss' text='Dead Code' xmlUrl='https://feeds.acast.com/public/shows/dead-code'/>\n      <outline type='rss' text='Friendly Show' xmlUrl='https://feeds.buzzsprout.com/2278525.rss'/>\n      <outline type='rss' text='IndieRails' xmlUrl='https://feeds.transistor.fm/indierails'/>\n      <outline type='rss' text='On Rails' xmlUrl='https://feeds.buzzsprout.com/2462975.rss'/>\n      <outline type='rss' text='Remote Ruby' xmlUrl='https://feeds.buzzsprout.com/2260490.rss'/>\n      <outline type='rss' text='Rooftop Ruby Podcast' xmlUrl='https://feeds.buzzsprout.com/2108545.rss'/>\n      <outline type='rss' text='Ruby Rogues' xmlUrl='https://www.spreaker.com/show/6102073/episodes/feed'/>\n      <outline type='rss' text='The Bike Shed' xmlUrl='https://bikeshed.thoughtbot.com/rss'/>\n      <outline type='rss' text='The Ruby Gems Podcast' xmlUrl='https://feeds.buzzsprout.com/2509083.rss'/>\n      <outline type='rss' text='The Ruby on Rails Podcast' xmlUrl='https://www.therubyonrailspodcast.com/rss'/>\n    </outline>\n    <outline text='Awesome Ruby Blogs: screencast_livestream'>\n      <outline type='rss' text='CJ Avilla' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCYUC-bdnQRJDhZRL2c_NKVw'/>\n      <outline type='rss' text='Conner Jensen' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCUeZ3YgblYkMQt0wJP3OR-Q'/>\n      <outline type='rss' text='Deanin' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCRQv-3VvPT9mArF5RfrlpKQ'/>\n      <outline type='rss' text='Higher Theory Dev' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCJeItdDBizxD7-BXnSSrE9w'/>\n      <outline type='rss' text='Ken Greeff' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCuya5UWfi4fMvhQin-JosRA'/>\n      <outline type='rss' text='pushcx' xmlUrl='https://push.cx/feed.xml'/>\n      <outline type='rss' text='Ruby Australia' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCr38SHAvOKMDyX3-8lhvJHA'/>\n      <outline type='rss' text='SupeRails' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCyr6ZTmztFW3FB4qG_97FoA'/>\n      <outline type='rss' text='TenderlovesCoolStuff' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCCwuRBRF-IPihV4bob3Ko2w'/>\n      <outline type='rss' text='Webcrunch' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCzePijHDYnVHIXW6HYTL4dg'/>\n    </outline>\n    <outline text='Awesome Ruby Blogs: social_news_aggregation'>\n      <outline type='rss' text='DevZone (Old Codeguida)' xmlUrl='https://devzone.org.ua/feed/tag/ruby'/>\n      <outline type='rss' text='Habr Ruby' xmlUrl='https://habr.com/ru/rss/hubs/ruby/articles/?fl=ru'/>\n      <outline type='rss' text='Hashnode rubyonrails' xmlUrl='https://hashnode.com/n/rubyonrails/rss'/>\n      <outline type='rss' text='Human Coders News Ruby' xmlUrl='https://news.humancoders.com/t/ruby/items/feed'/>\n      <outline type='rss' text='Medium Ruby' xmlUrl='https://medium.com/sitemap/sitemap.xml'/>\n    </outline>\n  </body>\n</opml>"
  },
  {
    "path": "opml/community.opml",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<opml version='2.0'>\n  <head>\n    <title>Subscriptions</title>\n    <dateCreated>Sat, 30 Aug 2025 11:45:00 +1200</dateCreated>\n    <dateModified>Mon, 23 Mar 2026 10:38:52 +0300</dateModified>\n  </head>\n  <body>\n    <outline text='Awesome Ruby Blogs: community'>\n      <outline type='rss' text='Blogging On Rails' xmlUrl='https://onrails.blog/feed/'/>\n      <outline type='rss' text='Boring Rails' xmlUrl='https://boringrails.com/feed.xml'/>\n      <outline type='rss' text='Bridgetown' xmlUrl='https://www.bridgetownrb.com/feed.xml'/>\n      <outline type='rss' text='Bundler' xmlUrl='https://bundler.io/blog/feed.xml'/>\n      <outline type='rss' text='Business Class Blog (Josef Strzibny)' xmlUrl='https://businessclasskit.com/blog/feed.xml'/>\n      <outline type='rss' text='Code With Rails' xmlUrl='https://codewithrails.com/rss.xml'/>\n      <outline type='rss' text='Digital Ocean (Old scotch.io)' xmlUrl='https://www.digitalocean.com/community/tutorials.atom'/>\n      <outline type='rss' text='Drifting Ruby' xmlUrl='https://www.driftingruby.com//episodes/feed.atom'/>\n      <outline type='rss' text='Drifting Ruby Blog' xmlUrl='https://blog.driftingruby.com/rss/'/>\n      <outline type='rss' text='dry-rb' xmlUrl='https://dry-rb.org/feed.xml'/>\n      <outline type='rss' text='Fullstack Ruby (Old ruby3.dev)' xmlUrl='https://www.fullstackruby.dev/feed.xml'/>\n      <outline type='rss' text='GoRails' xmlUrl='https://gorails.com/blog.rss'/>\n      <outline type='rss' text='Hanami' xmlUrl='https://hanamirb.org/atom.xml'/>\n      <outline type='rss' text='HanamiMastery' xmlUrl='https://hanamimastery.com/feed.xml'/>\n      <outline type='rss' text='Hexdevs' xmlUrl='https://www.hexdevs.com/index.xml'/>\n      <outline type='rss' text='Monospace Mentor (Jochen Lillich)' xmlUrl='https://monospacementor.com/feed/'/>\n      <outline type='rss' text='Practicing Ruby' xmlUrl='https://practicingruby.com/feed.xml'/>\n      <outline type='rss' text='Programming Zen (Antonio Cangiano)' xmlUrl='https://programmingzen.com/category/programming/feed/'/>\n      <outline type='rss' text='Rails' xmlUrl='https://rubyonrails.org/feed.xml'/>\n      <outline type='rss' text='Rails at Scale' xmlUrl='https://railsatscale.com/feed.xml'/>\n      <outline type='rss' text='Rails Designer' xmlUrl='https://railsdesigner.com/feed.xml'/>\n      <outline type='rss' text='Rails Explained' xmlUrl='https://www.railsexplained.com/feed.xml'/>\n      <outline type='rss' text='RailsApps' xmlUrl='https://blog.railsapps.org/rss'/>\n      <outline type='rss' text='RailsGrowth' xmlUrl='https://railsgrowth.com/rss/'/>\n      <outline type='rss' text='RailsNotes Blog' xmlUrl='https://railsnotes.xyz/feed.xml'/>\n      <outline type='rss' text='Ronin' xmlUrl='https://ronin-rb.dev/blog/atom.xml'/>\n      <outline type='rss' text='ROR Tips' xmlUrl='https://ror.tips/feed.xml'/>\n      <outline type='rss' text='RorVsWild' xmlUrl='https://www.rorvswild.com/blog.rss'/>\n      <outline type='rss' text='RSpec' xmlUrl='http://rspec.info/blog/feed.xml'/>\n      <outline type='rss' text='RubyCademy (Medium)' xmlUrl='https://medium.com/feed/rubycademy'/>\n      <outline type='rss' text='RubyGems' xmlUrl='https://blog.rubygems.org/atom.xml'/>\n      <outline type='rss' text='RubyInside' xmlUrl='https://medium.com/feed/rubyinside'/>\n      <outline type='rss' text='Rubyist Magazine (Rubima)' xmlUrl='https://magazine.rubyist.net/feed.xml'/>\n      <outline type='rss' text='RubyPigeon' xmlUrl='https://www.rubypigeon.com/feed.xml'/>\n      <outline type='rss' text='RubyTapas' xmlUrl='https://www.rubytapas.com/feed/'/>\n      <outline type='rss' text='SciRuby' xmlUrl='http://sciruby.com/atom.xml'/>\n      <outline type='rss' text='Short Ruby Email Courses' xmlUrl='https://learn.shortruby.com/blog/feed'/>\n      <outline type='rss' text='Sinatra' xmlUrl='https://sinatrarb.com/sinatra.github.com/feed.xml'/>\n      <outline type='rss' text='Sorbet' xmlUrl='https://sorbet.org/blog/atom.xml'/>\n      <outline type='rss' text='Taylor (Sean Earle)' xmlUrl='https://taylormadetech.dev/feed.xml'/>\n      <outline type='rss' text='Test Driving Rails Blog (Josef Strzibny)' xmlUrl='https://testdrivingrails.com/blog/feed.xml'/>\n      <outline type='rss' text='The JRuby Blog' xmlUrl='https://blog.jruby.org/feed'/>\n      <outline type='rss' text='This Week in Rails' xmlUrl='https://world.hey.com/this.week.in.rails/feed.atom'/>\n      <outline type='rss' text='Thnk And Grow' xmlUrl='https://blog.thnkandgrow.com/feed/'/>\n      <outline type='rss' text='Webcrunch' xmlUrl='https://webcrunch.com/feed.rss'/>\n      <outline type='rss' text='With a Twist' xmlUrl='https://withatwist.dev/feed.xml'/>\n    </outline>\n  </body>\n</opml>"
  },
  {
    "path": "opml/company.opml",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<opml version='2.0'>\n  <head>\n    <title>Subscriptions</title>\n    <dateCreated>Sat, 30 Aug 2025 11:45:00 +1200</dateCreated>\n    <dateModified>Mon, 23 Mar 2026 10:38:52 +0300</dateModified>\n  </head>\n  <body>\n    <outline text='Awesome Ruby Blogs: company'>\n      <outline type='rss' text='37signals' xmlUrl='https://dev.37signals.com/feed/posts.xml'/>\n      <outline type='rss' text='8th Light' xmlUrl='https://8thlight.com/insights/feed/rss.xml'/>\n      <outline type='rss' text='Aha!' xmlUrl='https://www.aha.io/blog/feed.xml'/>\n      <outline type='rss' text='Airbrake' xmlUrl='https://blog.airbrake.io/rss.xml'/>\n      <outline type='rss' text='Alchemists' xmlUrl='https://www.alchemists.io/feeds/news.xml'/>\n      <outline type='rss' text='Appfolio Engineering' xmlUrl='https://engineering.appfolio.com/appfolio-engineering?format=rss'/>\n      <outline type='rss' text='AppSignal' xmlUrl='https://blog.appsignal.com/category/ruby-magic-feed.xml'/>\n      <outline type='rss' text='Arkency' xmlUrl='https://blog.arkency.com/feed.xml'/>\n      <outline type='rss' text='Avo' xmlUrl='https://avohq.io/blog/rss'/>\n      <outline type='rss' text='Bacancy' xmlUrl='https://www.bacancytechnology.com/blog/wp-json/wp/v2/categories/35'/>\n      <outline type='rss' text='Bemi' xmlUrl='https://blog.bemi.io/rss/'/>\n      <outline type='rss' text='BetaCraft' xmlUrl='https://betacraft.com/feed/'/>\n      <outline type='rss' text='BigBinary' xmlUrl='https://www.bigbinary.com/blog/feed.xml'/>\n      <outline type='rss' text='BoTree Technologies' xmlUrl='https://www.botreetechnologies.com/blog/feed/'/>\n      <outline type='rss' text='Brainspec' xmlUrl='http://brainspec.com/blog/atom.xml'/>\n      <outline type='rss' text='Carmatec' xmlUrl='https://www.carmatec.com/feed/'/>\n      <outline type='rss' text='Census' xmlUrl='https://census.dev/blog?format=rss'/>\n      <outline type='rss' text='Codemancers' xmlUrl='https://www.codemancers.com/rss.xml'/>\n      <outline type='rss' text='Codeminer 42' xmlUrl='https://blog.codeminer42.com/feed/'/>\n      <outline type='rss' text='Codica' xmlUrl='https://www.codica.com/rss.xml'/>\n      <outline type='rss' text='Collective Idea' xmlUrl='https://collectiveidea.com/blog/feed/'/>\n      <outline type='rss' text='Cookpad' xmlUrl='https://sourcediving.com/feed'/>\n      <outline type='rss' text='Cycode (Old Bearer)' xmlUrl='https://cycode.com/feed/'/>\n      <outline type='rss' text='Decode Fix' xmlUrl='https://decodefix.com/feed/'/>\n      <outline type='rss' text='DotRuby' xmlUrl='https://www.dotruby.com/articles.atom'/>\n      <outline type='rss' text='Engine Yard' xmlUrl='https://www.engineyard.com/blog/tag/ruby-on-rails/feed/'/>\n      <outline type='rss' text='Evil Martians' xmlUrl='https://evilmartians.com/chronicles.atom'/>\n      <outline type='rss' text='Fast Ruby' xmlUrl='https://fastruby.io/blog/rss.xml'/>\n      <outline type='rss' text='FireHydrant' xmlUrl='https://firehydrant.com/rss.xml'/>\n      <outline type='rss' text='Flagrant' xmlUrl='https://www.beflagrant.com/feed.xml'/>\n      <outline type='rss' text='Fly.io' xmlUrl='https://fly.io/ruby-dispatch/feed.xml'/>\n      <outline type='rss' text='FreeAgent' xmlUrl='https://engineering.freeagent.com/feed/'/>\n      <outline type='rss' text='Getaround' xmlUrl='https://getaround.tech/feed.xml'/>\n      <outline type='rss' text='Good Enough' xmlUrl='https://goodenough.us/feed.xml'/>\n      <outline type='rss' text='Grab Tech' xmlUrl='https://engineering.grab.com/feed.xml'/>\n      <outline type='rss' text='Gusto' xmlUrl='https://engineering.gusto.com/feed'/>\n      <outline type='rss' text='Hashrocket' xmlUrl='https://hashrocket.com/blog.rss'/>\n      <outline type='rss' text='Heroku' xmlUrl='https://blog.heroku.com/feed/'/>\n      <outline type='rss' text='Honeybadger' xmlUrl='https://www.honeybadger.io/blog/feed.xml'/>\n      <outline type='rss' text='Hybrd' xmlUrl='https://hybrd.co/posts.atom'/>\n      <outline type='rss' text='Ideamotive' xmlUrl='https://www.ideamotive.co/blog/rss.xml'/>\n      <outline type='rss' text='Infinum' xmlUrl='https://infinum.com/blog/category/engineering/feed/'/>\n      <outline type='rss' text='JetRockets' xmlUrl='https://jetrockets.com/blog.rss'/>\n      <outline type='rss' text='JetRuby' xmlUrl='https://jetruby.com/feed/'/>\n      <outline type='rss' text='Judoscale' xmlUrl='https://judoscale.com/rss.xml'/>\n      <outline type='rss' text='Kiprosh' xmlUrl='https://blog.kiprosh.com/rss/'/>\n      <outline type='rss' text='Knapsack Pro' xmlUrl='https://docs.knapsackpro.com/feed.xml'/>\n      <outline type='rss' text='Kolosek' xmlUrl='https://kolosek.com/blog/rss/'/>\n      <outline type='rss' text='Learnetto' xmlUrl='https://learnetto.com/blog/rss'/>\n      <outline type='rss' text='ManageIQ' xmlUrl='http://manageiq.org/feed.xml'/>\n      <outline type='rss' text='Mintbit' xmlUrl='https://www.mintbit.com/feed.xml'/>\n      <outline type='rss' text='Mkdev' xmlUrl='https://mkdev.me/posts.atom'/>\n      <outline type='rss' text='Netguru' xmlUrl='https://www.netguru.com/blog/rss.xml'/>\n      <outline type='rss' text='Olio' xmlUrl='https://tech.olioex.com/feed.xml'/>\n      <outline type='rss' text='Ombu Labs' xmlUrl='https://www.ombulabs.com/blog/rss.xml'/>\n      <outline type='rss' text='Planet Argon' xmlUrl='https://blog.planetargon.com/blog/entries.rss'/>\n      <outline type='rss' text='PlanetScale' xmlUrl='https://planetscale.com/blog/feed.atom'/>\n      <outline type='rss' text='Plataformatec' xmlUrl='https://blog.plataformatec.com.br/feed/'/>\n      <outline type='rss' text='Prefab' xmlUrl='https://prefab.cloud/blog/rss.xml'/>\n      <outline type='rss' text='Qameta' xmlUrl='https://qameta.com/index.xml'/>\n      <outline type='rss' text='RailsCarma' xmlUrl='https://www.railscarma.com/feed/'/>\n      <outline type='rss' text='Railsware' xmlUrl='https://railsware.com/blog/feed/'/>\n      <outline type='rss' text='Rebased' xmlUrl='https://blog.rebased.pl/feed.xml'/>\n      <outline type='rss' text='RNDSOFT' xmlUrl='https://blog.rnds.pro/data/rss'/>\n      <outline type='rss' text='Ruby &amp; Elixir MobiDev Team Blog' xmlUrl='https://ruby.mobidev.biz/posts/index.xml'/>\n      <outline type='rss' text='Ruby Elders' xmlUrl='https://rubyelders.com/writings.atom'/>\n      <outline type='rss' text='RubyGarage' xmlUrl='https://rubygarage.org/blog.rss'/>\n      <outline type='rss' text='Rubyroid Labs' xmlUrl='https://rubyroidlabs.com/blog/feed/'/>\n      <outline type='rss' text='Saeloun' xmlUrl='https://blog.saeloun.com/feed.xml'/>\n      <outline type='rss' text='SerpApi' xmlUrl='https://serpapi.com/blog/rss/'/>\n      <outline type='rss' text='Simple Thread' xmlUrl='https://www.simplethread.com/feed/'/>\n      <outline type='rss' text='Skylight' xmlUrl='https://blog.skylight.io/rss/'/>\n      <outline type='rss' text='Sloboda Studio' xmlUrl='https://sloboda-studio.com/feed/rdf/'/>\n      <outline type='rss' text='Snyk' xmlUrl='https://snyk.io/blog/feed/'/>\n      <outline type='rss' text='Splitwise' xmlUrl='https://blog.splitwise.com/feed/'/>\n      <outline type='rss' text='Spritle' xmlUrl='https://www.spritle.com/blog/feed/'/>\n      <outline type='rss' text='Square' xmlUrl='https://developer.squareup.com/blog/rss.xml'/>\n      <outline type='rss' text='Super Good Software' xmlUrl='https://supergood.software/rss.xml'/>\n      <outline type='rss' text='The Dev Post (Truemark)' xmlUrl='https://www.thedevpost.com/feed/'/>\n      <outline type='rss' text='Tosbourn' xmlUrl='https://tosbourn.com/feed.xml'/>\n      <outline type='rss' text='Twilio' xmlUrl='https://www.twilio.com/sitemap.xml'/>\n      <outline type='rss' text='Ubicloud' xmlUrl='https://www.ubicloud.com/rss/rss.xml'/>\n      <outline type='rss' text='Vector Logic' xmlUrl='https://www.vector-logic.com/blog/posts.rss'/>\n      <outline type='rss' text='Wonolo' xmlUrl='https://engineeringblog.wonolo.com/tag/ruby/rss.xml'/>\n    </outline>\n  </body>\n</opml>"
  },
  {
    "path": "opml/newsletter.opml",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<opml version='2.0'>\n  <head>\n    <title>Subscriptions</title>\n    <dateCreated>Sat, 30 Aug 2025 11:45:00 +1200</dateCreated>\n    <dateModified>Mon, 23 Mar 2026 10:38:52 +0300</dateModified>\n  </head>\n  <body>\n    <outline text='Awesome Ruby Blogs: newsletter'>\n      <outline type='rss' text='Awesome Ruby Newsletter' xmlUrl='https://ruby.libhunt.com/newsletter/feed'/>\n      <outline type='rss' text='Full Stack Ruby on Rails Weekly Bookmarks' xmlUrl='https://dcyoungdev.substack.com/feed'/>\n      <outline type='rss' text='Hotwire Native Weekly' xmlUrl='https://newsletter.masilotti.com/feed'/>\n      <outline type='rss' text='Hotwire Weekly' xmlUrl='https://www.hotwireweekly.com/rss.xml'/>\n      <outline type='rss' text='Joe Masilotti&apos;s newsletter' xmlUrl='https://masilotti.com/feed.xml'/>\n      <outline type='rss' text='One Ruby Thing' xmlUrl='https://andycroll.com/index.xml'/>\n      <outline type='rss' text='Ruby Biscuit' xmlUrl='https://www.rubybiscuit.fr/feed'/>\n      <outline type='rss' text='Ruby Daily' xmlUrl='https://rubydaily.org/feeds_subdomain/RubyDaily/'/>\n      <outline type='rss' text='Ruby on Rails - Monthly' xmlUrl='https://sajjadumar.substack.com/feed'/>\n      <outline type='rss' text='Ruby Weekly' xmlUrl='https://rubyweekly.com/rss/'/>\n      <outline type='rss' text='RubyFlow' xmlUrl='https://rubyflow.com/rss'/>\n      <outline type='rss' text='Rubyland' xmlUrl='https://rubyland.news/feed.rss'/>\n      <outline type='rss' text='Short Ruby Newsletter' xmlUrl='https://feed.newsletter.shortruby.com'/>\n      <outline type='rss' text='Sustainable Development and More' xmlUrl='https://buttondown.com/davetron5000/rss'/>\n      <outline type='rss' text='The Code Gardener' xmlUrl='https://the.codegardener.com/rss/'/>\n      <outline type='rss' text='The RailsNotes Newsletter' xmlUrl='https://railsnotes.xyz/feed.xml'/>\n      <outline type='rss' text='This week in Rails' xmlUrl='https://rails-weekly.ongoodbits.com/feed'/>\n      <outline type='rss' text='Token Ruby' xmlUrl='https://tokenruby.com/rss'/>\n      <outline type='rss' text='Women On Rails Newsletter' xmlUrl='https://womenonrailsinternational.substack.com/feed'/>\n    </outline>\n  </body>\n</opml>"
  },
  {
    "path": "opml/other.opml",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<opml version='2.0'>\n  <head>\n    <title>Subscriptions</title>\n    <dateCreated>Sat, 30 Aug 2025 11:45:00 +1200</dateCreated>\n    <dateModified>Mon, 23 Mar 2026 10:38:52 +0300</dateModified>\n  </head>\n  <body>\n    <outline text='Awesome Ruby Blogs: other'/>\n  </body>\n</opml>"
  },
  {
    "path": "opml/personal.opml",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<opml version='2.0'>\n  <head>\n    <title>Subscriptions</title>\n    <dateCreated>Sat, 30 Aug 2025 11:45:00 +1200</dateCreated>\n    <dateModified>Mon, 23 Mar 2026 10:38:52 +0300</dateModified>\n  </head>\n  <body>\n    <outline text='Awesome Ruby Blogs: personal'>\n      <outline type='rss' text='Aaron Patterson' xmlUrl='https://tenderlovemaking.com/atom.xml'/>\n      <outline type='rss' text='Aaron Sumner (Left of the Dev (formerly Everyday Rails))' xmlUrl='https://leftofthe.dev/atom.xml'/>\n      <outline type='rss' text='Abhay Nikam' xmlUrl='https://www.abhaynikam.me/rss.xml'/>\n      <outline type='rss' text='Aboobacker MK' xmlUrl='https://aboobacker.in/feed.xml'/>\n      <outline type='rss' text='Adam Tomeček' xmlUrl='https://blog.tmck.cz/feed.xml'/>\n      <outline type='rss' text='Adrien Siami' xmlUrl='https://blog.siami.fr/feed.xml'/>\n      <outline type='rss' text='Agnieszka Małaszkiewicz' xmlUrl='https://womanonrails.com/feed.xml'/>\n      <outline type='rss' text='Ahmed' xmlUrl='https://aonemd.com/index.xml'/>\n      <outline type='rss' text='Ahmed Nadar (hashnode)' xmlUrl='https://ahmednadar.hashnode.dev/rss.xml'/>\n      <outline type='rss' text='Akshay Birajdar' xmlUrl='https://bytes.akshaybirajdar.com/feed.xml'/>\n      <outline type='rss' text='Akshay Khot (Write Software, Well)' xmlUrl='https://www.writesoftwarewell.com/rss/'/>\n      <outline type='rss' text='Akshay Mohite' xmlUrl='https://www.rubyinrails.com/feed.xml'/>\n      <outline type='rss' text='Alberto Almagro' xmlUrl='https://albertoalmagro.com/feed/'/>\n      <outline type='rss' text='Alessandro Rodi' xmlUrl='https://coorasse.com/feed.xml'/>\n      <outline type='rss' text='Alessandro Rodi (Medium)' xmlUrl='https://medium.com/feed/@coorasse'/>\n      <outline type='rss' text='Alex Taylor' xmlUrl='https://alextaylor.ca/atom.xml'/>\n      <outline type='rss' text='Alexander Butt-Piercey' xmlUrl='https://apiercey.github.io/posts/index.xml'/>\n      <outline type='rss' text='Alexandre Barret' xmlUrl='https://alexbarret.com/feed.xml'/>\n      <outline type='rss' text='Alexey Poimtsev' xmlUrl='https://alec-c4.com/rss.xml'/>\n      <outline type='rss' text='Alexey Vasiliev' xmlUrl='http://leopard.in.ua/rss.xml'/>\n      <outline type='rss' text='Alexis Bernard' xmlUrl='https://alexis.bernard.io/blog.rss'/>\n      <outline type='rss' text='Amir Sharif' xmlUrl='https://www.amirsharif.com/feed.rss'/>\n      <outline type='rss' text='Andrei Kaleshka' xmlUrl='https://widefix.com/blog/feed.xml'/>\n      <outline type='rss' text='Andrei Maxim' xmlUrl='https://andreimaxim.com/feed.xml'/>\n      <outline type='rss' text='Andres Chacon' xmlUrl='https://a-chacon.com/en/feed.xml'/>\n      <outline type='rss' text='Andrew Kane' xmlUrl='https://ankane.org/feed.rss'/>\n      <outline type='rss' text='Andrew Nesbitt' xmlUrl='https://nesbitt.io/feed.xml'/>\n      <outline type='rss' text='Andrey Eremin' xmlUrl='https://www.eremin.eu/feed/blog/feed.xml'/>\n      <outline type='rss' text='Andrii Konchyn' xmlUrl='https://andrykonchin.github.io/feed.xml'/>\n      <outline type='rss' text='André Arko' xmlUrl='https://andre.arko.net/atom.xml'/>\n      <outline type='rss' text='Andy Croll' xmlUrl='https://andycroll.com/index.xml'/>\n      <outline type='rss' text='Andy Leverenz' xmlUrl='https://webcrunch.com/feed.rss'/>\n      <outline type='rss' text='Andy Maleh' xmlUrl='https://andymaleh.blogspot.com/feeds/posts/default'/>\n      <outline type='rss' text='Andy Waite' xmlUrl='https://andywaite.com/feed.xml'/>\n      <outline type='rss' text='Ankit Gupta' xmlUrl='https://ankit-gupta.com/feed.xml'/>\n      <outline type='rss' text='Anthony Drake' xmlUrl='https://www.t27duck.com/posts.xml'/>\n      <outline type='rss' text='Anton Davydov' xmlUrl='https://www.davydovanton.com/atom.xml'/>\n      <outline type='rss' text='Aotokitsuruya' xmlUrl='https://blog.aotoki.me/en/index.xml'/>\n      <outline type='rss' text='Augusts Bautra' xmlUrl='https://epigene.github.io/feed.xml'/>\n      <outline type='rss' text='Austin Ziegler' xmlUrl='https://www.halostatue.ca/index.xml'/>\n      <outline type='rss' text='Avdi Grimm' xmlUrl='https://avdi.codes/feed/'/>\n      <outline type='rss' text='Avi Flombaum' xmlUrl='https://code.avi.nyc/rss.xml'/>\n      <outline type='rss' text='Axel Kee' xmlUrl='https://rubyyagi.com/feed.xml'/>\n      <outline type='rss' text='Ayush Newatia' xmlUrl='https://binarysolo.blog/feed.xml'/>\n      <outline type='rss' text='Balázs Kutil' xmlUrl='https://balazs.kutilovi.cz/index.xml'/>\n      <outline type='rss' text='Bamchi' xmlUrl='https://bamchi.me/en/feed'/>\n      <outline type='rss' text='Ben Koshy' xmlUrl='https://benkoshy.github.io/feed.xml'/>\n      <outline type='rss' text='Ben Pickles' xmlUrl='https://www.benpickles.com/articles.atom'/>\n      <outline type='rss' text='Ben Sheldon' xmlUrl='https://island94.org/feed.xml'/>\n      <outline type='rss' text='Benito Serna' xmlUrl='https://bhserna.com/feed.xml'/>\n      <outline type='rss' text='Benjamin Fleischer' xmlUrl='https://www.benjaminfleischer.com/atom.xml'/>\n      <outline type='rss' text='Benoit Daloze' xmlUrl='https://eregon.me/blog/feed.xml'/>\n      <outline type='rss' text='Benoit Tigeot' xmlUrl='https://benoittgt.github.io/feed/feed.xml'/>\n      <outline type='rss' text='Bernie Chiu' xmlUrl='https://berniechiu.github.io/blog/sitemap.xml'/>\n      <outline type='rss' text='Bhumi' xmlUrl='https://theleafnode.com/feed.xml'/>\n      <outline type='rss' text='Bill Tihen' xmlUrl='https://btihen.dev/posts/ruby/index.xml'/>\n      <outline type='rss' text='Bohdan Pohorilets' xmlUrl='https://bpohoriletz.github.io/feed.xml'/>\n      <outline type='rss' text='Borja Garcia de Vinuesa Ordovás' xmlUrl='https://bgvo.io/feed.xml'/>\n      <outline type='rss' text='Bozhidar Batsov' xmlUrl='https://metaredux.com/feed.xml'/>\n      <outline type='rss' text='Bradley Schaefer (Soulcutter)' xmlUrl='https://www.soulcutter.com/feed.xml'/>\n      <outline type='rss' text='Brandon Casci' xmlUrl='https://www.brandoncasci.com/feed.xml'/>\n      <outline type='rss' text='Brendan Bondurant' xmlUrl='https://brendanbondurant.com/feed/'/>\n      <outline type='rss' text='Bruno Sutic' xmlUrl='https://brunosutic.com/blog/feed'/>\n      <outline type='rss' text='Bèr Kessels' xmlUrl='https://berk.es/2007/09/27/snipplr-drupals-code-snippet-feed/'/>\n      <outline type='rss' text='Caleb Hearth' xmlUrl='https://calebhearth.com/atom.xml'/>\n      <outline type='rss' text='Caleb Woods' xmlUrl='https://www.calebwoods.com/feed.xml'/>\n      <outline type='rss' text='Carl Wiedemann' xmlUrl='https://carlwiedemann.github.io/feed.xml'/>\n      <outline type='rss' text='Carmine Paolino' xmlUrl='https://paolino.me/feed.xml'/>\n      <outline type='rss' text='Cassey Lottman' xmlUrl='https://cassey.dev/rss/'/>\n      <outline type='rss' text='Charles Oliver Nutter' xmlUrl='https://blog.headius.com/feed.xml'/>\n      <outline type='rss' text='Chen Kinnrot' xmlUrl='https://kinnrot.github.io/feed.xml'/>\n      <outline type='rss' text='Chris Blunt' xmlUrl='https://www.chrisblunt.com/feed/'/>\n      <outline type='rss' text='Chris Dillon' xmlUrl='https://squarism.com/feed.xml'/>\n      <outline type='rss' text='Chris Kottom' xmlUrl='https://chriskottom.com/articles/feed.xml'/>\n      <outline type='rss' text='Chris Sinjakli' xmlUrl='https://blog.sinjakli.co.uk/feed.xml'/>\n      <outline type='rss' text='Cody Norman' xmlUrl='https://codynorman.com/feed.xml'/>\n      <outline type='rss' text='Damian C. Rossney' xmlUrl='https://rossney.net/feed.xml'/>\n      <outline type='rss' text='Daniela Baron' xmlUrl='https://danielabaron.me/rss.xml'/>\n      <outline type='rss' text='Darius Pirvulescu' xmlUrl='https://organicdarius.com/blog/feed.xml'/>\n      <outline type='rss' text='David Boureau (AlsoHelp)' xmlUrl='https://alsohelp.com/rss.xml'/>\n      <outline type='rss' text='David Bryant Copeland' xmlUrl='https://naildrivin5.com/atom.xml'/>\n      <outline type='rss' text='David Colby' xmlUrl='https://colby.so/atom.xml'/>\n      <outline type='rss' text='David Heinemeier Hansson' xmlUrl='https://world.hey.com/dhh/feed.atom'/>\n      <outline type='rss' text='David Morales (DevelClan)' xmlUrl='https://develclan.com/rss.xml'/>\n      <outline type='rss' text='David Silva' xmlUrl='https://davidslv.uk/feed.xml'/>\n      <outline type='rss' text='Dean DeHart' xmlUrl='https://deanin.com/wp-json/wp/v2/pages/175'/>\n      <outline type='rss' text='Deep dive' xmlUrl='https://shime.sh/feed.xml'/>\n      <outline type='rss' text='Deepak Mahakale' xmlUrl='https://deepakmahakale.com/blog/feed.xml'/>\n      <outline type='rss' text='Denis Defreyne' xmlUrl='https://denisdefreyne.com/feeds/weeknotes.xml'/>\n      <outline type='rss' text='Dennis Martinez' xmlUrl='https://dev-tester.com/rss/'/>\n      <outline type='rss' text='Dennis Paagman' xmlUrl='https://paagman.dev/feed.xml'/>\n      <outline type='rss' text='Devanil' xmlUrl='https://devanil.dev/rss.xml'/>\n      <outline type='rss' text='Dhaval Singh' xmlUrl='https://www.dsdev.in/rss.xml'/>\n      <outline type='rss' text='Dick Davis' xmlUrl='https://dick.codes/feed.xml'/>\n      <outline type='rss' text='Dimiter Petrov' xmlUrl='https://dimiterpetrov.com/blog/feed.xml'/>\n      <outline type='rss' text='Dimitris Zorbas' xmlUrl='https://zorbash.com/tags/ruby/index.xml'/>\n      <outline type='rss' text='Dirk Jonker' xmlUrl='https://dirkjonker.bearblog.dev/feed/'/>\n      <outline type='rss' text='Dmitriy Ivliev' xmlUrl='https://blog.ivda.dev/rss.xml'/>\n      <outline type='rss' text='Dmitry Gutov' xmlUrl='https://gutov.dev/feed.xml'/>\n      <outline type='rss' text='Dmitry Ishkov' xmlUrl='https://www.dmitry-ishkov.com/feeds/posts/default'/>\n      <outline type='rss' text='Dmitry Tsepelev' xmlUrl='https://dmitrytsepelev.dev/feed.xml'/>\n      <outline type='rss' text='Dom Christie' xmlUrl='https://domchristie.co.uk/feed.xml'/>\n      <outline type='rss' text='Donn Felker' xmlUrl='https://www.donnfelker.com/feed/'/>\n      <outline type='rss' text='Délon R. Newman' xmlUrl='https://delonnewman.name/articles/feed.xml'/>\n      <outline type='rss' text='Eileen M. Uchitelle' xmlUrl='http://eileencodes.com/feed.xml'/>\n      <outline type='rss' text='Eliot Sykes' xmlUrl='https://eliotsykes.com/feed/'/>\n      <outline type='rss' text='Emmanuel Hayford (hayford.dev)' xmlUrl='https://hayford.dev/rss/'/>\n      <outline type='rss' text='Ender Ahmet Yurt' xmlUrl='https://enderahmetyurt.com/rss/'/>\n      <outline type='rss' text='Enrico Teotti' xmlUrl='https://teotti.com/feed.xml'/>\n      <outline type='rss' text='Eric London' xmlUrl='https://ericlondon.com/feed.xml'/>\n      <outline type='rss' text='Erik Minkel' xmlUrl='https://www.erikminkel.com/rss/'/>\n      <outline type='rss' text='Evgeniy Demin' xmlUrl='https://medium.com/feed/@evgeniydemin'/>\n      <outline type='rss' text='Felice Forby' xmlUrl='https://feliceforby.com/posts_feed'/>\n      <outline type='rss' text='Felipe Contreras' xmlUrl='https://felipec.wordpress.com/feed/'/>\n      <outline type='rss' text='Felipe Philipp' xmlUrl='https://felipeelias.github.io/feed.xml'/>\n      <outline type='rss' text='Felipe Vogel' xmlUrl='https://fpsvogel.com/feed.xml'/>\n      <outline type='rss' text='Finnian Anderson' xmlUrl='https://finnian.io/tags/ruby/index.xml'/>\n      <outline type='rss' text='Florent Guilleux' xmlUrl='https://www.florentguilleux.fr/rss.xml'/>\n      <outline type='rss' text='Frank Groeneveld' xmlUrl='https://frankgroeneveld.nl/feed/'/>\n      <outline type='rss' text='Garrett Dimon' xmlUrl='https://garrettdimon.com/feed'/>\n      <outline type='rss' text='Gergő Sulymosi' xmlUrl='https://gergo.dev/atom.xml'/>\n      <outline type='rss' text='Gernot Gradwohl' xmlUrl='https://austrian-nerd.dev/index.xml'/>\n      <outline type='rss' text='Giménez Silva Germán Alberto' xmlUrl='https://rubystacknews.com/feed/'/>\n      <outline type='rss' text='Giorgi Mezurnishvili' xmlUrl='https://mzrn.sh/feed.xml'/>\n      <outline type='rss' text='Giovanni Panasiti' xmlUrl='https://www.panasiti.me/feed.xml'/>\n      <outline type='rss' text='Glauco Custodio' xmlUrl='https://glaucocustodio.github.io/feed.xml'/>\n      <outline type='rss' text='Goulven Champenois' xmlUrl='https://pro.userland.fr/feed.xml'/>\n      <outline type='rss' text='Greg Molnar' xmlUrl='https://greg.molnar.io/feed.xml'/>\n      <outline type='rss' text='Greg Navis' xmlUrl='https://www.gregnavis.com/feed.xml'/>\n      <outline type='rss' text='Guillaume Briday' xmlUrl='https://guillaumebriday.fr/articles.xml'/>\n      <outline type='rss' text='Hal Brodigan (postmodern)' xmlUrl='http://postmodern.github.io/atom.xml'/>\n      <outline type='rss' text='Haseeb Annadamban' xmlUrl='https://haseebeqx.com/posts/index.xml'/>\n      <outline type='rss' text='Henrik Nyh' xmlUrl='https://thepugautomatic.com/atom.xml'/>\n      <outline type='rss' text='Henry Maddocks' xmlUrl='https://henry.bearblog.dev/about/feed/?type=rss'/>\n      <outline type='rss' text='Hrvoje Šimić' xmlUrl='https://shime.sh/feed.xml'/>\n      <outline type='rss' text='Igor Guzak' xmlUrl='https://medium.com/feed/@igor04'/>\n      <outline type='rss' text='Igor Kuznetsov' xmlUrl='https://medium.com/feed/@igkuz'/>\n      <outline type='rss' text='Ilya Bylich' xmlUrl='https://iliabylich.github.io/index.xml'/>\n      <outline type='rss' text='Ismael Celis' xmlUrl='https://ismaelcelis.com/index.xml'/>\n      <outline type='rss' text='Ivo Anjo' xmlUrl='https://ivoanjo.me/feed.xml'/>\n      <outline type='rss' text='J. Scott Johnson' xmlUrl='http://fuzzyblog.io/blog/feed.xml'/>\n      <outline type='rss' text='Jacob Swanner' xmlUrl='https://jacobswanner.com/atom.xml'/>\n      <outline type='rss' text='Jake Worth' xmlUrl='https://jakeworth.com/posts/index.xml'/>\n      <outline type='rss' text='Jake Zimmerman' xmlUrl='https://blog.jez.io/atom.xml'/>\n      <outline type='rss' text='Jakob Skjerning' xmlUrl='https://mentalized.net/journal/entries.xml'/>\n      <outline type='rss' text='James Golick' xmlUrl='http://feeds.feedburner.com/JamesOnSoftware'/>\n      <outline type='rss' text='James Hibbard' xmlUrl='https://hibbard.eu/feed.xml'/>\n      <outline type='rss' text='Jamie Schembri' xmlUrl='https://schembri.me/rss/'/>\n      <outline type='rss' text='Jamis Buck' xmlUrl='https://feeds.feedburner.com/buckblog'/>\n      <outline type='rss' text='Jan Matuszewski' xmlUrl='https://jmatuszewski.com/feed.xml'/>\n      <outline type='rss' text='Janko Marohnić' xmlUrl='https://janko.io/feed.xml'/>\n      <outline type='rss' text='Jared Norman' xmlUrl='https://jardo.dev/blog.xml'/>\n      <outline type='rss' text='Jason Charnes' xmlUrl='https://jasoncharnes.com/feed.xml'/>\n      <outline type='rss' text='Jason Fleetwood-Bold' xmlUrl='https://jasonfleetwoodboldt.com/feed/'/>\n      <outline type='rss' text='Jason Swett' xmlUrl='https://www.codewithjason.com/wp-json/wp/v2/pages/415'/>\n      <outline type='rss' text='Jason York' xmlUrl='https://predicatemethod.com/feed.xml'/>\n      <outline type='rss' text='Javier Cervantes' xmlUrl='https://www.rubynewbie.org/feed.xml'/>\n      <outline type='rss' text='JD Gonzales' xmlUrl='https://jd.codes/index.xml'/>\n      <outline type='rss' text='Jean Boussier' xmlUrl='https://byroot.github.io/feed.xml'/>\n      <outline type='rss' text='Jemma Issroff' xmlUrl='https://jemma.dev/blog/published.xml'/>\n      <outline type='rss' text='Jens Eickmeyer' xmlUrl='https://scratchpad.blog/feed.xml'/>\n      <outline type='rss' text='Jeremy Friesen' xmlUrl='https://takeonrules.com/index.json'/>\n      <outline type='rss' text='Jeroen Weeink' xmlUrl='https://craftingruby.com/feed.xml'/>\n      <outline type='rss' text='Jesus Castello' xmlUrl='https://www.rubyguides.com/feed/'/>\n      <outline type='rss' text='Joe Masilotti' xmlUrl='https://masilotti.com/feed.xml'/>\n      <outline type='rss' text='Joel Drapper' xmlUrl='https://joel.drapper.me/rss.xml'/>\n      <outline type='rss' text='Joey Wang' xmlUrl='https://joeywang.github.io/feed.xml'/>\n      <outline type='rss' text='John Hawthorn' xmlUrl='https://www.johnhawthorn.com/atom.xml'/>\n      <outline type='rss' text='John Nunemaker' xmlUrl='https://www.johnnunemaker.com/rss/'/>\n      <outline type='rss' text='John Skiles Skinner' xmlUrl='https://johnskinnerportfolio.com/feed.xml'/>\n      <outline type='rss' text='Jon Sullivan' xmlUrl='https://jonsully.net/rss.xml'/>\n      <outline type='rss' text='Jonas Brusman' xmlUrl='https://jonas.brusman.se/rss.xml'/>\n      <outline type='rss' text='Jonathan Rochkind' xmlUrl='https://bibwild.wordpress.com/feed/'/>\n      <outline type='rss' text='Jorge Manrubia' xmlUrl='https://world.hey.com/jorge/feed.atom'/>\n      <outline type='rss' text='Jose Farias' xmlUrl='https://jose.omg.lol/feed.xml'/>\n      <outline type='rss' text='Josef Strzibny' xmlUrl='https://nts.strzibny.name/feed.xml'/>\n      <outline type='rss' text='Josh Frankel' xmlUrl='https://joshfrankel.me/feed.xml'/>\n      <outline type='rss' text='Josh McArthur' xmlUrl='https://joshmcarthur.com/feed/'/>\n      <outline type='rss' text='Josh Thompson' xmlUrl='https://www.intermediateruby.com/atom.xml'/>\n      <outline type='rss' text='Joyful Bikeshedding' xmlUrl='https://www.joyfulbikeshedding.com/feed.xml'/>\n      <outline type='rss' text='JP Camara' xmlUrl='https://jpcamara.com/categories/ruby/feed.xml'/>\n      <outline type='rss' text='Julia Evans' xmlUrl='https://jvns.ca/atom.xml'/>\n      <outline type='rss' text='Julian Rubisch' xmlUrl='https://hotwire.club/feed.xml'/>\n      <outline type='rss' text='Juliana Dias' xmlUrl='https://blog.juliana.dev/feed.xml'/>\n      <outline type='rss' text='Julija Alieckaja' xmlUrl='https://medium.com/feed/@alieckaja'/>\n      <outline type='rss' text='Julik Tarkhanov' xmlUrl='https://blog.julik.nl/feed.atom.xml'/>\n      <outline type='rss' text='Justin Cypret' xmlUrl='https://justincypret.com/feed.xml'/>\n      <outline type='rss' text='Justin Searls' xmlUrl='https://justin.searls.co/atom.xml'/>\n      <outline type='rss' text='Jônatas Davi Paganini' xmlUrl='https://ideia.me/atom.xml'/>\n      <outline type='rss' text='Kadu Diógenes' xmlUrl='https://kdiogenes.github.io/feed.xml'/>\n      <outline type='rss' text='Kallin Nagelberg' xmlUrl='http://happycampers.dance/feed.xml'/>\n      <outline type='rss' text='Karol Bąk' xmlUrl='https://kukicola.io/feed.xml'/>\n      <outline type='rss' text='Karol Galanciak' xmlUrl='https://karolgalanciak.com/feed.xml'/>\n      <outline type='rss' text='Kasper Timm Hansen' xmlUrl='https://kaspth.com/posts_feed'/>\n      <outline type='rss' text='Kasper Timm Hansen (buttondown)' xmlUrl='https://buttondown.com/kaspth/rss'/>\n      <outline type='rss' text='Kevin Glowacz' xmlUrl='https://kevin.glowacz.info/feed.xml'/>\n      <outline type='rss' text='Kevin Murphy' xmlUrl='https://kevinjmurphy.com/posts/index.xml'/>\n      <outline type='rss' text='Kevin Newton' xmlUrl='https://kddnewton.com/feed.xml'/>\n      <outline type='rss' text='Kevin Sylvestre' xmlUrl='https://ksylvest.com/feed.atom'/>\n      <outline type='rss' text='Khaja Minhajuddin' xmlUrl='https://minhajuddin.com/atom.xml'/>\n      <outline type='rss' text='Kiril Mitov' xmlUrl='https://kmitov.com/feed/'/>\n      <outline type='rss' text='Kirill Platonov' xmlUrl='https://kirillplatonov.com/feed.xml'/>\n      <outline type='rss' text='Koichi Sasada' xmlUrl='https://dev.to/feed/ko1'/>\n      <outline type='rss' text='Kuba Suder' xmlUrl='https://journal.mackuba.eu/feed.xml'/>\n      <outline type='rss' text='Kyle Keesling' xmlUrl='https://kylekeesling.com/feed.xml'/>\n      <outline type='rss' text='Kyrylo Silin' xmlUrl='https://kyrylo.org/feed.xml'/>\n      <outline type='rss' text='Landon Gray' xmlUrl='https://thedayisntgray.github.io/feed.xml'/>\n      <outline type='rss' text='Lars Peters' xmlUrl='https://larsp.de/rss/'/>\n      <outline type='rss' text='Lazarus Lazaridis' xmlUrl='https://iridakos.com/feed.xml'/>\n      <outline type='rss' text='Linas Juškevičius' xmlUrl='https://kaukas.mataroa.blog/rss/'/>\n      <outline type='rss' text='Lovro Bikić' xmlUrl='https://lovro-bikic.github.io/feed.xml'/>\n      <outline type='rss' text='Luan Nguyen' xmlUrl='https://medium.com/feed/@luanotes'/>\n      <outline type='rss' text='Luca Guidi' xmlUrl='https://lucaguidi.com/rss.xml'/>\n      <outline type='rss' text='Lucas Dohmen' xmlUrl='https://lucas.dohmen.io/feed.xml'/>\n      <outline type='rss' text='Lucian Ghinda' xmlUrl='https://allaboutcoding.ghinda.com/rss.xml'/>\n      <outline type='rss' text='Lucian Ghinda (Notes)' xmlUrl='https://notes.ghinda.com/feed.atom'/>\n      <outline type='rss' text='Luiz Eduardo Kowalski' xmlUrl='https://www.luizkowalski.net/rss/'/>\n      <outline type='rss' text='Lynn Chang' xmlUrl='https://lynnbright.com/rss.xml'/>\n      <outline type='rss' text='Maciej Litwiniuk' xmlUrl='https://maciej.litwiniuk.net/index.xml'/>\n      <outline type='rss' text='Maciej Mensfeld' xmlUrl='https://mensfeld.pl/feed/'/>\n      <outline type='rss' text='Marc Busqué' xmlUrl='https://waiting-for-dev.github.io/feed.xml'/>\n      <outline type='rss' text='Marcin Ostrowski (rubyonai.com)' xmlUrl='https://rubyonai.com/rss/'/>\n      <outline type='rss' text='Marco Roth' xmlUrl='https://marcoroth.dev/feed.xml'/>\n      <outline type='rss' text='Mario Alberto Chávez Cárdenas' xmlUrl='https://mariochavez.io/feed.xml'/>\n      <outline type='rss' text='Mark Godwin (railscraft)' xmlUrl='https://railscraft.hashnode.dev/rss.xml'/>\n      <outline type='rss' text='Martin Emde' xmlUrl='https://martinemde.com/rss.xml'/>\n      <outline type='rss' text='Mateusz Białowąs' xmlUrl='https://mateuszbialowas.com/rss.xml'/>\n      <outline type='rss' text='Matheus Richard' xmlUrl='http://matheusrich.com/feed.xml'/>\n      <outline type='rss' text='Matias Korhonen' xmlUrl='https://www.randomerrata.com/feed.xml'/>\n      <outline type='rss' text='Matt Brictson' xmlUrl='https://mattbrictson.com/blog.atom'/>\n      <outline type='rss' text='Mattia Roccoberton' xmlUrl='https://www.blocknot.es/feed.xml'/>\n      <outline type='rss' text='Max Braga' xmlUrl='https://hellomax.me/feed.xml'/>\n      <outline type='rss' text='Max Tikhomirov' xmlUrl='https://metacircu1ar.github.io/feed.xml'/>\n      <outline type='rss' text='Maxime Lapointe' xmlUrl='https://maxlap.dev/blog/feed.xml'/>\n      <outline type='rss' text='Michael Dominick' xmlUrl='https://dominickm.com/feed/'/>\n      <outline type='rss' text='Michael Grosser' xmlUrl='https://grosser.it/feed/'/>\n      <outline type='rss' text='Mike Coutermarsh' xmlUrl='https://www.mikecoutermarsh.com/rss/'/>\n      <outline type='rss' text='Mike McQuaid' xmlUrl='https://mikemcquaid.com/atom.xml'/>\n      <outline type='rss' text='Mike Perham' xmlUrl='https://mikeperham.com/index.xml'/>\n      <outline type='rss' text='Mike Wilson' xmlUrl='https://www.mikewilson.dev/feed.xml'/>\n      <outline type='rss' text='Mikhail Klimenko' xmlUrl='https://blog.klimenko.site/feed.xml'/>\n      <outline type='rss' text='Miles Woodroffe' xmlUrl='https://mileswoodroffe.com/feed.xml'/>\n      <outline type='rss' text='Mohammad A. Ali' xmlUrl='https://oldmoe.blog/feed/'/>\n      <outline type='rss' text='Mohit Sindhwani' xmlUrl='https://notepad.onghu.com/feed.xml'/>\n      <outline type='rss' text='Moncef Belyamani' xmlUrl='https://www.moncefbelyamani.com/feed.xml'/>\n      <outline type='rss' text='Mário Nzualo' xmlUrl='https://www.marionzualo.com/feed/'/>\n      <outline type='rss' text='Máximo Mussini' xmlUrl='https://maximomussini.com/feed.xml'/>\n      <outline type='rss' text='Nate Berkopec' xmlUrl='https://www.speedshop.co/feed.xml'/>\n      <outline type='rss' text='Nicholas' xmlUrl='https://wasabigeek.com/rss.xml'/>\n      <outline type='rss' text='Nick Hammond' xmlUrl='https://www.fromthekeyboard.com/rss/'/>\n      <outline type='rss' text='Nick Schwaderer (blog.schwad.org)' xmlUrl='https://blog.schwad.org/feed'/>\n      <outline type='rss' text='Nick Schwaderer (schwad.github.io)' xmlUrl='https://schwad.github.io/feed.xml'/>\n      <outline type='rss' text='Nick Sutterer' xmlUrl='https://apotonick.wordpress.com/feed/'/>\n      <outline type='rss' text='Nikita Misharin' xmlUrl='https://thesmartnik.com/feed.xml'/>\n      <outline type='rss' text='Nikola Đuza' xmlUrl='https://pragmaticpineapple.com/rss.xml'/>\n      <outline type='rss' text='Nitanshu Verma' xmlUrl='https://nitanshu.github.io/feed.xml'/>\n      <outline type='rss' text='Nithin Bekal' xmlUrl='https://nithinbekal.com/feed.xml'/>\n      <outline type='rss' text='Noah Gibbs' xmlUrl='https://codefol.io/feed.xml'/>\n      <outline type='rss' text='Noel Rappin' xmlUrl='https://noelrappin.com//blog/index.xml'/>\n      <outline type='rss' text='Nolan Phillips' xmlUrl='https://blog.nolanphillips.com/rss.xml'/>\n      <outline type='rss' text='Olly Headey' xmlUrl='https://olly.world/feed.xml'/>\n      <outline type='rss' text='Pablo Enoc' xmlUrl='https://enocc.com/feed.xml'/>\n      <outline type='rss' text='Paul Sadauskas' xmlUrl='https://blog.theamazingrando.com/feed.xml'/>\n      <outline type='rss' text='Paweł Dąbrowski' xmlUrl='https://www.paweldabrowski.com/undefined/rss/feed.xml'/>\n      <outline type='rss' text='Paweł Świątkowski' xmlUrl='https://katafrakt.me/feed.xml'/>\n      <outline type='rss' text='Peter Keogh' xmlUrl='https://keoghpe.github.io/feed.xml'/>\n      <outline type='rss' text='Peter Solnica' xmlUrl='https://solnic.dev/rss/'/>\n      <outline type='rss' text='Peter Zhu' xmlUrl='https://blog.peterzhu.ca/feed.xml'/>\n      <outline type='rss' text='Petr Hlavicka' xmlUrl='https://petr.codes/feed.xml'/>\n      <outline type='rss' text='Phil Pirozhkov' xmlUrl='https://fili.pp.ru/feed.xml'/>\n      <outline type='rss' text='Philippe Creux' xmlUrl='https://pcreux.com/feed.xml'/>\n      <outline type='rss' text='Piotr Chmolowski' xmlUrl='https://ptrchm.com/posts/index.xml'/>\n      <outline type='rss' text='Piotr Murach' xmlUrl='https://piotrmurach.com/feed.xml'/>\n      <outline type='rss' text='Prabin Poudel' xmlUrl='https://prabinpoudel.com.np/atom.xml'/>\n      <outline type='rss' text='Prabin Poudel (Zero Config Rails)' xmlUrl='https://blog.zeroconfigrails.com/rss.xml'/>\n      <outline type='rss' text='Rachael Wright-Munn' xmlUrl='https://www.chael.codes/feed.xml'/>\n      <outline type='rss' text='Radan Skorić' xmlUrl='https://radanskoric.com/feed.xml'/>\n      <outline type='rss' text='Radoslav Stankov (Rado&apos;s Blog)' xmlUrl='https://blog.rstankov.com/rss/'/>\n      <outline type='rss' text='Radoslav Stankov (Rado&apos;s Tips)' xmlUrl='https://tips.rstankov.com/feed'/>\n      <outline type='rss' text='Rafael Montas' xmlUrl='https://www.rafaelmontas.com/feed.xml'/>\n      <outline type='rss' text='Rahoul Baruah' xmlUrl='https://theartandscienceofruby.com/rss/'/>\n      <outline type='rss' text='Remi Mercier' xmlUrl='https://remimercier.com/feed.xml'/>\n      <outline type='rss' text='Renato Nitta' xmlUrl='https://renatonitta.com/feed/'/>\n      <outline type='rss' text='Rich Steinmetz' xmlUrl='https://richstone.io/rss/'/>\n      <outline type='rss' text='Richard Schneeman' xmlUrl='https://schneems.com/feed.xml'/>\n      <outline type='rss' text='Rico Sta. Cruz' xmlUrl='https://ricostacruz.com/til/rss.xml'/>\n      <outline type='rss' text='Rob Race' xmlUrl='https://robrace.dev/blog/rss.xml'/>\n      <outline type='rss' text='Rob Zolkos' xmlUrl='https://www.zolkos.com/feed.xml'/>\n      <outline type='rss' text='Robby Russell' xmlUrl='https://robbyonrails.com/feed.xml'/>\n      <outline type='rss' text='Robert Pankowecki' xmlUrl='https://pankowecki.pl/index.xml'/>\n      <outline type='rss' text='Rodrigo Rosenfeld Rosas' xmlUrl='https://rosenfeld.page/articles/tags/ruby/atom'/>\n      <outline type='rss' text='Roland Studer' xmlUrl='https://rstuder.ch/feed.xml'/>\n      <outline type='rss' text='Ronan Limon Duparcmeur' xmlUrl='https://2-45.pm/feed.xml'/>\n      <outline type='rss' text='Ross' xmlUrl='http://reinhardt.io/feed.xml'/>\n      <outline type='rss' text='Ross Kaffenberger' xmlUrl='https://rossta.net/feed.xml'/>\n      <outline type='rss' text='Ross Kaffenberger (Joy of Rails)' xmlUrl='https://joyofrails.com/feed'/>\n      <outline type='rss' text='Ryan Bates' xmlUrl='https://rbates.dev/rss.xml'/>\n      <outline type='rss' text='Ryan Bigg' xmlUrl='https://ryanbigg.com/feed.xml'/>\n      <outline type='rss' text='Ryan Davis' xmlUrl='https://www.zenspider.com/atom.xml'/>\n      <outline type='rss' text='Sahil Gadimbayli' xmlUrl='https://www.ramblingcode.dev/tags/ruby/index.xml'/>\n      <outline type='rss' text='Samuel Williams' xmlUrl='https://www.codeotaku.com/journal/atom'/>\n      <outline type='rss' text='Sandi Metz' xmlUrl='https://sandimetz.com/blog?format=rss'/>\n      <outline type='rss' text='Scott Bartell' xmlUrl='https://scottbartell.com/feed.xml'/>\n      <outline type='rss' text='Scott Hanselman' xmlUrl='https://www.hanselman.com/blog/feed/rss'/>\n      <outline type='rss' text='Scott Johnson' xmlUrl='http://fuzzyblog.io/blog/feed.xml'/>\n      <outline type='rss' text='Scott Watermasysk' xmlUrl='https://scottw.com/feed.xml'/>\n      <outline type='rss' text='Scott Werner' xmlUrl='https://worksonmymachine.substack.com/feed'/>\n      <outline type='rss' text='Sean C Davis' xmlUrl='https://www.seancdavis.com/feed.xml'/>\n      <outline type='rss' text='Seb Wilgosz' xmlUrl='https://swilgosz.hashnode.dev/rss.xml'/>\n      <outline type='rss' text='Shayon Mukherjee' xmlUrl='https://www.shayon.dev/post/index.xml'/>\n      <outline type='rss' text='Shivam Chahar' xmlUrl='https://www.shivamchahar.com/feed.xml'/>\n      <outline type='rss' text='Sihui Huang' xmlUrl='https://www.sihui.io/feed/'/>\n      <outline type='rss' text='Sreeram Venkitesh' xmlUrl='https://sreeram.xyz/feed.xml'/>\n      <outline type='rss' text='Stan Lo' xmlUrl='https://st0012.dev/rss.xml'/>\n      <outline type='rss' text='Stanislav Katkov' xmlUrl='https://skatkov.com/feed.xml'/>\n      <outline type='rss' text='Stanko Krtalić' xmlUrl='https://stanko.io/articles/rss'/>\n      <outline type='rss' text='Stefan Botzenhart' xmlUrl='https://www.botzenhart.io/undefined/rss/feed.xml'/>\n      <outline type='rss' text='Stefan Wienert' xmlUrl='https://www.stefanwienert.de/feed.xml'/>\n      <outline type='rss' text='Stefan Wintermeyer' xmlUrl='https://medium.com/feed/@wintermeyer'/>\n      <outline type='rss' text='Stephan Kämper' xmlUrl='https://seasidetesting.com/feed/'/>\n      <outline type='rss' text='Stephen Margheim' xmlUrl='https://fractaledmind.github.io/feed.xml'/>\n      <outline type='rss' text='Steve Klabnik' xmlUrl='https://steveklabnik.com/feed.xml'/>\n      <outline type='rss' text='Steve Polito' xmlUrl='https://stevepolito.design/feed.xml'/>\n      <outline type='rss' text='Steven Harman' xmlUrl='https://stevenharman.net/feed.xml'/>\n      <outline type='rss' text='Steven Yue' xmlUrl='https://stevenyue.com/feed.xml'/>\n      <outline type='rss' text='Stuart Frost' xmlUrl='https://www.stufro.com/%20/feed.xml'/>\n      <outline type='rss' text='Sulman Baig' xmlUrl='https://sulmanweb.com/rss.xml'/>\n      <outline type='rss' text='Suraj Mishra' xmlUrl='https://monorails.substack.com/feed'/>\n      <outline type='rss' text='Tejas Bubane' xmlUrl='https://tejasbubane.github.io/rss.xml'/>\n      <outline type='rss' text='Tekin Süleyman' xmlUrl='https://tekin.co.uk/atom.xml'/>\n      <outline type='rss' text='Thomas Countz' xmlUrl='https://thomascountz.com/atom.xml'/>\n      <outline type='rss' text='Thomas Leitner' xmlUrl='https://gettalong.org/posts.rss'/>\n      <outline type='rss' text='Tiago (honeyryder)' xmlUrl='https://honeyryderchuck.gitlab.io/atom.xml'/>\n      <outline type='rss' text='Tim Riley' xmlUrl='https://timriley.info/posts_feed'/>\n      <outline type='rss' text='Tom Dalling' xmlUrl='https://www.tomdalling.com/blog/feed/'/>\n      <outline type='rss' text='Tom de Bruijn' xmlUrl='https://tomdebruijn.com/feed.xml'/>\n      <outline type='rss' text='Tom Mango' xmlUrl='https://sleepingpotato.com/rss/'/>\n      <outline type='rss' text='Tom Stuart' xmlUrl='https://tomstu.art/articles.atom'/>\n      <outline type='rss' text='Tomas Valent' xmlUrl='https://blog.eq8.eu/feed.xml'/>\n      <outline type='rss' text='Tristan Dunn' xmlUrl='https://tristandunn.com/feed'/>\n      <outline type='rss' text='Tristan Penman' xmlUrl='https://tristanpenman.com/feed.xml'/>\n      <outline type='rss' text='Tëma Bolshakov' xmlUrl='https://blog.bolshakov.dev/feed.xml'/>\n      <outline type='rss' text='Unathi Chonco' xmlUrl='https://blog.unathichonco.com/rss.xml'/>\n      <outline type='rss' text='Vasiliy Ermolovich' xmlUrl='https://nashby.github.io/atom.xml'/>\n      <outline type='rss' text='Vasily Polovnyov' xmlUrl='https://vasily.polovnyov.ru/feed.xml'/>\n      <outline type='rss' text='Victor Afanasev' xmlUrl='https://vifreefly.github.io/feed.xml'/>\n      <outline type='rss' text='Victor Shepelev (zverok)' xmlUrl='https://zverok.space/feed.xml'/>\n      <outline type='rss' text='Victor Wynne' xmlUrl='https://victorwynne.com/feed.xml'/>\n      <outline type='rss' text='Vinay Keerthi' xmlUrl='https://tech.stonecharioteer.com/posts/index.xml'/>\n      <outline type='rss' text='Vini Oyama' xmlUrl='https://vinioyama.com/feed/'/>\n      <outline type='rss' text='Vitalii Elenhaupt' xmlUrl='https://veelenga.github.io/feed.xml'/>\n      <outline type='rss' text='Vladislav Kopylov' xmlUrl='https://medium.com/feed/@kopilov-vlad'/>\n      <outline type='rss' text='Way Mondo' xmlUrl='https://waymondo.com/index.xml'/>\n      <outline type='rss' text='Will Jessop' xmlUrl='https://willj.net/rss.xml'/>\n      <outline type='rss' text='William Kennedy' xmlUrl='https://williamkennedy.ninja/feed.xml'/>\n      <outline type='rss' text='Yegor Bugayenko' xmlUrl='https://www.yegor256.com/rss.xml'/>\n      <outline type='rss' text='Yehuda Katz' xmlUrl='https://yehudakatz.com/rss/'/>\n      <outline type='rss' text='Yevhen Kuzminov' xmlUrl='http://stdout.in/en/cat/all.rss'/>\n      <outline type='rss' text='Yorick Peterse' xmlUrl='https://yorickpeterse.com/feed.xml'/>\n      <outline type='rss' text='Yoshiki' xmlUrl='https://takagi.blog/tags/ruby/rss.xml'/>\n      <outline type='rss' text='Younes SERRAJ' xmlUrl='https://younes.codes/posts.rss'/>\n      <outline type='rss' text='Youssef Boulkaid' xmlUrl='https://blog.yboulkaid.com/feed.xml'/>\n      <outline type='rss' text='Yuri Bocharov' xmlUrl='https://blog.yuribocharov.dev/feed.xml'/>\n      <outline type='rss' text='Zil Norvilis' xmlUrl='https://norvilis.com/feed.xml'/>\n      <outline type='rss' text='Владимир Мирошниченко' xmlUrl='https://gururuby.ru/atom.xml'/>\n      <outline type='rss' text='Иван Шихалев' xmlUrl='https://shikhalev.github.io/feed.xml'/>\n    </outline>\n  </body>\n</opml>"
  },
  {
    "path": "opml/podcast.opml",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<opml version='2.0'>\n  <head>\n    <title>Subscriptions</title>\n    <dateCreated>Sat, 30 Aug 2025 11:45:00 +1200</dateCreated>\n    <dateModified>Mon, 23 Mar 2026 10:38:52 +0300</dateModified>\n  </head>\n  <body>\n    <outline text='Awesome Ruby Blogs: podcast'>\n      <outline type='rss' text='Code and the Coding Coders who Code it' xmlUrl='https://feeds.buzzsprout.com/1927628.rss'/>\n      <outline type='rss' text='Code with Jason' xmlUrl='https://feeds.buzzsprout.com/1878319.rss'/>\n      <outline type='rss' text='Dead Code' xmlUrl='https://feeds.acast.com/public/shows/dead-code'/>\n      <outline type='rss' text='Friendly Show' xmlUrl='https://feeds.buzzsprout.com/2278525.rss'/>\n      <outline type='rss' text='IndieRails' xmlUrl='https://feeds.transistor.fm/indierails'/>\n      <outline type='rss' text='On Rails' xmlUrl='https://feeds.buzzsprout.com/2462975.rss'/>\n      <outline type='rss' text='Remote Ruby' xmlUrl='https://feeds.buzzsprout.com/2260490.rss'/>\n      <outline type='rss' text='Rooftop Ruby Podcast' xmlUrl='https://feeds.buzzsprout.com/2108545.rss'/>\n      <outline type='rss' text='Ruby Rogues' xmlUrl='https://www.spreaker.com/show/6102073/episodes/feed'/>\n      <outline type='rss' text='The Bike Shed' xmlUrl='https://bikeshed.thoughtbot.com/rss'/>\n      <outline type='rss' text='The Ruby Gems Podcast' xmlUrl='https://feeds.buzzsprout.com/2509083.rss'/>\n      <outline type='rss' text='The Ruby on Rails Podcast' xmlUrl='https://www.therubyonrailspodcast.com/rss'/>\n    </outline>\n  </body>\n</opml>"
  },
  {
    "path": "opml/screencast_livestream.opml",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<opml version='2.0'>\n  <head>\n    <title>Subscriptions</title>\n    <dateCreated>Sat, 30 Aug 2025 11:45:00 +1200</dateCreated>\n    <dateModified>Mon, 23 Mar 2026 10:38:52 +0300</dateModified>\n  </head>\n  <body>\n    <outline text='Awesome Ruby Blogs: screencast_livestream'>\n      <outline type='rss' text='CJ Avilla' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCYUC-bdnQRJDhZRL2c_NKVw'/>\n      <outline type='rss' text='Conner Jensen' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCUeZ3YgblYkMQt0wJP3OR-Q'/>\n      <outline type='rss' text='Deanin' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCRQv-3VvPT9mArF5RfrlpKQ'/>\n      <outline type='rss' text='Higher Theory Dev' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCJeItdDBizxD7-BXnSSrE9w'/>\n      <outline type='rss' text='Ken Greeff' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCuya5UWfi4fMvhQin-JosRA'/>\n      <outline type='rss' text='pushcx' xmlUrl='https://push.cx/feed.xml'/>\n      <outline type='rss' text='Ruby Australia' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCr38SHAvOKMDyX3-8lhvJHA'/>\n      <outline type='rss' text='SupeRails' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCyr6ZTmztFW3FB4qG_97FoA'/>\n      <outline type='rss' text='TenderlovesCoolStuff' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCCwuRBRF-IPihV4bob3Ko2w'/>\n      <outline type='rss' text='Webcrunch' xmlUrl='https://www.youtube.com/feeds/videos.xml?channel_id=UCzePijHDYnVHIXW6HYTL4dg'/>\n    </outline>\n  </body>\n</opml>"
  },
  {
    "path": "opml/social_news_aggregation.opml",
    "content": "<?xml version='1.0' encoding='UTF-8'?>\n<opml version='2.0'>\n  <head>\n    <title>Subscriptions</title>\n    <dateCreated>Sat, 30 Aug 2025 11:45:00 +1200</dateCreated>\n    <dateModified>Mon, 23 Mar 2026 10:38:52 +0300</dateModified>\n  </head>\n  <body>\n    <outline text='Awesome Ruby Blogs: social_news_aggregation'>\n      <outline type='rss' text='DevZone (Old Codeguida)' xmlUrl='https://devzone.org.ua/feed/tag/ruby'/>\n      <outline type='rss' text='Habr Ruby' xmlUrl='https://habr.com/ru/rss/hubs/ruby/articles/?fl=ru'/>\n      <outline type='rss' text='Hashnode rubyonrails' xmlUrl='https://hashnode.com/n/rubyonrails/rss'/>\n      <outline type='rss' text='Human Coders News Ruby' xmlUrl='https://news.humancoders.com/t/ruby/items/feed'/>\n      <outline type='rss' text='Medium Ruby' xmlUrl='https://medium.com/sitemap/sitemap.xml'/>\n    </outline>\n  </body>\n</opml>"
  }
]