Loading…
Shopify and Open Source: A Mutually Beneficial Relationship
2023-10-18
- Source
- Shopify
- Published
- Added to Yomu
Summary
Shopify describes its relationship with Ruby, Rails, and the open-source community as mutually beneficial, linking the company’s success to its Rails foundation and its engineering culture to the Rails Doctrine. It frames a 100-year company ambition around making Ruby and Rails viable for large teams, mature codebases, millions of lines of code, and billions of web requests through production performance, architecture guidance, upgrades, tooling, and selective typing. To support that goal, Shopify contributes projects and initiatives spanning developer tooling, gradual typing, VS Code support, automated upgrades, YJIT, Ruby performance work, TruffleRuby collaboration, $500,000 in research funding, Bundler and RubyGems, and RubyGems.org security. The post argues that company participation improves engineering skills, application longevity, and influence over foundational software, while describing contributors who range from occasional participants to full-time maintainers.
Context
Shopify says its success is partly due to Ruby and Rails and that these projects need sustained investment to remain viable tools for large teams and long-lived applications. The company’s stated ambition to operate for 100 years motivates thinking about whether Ruby and Rails can continue supporting millions of lines of code and billions of web requests.
Approach / What changed
Shopify invests in Ruby, Rails, and related open-source projects through direct contributions, open-sourcing internal tools, supporting developer tooling and gradual typing, improving Ruby performance with YJIT and other work, collaborating on TruffleRuby, funding research, strengthening Bundler and RubyGems, and supporting RubyGems.org security. Engineers participate at different levels, from occasional contributions to full-time maintenance.
Takeaways
- Shopify connects open-source contribution with application longevity, arguing that investing in shared foundations is more proactive than relying on rewrites or monkey patches that create brittle code.
- Its Ruby and Rails investments cover developer experience, including open-sourced tools, Sorbet integration, VS Code support, and efforts to automate Ruby and Rails upgrades.
- Performance and security efforts include YJIT, work on variable-width allocation and object shapes, TruffleRuby collaboration, Bundler and RubyGems contributions, and support for RubyGems.org.