RE: Anyone using rider? 10-15-2020, 11:22 AM
#6
(10-15-2020, 11:12 AM)Bish0pQ Wrote: Also, let's say for example you encounter a NullReferenceException. You know what it is and you know how to prevent it, but for some reason because you committed too soon or you didn't see the ?? you missed to check for null. Rider/Resharped helps you see that. Even though you know what you should've done to avoid it, you now SEE the error and can solve it before it goes to QA or production.
But I totally agree with you that you shouldn't let tools do all the work.
These things rarely happen for me. I always work on small units of code at a time (I yell at people for 500-line commits), and I always (90% of the time) test my code before I push it. When it's something that needs to be tested on device or somewhere that it needs to transit through git first, I set up a branch for it and merge it if and only if it works as intended. So in that case, I'd see the exception (assuming it was part of the normal use case) before I was even finished writing the unit.
That being said, for some people, those tools help. For me, they just slow me down as I've constantly got things popping up and cluttering my screen. I type too quickly to ever make use of them, and in many instances I even hate the autocomplete dialog box coming up (I almost never use that either, unless I'm repeating something a bunch, then I'll select it the first time and just tab it before the box appears for the remaining ones).
If I were working in a language or environment that I don't have that level of skill in (say Ruby or Python), I'd probably make use of features like that, but for C#, C, Objective-C, etc I'd much prefer to just be left alone with my keyboard and eyes. I believe XCode used to have a feature that allowed you to disable all of those features unless you hit the tab key. Generally the only time I use that kind of stuff is when I'm going through a code audit, and in VS I'm just looking at the "Information" section and likely selecting the best recommendation (which is usually just code clarity updates)