In part one of this series, the debugging tools we used — Elixir's IO.inspect/2, IEx.pry, and dbg/2 — required us to insert changes into code directly. Outside the development environment, you probably won't (and shouldn't) have access to your code. Erlang has a few tools to debug code at runtime: :debugger, :dbg.tracer, and :observer. First, let's look at the:debugger, a graphical debugging tool. Let's get going!
We know about Testing and Debugging. But what is the difference between these two processes? Why are these two processes essential for software development? In this article, we will find answers to all these questions. You will learn about the features, the tools used in each process, and the types. Did you know Testing and debugging are two essential processes in software development?
In every job and every company, that day always comes where you find that you…actually need to do some work. And by that, I mean finding new innovative solutions to tasks and projects instead of going with the tried-and-true methods. Recently, my team, of full stack developers were tasked with building a webview app to support our live debugging IDE plugin. This would allow us to align the user experience with our pre-existing web app.
If you have been a long-time user of the Google Cloud Platform, you’re likely familiar with the StackDriver suite of Observability and Operations tools. The most unique part of that suite was Google’s StackDriver Debugger, which was designed to debug live code in cloud and production environments with a click of a button. Unfortunately, StackDriver has been renamed as Google’s Operations suite, and the Debugger has been deprecated.
We all know that debugging and troubleshooting cloud-native environments is no walk in the park. Sometimes we forget that debugging the frontend portion of those applications is no simpler and comes with its own set of challenges. We also all know how hard it is to get logging just right: managing verbosity, volume, and usefulness to just the right level.