I had gotten a new laptop at work and had gotten everything transferred and working except when I tried to debug a web application in Visual Studio it would immediately stop and in the output window I could see the message "The program has exited with code 4294967295". I searched the internet and most of the solutions involved Docker issues but I wasn't running Docker. I discovered that I could run it in release mode and then attach a debugger to the process. It was clunky but at least I could debug again. A couple of weeks later my laptop got a Windows update and then I couldn't launch a browser when clicking on URLs in e-mails or in Teams. Searching for a solution on the web for that suggested looking at my default browser settings. Turns out my default browser was set to Internet Explorer 🤯. I use Edge and Chrome from links on my Windows Taskbar. I changed the default browser to Edge and I could launch a browser from URL links again and finally debug a web appli...
I love refactoring code. To refactor code safely you need automated tests. Some code, especially code not written using Test Driven Development(TDD), make it difficult to write tests for the part of the code you are looking to change. Usually what you face are a class that has many dependencies, so in your test setup, you have to create all these dependencies to inject into the constructor even though many or perhaps all of these dependencies don't even have anything to do with the part of the code you are looking to change. Or the method that you want to write a change for is private and the calling public method has a bunch of dependencies which again many will not have anything to do with the part of the code you are looking to change. You are thinking: "If only this code was in a public method it would be so much easier to test". But you may have heard somewhere that changing the code just to make it easier to test is bad. This is a terrible line of thought that has ...
There is a software development methodology that uses a Kanban board, but it isn’t called Kanban because Kanban isn’t a methodology . It’s just a method, a board with columns and stickies to track work, which this guide says can be used with any methodology and is not a methodology in itself. So I call it the Methodology with No Name(MWNN), like Sergio Leone's character the Man with No Name. The MWNN is simple. You add a column on the Kanban board that is a prioritized list of work that is ready to start work on next. But the trick is that the column has a reverse WIP limit, where you make sure the number of stickies in the column never falls below the reverse WIP limit number. This way work is never stalled waiting for a sticky to be completely defined and ready to begin being worked on. That's it. You just do the work in the usual Kanban way respecting WIP limits of all the columns. With the MWNN there is no need for sprints and sprint planning where you try to guess how m...
Comments
Post a Comment