How Sidekiq works as a business
source link: https://rubyweekly.com/issues/600
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Ruby Weekly Issue 600
🇺🇦 #600 — April 21, 2022
🎉 Somehow we've made it to issue 600 – thanks for your continuing support! Can we make it to 1000? Watch this space in April 2030.. 😁
__
Your editor, Peter Cooper
Ruby Weekly
Ruby's YJIT Ported to Rust — We briefly mentioned the proposal for this a few months ago, but things have moved fast and now a Rust version of YJIT has already reached parity with the C version! Look for this to come in 3.2. And if you’re asking.. why? Maintainability and management of complexity, mostly.
Ruby Core
⭐️ How to Create a Modern CRUD App with Rails and React — A thorough, and newly updated, tutorial covering building a fully functional CRUD app with Rails 7, SQLite, esbuild, React 18, hooks, React Router, and more. An ideal guide if you want to get a feel for all the moving parts involved in such an app.
James Hibbard
The Best Deployment Tool for Rails — Deploy Rails apps on any cloud, with native support for Rails conventions, full databases support, replication & backups, powerful access management & traffic control features. Try it today for free with an extra $100 in free credits with the code: RubyWeekly!
Cloud 66 sponsor
Ruby 3.1 Introduces Variable Width Allocation for Strings — This is deep stuff that you don’t need to know, but it’s reassuring to know a lot of work is going into making Ruby more efficient. Variable Width Allocation is currently limited to Class
and String
types and reduces bottlenecks and total memory usage while still maintaining similar performance.
Murtaza Bagwala (Saeloun)
▶ A Chat with Rubyist Mike Perham, the Creator of Sidekiq — Mike is famous in the Ruby world both for developing the Sidekiq background job system, but also managing to turn it into his full time business for ten years now. This fun 50-minute interview digs more into the business side of things, as well as what you should consider if you want to follow his kind of ‘developreneur’ path.
Alphalist podcast
Code Ranges: A Deeper Look at Ruby Strings — If you think string representation and encodings are esoteric, wait until you read how Ruby uses code ranges to optimize scanning a string for valid, encoded characters.
Kevin Menard (Shopify)
Quick Bits:
-
Rubocop has turned 10 years old – congratulations. Bozhidar Batsov shares a little of the story so far and how he's keen to see it last for another decade.
-
RubyGems 3.3.12 has been released. There's also the usual monthly news update from Ruby Together.
-
For ▶️ episode 414, the Ruby on Rails Podcast takes the unusual step of having a guest (Drew Bragg) who turns the tables and interviews the usual host, Brittany Martin.
Software Engineer - Feature Engineering (Remote) — Join a small team building solid, simple solutions for DNS & domain management. 100% remote, diverse & proud of the tools we make.
DNSimple
4 Senior ROR Engineers — Mastered ROR (6-8 years of XP)? Join Anka: The all-in-one solution to export products made of Africa globally. Great technical challenges, fast development opportunities, and a badass team.
Anka
Backend Engineer – Ruby on Rails (London or Remote) — Ctrl Group builds digital health products to bring personalised health care to everyone. Apply now to join our brilliant team.
Ctrl Group
Find Ruby Jobs Through Hired — 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
Custom Ranges in Ruby — 1..10
is one thing, but what about if you want to support range syntax on your own custom objects? You can do it by just implementing two methods.
Joël Quenneville
The Underrated Power of dry-schema
— dry-schema is a data structure validation (and coercion) library that’s part of the dry-rb family.
Seb Wilgosz
How to Fake Time in a Postgres Database — Mocking the time in Ruby itself isn’t too tricky (Timecop to the rescue) but what about when it comes to working with databases? Timecop can also help here, but there’s a lot more to think about.
Justin Searls
Keep Up with the Latest in Startups, Tech, & Programming in Just 5 Min — TLDR is a daily newsletter with links and TLDRs of the most interesting stories in startups 🚀, tech 📱, and coding 💻
TLDR Newsletter sponsor
Testing Techniques: The 'I/O Table' — Covers some basic principles of good tests before focusing on improving maintainability by thinking about inputs and outputs and refactoring around that mental model.
Thiago Araújo Silva
▶ How to Add Filtering and Pagination to Data Tables with Hotwire — Once a reasonably clunky feature to add but “now that we have Hotwire, adding filtering to a table with pagination can be done in just a few minutes.”
Cezar Halmagean
The Differences Between count
, length
and size
on an Active Record Association — Which to use, when and why.
Benito Serna
🛠 Code & Tools
command_mapper: A Way to Map External Commands to Ruby Classes — Came out last year but somehow we missed it till now. Think command line argument parsing but within Ruby itself and in a more declarative, higher level way – you really need to see it to get it. GitHub repo.
Hal Brodigan
Bumbler 0.9: Track The Load Progress of Bundler-based Projects — Find those particularly slow loading gems in your projects.
Ian MacLeod
Speed Up Your Builds with Buildkite’s New Plan
Buildkite sponsor
Blazer 2.6.0: A Ruby-Powered Business Intelligence Tool — A system for putting together charts and dashboards based on business data queried with SQL. Supports a wide variety of data sources.
Andrew Kane
sidekiq-scheduler 3.2: Lightweight Job Scheduler Extension for Sidekiq
Moove It
Chatwoot 2.4: Simple, Open Source Live Chat Software
Chatwoot
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK