Talks
Speakers
Events
Topics
Search
Sign in
Search
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
search talks for
⏎
Suggest modification to this talk
Title
Description
RubyConf 2016 - Building maintainable command-line tools with MRuby by Eric Hodel mruby and mruby-cli makes it possible to ship single binary command-line tools that can be used without setup effort, but how difficult is development in MRuby? In this talk we'll explore how to work with MRuby and mruby-cli. We'll cover the differences in development patterns when using MRuby, the maturity of the MRuby ecosystem, and development patterns when using mruby-cli to build a command-line tool.
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In this presentation, Eric Hodel discusses Building maintainable command-line tools with MRuby at RubyConf 2016. The talk explores the MRuby language and mruby-cli, detailing their capabilities for creating single binary command-line tools. Hodel begins by providing his background, emphasizing his experiences with Ruby and open-source contributions, particularly through Fastly, which supports Ruby projects. He explains the benefits of MRuby over CRuby, such as its lightweight nature, ease of embedding into applications, and the ability to create standalone executables without requiring users to install Ruby or libraries. Key points of the presentation include: - **MRuby vs. CRuby**: MRuby allows for a lightweight embedding of Ruby for low-resource environments, supporting a limited standard library and additional gems. - **Development Patterns**: Unlike CRuby, MRuby requires advance specification of dependencies in the build configuration, which Hodel discusses through examples of building tools and libraries. - **Challenges**: He notes challenges in transitioning from CRuby to MRuby, including the restricted set of methods in MRuby's core classes and the complexity involved in cross-compiling C libraries. - **Docker Integration**: Hodel describes how Docker is used for the MRuby CLI build process, mentioning both the advantages of cross-compiling and the difficulties in debugging and executing commands. - **Testing Strategies**: Significant time is devoted to discussing testing within the MRuby context, highlighting the MRuby Test gem and complexities involving setup and execution of tests across platforms. Throughout the talk, Eric illustrates these points with personal anecdotes related to building customer tools for Fastly and reflects on the software development process's emphasis on documentation and maintainability. He concludes by offering suggestions for potential improvements to MRuby and its ecosystem, including enhanced documentation, better debugging tools, and the introduction of keyword arguments in MRuby's C API, which would aid in more robust argument verification. Overall, Hodel conveys excitement about the possibilities that MRuby brings to command-line tool development while candidly sharing the hurdles encountered along the way.
Suggest modifications
Cancel