The cover for my book on how debuggers work is here!
Preorders are still 25% off: https://nostarch.com/building-a-debugger
=> More informations about this toot | More toots from TartanLlama@mastodon.social
@TartanLlama I feel like debuggers are something I missed out on by not taking a CS degree, like unit testing.
=> More informations about this toot | More toots from lopta@mastodon.social
@lopta @TartanLlama Pretty sure that CS degrees typically don't have those 😅
=> More informations about this toot | More toots from lesley@mastodon.gamedev.place
@lesley @TartanLlama Really? That's odd.
=> More informations about this toot | More toots from lopta@mastodon.social
@lopta @lesley @TartanLlama Not really. Linear Algebra, Calculus, Discrete Math, BigO, how function calls work, kleen star and friends, a spattering of UML, Mythical Man Month, Turing Machines, the halting problem, and street fighting. Almost all of it pretty much useless in practical application.
I did decide to go torture myself with self-study and learn MIX machine code from TAOCP. I use that on a daily.
=> More informations about this toot | More toots from crazyeddie@mastodon.social
@crazyeddie @lopta @TartanLlama Typical university degrees often cover some system programming topics, such as data representation, assembly (usually x86), memory hierarchy, concurrency (though typically limited to C-style threads and locks), OS, virtual memory, and networking. However, I’ve never encountered university courses that delve into the implementation details of a debugger.
=> More informations about this toot | More toots from lesley@mastodon.gamedev.place
@crazyeddie @lopta @TartanLlama I agree that much of the theoretical computer science taught is pretty much useless (though, for some reason, tech interviewers love asking about it). Personally, if I need to learn theoretical stuff, I’d rather spend that time learning math instead.
=> More informations about this toot | More toots from lesley@mastodon.gamedev.place
@lesley @crazyeddie @TartanLlama I mostly meant how to use a debugger rather than how to build one.
=> More informations about this toot | More toots from lopta@mastodon.social
@crazyeddie @lesley @TartanLlama I know what some of those things are. What's is "BigO"?
=> More informations about this toot | More toots from lopta@mastodon.social
@lopta @crazyeddie @TartanLlama An estimation on how an algorithms' runtime or space requirement grow when the input grow. I wouldn't see it is useless, but it is often an oversimplification of the nuances of the real world.
https://en.wikipedia.org/wiki/Big_O_notation
=> More informations about this toot | More toots from lesley@mastodon.gamedev.place
@lesley @crazyeddie @TartanLlama Thanks. It sounds like a rudimentary efficiency dipstick.
=> More informations about this toot | More toots from lopta@mastodon.social
@lopta @lesley @TartanLlama It's deceiving. It's based on theory rather than practice. It can be quite wrong. For example, BigO says that inserting items into the middle of a list is faster than inserting them into a vector. Because of caching and lookahead though, and the fact that memory redirects counter that, it is more often faster to insert in the vector. BigO does not take these things into account and just counts the loops in your code.
=> More informations about this toot | More toots from crazyeddie@mastodon.social This content has been proxied by September (3851b).Proxy Information
text/gemini