Live data from Hacker News

Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

news.ycombinator.com

261–270 of 309 posts

Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

#261
post #192

Earlier quoted context omitted.

In my experience, less than 5% are actually writing algorithms and solving harder problems. I work at a consulting firm with 100 or so developers, and most seem to do "simple" stuff most of the time. The most complex thing I have heard of is someone who wrote a kalman filter thing for some part of a nuclear reactor. To me it seemed hard since I don't understand the math, and apparently people around him was happy wit…

I googled kalman filter https://www.bzarg.com/p/how-a-kalman-filter-works-in-picture... Looks interesting!

And obviously the standard CS books tell you little about numerical and stability issues you get to solve to have an actually really working and accurate Kalman filters.

It might be touched upon in doctoral or post-doc courses...

Whereas electrical engineer gets drilled about noise, stability and uncertainty all the time. Rarely even about mathematical chaos and chaotic systems.

Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

#262
As others have pointed out, a lot of application development rarely requires solving typical CS problems. One can go a long time building things without such formal knowledge. I agree with that and I'm glad that the field is available to anyone that loves to program regardless of schooling. BUT

The problem is thinking that "It's ok!" to spend your career in ignorance because your job doesn't involve inventing new algorithms or pondering theory. That's just lazy. I know, I did that for years too, not knowing why I should bother since I'm doing just fine without it! That is the arrogance of ignorance at work. I guarantee that you don't know how miserable you really are.

It's not about passing whiteboard interviews, it's about achieving a deep understanding of fundamentals. It will change and improve the way you think and approach problems. It will improve your software regardless of whether or not it involves an actual "CS problem" because your mind will be elevated. I did the same thing for years, I whined about "whiteboard interviews that don't effectively display my skills and unique gifts to do the job". It's a dumb mindset.

My advice as an internet nobody would be: Now that you've seen that you are struggling in this area, work on it! Don't let these people encourage you to remain ignorant. Advocating for ignorance is shit that propagates shit.

Ultimately, understanding the principles of your field will make you better. It's not about the damn whiteboard!

Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

#263

Earlier quoted context omitted.

Nowhere near it - and neither do most other developers in the US.

Wasn’t trying to imply that’s the case. I’d love to move out of the Bay Area, just to get away from the whole “leetcode or GTFO” interview style, but the fact that there are so many opportunities around here keeps me here for the moment. Well, that and I can actually make enough money to pay my student loans while living somewhat comfortably and saving a little money. If I knew anyplace that had decent weather where…

This is something I'm struggling with right now. It seems like there are endless opportunities but are they really opportunities if you can't get past the "leetcode or GTFO" barrier? And even if you do get past it that only gets you in for a full day of being grilled on other arbitrary measures with zero feedback as to why you didn't get the offer. I feel like spending time trying to be able to solve these coding "challenges" only detracts from time I could be spending learning more useful ways to code or actually, you know, building applications.

Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

#264

Earlier quoted context omitted.

As a self-taught programmer who doesn't have a CS degree, my experience is substantially different. There are many places where I would seriously consider applying (FAANG) that this would be a significant hurdle. I've taken to competitive programming as a way to prepare myself, but I'm a long way away from being at a level where I'm comfortable applying to the companies I'd like to work for. I think a lot of people l…

I have to point out something that I haven't seen anybody say here -- there is a huge amount of variety in the difficulty of these sorts of interviews. I assume that all FAANG interviews for entry-level software devs are akin to the standard Google interview, for which you are expected to study your ass off. I have not interviewed for one of those companies, but of course I know how much people study for them, and it…

To play devil's advocate, "which data structures to use for esoteric string manipulation problems, etc" is the kind of thing that interests me (and presumably some others) a lot. If I wanted to go for a FAANG interview I'd love to brush up on the algorithms and data structures stuff that fascinated me in college and I haven't had much cause to think about since. There are certainly other things I'd rather be doing, but it wouldn't at all be a miserable chore like you're describing. So maybe they're looking for people who think about these problems more like I do (and I'm not by any means saying I'd pass the Google interview) and less like you do. They have the pick of the litter after all.

On the other hand, there's the well-known story of the Harvard MBA answering Orkut support tickets so Google probably doesn't need that level of talent. But if they can get it, why not?

Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

#266
post #183

Earlier quoted context omitted.

There's an old Kent Beck quote that fits here... "Make it work. Make it right. Make it fast." Your approach fits that. http://wiki.c2.com/?MakeItWorkMakeItRightMakeItFast

I've seen so many projects where the developers have taken this to heart way too much. The problem is they use it as an excuse to give up after stage 2 thinking stage 3 can come along when it actually becomes a problem. The thing is that performance issues tend to creep up on you so slowly that you don't realise it until you have a very important client with tons of data screaming at you to fix it now. To fix it then…

If you do that you'll write great, fast code but it'll take you longer to do it. That's great if you have unlimited resources, but try doing it in a startup where failing to ship in a month means your whole business fails.

So... Maybe don't prematurely optimize?

Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

#267

Earlier quoted context omitted.

I thought complexity theory was based on the fairly intuitive Turing machine model (of computation) and not religious concerns

Scott Aaronson gets a bit carried away sometimes :)

Doesn't he have a license to get carried away?

Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

#268
Sorry, but perhaps you should take some time to learn the fundamentals of your field? Incompetent devs like you are the reason the rest of us have to jump through absurd whiteboard hoops. Anyone who can legitimately call themselves a programmer should not have trouble with an intro CS class.

Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

#269

Application developer is to computer scientist like car mechanic is to physicist. You've been conned into thinking Computer Science prepares for Software Engineering. That's not true. While you may need some Computer Science knowledge from time to time (and in fact there are some rare jobs heavy in Computer Science knowledge) almost all typical development and especially entry level software engineering jobs are all…

My CS degree focused on business applications. Not only did it touch on algorithms and data structures, it delved into database architecture and GUI design. Your degree may vary.

Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems

#270
post #183

Earlier quoted context omitted.

I've seen so many projects where the developers have taken this to heart way too much. The problem is they use it as an excuse to give up after stage 2 thinking stage 3 can come along when it actually becomes a problem. The thing is that performance issues tend to creep up on you so slowly that you don't realise it until you have a very important client with tons of data screaming at you to fix it now. To fix it then…

What is your hypothesis on where that lie comes from?

Ok, it's a bit of an exaggeration and obviously depends a lot on what your definition of premature is. I guess the statement is actually a tautology, by definition premature means too soon. I just see people who think that any optimisation at all is bad, whereas in a lot of instances optimisation as you are writing the initial code is not premature. In my experience...
Post reply on HN