Programmers I've worked with that I most looked up to have one thing in common: They'd pull up VS or WinDBG and knew ALL the tricks, and could track down a bug in 5 minutes that the printf crowd would've spent a week on. Aren't a lot of things that give you that kind of a boost.
-
-
Show this threadThanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
Also, we encourage doctors not to use stethoscopes.
-
Yes! Stethoscopes are a crutch! Just sit down and think about what the body is doing and work out what's wrong from there!
- 1 more reply
New conversation -
-
-
Any recommendations for articles/direct tips for getting good?
-
Use your debugger for easy bugs as much as you would hard ones. Learning the ins and outs when it's an easy bug pays off for the harder bugs.
-
Urgh... that sounds good but like... is the suggestion that printf is always bad?
-
It's just limited. Printf let's you see only what you thought to print out.. So you need to constantly go back and forth adding more printfs then trying to repro the issue etc. With a debugger you just have to catch the problem once (usually) and the whole program is your oyster.
-
As for suggestions, I'd recommend using Visual Studio first and use their built in debugger. Read the docs about all its features. But if you really want to go nuts, try WinDBG. It even let's you go backwards in time, or write SQL-like queries on a trace or the current state!
End of conversation
New conversation -
-
-
I have a hard time believing this view is representative of a majority of people who are fully on board with modern c++. It's simply ignorant of a perfectly valid and effective way to write software.
-
One can hope.
End of conversation
New conversation -
-
-
The trick to being 10x is to think imperatively? A practice that's phasing out of the industry?
-
10x programmers use what they can get to make them more productive. Part of that is to look at what your program is *actually* doing, when it's clear that it's not doing what you think it should be doing. This can be the difference between 30s and 30mins (or 30h).
-
I dont see how that contradicts what I said
End of conversation
New conversation -
-
-
Is there any more context to this tweet - was this something someone mentioned in a talk?
-
-
The conclusion of the post seems attractive. Maybe 2 parallel languages - c and templates do not deliver the benefits of efficiency that keep folks tied to c++ . The "snake" in templates is a data pointhttps://github.com/mattbierner/STT-C-Compile-Time-Snake …
-
Everyone has their 'wishlist' of what they think is good+bad. C with function overloading and member+virtual functions plus light templates and reflection would be a good start for me.
-
Agreed, seems like a good start. Void* function pointers feel weird, and lack compiler help. To say nothing of modern problems of when/how to parellelize across cores or just use simd. Data, threading and mental overhead seem to be at the ... Core... of the issue. Oh, puns :)
End of conversation
New conversation -
-
-
Or you could switch to Rust and stop having so many bugs.
Debuggers are only useful for debugging shitty code. -
Absolutely not. I love Rust, but I still use debuggers constantly while developing new code and tracking down issues in old code. Nothing is going to beat seeing what your program is actually doing.
-
Why can't you tell what is wrong without having to inspect stuff in a Debugger? Not enough tests? Logging? Invariants? Debuggers are enabler... of bad code. Last time I was using it with Rust was when I've have hit an issue in a ffi dependency.
-
Production issues typically can't even be diagnosed with debuggers. And debugging is throw away time unlike a test, logging assertions or better structured code. Sure everyone should know how to use them, but the further goal is to not need one in the first place. At least IMO.
- End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.