---
title: "Ruby is still a diamond"
publication: "Ruby Weekly"
issue: 568
published_at: "2021-09-02"
canonical_url: "https://rubyweekly.com/issues/568"
---

Plus a Ruby hex dumper, a guide to Vite.js, a Time.at tip, and Giles Bowkett's latest project. |        

#​568 — September 2, 2021 

[Read on the Web](https://rubyweekly.com/issues/568)   

Ruby Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/y4w1n7r5cuhmo2qwejhx.jpg)](https://medium.com/retention-science/ruby-is-still-a-diamond-b789d2661266)  

[Ruby is Still a Diamond: Some Reflections](https://medium.com/retention-science/ruby-is-still-a-diamond-b789d2661266) — _“So let’s talk contemporary Ruby”_. The author focuses on the ongoing development of Ruby, particularly in terms of concurrency and performance, and why Ruby still matters despite never being ‘the fastest language.’ 

Emma Hyde   

[OpenSourceRails: A Curated List of Open-Source Rails Apps](https://opensourcerails.org/) — The reinvention of a former project of the same name (but on .com, vs .org) where you can check out some projects built in Rails and, most importantly, quickly see what gems and tools they use in their stacks. Check the [most popular page](https://opensourcerails.org/most-popular) for some apps you’re guaranteed to have heard of. 

Josh Brody   [![\](https://copm.s3.amazonaws.com/03c31a2a.png)](https://dashboard.redisgreen.net/rubyweekly) 

[Fast Redis Hosting and Analytics](https://dashboard.redisgreen.net/rubyweekly) — RedisGreen databases include seamless online upgrades, SSL encryption, key size tracking, memory mapping, and more. 

RedisGreen sponsor   

**QUICK BITS:** 

- _Hacker News_ recently had [a thread about one-person startup tech stacks](https://news.ycombinator.com/item?id=28299053) and Ruby and Rails were well represented.
- Your humble editor [▶️ was recently on the Code with Jason podcast](https://codewithjason.simplecast.com/episodes/109-peter-cooper-publisher-of-ruby-weekly-9kLUOQRF) talking about blogging, podcasting, newslettering, and more.   

[My Recipe for Optimizing Performance of Rails Apps](https://pawelurbanek.com/optimize-rails-performance) — You might be surprised how many of these tips are outside Rails, focused on the other layers of the application stack. 

Paweł Urbanek   

[Previewing Rails 7's Upcoming Changes](https://www.stefanwienert.de/blog/2021/08/24/upcoming-rails-7-changes-active-record/) — Anticipating a final release of Rails 7 sometime in the next month (unless Rails 7 decides to be as reluctant as Rails 6.1.0 was), Stefan has cherry-picked some of his favorite enhancements from the changelogs. 

Stefan Wienert     

Jobs  

[Senior Ruby on Rails Engineer (Remote)](https://apply.workable.com/nebulab/j/23D8DA2134/) — Join our distributed team and build high-volume eCommerce applications in a workplace made by developers for developers. 
Nebulab   

[Senior Software Consultant](https://testdouble.recruiterbox.com/jobs/fk0u68n/) — Co-founded by Justin Searls, Test Double is an engineering consultancy on a mission to improve the way the world writes software. Work on challenging projects with a collaborative, passionate team. 100% employee owned and 100% Remote. 
TEST DOUBLE   

[Find Ruby Jobs Through Hired](https://hired.com/join/?utm_source=newsletter&utm_medium=sponsor&utm_campaign=%28b2c%29%28l-all%29%28r-all%29%28cooper-rubyweekly%29&utm_content=find-your-next-job) — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers. 
Hired    

📕 Articles & Tutorials  

[A Rubyist's Guide to Vite.js](https://maximomussini.com/posts/a-rubyist-guide-to-vite-js/) — Vite is a new tool addressing client-side code development and bundling that uses ESM imports (_no more bundling!_) and supports things like tree-shaking, HMR, CSS support, and a plugin system. 

Máximo Mussini   

[Using Hotwire with Rails: A Basic Introduction](https://www.honeybadger.io/blog/hotwire-rails/) — Hotwire is a way to build modern-feeling webapps without much JavaScript by sending regular HTML over the wire. 

Renata Marques   

[Seamlessly Integrate Video into Your Ruby App](https://get.mux.com/2W5IIsa) — Mux Video is an API-first platform that makes it easy to build beautiful video that streams everywhere. 

Mux sponsor   

[Temporary State In Tests: Bloc(k) Party](https://blog.thegnar.co/temporary-state-in-tests) — Tests sometimes require you to bend the truth and modify the state of the world to get repeatable, consistent results and feedback. This article demos how to build your own method using a block to temporarily change what’s true in an application. 

Kevin Murphy   

[Converting Unix Epoch Timestamps to Ruby Objects](https://prathamesh.tech/2020/03/02/converting-timestamps-to-ruby-objects/) — You probably know about `Time.at` but did you know about its `in` argument? You need this to pass in a timezone. 

Prathamesh Sonpatki   

[How to Get the Most Out of RubyMine’s Code Assistance with RBS](https://blog.jetbrains.com/ruby/2021/09/rbs-how-to-get-the-most-out-of-rubymine-s-code-assistance/) — One for RubyMine IDE users only, but it’s interesting to see how it uses the RBS type declarations introduced with Ruby 3.0 to make the editing experience smoother. 

Natalie Kudanova (JetBrains)   

[Rails Monolith Modularisation with CQRS](https://hubs.ly/H0VSbP80) 

Global App Testing Engineering Blog sponsor   

[Compressing Your HTML Responses](https://andycroll.com/ruby/compress-your-rails-html-responses-on-heroku/) — Many hosts don’t compress the HTML your apps send over the wire by default, but it can yield serious benefits. 

Andy Croll   

[Don't Use Comments; Use Code](https://www.matheusrich.com/dont-use-comments-use-code/) — Comments are often lazy or put in as a note to some future coder (probably you) so 'codifying' those comments could be the better path. 

Matheus Richard  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/a8c7grygopjpqtr6zchx.jpg)](https://github.com/postmodern/hexdump.rb)   

[hexdump.rb 1.0: Fully Featured Fast Hexdumping for Ruby](https://github.com/postmodern/hexdump.rb) — Boasts being Ruby’s ‘most advanced hexdump libary’, although I think the competition is quite limited! The [examples](https://github.com/postmodern/hexdump.rb#examples) show off what this is about, and the new 1.0 release adds support for hex dumping _typed_ data. 

Postmodern   

[Ever: A Callback-less Event Reactor for Ruby](https://github.com/digital-fabric/ever) — Ever uses threads to handle event listening and worker processes, but uses a block to handle the event loop instead of registering callbacks. 

Digital Fabric   

[GithubWebhook: A Quick Way to Process GitHub Webhooks in Rails](https://github.com/ssaunier/github_webhook) — Adds a route to your Rails app for listening to [GitHub webhooks](https://docs.github.com/en/developers/webhooks-and-events/webhooks/about-webhooks). 

Sébastien Saunier   

[RModBus: An Implementation of the ModBus Protocol in Pure Ruby](https://github.com/rmodbus/rmodbus) — [Modbus](https://en.wikipedia.org/wiki/Modbus) is a communications protocol used between various industrial electronic devices and while I’d never heard ot it, it’s been around since 1979. If you need this, you’ll already know what it can do - I hope :-) 

rmodbus team   

[Polyphony: Fine-Grained Concurrency for Ruby](https://github.com/digital-fabric/polyphony) — Uses fibers and io_uring or libev under the hood to provide a cooperative, sequential coroutine-based concurrency model. 

Digital Fabric   

[RQRCode 2.1: A Ruby Library for Generating QR Codes](https://github.com/whomwah/rqrcode) — It lets you choose a size, set an error correction level, and can output as SVG, PNG, or ASCII. 

Duncan Robertson   

[rails-footnotes: Footnotes About Your Application and Links Back to Your Editor](https://github.com/indirect/rails-footnotes) — Create a footnotes holder in your layout for these neat debugging tools and info. 

André Arko  

💁‍♂️ And what is Giles Bowkett up to? 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/vz85czskpug0vk8r5ihc.jpg)](https://gilesbowkett.com/blog/2021/08/15/fork-freshness-project-lifespans-in-the-ruby-ecosystem/)  

[Fork Freshness: A Twitter Bot to Check Project Lifespans](https://gilesbowkett.com/blog/2021/08/15/fork-freshness-project-lifespans-in-the-ruby-ecosystem/) — Giles has built an app for looking at the lifespan of open source projects (hosted on GitHub) by virtue of activity on their _forks._ All you have to do is tweet [@ForkFreshness](https://twitter.com/ForkFreshness) with the URL of the repo. This post, however, goes into a _lot_ more depth about what Giles learnt in building it. 

Giles Bowkett   

_P.S. The _Tip of the Week_ section will be back as usual next week :-)_        

Curated by [Peter Cooper](https://twitter.com/peterc), [Glenn Goodrich](https://twitter.com/ruprict) and [Cooperpress](https://cooperpress.com/). 

[Change your email address](https://rubyweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://rubyweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
