Monday, 26th of November
Just like the snow 🌨, we are back with fresh Banitsa 🥮, new logo and even brighter colors. ❤️
Have you ever wondered how a Ruby debugging tool is made? Have you heard of
TracePoint API or the
Debug Inspector API? Of course you haven't! This is a pretty clutch thing to do anyway!
When you come to the newest edition of our humble meetup you will hear all about what it takes to write a debugger in mostly pure Ruby! Take your C and Java training-wheels, we'll be riding through the popular interpreter's internals for those extra spices.
Web Console is a debugging tool bundled with Rails. The most popular feature is a console that is shown in every development error, however, it is a general purpose debugging tool that let you execute Ruby code in any binding as it runs, through its web UI.
In this talk, we'll take a look at how the web-console gem is implemented. This includes a deep dive into how exceptions in Ruby work; how to build Ruby bindings for every part of an exception backtrace, so we can execute code in them; how we interact with the DebugInspector and TracePoint C APIs to make this possible and how we supported alternative Ruby implementations like JRuby.