Live data from Hacker News

Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

news.ycombinator.com

51–60 of 167 posts

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#51
Normal, 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 digital logic understanding has served me well in the past, for example. On the other side of that, I designed some shitty databases early in my career! Understanding normalization could have saved me a lot of headaches when I was new.

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#52
post #34

Earlier quoted context omitted.

Then why do we not study debugging, naming, maintenance, reading code etc... specifically?

Because in most universities it's a Computer Science degree, not a Software Engineering degree. I suppose in those universities that offer SE degree, they have more courses focusing on programming and managing software projects.

I had a class titled "Software Engineering" that prepared me very well for software dev life cycle, maintenance etc...

It was a semester long project where the professor was the "business" person and everyone had shared roles (someone was QA for a sprint)...and we get lectures on code quality, testing, best practices.

To my surprise it doesn't exist in every college. Even though I went to a state school, not all state schools in that state required it.

I disliked the professor but am eternity grateful for the class...I would interview kids nowadays who want $100k but have no idea what Agile is.

This was in mid 2000s.

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#53
post #36

You 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.

No, the universities are right. We need academia to advance our knowledge, this also includes teaching. The programmers should take one level or so below that level of education (which has different names depending on where you live).

Most knowledge advencements come from real world, not academia.

Academia has mostly devolved to intellectual dick measurement contenst by entrenched academics/professors who cannot be fired.

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#54
post #37

You 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.

I think in every decent university you get to choose most of the courses, so you can fit it to your interests. Now it can be that somebody did the wrong choice, and now does not find a job where what he learned is useful. I think the university’s curriculum is not bad as it is. More specifically, you do not need to be a CS graduate to be a programmer.

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.

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#55

You 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.

An even better question is why do people go to college, expecting it to be a trade school?

There is nothing wrong with CS curriculum. It's just not for everybody.

This is like going to college for Physics and then complaining that they didn't teach you how to fly an airplane.

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#56
I watch videos and read wikipedia to try to keep those things fresh in my mind. Do I still remember the Greek alphabet? What's the formula for (k choose n)? What's the difference between permutation and combination? Can I still write a Turing machine? What about a Turing with multiple tapes?

I have a bunch of those "questions" that I try to always remember.

My YouTube history is a bunch of those types of videos with some best moments clips from my favorite comedy shows in between them.

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#57

You 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.

I think this is part of a more general problem with universities: they are designed to teach you academia, not practical industry knowledge. They don't teach you what you need to know because that was never their goal. (maybe this isn't true for every field, but in my experience it seems to be for most)

Ideally a lot more people would be doing apprenticeships or vocational courses instead, not getting Bachelor's and Master's degrees. This isn't really viable now though because of the expectation society has for everyone to get a university degree.

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#58
Yes, totally normal. If you want to brush up on that knowledge it won't take much time either; maybe couple of weeks and you'll be able to recollect.

The thing though is most of the thing we (at least I) learned are outdated by at least 10 years. So if you want to learn how things work out in the field I suggest reading about actual implementation. For instance this book is terrific about Linux OS [1], and this is a classic on concurrent programming [2], this one about MySQL [3] and so on.

[1] https://www.amazon.com/Linux-Kernel-Development-Robert-Love/...

[2] https://www.amazon.com/Art-Multiprocessor-Programming-Mauric...

[3] https://www.amazon.in/Understanding-MySQL-Internals-Discover...

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#59

You 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.

Well, we don't really "forget" the knowledge; the shallower and more explicit aspects of it just fade away. The roots are still in there, and still inform how we understand problems and act on them. I'm not saying that a costly college education is essential; just that this is not proof that it's worthless.

Re: Ask HN: Working as a software engineer for 5 years, I've forgotten all CS stuff

#60
post #34

Earlier quoted context omitted.

I don't think it's a waste. Some people going into web development, some into compiler design, some into database optimisation, some into IT management, some into AI, some into 3d game development etc etc. CS is a broad subject. It's pretty much like studying general science in college.

Then why do we not study debugging, naming, maintenance, reading code etc... specifically?

Professors are not good software engineers
Post reply on HN