← Back to context

Comment by jimmy1

9 years ago

Already hurting them, and has been hurting them for almost a decade, even more at this point.

I was thinking about continuing my education to do research in distributed computing, but I learned midway through my undergraduate, majoring in computer science with the "Software Engineering" track, that our field was already playing catchup with industry. I learned this because I worked for a startup my senior year. Their pace, learning, and new innovation was nothing our dusty class with out of touch professors were able to keep up with. Even the ones that were trying to be "cool" by teaching stuff like Ruby on Rails (mind you, this was in 2008 so it was the hip thing at the time) instead of Java Server Faces, it was just bad. You could tell the professors had no idea what it took to build software. After being in the industry about 10 years now, probably the biggest joke of a course I took and arguably a complete waste of money was CS 3100 -- Software Engineering. It was an entire class on Object Oriented programming with Java, and using UML diagrams to model everything, and CRC cards and all this object oriented cruft. Everything was an object nail to drill with your object hammer. It was at this point I was becoming more familiar with LISPs and dynamic/functional programming languages, and I started to care more about behavior rather than creating a tangled web of leaky abstractions.

Anyways, why go get my masters in distributed computing when I know it will be hilariously out of date and all the best innovation in distributed computing is coming from large, internet-scale companies such as Twitter, Google, Netflix, Facebook et all? But unless I could get into Stanford, which is essentially the big tech firm's R&D arm, I don't see the point. I was thinking of the Georgia Tech OMSCS, but I think I am too jaded at this point.

I have a similar story for a college course also titled "Software Engineering". Essentially, it was a course on how to properly execute the waterfall model of design.

We were assigned teams of four, wrote hundreds of pages of requirement papers, design papers, everything papers. Then we wrote the code in PHP in one night.

For the final section of the class, 3 teams of 4 were merged into teams of 12. It's obvious that no college students have the desire or ability to manage a team of 12, as it's a huge task even for an experienced manager. The overhead of having 12 people involved was incredible. Fortunately, more than half the students in the group were happy to be "fired": we didn't talk to them at all, did the work in a smaller, more nimble group, and everyone got a good grade.

  • Sounds quite outdated with the excessive documentation, etc. However, believe that learning a sequential process first has some advantages in shaping the mental model and experience with pros/cons later when learning agile. What do you think?

My embedded professor waged a little guerilla warfare against the Object Orientated Everything doctrine. Subtle little sentences like- fired mid lecture: "Yes, it helps us programmers, but the compiler has to rip it all out again, to not ruin the cache performance-"

which got us to question other lectures, and find out that the exact truth - depends on the circumstances.

PS: If you strip university down to its basics- its basically society accepted basic income for three/four years - to do whatever you want- if one does not use that, because s/he is chasing some gamified credits in exchange for real credit - is it really fair to blame that on the professors of that institution?

They must teach something, in a field, where half the innovations are basically secret and the other half is outdated the moment you write exams.

So what can you expect from a university?

We learned C/C++/Java.

Object Orientation is still a valid crutch for most programmers, who would otherwise fall back into procedural decay.

Functional programming languages are great, but hard on the novice mind.

Software engineering was one of those courses that are not usefull until you are out in the trenches. Still the Prof had valuable and valid war stories of theire own time in companys and lots of stuff you can find here on HN as advice including:

"He who writes down everything, is the last man standing."

Nobody claimed to have a silver bullet.

  • > PS: If you strip university down to its basics- its basically society accepted basic income for three/four years - to do whatever you want- if one does not use that, because s/he is chasing some gamified credits in exchange for real credit - is it really fair to blame that on the professors of that institution?

    I am finding it difficult to unpack this, but the basic assertion that it is some free time for you to explore and figure yourself out -- that's great, if it is on your dime. If it is on someone else's dime, I would hope you would be somewhat a little more responsible with other people's money (That's how we ended up with all those memes about millennials: because there is a little truth in every meme).

    Put another way, I worked my ass off delivering pizzas and working doubles on the weekend to pay for my nice state college. I am not trying to state some survivorship bias here, but rather illustrate the point of view you have when you work your literal ass off for every dollar. Spending it wisely then becomes your #1 priority. For all the sweat I put into being graced with the privilege of attending the "prestigious" state college of somewhere, USA, I wasn't about to spend another minute in there than I had to, because I saw waste and uselessness everywhere I turned and because I think I calculated my costs personally -- it came out to something like the rate of 200 dollars an hour per hour of actual education I received there -- That's a pretty nice consulting fee if you ask me.

    Honestly these days, I think it's all a big racket, but I have hope for the future generation. These kids going to college now and racking up these student debts that will never be repaid, they are slowly but surely realizing they were duped.

    • Sorry, wrote very uncomprehensible.

      In Germany college is free- so waste wherever you look- but i found i could invest that time and learn something there. And the professors where quite down to earth- also the sort of college i visit has a requirement that professors spend every fourth semester in the industry.

      In contrast, as a consultant i met many companys, incredible proud on there tech- and only few of them really where as golden as they saw themselves.

I've been interviewing the products of many of those types of classes lately and discovering that none of them seem particularly interested in computers outside a classroom.

If you haven't even booted up a VM on a cloud provider to try stuff out, why do you expect to have a career in it?