It just means you've been doing jobs where CS is (apparently) unimportant. If you're ok with that type of job then by all means, continue, it pays the bills. The downside is that it might get mind-numbingly boring in the future. Pushing bits between API calls isn't exactly computer science.
CS is unimportant in 99% of jobs. What's important in a job is making an impact in the company you work for. This means building product features, improving systems etc. but this rarely intersects with "CS" problems
Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
131–140 of 167 posts
Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
#132You should invert the question: since EVERYONE forgets all of this CS stuff then perhaps teaching this CS stuff to us programmers is a complete waste of our time in the 1st place? So it's not YOU who is "wrong": it's the universities who have it backwards and are disconnected from the real world work that programmers do.
Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
#133Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
#134These are 3 very different professions that have 'coding' in common. And given the huge demand for "analyst programmers" nowadays, a lot of people who studied the other two, end up working as the latter.
Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
#135Software Engineering is a lot of the day to day work you do as software engineer. It’s more about people, process, execution. In reality, most problems you’ll encounter in day to day software engineering won’t be CS problems. Lots of CRUD-shaped apps of varying forms and sizes.
Occasionally, you’ll get a real CS shaped problem and those are fun.
As others say - refreshers worked well since you’ve already learned the material. Find some interesting books or ideas to explore and they’ll come back.
Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
#136I've heard programming != Comp sci, so perhaps it's not a bad thing.
As a CS prof of mine once said, studying CS to be a programmer is like studying architecture to be a house builder...
Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
#137Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
#138Normal, yes. The nice thing about forgotten knowledge is that it's much easier to jog the memory and get it back than to learn it from nothing. You likely still use a lot of the fundamental concepts without realizing it. I am someone who came from a non-traditional, self-taught path ~25 years ago. I did get some formal schooling in electronics, which you'd think was useless, but I can think of a few times solid digit…
Yup, I can't tell you what 6th normal form is anymore, but I can tell you if a database looks poorly designed or not. lol
Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
#139Normal, yes. The nice thing about forgotten knowledge is that it's much easier to jog the memory and get it back than to learn it from nothing. You likely still use a lot of the fundamental concepts without realizing it. I am someone who came from a non-traditional, self-taught path ~25 years ago. I did get some formal schooling in electronics, which you'd think was useless, but I can think of a few times solid digit…
Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff
#140Earlier quoted context omitted.
I have a CS bachelor + masters and the only actually real-world useful courses were on the masters levels (and only 3 courses out of many, the rest were time wasters), 99% of the other stuff before it was a total waste of my time.
Which three courses, that might help the discussion. I can think of many more than 3 courses that helped me directly or indirectly later on: 1. CS 101 - I mean, duh? Intro to programming, basic algorithms and data structures. By the end you can at least write a simple program, and if you weren't a nerd like me (started programming at 8 because the computer was there) this would be essential. Which was the case for th…
The most helpful one was a "software engineering" course, but mostly it was c++ development in a Unix environment. The part that was directly helpful was the shell scripting, not the basics of it since I was already running Linux and knew my way around a command prompt, but the professor would demonstrate things live in class, and he was a serious pro. I was just blown away at some of the stuff he knew, he could basically operate in a shell environment at the speed of thought. I'm still not like that, but I learned some stuff.
CS 101, like you, I already knew. "Basic Computer Games" from when I was a 7 pretty much covered that.
Discrete math helped a little, I mean I already knew most of it, but it helped. Stats helped a little, the first stats class we had to take. The second was all proofs, never used any of it. Never used any of the other math, linear algebra, three semesters of calc, differential equations, and a graduate level combinatorics class that broke my brain. Never used a single bit of it.
Compilers, we wrote our own compiler, helped a tiny bit indirectly. It made PL/SQL error message make more sense, I don't remember why. Operating systems, we wrote our own operating system, don't know any way that that helped. Graphics, never used it. Two semesters of assembly, never used it.
Algorithms, the first day of class we had a substitute whose accent I couldn't understand and he spent the whole class writing proofs on the blackboard and I thought, "I am so fucked". The actual class turned out to be just things like "count how many times this for loop will execute", total waste of time. One extreme to the other.
Didn't take a database course, worked with databases most of my career. That would have helped.
You could fit the parts of the courses that I've used into a 3 month boot camp pretty easily. But that's not the point of a CS degree to employers, the point of a CS degree to employers is that if someone can figure out vector calc and differential equations, they can figure out what the bug is with your CRUD app. It's just an expensive workaround for an IQ test in an environment where employers aren't allowed to give IQ tests. And also, if they can stick around for 4 years to get a degree without flaking out, maybe they'll stick around for a few years on the job.