Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Over the past few years, Nokogiri has slowly eclipsed older XML parsing libraries to garner nearly 10 million downloads from rubygems.org. But why another XML parsing library? Isn't it boring? And what does "nokogiri" mean in Japanese, anyway? These questions will be answered, and I'll do a brief dive into all the technologies that we use to make Nokogiri a fast, reliable and robust gem. Topics will include: Origins of the project: motivation, problems and impact Native C and Java extensions FFI, and how to know if it's Right For You Debugging tools (valgrind, perftools) Packaging tools (mini_portile, rake-compiler) Installation issues, and what we're doing to help Feature roadmap Help us caption & translate this video! http://amara.org/v/FG99/
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
The video titled "Microtalk: Nokogiri - History and Future" presented by Mike D'Alessio discusses the evolution and future of Nokogiri, an XML parsing library that has gained significant traction, reflecting over 11 million downloads. D'Alessio, who is one of the authors of Nokogiri, elaborates on various facets of the library’s development, origins, and the community's reception. Key Points Discussed: - **Introduction to Nokogiri:** D'Alessio highlights the popularity of Nokogiri, comparing its downloads to those of Ruby on Rails, showcasing its unexpected success since its inception. - **Meaning of 'Nokogiri':** The name ‘Nokogiri’ translates to ‘saw’ in Japanese, symbolizing its purpose of cutting through complex XML. - **Origins of the Project:** The library originated in 2008 during a pivotal time in technology, when there was a need for a better XML parsing solution. D'Alessio recounts his initial conversations with Tenderlove, leading to the creation of Nokogiri. - **Technical Development:** The early development involved using C extensions for performance, and extensive debugging efforts were required to handle memory management with libxml2, employing tools like Valgrind and Perftools. - **Community Reception:** Nokogiri faced competition from Hpricot, a beloved XML parser at the time. The transition from Hpricot to Nokogiri sparked intense debates regarding performance in the development community. - **Challenges with JRuby Compatibility:** D'Alessio discusses the difficulty of making Nokogiri compatible with JRuby, which does not support C extensions, leading him to attempt a rewrite using FFI, which eventually proved unfeasible due to its complexities. - **Installation Improvements:** One of the significant announcements in the talk is regarding the release of Nokogiri 1.6.0, which aims to streamline the installation process by bundling necessary libraries, addressing common installation issues encountered by users. In conclusion, D'Alessio reflects on the progress of Nokogiri from a small utility to a widely-used tool in the Ruby community. He emphasizes the importance of iterative improvement in software development and the continuous evolution of tools to meet user needs. The presentation combines technical insights with anecdotes from the development process, highlighting both challenges and triumphs in the journey of creating Nokogiri.
Suggest modifications
Cancel