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

121–130 of 309 posts

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

#121
post #72

Earlier quoted context omitted.

I do! I develop bespoke add-ons for the accounting software Sage 200. Fear not, my work is peer-reviewed by my boss who has 35+ years experience in the field. If I get something wrong, my boss lets me know, I learn from my mistakes and ship out good quality software.

Aren't you ever embarrassed that you work on accounting software but 'haven't been able to really figure out loops' (as you said elsewhere) to the extent that you study more and really nail down the bare basics of programming?

That crosses into personal attack. Please review the guidelines and don't do that here.

https://news.ycombinator.com/newsguidelines.html

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

#122

Earlier quoted context omitted.

Except when it comes to getting a job. Forget any of the rest of your skills, because we all know the only thing that matters when interviewing is an ability to recite CS algorithms out of memory and solve obtuse puzzles while pretending you've never seen them. I’ve been a professional developer for 20 years and have never had to recite CS algorithms or solve obtuse problems. My last three jobs I had to whiteboard an…

Since we're sharing anecdata, I'm a professional developer and still use recursion, building/traversing various types of tree data structures, and a few other CS degree requirements. That said, for algorithms (e.g. sorts, etc), understanding what the options are and trade-offs is certainly more useful than knowing how to implement them, since there's a good chance someone has implemented it already in your language o…

What percentage of developers do you think are solving “hard problems” compared to ones that are just doing CRUD apps or yet another SAAS app?

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

#123
post #105

Earlier quoted context omitted.

Scaling an application's operation does not directly relate to its algorithm's efficiency, is my point. Of course a really inefficient application can eventually become unusable, but even terribly performing applications can be "worked around" and thus scaled higher. Say your app is using bubble sort. Egads!!! What a shit design. Clearly this is going to become a nightmare in real world scenarios. But wait - we can t…

but even terribly performing applications can be "worked around" and thus scaled higher. [...] How can we achieve this? By monkeying with the dataset, queueing and batching operations, invalidating operations that take too long, artificially limiting the number of requests per second, or just passing the request to a completely different app depending on use case. And that's a good thing? Part of my point is that thi…

Yes, absolutely it all could work better with CS knowledge. But CS is also definitely not a prerequisite to having functioning apps that can scale well.

CS can help you design the software equivalent of a Formula 1 race car. But most of us only need to work on things ranging from a Honda Civic to a semi truck. It's interesting how little of an education you need to work on a semi truck, even though it's a complex machine that does a tremendous amount of work, compared to the education you need to work on Formula 1 cars.

In the US, we have a big lack of tech talent, and I think part of the reason is the way people propose the requirements or education required to do these jobs. If it's a Honda Civic-level programming task, people shouldn't go through the expense and difficulty of a CS degree.

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

#124

Think of it this way: application development, software engineering, and computer science (and data science and ... etc) sometimes use the same tools but are all different disciplines. Universities traditionally focused on Computer Science and their graduates would often need a lot of grooming before they could really be independently and reliably productive in the commercial words of application development or softw…

What's the difference between application development and software engineering?

Nothing. It sounds like this person is inventing their own dichotomies.

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

#125
I also worked as a computer programmer for a few years without having a CS degree. I decided to work part time while pursuing a Bachelors in Computer Information Systems (less math than CS, more business, most of the same CS courses). It was totally worth it. Not only did I learn about some really useful/interesting stuff (search+sort algorithms, data structures, etc), my pay has significantly increased. I admit that it wasn’t always easy or fun, but it was highly rewarding.

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

#126

Earlier quoted context omitted.

Since we're sharing anecdata, I'm a professional developer and still use recursion, building/traversing various types of tree data structures, and a few other CS degree requirements. That said, for algorithms (e.g. sorts, etc), understanding what the options are and trade-offs is certainly more useful than knowing how to implement them, since there's a good chance someone has implemented it already in your language o…

What percentage of developers do you think are solving “hard problems” compared to ones that are just doing CRUD apps or yet another SAAS app?

I would risk to say 95-5% Mostly researchers are creating those solutions for hard problems, and, in the industry, only a few have to bash them. The rest of us are concerned with keeping APIs responsive and getting that damn button the correct shade of blue.

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

#127
post #82

"The first lesson is that computational complexity theory is really, really, really not about computers. Computers play the same role in complexity that clocks, trains, and elevators play in relativity. They're a great way to illustrate the point, they were probably essential for discovering the point, but they're not the point. The best definition of complexity theory I can think of is that it's quantitative theolog…

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 :)

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

#128

Earlier quoted context omitted.

Since we're sharing anecdata, I'm a professional developer and still use recursion, building/traversing various types of tree data structures, and a few other CS degree requirements. That said, for algorithms (e.g. sorts, etc), understanding what the options are and trade-offs is certainly more useful than knowing how to implement them, since there's a good chance someone has implemented it already in your language o…

What percentage of developers do you think are solving “hard problems” compared to ones that are just doing CRUD apps or yet another SAAS app?

No idea, but based on other comments here it seems that a significant number of HN users who commented here are in the CRUD apps and/or yet another SAAS app category.

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

#129

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…

As a person without the degree that works at one of these companies, I can honestly say that it's incredibly difficult to get in. What I haven't seen anyone talk about is how it haunts you constantly. Not necessarily coming from other people, but knowing that if someone wanted to call you incompetent, it'd be on you to prove otherwise since you dont have the degree to back up your knowledge. I wish I could go back an…

Exactly, you took the words right out of my mouth. I'm 6 years in as a web dev and still feel the downsides of not having that paper. There is that constant, need to prove feeling that lingers in my mind. I'd love to work for a big company but I am stuck in my country. Visa approval requires that paper to prove you're skilled. Stuck with opportunities that pay really less, compared to Europe/USA. Don't know about you but, I recently decided to bite the bullet and join a CS degree on the side. Going to be tough 3 years, but it'll be worth having that paper once in for all.

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

#130
post #31

Thank you to everyone who has replied to my rant. I felt of low value for not being able to provide immediate help for most of the problems that she's being taught to work on. Some of the examples (since some of you were asking for them): https://github.com/cs50/docs/blob/master/_pages/2018/x/psets... https://github.com/cs50/docs/blob/master/_pages/2018/x/psets... I realise that I may have written my original post a…

Wtf? The second problem, listed after the Caesar cipher, is to reverse the hashing algorithm used for passwords on Linux.

What? How is that even remotely fair to ask as a challenge alongside something like the caesar cipher? One of these is a children's task while the other is a professional cryptographer's task. Am I missing something here? I'm sure it must not be terribly hard to do, but it's still so disproportionate to the previous task that I'm shocked.

Post reply on HN