<?xml version="1.0" encoding="UTF-8"?>
 <rdf:RDF xmlns="http://purl.org/rss/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://web.resource.org/cc/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://pinboard.in">
    <title>Pinboard (rtlechow)</title>
    <link>https://pinboard.in/u:rtlechow/public/</link>
    <description>recent bookmarks from rtlechow</description>
    <items>
      <rdf:Seq>	<rdf:li rdf:resource="https://mattsears.com/articles/2021/05/23/kill-n-plus-one-queries-for-good-with-strict-loading/"/>
	<rdf:li rdf:resource="https://gist.github.com/nateberkopec/9755ebe43ba1e94bfb22b11c1c2f5b09"/>
	<rdf:li rdf:resource="https://github.com/danielwestendorf/specwrk"/>
	<rdf:li rdf:resource="https://byroot.github.io/ruby/performance/2025/01/23/the-mythical-io-bound-rails-app.html"/>
	<rdf:li rdf:resource="https://github.com/yjacquin/fast-mcp"/>
	<rdf:li rdf:resource="https://railsatscale.com/2024-10-23-next-generation-oob-gc/"/>
	<rdf:li rdf:resource="https://github.com/standard-webhooks/standard-webhooks/tree/main/libraries/ruby"/>
	<rdf:li rdf:resource="https://github.com/smartinez87/exception_notification"/>
	<rdf:li rdf:resource="https://github.com/errbit/errbit"/>
	<rdf:li rdf:resource="https://github.com/airbrake/airbrake"/>
	<rdf:li rdf:resource="https://github.com/speedshop/ids_must_be_indexed?tab=readme-ov-file"/>
	<rdf:li rdf:resource="https://github.com/activeagents/activeagent"/>
	<rdf:li rdf:resource="https://zverok.space/blog/2024-09-19-gilded_rose.html"/>
	<rdf:li rdf:resource="https://github.com/ankane/ahoy"/>
	<rdf:li rdf:resource="https://skatkov.com/posts/2024-09-13-battling-n-1-queries-in-rails"/>
	<rdf:li rdf:resource="https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/cells/"/>
	<rdf:li rdf:resource="https://evilmartians.com/chronicles/gemfile-of-dreams-libraries-we-use-to-build-rails-apps"/>
	<rdf:li rdf:resource="https://github.com/allyourbot/hostedgpt"/>
	<rdf:li rdf:resource="https://github.com/hopsoft/job_contracts"/>
	<rdf:li rdf:resource="https://github.com/Multiwoven/multiwoven"/>
	<rdf:li rdf:resource="https://github.com/glaucocustodio/tanakai"/>
	<rdf:li rdf:resource="https://github.com/Shopify/ruby-lsp-rails"/>
	<rdf:li rdf:resource="https://github.com/madeintandem/jsonb_accessor#jsonb-accessor"/>
	<rdf:li rdf:resource="https://github.com/pboling/flag_shih_tzu"/>
	<rdf:li rdf:resource="https://gist.github.com/alexrudall/cb5ee1e109353ef358adb4e66631799d"/>
	<rdf:li rdf:resource="https://engineering.gusto.com/scaling-sidekiq-at-gusto/"/>
	<rdf:li rdf:resource="https://medium.com/gusto-engineering/a-how-to-guide-to-ruby-packs-gustos-gem-ecosystem-for-modularizing-ruby-applications-e236126b8c2c"/>
	<rdf:li rdf:resource="https://rubyreferences.github.io/rubychanges/"/>
	<rdf:li rdf:resource="https://github.com/andreibondarev/langchainrb"/>
	<rdf:li rdf:resource="https://github.com/pedro/cb2"/>
	<rdf:li rdf:resource="https://github.com/pedrozath/coltrane"/>
	<rdf:li rdf:resource="https://shopify.engineering/improving-the-developer-experience-with-ruby-lsp"/>
	<rdf:li rdf:resource="https://planetscale.com/blog/how-we-made-planetscale-background-jobs-self-healing-with-sidekiq"/>
	<rdf:li rdf:resource="https://mailchi.mp/railsspeed/a-barbell-strategy-for-performance?e=71459d59e6"/>
	<rdf:li rdf:resource="http://roda.jeremyevans.net/"/>
	<rdf:li rdf:resource="https://github.com/tenderlove/ruby-glossary"/>
	<rdf:li rdf:resource="https://github.com/RestlessThinker/danger-pronto"/>
	<rdf:li rdf:resource="https://github.com/reidmorrison/symmetric-encryption"/>
	<rdf:li rdf:resource="https://github.com/rubyatscale/code_teams"/>
	<rdf:li rdf:resource="https://github.com/rubyatscale/use_packwerk"/>
	<rdf:li rdf:resource="https://github.com/rubyatscale/stimpack"/>
	<rdf:li rdf:resource="https://github.com/rubyatscale/parse_packwerk"/>
	<rdf:li rdf:resource="https://github.com/rubyatscale/package_protections"/>
	<rdf:li rdf:resource="https://github.com/rubyatscale/danger-packwerk"/>
	<rdf:li rdf:resource="https://github.com/rubyatscale/code_ownership"/>
	<rdf:li rdf:resource="https://jvns.ca/blog/2018/01/31/spying-on-a-ruby-process-s-memory-allocations/"/>
	<rdf:li rdf:resource="https://workingwithruby.com/"/>
	<rdf:li rdf:resource="https://shopify.engineering/ruby-execution-models"/>
	<rdf:li rdf:resource="https://thenewstack.io/why-were-sticking-with-ruby-on-rails-at-gitlab/"/>
	<rdf:li rdf:resource="https://github.com/Shopify/ruby-lsp"/>
	<rdf:li rdf:resource="https://doc.getlago.com/docs/guide/intro"/>
	<rdf:li rdf:resource="https://shopify.engineering/how-fix-slow-code-ruby"/>
	<rdf:li rdf:resource="https://github.com/kddnewton/yarv"/>
	<rdf:li rdf:resource="https://github.com/gazay/gon"/>
	<rdf:li rdf:resource="https://blog.saeloun.com/2022/04/19/ruby-variable-width-allocation-part-2"/>
	<rdf:li rdf:resource="https://about.gitlab.com/blog/2021/02/03/how-we-automatically-fixed-hundreds-of-ruby-2-7-deprecation-warnings/"/>
	<rdf:li rdf:resource="https://nts.strzibny.name/understanding-viewcomponent-concepts/"/>
	<rdf:li rdf:resource="https://github.com/palkan/isolator"/>
	<rdf:li rdf:resource="https://github.com/grosser/ar_after_transaction"/>
	<rdf:li rdf:resource="https://engineering.gusto.com/laying-the-cultural-and-technical-foundation-for-big-rails/"/>
	<rdf:li rdf:resource="https://github.com/crystal-data/num.cr"/>
	<rdf:li rdf:resource="https://boringrails.com/"/>
	<rdf:li rdf:resource="https://github.com/Maaarcocr/webview_ruby"/>
	<rdf:li rdf:resource="https://github.com/jbarnette/pinglish"/>
	<rdf:li rdf:resource="https://github.com/zverok/yard-junk"/>
	<rdf:li rdf:resource="https://github.com/balvig/spyke"/>
	<rdf:li rdf:resource="https://github.com/AaronC81/sord"/>
	<rdf:li rdf:resource="https://github.com/ankane/or-tools-ruby"/>
	<rdf:li rdf:resource="https://mailchi.mp/railsspeed/stop-tuning-rubys-gc?e=71459d59e6"/>
	<rdf:li rdf:resource="https://github.com/nateberkopec/gilded_rose/blob/master/ruby/gilded_rose.rb"/>
      </rdf:Seq>
    </items>
  </channel><item rdf:about="https://mattsears.com/articles/2021/05/23/kill-n-plus-one-queries-for-good-with-strict-loading/">
    <title>Matt Sears | Kill N+1 Queries For Good with Strict Loading</title>
    <dc:date>2026-01-26T21:45:04+00:00</dc:date>
    <link>https://mattsears.com/articles/2021/05/23/kill-n-plus-one-queries-for-good-with-strict-loading/</link>
    <dc:creator>rtlechow</dc:creator><description><![CDATA[Kill N+1 Queries For Good with Strict Loading
May 23, 2021
Starting with Rails 6.1, we can set a strict_loading configuration option that, when true, will throw an error if your code attempts to lazy load any associations with out strictly including the association in the ActiveRecord query.]]></description>
<dc:subject>rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:2ad37855345c/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://gist.github.com/nateberkopec/9755ebe43ba1e94bfb22b11c1c2f5b09">
    <title>Speedshop's Performance Design Principles</title>
    <dc:date>2025-10-28T15:42:28+00:00</dc:date>
    <link>https://gist.github.com/nateberkopec/9755ebe43ba1e94bfb22b11c1c2f5b09</link>
    <dc:creator>rtlechow</dc:creator><description><![CDATA[Speedshop's Performance Design Principles
design.md
Performance is engineering. It has requirements, we try to make the system fulfill those requirements while respecting constraints.
You can't optimize what you don't understand. We need sufficient observability, tooling and education to make things happen.
Focus on the full stack. No user is reading HTTP off the wire, so measure things in the browser as the user actually experiences them.
Work is done when requirements are not being met, not when the vibe is off. We set requirements, and when they're not being met, that should trigger work, not qualitative assessments about codebases.
Experimentation and extrapolation from real-world data > synthetic testing and "best practices". Try to be empirical, and not blindly applying someone else's "best practice".]]></description>
<dc:subject>ruby rails performance</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:632829291aea/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:performance"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/danielwestendorf/specwrk">
    <title>danielwestendorf/specwrk: Parallel test runner for rspec. Multi-process and multi-node.</title>
    <dc:date>2025-09-15T13:37:23+00:00</dc:date>
    <link>https://github.com/danielwestendorf/specwrk</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>gems library testing ruby programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:0e955ca49931/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gems"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:library"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:testing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://byroot.github.io/ruby/performance/2025/01/23/the-mythical-io-bound-rails-app.html">
    <title>The Mythical IO-Bound Rails App | byroot’s blog</title>
    <dc:date>2025-07-23T15:34:00+00:00</dc:date>
    <link>https://byroot.github.io/ruby/performance/2025/01/23/the-mythical-io-bound-rails-app.html</link>
    <dc:creator>rtlechow</dc:creator><description><![CDATA[Why does it matter?
At that point, you might wonder why it matters how much time Rails applications spend waiting on IO.

For the average Rails user, it is important to know this, because it is what defines which execution model is best suited to deploy their application:

If an application is truly IO-bound, as in spending more than 95% of its time waiting for IO, then using an asynchronous execution model is likely what will get you the best results.
If an application isn’t fully IO-bound, but still is quite IO-heavy, then using a threaded server, with a reasonable number of threads per process, is probably what will get you the best tradeoff between latency and throughput.
If an application doesn’t spend significantly more than half its time on IO, then it might be preferable to use a purely process-based solution.]]></description>
<dc:subject>ruby rails programming performance</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:243410242371/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:programming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:performance"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/yjacquin/fast-mcp">
    <title>yjacquin/fast-mcp: A Ruby Implementation of the Model Context Protocol</title>
    <dc:date>2025-04-08T14:35:36+00:00</dc:date>
    <link>https://github.com/yjacquin/fast-mcp</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby mcp ai llm github</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:cf24e74f903d/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:mcp"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:llm"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://railsatscale.com/2024-10-23-next-generation-oob-gc/">
    <title>Next Generation Out of Band Garbage Collection | Rails at Scale</title>
    <dc:date>2025-03-02T15:09:46+00:00</dc:date>
    <link>https://railsatscale.com/2024-10-23-next-generation-oob-gc/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby scale gc</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:9bed07dc5097/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:scale"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gc"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/standard-webhooks/standard-webhooks/tree/main/libraries/ruby">
    <title>standard-webhooks/libraries/ruby at main · standard-webhooks/standard-webhooks · GitHub</title>
    <dc:date>2025-03-02T14:46:57+00:00</dc:date>
    <link>https://github.com/standard-webhooks/standard-webhooks/tree/main/libraries/ruby</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github webhooks protocol ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:43de34b7fa9f/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:webhooks"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:protocol"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/smartinez87/exception_notification">
    <title>GitHub - smartinez87/exception_notification: Exception Notifier Plugin for Rails</title>
    <dc:date>2025-03-02T14:46:21+00:00</dc:date>
    <link>https://github.com/smartinez87/exception_notification</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>monitoring rails ruby github</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:42c634a72843/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:monitoring"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/errbit/errbit">
    <title>GitHub - errbit/errbit: The open source error catcher that's Airbrake API compliant</title>
    <dc:date>2025-03-02T14:46:07+00:00</dc:date>
    <link>https://github.com/errbit/errbit</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>errors logging monitoring github ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:d1d63d1524fc/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:errors"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:logging"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:monitoring"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/airbrake/airbrake">
    <title>GitHub - airbrake/airbrake: The official Airbrake library for Ruby applications</title>
    <dc:date>2025-03-02T14:45:55+00:00</dc:date>
    <link>https://github.com/airbrake/airbrake</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby rails monitoring</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:6529650dc936/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:monitoring"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/speedshop/ids_must_be_indexed?tab=readme-ov-file">
    <title>GitHub - speedshop/ids_must_be_indexed: A GitHub Action to ensure all Rails application foreign key columns are indexed</title>
    <dc:date>2025-03-02T14:41:37+00:00</dc:date>
    <link>https://github.com/speedshop/ids_must_be_indexed?tab=readme-ov-file</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby github performance</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:3a9659168d96/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:performance"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/activeagents/activeagent">
    <title>GitHub - activeagents/activeagent: ActiveAgent Rails framework for Agent Apps</title>
    <dc:date>2025-03-02T14:27:52+00:00</dc:date>
    <link>https://github.com/activeagents/activeagent</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby ai github</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:932e1fd15b02/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://zverok.space/blog/2024-09-19-gilded_rose.html">
    <title>“Gilded Rose” refactoring kata in Ruby — as if it is 2024</title>
    <dc:date>2024-12-10T19:30:41+00:00</dc:date>
    <link>https://zverok.space/blog/2024-09-19-gilded_rose.html</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby kata refactoring practice</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:41c052e616ae/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:kata"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:refactoring"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:practice"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/ankane/ahoy">
    <title>ankane/ahoy: Simple, powerful, first-party analytics for Rails</title>
    <dc:date>2024-09-28T23:25:41+00:00</dc:date>
    <link>https://github.com/ankane/ahoy</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>tracking metrics analytics rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:64cad970f1b0/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:tracking"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:metrics"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:analytics"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://skatkov.com/posts/2024-09-13-battling-n-1-queries-in-rails">
    <title>Battling N+1 queries in Rails — » Stanislav (Stas) Katkov</title>
    <dc:date>2024-09-28T23:22:30+00:00</dc:date>
    <link>https://skatkov.com/posts/2024-09-13-battling-n-1-queries-in-rails</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:43153ca2cdb1/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/cells/">
    <title>Cells | The GitLab Handbook</title>
    <dc:date>2024-08-29T17:15:36+00:00</dc:date>
    <link>https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/cells/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>gitlab scaling rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:e468ef703098/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gitlab"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:scaling"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://evilmartians.com/chronicles/gemfile-of-dreams-libraries-we-use-to-build-rails-apps">
    <title>Gemfile of dreams: the libraries we use to build Rails apps—Martian Chronicles, Evil Martians’ team blog</title>
    <dc:date>2024-08-22T13:57:17+00:00</dc:date>
    <link>https://evilmartians.com/chronicles/gemfile-of-dreams-libraries-we-use-to-build-rails-apps</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>gems rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:003a72edd9b2/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gems"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/allyourbot/hostedgpt">
    <title>allyourbot/hostedgpt: An open version of ChatGPT you can host anywhere or run locally.</title>
    <dc:date>2024-05-14T19:15:31+00:00</dc:date>
    <link>https://github.com/allyourbot/hostedgpt</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails chatgpt openai ruby github</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:a41d73cb9216/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:chatgpt"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:openai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/hopsoft/job_contracts">
    <title>hopsoft/job_contracts: Enforceable contracts with test-like assurances for jobs</title>
    <dc:date>2024-05-06T19:32:05+00:00</dc:date>
    <link>https://github.com/hopsoft/job_contracts</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby rails jobs contracts github</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:5cf455bafa42/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:jobs"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:contracts"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/Multiwoven/multiwoven">
    <title>Multiwoven/multiwoven: 🔥 Open Source Reverse ETL</title>
    <dc:date>2024-03-05T16:24:04+00:00</dc:date>
    <link>https://github.com/Multiwoven/multiwoven</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>reverse etl ruby opensource github</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:f9fac66a3301/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:reverse"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:etl"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:opensource"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/glaucocustodio/tanakai">
    <title>glaucocustodio/tanakai: Tanakai is a modern web scraping framework written in Ruby. A fork of Kimurai.</title>
    <dc:date>2023-10-26T15:55:58+00:00</dc:date>
    <link>https://github.com/glaucocustodio/tanakai</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>scraper github ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:256c30e779ec/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:scraper"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/Shopify/ruby-lsp-rails">
    <title>Shopify/ruby-lsp-rails: A Ruby LSP extension for Rails</title>
    <dc:date>2023-10-19T15:38:51+00:00</dc:date>
    <link>https://github.com/Shopify/ruby-lsp-rails</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:e4e07ea69a35/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/madeintandem/jsonb_accessor#jsonb-accessor">
    <title>madeintandem/jsonb_accessor: Adds typed jsonb backed fields to your ActiveRecord models.</title>
    <dc:date>2023-10-07T16:00:31+00:00</dc:date>
    <link>https://github.com/madeintandem/jsonb_accessor#jsonb-accessor</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby jsonb</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:ca986df63dbc/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:jsonb"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/pboling/flag_shih_tzu">
    <title>pboling/flag_shih_tzu: Bit fields for ActiveRecord</title>
    <dc:date>2023-10-07T16:00:15+00:00</dc:date>
    <link>https://github.com/pboling/flag_shih_tzu</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>activerecord database github ruby gem</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:8b303f5add45/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:activerecord"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:database"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gem"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://gist.github.com/alexrudall/cb5ee1e109353ef358adb4e66631799d">
    <title>ChatGPT streaming with ruby-openai, Rails 7, Hotwire, Turbostream, Sidekiq and Tailwind!</title>
    <dc:date>2023-08-18T02:22:23+00:00</dc:date>
    <link>https://gist.github.com/alexrudall/cb5ee1e109353ef358adb4e66631799d</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>chatgpt streaming ruby openai</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:b7712a999742/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:chatgpt"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:streaming"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:openai"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://engineering.gusto.com/scaling-sidekiq-at-gusto/">
    <title>Scaling Sidekiq at Gusto</title>
    <dc:date>2023-08-18T02:12:14+00:00</dc:date>
    <link>https://engineering.gusto.com/scaling-sidekiq-at-gusto/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby sidekiq</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:cc67415c6508/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:sidekiq"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://medium.com/gusto-engineering/a-how-to-guide-to-ruby-packs-gustos-gem-ecosystem-for-modularizing-ruby-applications-e236126b8c2c">
    <title>A How-to Guide to Ruby Packs, Gusto’s Gem Ecosystem for Modularizing Ruby Applications | by Alex Evanczuk | Gusto Engineering | Medium</title>
    <dc:date>2023-08-16T16:38:38+00:00</dc:date>
    <link>https://medium.com/gusto-engineering/a-how-to-guide-to-ruby-packs-gustos-gem-ecosystem-for-modularizing-ruby-applications-e236126b8c2c</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby packs gusto rails packwerk</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:bd048ea618fd/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:packs"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gusto"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:packwerk"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://rubyreferences.github.io/rubychanges/">
    <title>Introduction - Ruby Changes</title>
    <dc:date>2023-05-29T15:14:37+00:00</dc:date>
    <link>https://rubyreferences.github.io/rubychanges/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>example examples documentation ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:09218873febb/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:example"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:examples"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:documentation"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/andreibondarev/langchainrb">
    <title>andreibondarev/langchainrb: Build ML/AI-supercharged applications with Ruby's LangChain</title>
    <dc:date>2023-05-15T13:19:27+00:00</dc:date>
    <link>https://github.com/andreibondarev/langchainrb</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ai ruby llm</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:7b2c5abe87dc/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ai"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:llm"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/pedro/cb2">
    <title>pedro/cb2: Implementation of the circuit breaker pattern in Ruby, backed by Redis</title>
    <dc:date>2023-04-11T01:29:29+00:00</dc:date>
    <link>https://github.com/pedro/cb2</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>gem rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:f4506e435d99/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gem"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/pedrozath/coltrane">
    <title>pedrozath/coltrane: 🎹🎸A music theory library with a command-line interface</title>
    <dc:date>2023-03-15T13:19:18+00:00</dc:date>
    <link>https://github.com/pedrozath/coltrane</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>cli music opensource ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:0657b516a747/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:cli"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:music"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:opensource"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://shopify.engineering/improving-the-developer-experience-with-ruby-lsp">
    <title>Improving the Developer Experience with the Ruby LSP (2023)</title>
    <dc:date>2023-03-14T21:01:42+00:00</dc:date>
    <link>https://shopify.engineering/improving-the-developer-experience-with-ruby-lsp</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>lsp ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:b69c05118724/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:lsp"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://planetscale.com/blog/how-we-made-planetscale-background-jobs-self-healing-with-sidekiq">
    <title>How we made PlanetScale’s background jobs self-healing</title>
    <dc:date>2023-03-14T20:58:45+00:00</dc:date>
    <link>https://planetscale.com/blog/how-we-made-planetscale-background-jobs-self-healing-with-sidekiq</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:ea4a92b58ee7/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://mailchi.mp/railsspeed/a-barbell-strategy-for-performance?e=71459d59e6">
    <title>A Barbell Strategy for Performance</title>
    <dc:date>2023-02-16T16:37:08+00:00</dc:date>
    <link>https://mailchi.mp/railsspeed/a-barbell-strategy-for-performance?e=71459d59e6</link>
    <dc:creator>rtlechow</dc:creator><description><![CDATA[In performance work, I often find that work in the "middle" of the effort distribution lacks the effort-to-benefit ratio of the "low" and "high" effort ends.

Here's some examples of what I consider "low effort" performance work:
Tuning request queueing correctly
Changing environment variables
Using jemalloc
Setting up a CDN
And medium effort:
Fixing N+1s/optimizing ORM usage
Using flamegraphs to determine why a controller is spending lots of time executing Ruby
And high effort:
Re-architecting the site to use Turbo
Changing all of your site's Javascript tags to use async
Adding threaded concurrency (going from 1 thread to N threads)
Low effort performance work is almost always my first priority. While the risk and effort required to implement these changes is low, sometimes the benefits are massive. Jemalloc can cut memory usage by 50%. Fixing request queueing and autoscaling configuration can revolutionize how you scale. But these things are usually not actually that hard to implement. And sometimes, when you try these "tricks", they don't have a benefit. But who cares? You wasted an hour or two, at most, giving it a shot.]]></description>
<dc:subject>software ruby performance</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:5b050e6841a4/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:software"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:performance"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="http://roda.jeremyevans.net/">
    <title>Roda: Routing Tree Web Toolkit</title>
    <dc:date>2023-02-10T14:33:14+00:00</dc:date>
    <link>http://roda.jeremyevans.net/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>framework web ruby programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:c223d1fd5335/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:framework"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:web"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/tenderlove/ruby-glossary">
    <title>tenderlove/ruby-glossary: Just a glossary of terms I've found in Ruby source code</title>
    <dc:date>2023-01-25T16:01:53+00:00</dc:date>
    <link>https://github.com/tenderlove/ruby-glossary</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:7b21a7980462/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/RestlessThinker/danger-pronto">
    <title>RestlessThinker/danger-pronto: A Danger plugin to lint files through Pronto</title>
    <dc:date>2022-10-16T19:14:41+00:00</dc:date>
    <link>https://github.com/RestlessThinker/danger-pronto</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>danger pronto ruby rails github</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:85e0bc3d2490/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:danger"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:pronto"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/reidmorrison/symmetric-encryption">
    <title>reidmorrison/symmetric-encryption: Symmetric Encryption for Ruby Projects using OpenSSL</title>
    <dc:date>2022-10-15T00:36:43+00:00</dc:date>
    <link>https://github.com/reidmorrison/symmetric-encryption</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>encryption rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:5b770f027d3f/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:encryption"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/rubyatscale/code_teams">
    <title>rubyatscale/code_teams: A low-dependency gem for declaring and querying engineering teams</title>
    <dc:date>2022-09-14T12:07:34+00:00</dc:date>
    <link>https://github.com/rubyatscale/code_teams</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github ruby packwerk</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:4ac04c845b88/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:packwerk"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/rubyatscale/use_packwerk">
    <title>rubyatscale/use_packwerk: UsePackwerk is a gem that helps in creating and maintaining packwerk packages</title>
    <dc:date>2022-09-14T12:07:25+00:00</dc:date>
    <link>https://github.com/rubyatscale/use_packwerk</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github ruby packwerk</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:53fc78104315/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:packwerk"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/rubyatscale/stimpack">
    <title>rubyatscale/stimpack: Stimpack establishes and implements a set of conventions for splitting up large monoliths.</title>
    <dc:date>2022-09-14T12:07:22+00:00</dc:date>
    <link>https://github.com/rubyatscale/stimpack</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github ruby packwerk</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:1e82e7011849/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:packwerk"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/rubyatscale/parse_packwerk">
    <title>rubyatscale/parse_packwerk: A low-dependency gem for parsing and writing packwerk YML files</title>
    <dc:date>2022-09-14T12:07:18+00:00</dc:date>
    <link>https://github.com/rubyatscale/parse_packwerk</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github ruby packwerk</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:b36c3c482219/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:packwerk"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/rubyatscale/package_protections">
    <title>rubyatscale/package_protections: This gem helps us use Packwerk and Rubocop to create well-packaged code by providing a cohesive modularization interface and supporting stricter boundaries.</title>
    <dc:date>2022-09-14T12:07:15+00:00</dc:date>
    <link>https://github.com/rubyatscale/package_protections</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github ruby packwerk</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:ffd11d522a35/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:packwerk"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/rubyatscale/danger-packwerk">
    <title>rubyatscale/danger-packwerk: Danger plugin for packwerk</title>
    <dc:date>2022-09-14T12:07:11+00:00</dc:date>
    <link>https://github.com/rubyatscale/danger-packwerk</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github ruby packwerk</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:f5f88a31efbb/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:packwerk"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/rubyatscale/code_ownership">
    <title>rubyatscale/code_ownership: A gem to help engineering teams declare ownership of code</title>
    <dc:date>2022-09-14T12:06:52+00:00</dc:date>
    <link>https://github.com/rubyatscale/code_ownership</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github ruby packwerk</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:b7860db9aef7/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:packwerk"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://jvns.ca/blog/2018/01/31/spying-on-a-ruby-process-s-memory-allocations/">
    <title>Spying on a Ruby process's memory allocations with eBPF</title>
    <dc:date>2022-09-11T20:42:12+00:00</dc:date>
    <link>https://jvns.ca/blog/2018/01/31/spying-on-a-ruby-process-s-memory-allocations/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>performance ruby debug</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:79dfb89e144a/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:performance"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:debug"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://workingwithruby.com/">
    <title>Working With... - Jesse Storimer</title>
    <dc:date>2022-08-31T18:40:55+00:00</dc:date>
    <link>https://workingwithruby.com/</link>
    <dc:creator>rtlechow</dc:creator><description><![CDATA[On this site you'll find free access to three ebooks that aim to introduce Ruby programmers to system programming.

Working With Unix Processes Working With TCP Sockets Working With Ruby Threads
More background
Between 2011-2016 I published and sold these ebooks on jstorimer.com. The content has not been updated in quite some time and I have no intention to do so in the near future. It's being shared here for free for anyone who wishes to read it.]]></description>
<dc:subject>knowledge book books ruby programming</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:85a644f04a86/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:knowledge"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:book"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:books"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:programming"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://shopify.engineering/ruby-execution-models">
    <title>To Thread or Not to Thread: An In-Depth Look at Ruby’s Execution Models — Development (2022)</title>
    <dc:date>2022-07-05T11:48:05+00:00</dc:date>
    <link>https://shopify.engineering/ruby-execution-models</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:76abc3ba9635/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://thenewstack.io/why-were-sticking-with-ruby-on-rails-at-gitlab/">
    <title>Why We’re Sticking with Ruby on Rails at GitLab – The New Stack</title>
    <dc:date>2022-07-03T12:15:06+00:00</dc:date>
    <link>https://thenewstack.io/why-were-sticking-with-ruby-on-rails-at-gitlab/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>gitlab monolith ruby rails</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:99433df55cf1/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gitlab"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:monolith"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/Shopify/ruby-lsp">
    <title>GitHub - Shopify/ruby-lsp: An opinionated language server for Ruby</title>
    <dc:date>2022-07-03T12:10:43+00:00</dc:date>
    <link>https://github.com/Shopify/ruby-lsp</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github ruby lsp</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:041ba04f57d7/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:lsp"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://doc.getlago.com/docs/guide/intro">
    <title>Welcome to Lago | Lago documentation</title>
    <dc:date>2022-06-17T14:35:21+00:00</dc:date>
    <link>https://doc.getlago.com/docs/guide/intro</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby rails billing</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:9c0545e28493/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:billing"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://shopify.engineering/how-fix-slow-code-ruby">
    <title>How to Fix Slow Code in Ruby — Development</title>
    <dc:date>2022-06-02T15:17:58+00:00</dc:date>
    <link>https://shopify.engineering/how-fix-slow-code-ruby</link>
    <dc:creator>rtlechow</dc:creator><description><![CDATA[Case Study: Rails Contributions
As with many open source projects, Ruby on Rails usually requires performance optimization pull requests to include benchmarks. The same is common for new features to performance sensitive areas like Active Record query building or Active Support’s cache stores. In the case of Rails, most benchmarks are made with benchmark-ips to simplify comparison.

For example, https://github.com/rails/rails/pull/36052 changes how primary keys are accessed in Active Record instances. Specifically, refactoring class method calls to instance variable references. It includes before and after benchmark results with a clear explanation of why the change is necessary.

https://github.com/rails/rails/pull/38401 changes model attribute assignment in Active Record so that key stringification of attribute hashes is no longer needed. A benchmark script with multiple scenarios is provided with results. This is a particularly hot codepath because creating and updating records is at the heart of most Rails apps.

Another example, https://github.com/rails/rails/pull/34197 reduces object allocations in ActiveRecord#respond_to?. It provides a memory benchmark that compares total allocations before and after the patch, with a calculated diff. Reducing allocations delivers better performance because the less Ruby allocates, the less time Ruby spends assigning objects to blocks of memory.]]></description>
<dc:subject>profiling performance testing rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:2a0255512d2a/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:profiling"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:performance"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:testing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/kddnewton/yarv">
    <title>kddnewton/yarv: A YARV emulator written in Ruby</title>
    <dc:date>2022-05-29T18:56:27+00:00</dc:date>
    <link>https://github.com/kddnewton/yarv</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>yarv emulator ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:606d71c1cfd9/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:yarv"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:emulator"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/gazay/gon">
    <title>gazay/gon: Your Rails variables in your JS</title>
    <dc:date>2022-05-29T18:55:17+00:00</dc:date>
    <link>https://github.com/gazay/gon</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby javascript</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:8c080aa2b3c2/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:javascript"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://blog.saeloun.com/2022/04/19/ruby-variable-width-allocation-part-2">
    <title>Ruby 3.1 introduces Variable Width Allocation for Strings | Saeloun Blog</title>
    <dc:date>2022-05-29T18:54:52+00:00</dc:date>
    <link>https://blog.saeloun.com/2022/04/19/ruby-variable-width-allocation-part-2</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:55798bd36d05/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://about.gitlab.com/blog/2021/02/03/how-we-automatically-fixed-hundreds-of-ruby-2-7-deprecation-warnings/">
    <title>How we automatically fixed thousands of Ruby 2.7 deprecation warnings | GitLab</title>
    <dc:date>2022-05-29T18:52:11+00:00</dc:date>
    <link>https://about.gitlab.com/blog/2021/02/03/how-we-automatically-fixed-hundreds-of-ruby-2-7-deprecation-warnings/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby gitlab</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:aff3a7babc85/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gitlab"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://nts.strzibny.name/understanding-viewcomponent-concepts/">
    <title>Understanding ViewComponent concepts by building a button</title>
    <dc:date>2022-05-26T18:48:45+00:00</dc:date>
    <link>https://nts.strzibny.name/understanding-viewcomponent-concepts/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>viewcomponent rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:2064b64bc199/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:viewcomponent"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/palkan/isolator">
    <title>palkan/isolator: Detect non-atomic interactions within DB transactions</title>
    <dc:date>2022-05-26T14:22:31+00:00</dc:date>
    <link>https://github.com/palkan/isolator</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby transaction isolation</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:a31432e822c4/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:transaction"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:isolation"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/grosser/ar_after_transaction">
    <title>grosser/ar_after_transaction: Execute irreversible actions only when transactions are not rolled back</title>
    <dc:date>2022-05-25T20:25:44+00:00</dc:date>
    <link>https://github.com/grosser/ar_after_transaction</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>activerecord gem github rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:ab5582fe386b/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:activerecord"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gem"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://engineering.gusto.com/laying-the-cultural-and-technical-foundation-for-big-rails/">
    <title>Laying the Cultural and Technical Foundation for Big Rails</title>
    <dc:date>2022-05-24T16:10:49+00:00</dc:date>
    <link>https://engineering.gusto.com/laying-the-cultural-and-technical-foundation-for-big-rails/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:bb5c6fb503f4/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/crystal-data/num.cr">
    <title>crystal-data/num.cr: Scientific computing in pure Crystal</title>
    <dc:date>2022-03-15T16:11:43+00:00</dc:date>
    <link>https://github.com/crystal-data/num.cr</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>crystal scientific computing ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:fd919a78acf0/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:crystal"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:scientific"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:computing"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://boringrails.com/">
    <title>Boring Rails: Skip the bullshit and ship fast | Learn about the boring tools and practices used by Basecamp, GitHub, and Shopify to keep you as happy and productive as the day you typed rails new</title>
    <dc:date>2022-03-07T14:42:03+00:00</dc:date>
    <link>https://boringrails.com/</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:6f9b8b356ac2/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/Maaarcocr/webview_ruby">
    <title>Maaarcocr/webview_ruby: WebViewRuby is a library that provide bindings for webview/webview a tiny tiny cross-platform webview library to build modern cross-platform GUIs</title>
    <dc:date>2022-02-21T13:41:01+00:00</dc:date>
    <link>https://github.com/Maaarcocr/webview_ruby</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>github webview ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:5de01b2cfc2e/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:webview"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/jbarnette/pinglish">
    <title>jbarnette/pinglish: A simple Rack middleware for checking application health.</title>
    <dc:date>2022-02-15T18:56:52+00:00</dc:date>
    <link>https://github.com/jbarnette/pinglish</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rack metrics monitoring rails ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:52dbed635e8c/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rack"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:metrics"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:monitoring"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rails"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/zverok/yard-junk">
    <title>zverok/yard-junk: Get rid of the junk in your YARD docs</title>
    <dc:date>2022-01-24T14:36:51+00:00</dc:date>
    <link>https://github.com/zverok/yard-junk</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>yard gem ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:9624b86c8fbb/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:yard"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gem"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/balvig/spyke">
    <title>balvig/spyke: Interact with REST services in an ActiveRecord-like manner</title>
    <dc:date>2021-12-27T17:24:15+00:00</dc:date>
    <link>https://github.com/balvig/spyke</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>rest api github ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:0b41a9ee18bf/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rest"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:api"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/AaronC81/sord">
    <title>AaronC81/sord: Convert YARD docs to Sorbet RBI and Ruby 3/Steep RBS files</title>
    <dc:date>2021-12-14T14:13:11+00:00</dc:date>
    <link>https://github.com/AaronC81/sord</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby rbs sorbet</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:48ddecaff931/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:rbs"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:sorbet"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/ankane/or-tools-ruby">
    <title>ankane/or-tools-ruby: Operations research tools for Ruby</title>
    <dc:date>2021-11-25T16:37:00+00:00</dc:date>
    <link>https://github.com/ankane/or-tools-ruby</link>
    <dc:creator>rtlechow</dc:creator><description><![CDATA[Higher Level Interfaces
Scheduling
Seating
Traveling Salesperson Problem (TSP)
Sudoku
Scheduling
Specify people and their availabililty

people = [
  {
    availability: [
      {starts_at: Time.parse("2020-01-01 08:00:00"), ends_at: Time.parse("2020-01-01 16:00:00")},
      {starts_at: Time.parse("2020-01-02 08:00:00"), ends_at: Time.parse("2020-01-02 16:00:00")}
    ],
    max_hours: 40 # optional, applies to entire scheduling period
  },
  {
    availability: [
      {starts_at: Time.parse("2020-01-01 08:00:00"), ends_at: Time.parse("2020-01-01 16:00:00")},
      {starts_at: Time.parse("2020-01-03 08:00:00"), ends_at: Time.parse("2020-01-03 16:00:00")}
    ],
    max_hours: 20
  }
]]]></description>
<dc:subject>github ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:0ac0eb726bb7/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:github"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://mailchi.mp/railsspeed/stop-tuning-rubys-gc?e=71459d59e6">
    <title>Stop Tuning Ruby's GC</title>
    <dc:date>2021-11-17T15:22:30+00:00</dc:date>
    <link>https://mailchi.mp/railsspeed/stop-tuning-rubys-gc?e=71459d59e6</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>ruby gc performance</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:ad0f95872bea/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:gc"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:performance"/>
</rdf:Bag></taxo:topics>
</item>
<item rdf:about="https://github.com/nateberkopec/gilded_rose/blob/master/ruby/gilded_rose.rb">
    <title>gilded_rose/gilded_rose.rb at master · nateberkopec/gilded_rose</title>
    <dc:date>2021-10-14T02:29:53+00:00</dc:date>
    <link>https://github.com/nateberkopec/gilded_rose/blob/master/ruby/gilded_rose.rb</link>
    <dc:creator>rtlechow</dc:creator><dc:subject>tdd kata ruby</dc:subject>
<dc:source>https://pinboard.in/</dc:source>
<dc:identifier>https://pinboard.in/u:rtlechow/b:2afc020e66b4/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:tdd"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:kata"/>
	<rdf:li rdf:resource="https://pinboard.in/u:rtlechow/t:ruby"/>
</rdf:Bag></taxo:topics>
</item>
</rdf:RDF>