Hacker News new | ask | show | jobs
by jlg23 780 days ago
Exactly. 25 years ago in university none of my professors or assistant professors bothered with syntax, that was left to the compilers or interpreters of the language we were supposed to do our assignments in....
1 comments

We had very different professors. 15 years ago I was writing C programs on paper and being graded on my syntax. In my first database class I lost 1pt on every question because I didn’t end my, otherwise perfect, queries with a “;”.

Both are just 1 of many examples of why I found college, for computer programming, to be nearly a complete waste of time. I’m not saying I didn’t learn anything but I learned way less than I did on my own and most of what they taught was horribly outdated and didn’t take into account how you’d actually be writing code in the real world.

It’s like the teachers that said “you won’t be walking around with a calculator in your pocket always”. That’s not me saying math isn’t important, it is, but it’s the same flawed argument that makes you memorize syntax as if your IDE won’t auto-complete the boilerplate for you or pretends you don’t have all of the internet at your fingerprints to look up things. It would have been much better for the professors to spend their time teaching how best to manage a project or take business requirements and turn them a spec or pseudo code. That’s a skill I actually use every day and it hasn’t changed much whereas the language I use and how I write code has changed quite a bit.

I absolutely loved my university education in computer engineering. It was so great to learn about the math (lots!) and physics underpinning how computers / transistors actually work. The first year was common engineering so even had to take a couple of unrelated classes like thermodynamics and vector mechanics (with law and philosophy as options). Comp sci classes were really good as well: compiler design, databases, algos and data structures, AI, cryptogrpahy, etc. The utility of this knowledge is probably debatable but I enjoyed it very much and I think it helps at least a little bit.
I'm sure it depends heavily on where you go to school or maybe I'm just not well suited to the style of teaching I recieved. Personally I did not enjoy math once we hit integrals in calculus and I hated physics. I understand they are both very important but they have had no bearing on my professional life. There is value in learning something not directly applicable to your day job but when I was in college I saw it primarily as a means to an end and I'm sure I'm not alone in that. If I were to go back now just to learn for the sake of learning I'd view it differently.

Then again, I currently see college as a massive scam for most people with the cost where it is right now and colleges doing a shit job of preparing people for the real world so I wouldn't set foot in one as things stand.

Integrals in calculous is pretty much the beginning!

Fair take in any case. Colleges today seem far more politicized (and expensive) than back in my day. The whole space seems ripe for disruption as a lot of people just want to learn without all of the associated baggage.

> Integrals in calculous is pretty much the beginning!

And maybe I would have found more interesting, and more importantly: applicable, concepts has I gone further. I loved math in Elementary/Middle/High School, it just got a lot more abstract for me in college and I've alway struggled with "Ok, how will I actually use this?".

> Fair take in any case. Colleges today seem far more politicized (and expensive) than back in my day. The whole space seems ripe for disruption as a lot of people just want to learn without all of the associated baggage.

Couldn't agree more. College today can still do at least 2 things decently well (if extremely overpriced) which are to expose you to different viewpoints, idea, and concepts as well as to give you a lot more freedom but with some "training wheels". You're often in a dorm and on a meal plan so you have somewhere to live and something to eat but you now set your own schedule and are able to make decisions that were often made for you (at least in my case). I'm grateful for that experience and the ability to make stupid mistakes without terrible consequences. I also learned a lot about the world outside my hometown that was critical to my development as person.

I'm close to going off on a, well worn (for me), tangent now about how we need to teach meal planning, financial planning, etc to kids but yes, I think college is ripe for disruption. I value higher learning and believe in it but what colleges have become is very gross.

Yeah, when I have given coding exams, I make it pretty clear that they're allowed to use IntelliJ or PyCharm or Eclipse or any IDE (within some degree of reason, we've argued about LLMs in a sister thread that we don't need to get into again :) ).

I think in real life, syntax errors are harmless; they don't compile/run so they don't really get deployed. I think it doesn't really hurt understanding to have little red underlines if you forgot a semicolon, and if you don't really understand the algorithm you're going for, the smart autocomplete by hitting the `.` isn't going to help you do anything other than avoid typos.

I wish my professors had been more like you, or at least approached it with similar reasoning.

Writing c++ boilerplate for a function on paper and losing points for leaving off a ";" both made my blood boil and heavily shaped my views on how programming is taught in college (or at least the one I went to). I also just didn't care much for c++ since I was much more interested in web development (PHP/JS at the time). I used to write all my c++ programs in PHP then once I got them working I'd convert them to c++ to submit to the teacher.

I have no issues going lower-level if needed, I've written Perl (which I consider under python/PHP personally, not sure what others think) when it makes sense for the task (log parsing) and written a tiny bit of C here and there. Lower-level languages just require much more mental overhead for me whereas I can move much faster in a higher-level language and shorten my "Write code"-"See result" cycle which is important for me personally.

Yeah, I almost never took off points for syntax, and never during exams. I would take off two points for homework assignments if it didn't compile simply because I'd have to go and manually fix it so it'd compile so I could check the behavior, which was annoying, but I felt that was a little unfair during exams because those are on a much shorter timespan and are more stressful.

I think some professors are a bit sociopathic. Fundamentally a computer science class should be teaching computer science concepts. Anyone can learn the syntax of a language pretty quickly. As a teenager I used to think I was super smart because I would "learn" a new programming language every week because I'd more or less just pick up the syntax differences between the new language and C++, and so I felt like because I could write a loop in the new language I "knew" it. It's much harder to learn and understand the concepts, and despite being a software engineer for 13 years I don't pretend to understand all of them (sort of a Dunning Kruger thing I guess?).

Professors should know this. The value-add of college should be more (or at least different) than you can pick up from an O'Reilly book you buy at Barnes and Noble for $30.

> Anyone can learn the syntax of a language pretty quickly.

Agreed, I can become "dangerous" in a new language quickly but actually being good in a language takes practice and time.

> The value-add of college should be more (or at least different) than you can pick up from an O'Reilly book you buy at Barnes and Noble for $30.

And to be fair it is more and different, just not 1,000-10,000 times better (when the cost is). There is a ton of value in having a good teacher, unfortunately we pay most teachers at all levels peanuts but expect them all to be rock stars. I seriously considered teaching at one point in my life but couldn't stomach the crap they have to put up with for so little. The teaching/mentoring I've done in a professional capacity has always been incredibly rewarding.

Yep, there's a reason that I am no longer an adjunct professor. There were parts I liked about it, but it was a lot of work and even more of a time sink, for not much pay. It was immensely satisfying to teach students who wanted to be there and wanted to learn, it was less satisfying when students wouldn't show up to any classes start begging for more time to take the exam, or when students would cheat on tests.

I do recommend doing the adjunct thing for one semester if you're able to, it actually is something that I think has really helped me in a lot of ways (increased empathy for people struggling with math/CS concepts, slowing down my talking speed when speaking publicly, etc.). You might like it, you might hate it, you might not be sure what you feel about it (that's my case), but the worst case scenario is you don't do it next semester.