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

241–250 of 309 posts

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

#241
post #12

I heard somewhere that a computer science degree is actually a history degree in how we have solved problems in the past. Programming is a creative problem solving process, but certain problems took decades to solve and it’s only by knowing the history that people are able to resolve some of these hard problems. Don’t beat yourself up for not knowing all of history and give yourself a break for not being able to imme…

Knowing things like binary trees, heaps, B-trees, queues etc. are not history. They are fundamental to writing applications. Using one data structure or a particular sort method will make your application much faster. Supposed you have had a billion elements to sort, but you knew every element in that array is between 1-100. I mean a bucket sort would be much much faster than using a quick sort.

I believe that parent's point is that knowing things like binary trees, heaps, B-trees, queues is exactly like knowing history - in the example problem you give, you're not supposed to invent a solution and design an algorithm, you're supposed to know the (many!) historical approaches to historical problem, know their properties so that you can pick the most appropriate one, and directly use these methods (invented by others, studied by you) as-is instead of inventing your own solution from the basics.

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

#242

> It makes me question how I was hired in the first place. It is called imposter syndrome. It is very real and very common. As a JavaScript developer I encounter this among my peers all the damn time. First, consider what it takes to be a professional software developer. The requirement is to pass a one time drug test and successfully answer questions in a 30-90 minute interview. Done. Consider, conversely, all other…

> The requirement is to pass a one time drug test

Wait what? Where do you live that software developers are drug tested?

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

#243
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…

What is your hypothesis on where that lie comes from?

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

#244

My spouse started a bootcamp last year and I've helped her with many algorithm assignments. Even though I have a CS bachelor degree I still struggled with a lot of the algorithms exercises out there. It requires practice and there are actually a lot of subtleties that you don't experience while working on software projects. A lot has to to with mathematics as well. You can work on projects with hundreds of thousands…

I'm curious, is it the norm for people who do online courses or bootcamps to get help from their spouses? Is it not unfair for those students that are unpaired? I was in university (and thus not really in the pairing off mindset) last time I seriously studied a brand new field but I never got a romantic partner or even a friend to help me directly with my assignments, it would have felt like cheating in a way... but since online courses are targeted to adults maybe it's expected and they see it less academically?

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

#245
post #191
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…

They sure make it sound more complicated than it really is... I'm a self taught developer too, so I get where you're coming from :-) In javascript I would solve it like so: "HELLO".replace(/./g, character => String.fromCharCode(character.charCodeAt() + 1)) This would result in "IFMMP". Basically it's just a matter of shifting charcodes.

Your solution would not work for all cases. For example, shifting "JAZZ" up by 1 should result in "KBAA" but your program would output "KB[[". You also need to handle wraparound at the ends of the alphabet.

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

#246

Programming isn't the same thing as computer science, in the same way that writing isn't the same thing as journalism. Writing code is the easy part. It's tedious, requires lots of practical knowledge and troubleshooting skills, but is for the most part a straightforward exercise. Computer science is about the theory. It involves solving problems in the abstract, using (and in some cases creating) new conceptual tool…

That’s a good point. Now, how do you find interesting job which involves computer science skills?

I work in CAD and my experience is similar to the guy who works in the games industry. I invent new algorithms pretty much all the time. It's a more conservative environment culture-wise. "Science programming" (when all your clients have PhDs and work in academia and you do models of something or other or interpretation of experimental results) is also very intellectually challenging and the CS skills are a HUGE differentiator. It's not for everybody though as in those jobs you rarely work with other programmers or have good code to learn from.

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

#248
A lot of it is practice. There’s an old saying about calculus - don’t worry, once you’ve done a thousand integrals, you’ll really start getting the hang of it.

Taking one of the popular algorithm and data structures book and working through it, and actually doing the exercises, will improve your skills; specially, the ability to identify the shape of a particular problem.

Pure CS is very beautiful IMO, and rewarding to dive into.

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

#249
post #55

Earlier 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…

Hey, just wanted to say I think you have a very fair perspective here, and I'm not sure why you got downvoted (perhaps your comment was perceived as rude.)

I'm actually not interested in working at FAANG. I don't want to live in California, I don't want the long hours, I don't want the stress, and the products and culture are not very interesting to me. The salary is pretty much the only selling point IMO.

However, you make a fair point: If I _did_ want to get into one of those companies, I would need to study CS (academically or non-academically).

Post reply on HN