Ruby Rogues

Our original panel podcast, Ruby Rogues is a weekly discussion around Ruby, Rails, software development, and the community around Ruby.Become a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.

https://topenddevs.com/podcasts/ruby-rogues

subscribe
share






RR 408: Zeitwerk with Xavier Noria


Sponsors

  • Triplebyte $1000 signing bonus
  • Sentry use the code “devchat” for $100 credit
  • RedisGreen
Panel
  • David Kimura
  • Eric Berry
  • Andrew Mason
Joined by special guest: Xavier NoriaEpisode SummaryThis episode of Ruby Rogues features Xavier Noria, who has a background in mathematics, but started software in 2000. He has been freelancing for the past 10 years, working especially in open source. He received the Ruby Hero award in 2010. His latest work is with his own creation, Zeitwerk, a more efficient code loader for Ruby. Zeitwerk will be included in Rails 6, but is an independent gym for now. Xavier talks about his inspiration for Zeitwerk and his desire to improve constant outloading in Rails.The panelists delve into the features of Zeitwerk. Any conventional library can use Zeitwerk, so you don’t have to write requires. Zeitwerk is designed to make your development work easier because you don’t have to worry about including in or requiring files in your code snippets, it will intelligently auto load those in. Zeitwerk functions slightly different from classic mode Ruby, because in Zeitwerk, you don’t go constant name to file, instead you are given a file name first,  and then add it to a constant. Xavier delves into the limitations of classic mode and the const-missing callback, and how Zeitwerk improves upon this problem by using only absolute paths and module outloading instead of const-missing. The result is that, in general, things load faster.They discuss indexing of absolute paths within Zeitwerk, how one of the principles of Zeitwerk is to be as lazy as possible, the memory footprint, and the configuration needed to opt into Zeitwerk.  Overall, Zeitwerk is going to work like Ruby. There are no special rules, it has the same semantics as Ruby, fewer gotcha’s if any at all, control over inflection, ways to introspect, and a way to log the activity of Zeitwerk.Links
  • Zeitwerk
  • Kubernetes
  • API
  • HTML
  • Const-missing callback
  • Nesting
  • Ancestors
  • Module outloading
  • Bootsnap
  • Bootstrap
  • Absolute path
PicksDavid Kimura:
  • Nerf Guns
Eric Barry:
  • Octotree Chrome extension
Xavier Noria:
  • Time Trap
Special Guest: Xavier Noria.

Advertising Inquiries: https://redcircle.com/brands

Privacy & Opt-Out: https://redcircle.com/privacy


fyyd: Podcast Search Engine
share








 April 16, 2019  54m