News for hackers. Stuff that matters.
Re:How to Pass a Programming Interview by Retra on Tuesday March 08, 2016 @10:00PM (#11250595)
It demonstrates that you have a passing familiarity with probably _the_ most fundamental tool of the trade.
Re:How to Pass a Programming Interview by sgift on Wednesday March 09, 2016 @01:48AM (#11251357)
The most fundamental tool of the trade is a profiler. The tool which is used in reality to find performance problems, unlike BigO, which is used in theory to find performance problems. Does BigO help? Sure. Is it the silver bullet people seem to think it is? No.
Re:How to Pass a Programming Interview by kafkaesq on Thursday March 10, 2016 @12:52PM (#11260669)
The tool which is used in reality to find performance problems, unlike BigO, which is used in theory to find performance problems.

Sorry, but this is just wrong.

I can guarantee you that BigO is very often used not "in theory", but in practice, to find real-world performance problems. And not having "situational awareness" of certain commonly occurring complexity profiles can be a significant source for performance headaches and technical debt.

One trivial-seeming, but frequently occurring example: not knowing when to use hash maps.

In fact, many people solve performance problems (including both those where order-of-magnitude performance really is the most important factor, and various other kinds) not by using a profiler but by, you know, understanding the code and thinking about it. Being as profilers, while they can tell you a lot about certain kinds of performance issues, are still generally quite limited in what they can tell you.

Is it the silver bullet people seem to think it is? No.

Of course not, and I've never heard anyone saying that it was, either.

Re:How to Pass a Programming Interview by Retra on Wednesday March 09, 2016 @07:01PM (#11256550)
It's not a silver bullet, it's only a model of the problem. If you profiler tells you some code is slow, you can model why it must be slow by using big-O. In fact it's the standard way of explaining such things. Without it, you must spend your time babbling about special cases.

It's like, yeah, you don't "technically" need to know any 2+ syllable words to be a programmer, but you're really not helping yourself by avoiding them.