The rubber duck debugger: debugging using the documentation process
Here at Swimm, we are constantly working on innovating and creating new ways for developers to understand code better. Today we are introducing our latest feature, what we’re calling Swimm’s Rubber Duck Debugger, which uses our unique AI enabled “Debugging User Complex Keywords” engine to understand and react to your input.
How Swimm’s rubber duck debugger feature works
Swimm is proud to present our new Rubber Duck Debugger for a limited time at the beginning of April 2022, to test a new approach that allows developers to debug and find solutions to issues and create documentation of the process along the way.
Let’s describe how Swimm’s Rubber Duck Debugger works. Our duck begins by asking you: are you trying to solve a problem?
Swimm’s Rubber Duck Debugger continues to ask you questions. Because the duck doesn’t exactly answer you, it forces you to continue talking with it until you eventually get to a conclusion that leads you to your answer and solution.
In other words, you can use Swimm’s duck’s guided questions to both debug a problem you see as a starting point or choose to go a bit deeper on a code exploration journey of sorts - and describe something you are seeing, attach a code path that creates it, and trace things back from it.
The idea here is that Swimm’s Rubber Duck Debugger feature allows you to get a handle on what’s going on while describing and documenting the larger picture of what’s happening in the code. So that at the end of the day, things are clearer to you and more straightforward in the code itself. And ultimately, this is a win-win for the rest of your engineering teammates, too, who will be able to share this new insight.
So, for example, with Swimm’s platform, where code-coupled documents are always up to date, you can link from your docs to the relevant part of the code and link from the code to the relevant docs. This helps engineering teams collaborate and improve the accessibility of just finding documentation.
The backstory on rubber duck debugging
Backing up a moment to give a bit of perspective and history to the name of Swimm’s new feature. Because the new Swimm feature (which, of course, is not AI enabled at all), presented for the first time on April Fools Day └[ ∵ ]┘, is a really cool new feature!
Rubber Duck Debugging, introduced in the book The Pragmatic Programmer, is the process of finding a solution to a problem simply by describing it to an inanimate object. Our team here at Swimm has found this method very helpful for debugging issues, and we have been using it more and more frequently.
And here’s what we’ve noticed: Rubber Duck Debugging helps with the documentation process. Because when you describe an issue you have and ask yourself some questions about the issue at hand, you are finding a solution to the bug in your code, but you are also effectively documenting your thought processes in trying to come up with a solution.
How can I use Swimm’s rubber duck debugger?
It’s simple! Just go to our Swimm app, log in, create a new document, and on the bottom left side, you will see Swimm’s blue Rubber Duck ready to help you debug.
By clicking on it, you will be asked questions by our trusted Rubber Duck advisor. Go ahead and just answer the questions to see if it helps push you closer to resolving your problem. If it does, when prompted, let the Rubber Duck know that you’ve got your solution, and you’ll have a document of the entire process for you to read and share with others.
The connection to April Fools Day? When you approach Swimm’s Rubber Duck Debugger, your assumption, of course, is that the duck will solve your problems - fix your bugs, right? But actually, the solution to fixing the issue and the knowledge to do so is really something you already know. Our Rubber Duck Debugger, helping with the documentation process, is assisting you to make the fix.
So yes, we’ve found that code documentation and debugging go hand-in-hand like bread and butter. As developers, we live and breathe this reality every single day. Swimm is making it easier for developers: this new Rubber Duck Debugger feature will not only help you debug, but it will also help you create documentation. It's two for one, right?
Check out Swimm’s growing developer community and sign up for a free demo. Code-coupled documentation and Swimm are where it’s at; Swimm will save you time and money a hundred times over.