3 ms·
I often struggle with the article's described problem when programming. Bug in own added code leads to stress, hence debugging in stress mode. I do not feel it
by nuancebydefault 5y ago
I often struggle with the article's described problem when programming. Bug in own added code leads to stress, hence debugging in stress mode. I do not feel it has much to do with muscle memory while typing, more with the effect of anticipating/hoping for the best outcome while testing.
What helps for me is to change code (tiny refactorings or adding functionality) and test in baby steps when I'm not very confident. This would filter out any wrong assumptions of existing code or misunderstanding of the system on-the-go without much stress. A big disadvantage of this approach is that it can be tedious and time consuming.
Other approaches are to make yed drawings and like the article proposes, rubber ducking to a real person or by writing down the description of the problem and related questions.
I secretly hope to get better or faster approaches in further comments,to reduce stress while debugging.
- ignoramous 5y ago> I secretly hope to get better or faster approaches in further comments,to reduce stress while debugging. Most of programming is having encountered a problem before and experience in how it was dealt with. When you do this enough number of times in a narrow enough domain, you're on the right path. Like with everything else, the choices you make define you. As ageist as this industry is, depth, if you choose the tech right, might help you reap better monetary rewards than breath (of your skillset). If you play it proper, depth is how you optimize for lower stress and higher gains, imo.
- whitten 5y agoI agree about debugging being tedious and time consuming. What is a yed drawing ? I’d like to know if there is a process to creating a description of a problem that is more amenable to some mechanical analysis.
- nuancebydefault 5y agohttps://www.yworks.com/products/yed https://www.yworks.com/products/yed Free and easy to use, and has a lot of tricks to e.g. get an uncluttered layout (straight arrows, aligned boxes,...)
- garethrowlands 5y agoA good supportive team helps. It's our code, not your code. It's our problem, not your problem. We will fix it together, dropping other work to mob it until it's under control. By the way, the incremental testing you describe is broadly correct, almost always.
- nuancebydefault 5y agoI wish our management would be more supportive of the team view, it would make a world of difference. (Meanwhile I am in the process of fixing that 'root cause' problem.)