Earlier quoted context omitted.
What exactly did you have trouble with? These really are simple problems, all you need are an understanding of loops, ASCII character codes, and basic arithmetic. To be honest, I'm surprised a seasoned developer of 5+ years can't do these, or at least have a decent stab at them.
Why would you expect the modern application developer to even know what ASCII is? There is a chance I wouldn’t know what ASCII encoding was if my exposure to programming didn’t start in the 8 bit era. C is foreign to a lot of self taught programmers.
Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems
101–110 of 309 posts
Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems
#102Earlier quoted context omitted.
I am guessing you don’t work in the Bay Area.
Nowhere near it - and neither do most other developers in the US.
Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems
#103Earlier quoted context omitted.
Is there a particular part of these problems that is stumping you? Perhaps breaking them down into smaller sub-problems? Where is it something else? Based on your original description I was expecting something more heavy on straight CS theory. “how do you sort an unordered binary tree in place“ kind of thing.
> heavy on straight CS theory. “how do you sort an unordered binary tree in place“ kind of thing. I was having a related conversation earlier, and feel like I'm reprising the same argument for a new audience, but... I don't see what is either Computer Science or theoretical about that. It seems like an eminently practical task: Handling things in a tree structure, sorting items, and doing work in-place to conserve re…
Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems
#104Earlier 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…
I'm hiring Ruby devs down in Costa Mesa, and I don't ask any algorithm questions :)
Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems
#105Earlier quoted context omitted.
Putting aside the damage that issues with correctness can cause, the problem is exactly that if you e.g. wrote something that grows with n^2 instead of n log n, you cannot scale by "brute force" anymore, as the inefficiency very quickly outgrows the amount of resources you can add. Seriously, your thinking that "algorithmic inefficiency" can be countered by "scaling" is almost proving the point. CS is by far not just…
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…
And that's a good thing? Part of my point is that this can be avoided, or at least have a higher probability of being unnecessary, if the proper basics were learned.
Wouldn't you wish the author would have just known how to properly sort a list[1] in the first place?
"Scaling" the development process can significantly reduce the amount of time needed to solve problems, or complete new features. It can be more beneficial to be able to ship code faster and more reliably, even if it isn't the most efficient code
Agreed to that, but as said, computer science is not just about runtime complexity. Knowing computer science might help you avoid those situations, or resolving them quicker.
I know that shitty stuff can work, even work "well enough", but going back to my original comment: Maybe it could work much better, simpler, more profitable if that's your favorite metric, with just the application of some basics, if they are known.
[1] Noting that "sorting a list" is a stand-in for all sorts of tasks that benefit from CS-knowledge.
Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems
#106Earlier quoted context omitted.
As a self-taught programmer who doesn't have a CS degree, my experience has been that this is not a significant hurdle to any workplace that I would seriously consider applying.
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…
Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems
#107Earlier 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…
Good for you, but your interview experiences would be atypical these days
Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems
#108Earlier quoted context omitted.
As a self-taught programmer who doesn't have a CS degree, my experience has been that this is not a significant hurdle to any workplace that I would seriously consider applying.
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…
Of FAANG, I only know of Google having a standard interview for all software engineers across the company (and one that is algorithms-heavy).
Plug: If you do iOS engineering, we are hiring: https://twitter.com/conradev/status/1035244142488506368
Re: Ask HN: I've been a programmer for 6 years, and I can't solve basic CS problems
#109CS isn't as critical until you have to worry about efficiency, scale, or creating radically novel solutions. At which people you naturally will pick up more CS as you try to solve these problems.
Building something and building something that can scale are almost 2 completely different tasks. Asking questions like how much disk space will this take? How long will it take to perform a lookup? How do these factors change as the data grow?
Another area where CS becomes more important is when you want to come up with new abstractions.
To do what others have already done you don't need much CS knowledge because others have created libraries for you and have already established the design patterns. But CS becomes more important when you want to invent new paradigms and algorithms.