By Robin Dickson, software engineer at UniFa.
The RubyWorld Conference 2019 was held on November 7th and 8th in Matsue, Japan. UniFa joined as a sponsor and had a chance to show the Lookmee Nap Check service (ルクミー午睡チェック), which uses technology to assist childcare staff when babies are taking naps.
At the UniFa booth we showed various people, from engineers to business people to high school students Lookmee Nap Check. The response was very positive, they enjoyed trying the technology and seeing how it can be applied to nursery schools. It's valuable as a developer to see people use software for the first time and see their reaction to the concept and user experience.
The conference was also a great opportunity to meet people from the Ruby world, and find out how they are using Ruby. I was interested to learn about how Ruby is being used to teach programming, including a game where learners can use blocks to create Ruby code.
The first keynote was by Yukihro Matzumoto (Matz), the creator of the Ruby programming language, who talked about how Ruby was created and gave insights into its future. He emphasized the importance of community and focused on four points that have helped to build Ruby into the 11th most popular programming language in the World (in the TIOBE index).
- Motivation - Creating a programming language gives you ultimate freedom. Motivation must be maintained over the long run.
- Define Target Audience - Himself and friends like himself
- Community - Open software, open to contributions
- Goal Seeking - Concrete goals - For example Ruby 3 should be 3x faster than Ruby 2
He gave a first look at the goals of Ruby 4, which he decided only the recently, and these were for Ruby to be faster and smarter. He clarified the meaning of smarter in the Q&A to be features such as type checking, better error messages and better editor integration.
Matz's talk can be watched here. All of the sessions were available in Japanese and English and the recording is in Japanese.
The second day began with a keynote from Nadia Odunayo who gave a talk called The Case of the Missing Method which explained concepts such as singleton classes, DSLs and debugging through the format of a mystery story. The way technical concepts were introduced through a story was especially engaging and included interesting parts of Ruby such as ObjectSpace.
Another highlight was the talk on Asynchronus Ruby by Samuel Williams. He compared different approaches to asynchronus programming and then focussed on the Ruby async gem implementation.
UniFa CTO Hiroaki Akanuma gave a presentation about on the concept of a smart nursery, which resulted in many people visiting the booth to find out more information. He showed how technology can be used to improve nurseries for both parents and teachers. UniFa's vision of a smart nursery (スマート保育園) can be seen in the video below.
The Ruby Prize
The Ruby prize was awarded at the end of the day and went to Sakura Itoyanagi for his contributions including to RDoc and IRB. He gave a presentation in which he talked of the challenges he faced and drew comparisons to his experiences when mountain climbing.
He explained that in adventurous acts:
- Common sense doesn't apply
- You must push forward in the face of adversity
- You may suffer severe setbacks
He explained how in programming, working on Ruby is also an adventure, and these same 3 points apply. Because Ruby is designed to be easy for users, it is more difficult for machines to understand. Learning that the reason using Ruby is so nice to use for developers is that the Ruby committers take on incredibly difficult challenges made me feel very grateful for the hard work of the Ruby committers.
The RubyWorld Conference was a great opportunity to learn about Ruby, and meet the wider community including businesses and educators. It was valuable to view software development from these different perspectives. I recommend attending if you have the chance, you may even win an interesting souvenier, such as some ramen signed by Matz!