Live data from Hacker News

Ask HN: What is the most challenging programming course you have taken?

news.ycombinator.com

51–60 of 83 posts

Re: Ask HN: What is the most challenging programming course you have taken?

#51
post #20

Logical programming (prolog). I'm not sure I would call it the most challenging class, but it's the one where the most amount of people failed to learn anything. If I had to guess then 90% of the students (or more) ended up not being able to do anything with prolog. I haven't seen any other class that had such an abysmally low rate of successful learning. I think the only knowledge most people took away from this cla…

Its one of those things thats very hard incrementally. I remember one of my assignments getting absolutely nowhere and then one day during my morning routine i suddenly knew the whole assignment and wrote it out in like a single minute.

Re: Ask HN: What is the most challenging programming course you have taken?

#53
If you want to get more technical, lean in to the Electrical Engineering department and find some courses there. You'll learn a lot about the underlying hardware and logic that your programming is interfacing with.

If you want to learn about applying your skills more successfully, look into an area where you think you'll be working. Most people don't graduate with a CS degree and start working on compilers. I worked at a network vendor where we made firewalls/routers, a lot of our programmers didn't have a clue how customers implemented our products in the real world. In that case, taking networking and security courses would be beneficial.

Re: Ask HN: What is the most challenging programming course you have taken?

#54
post #32

got a book Low Level Programming by igor zhirkov. IT's not technically a course, but he wrote it for his teaching (his classes won a lot, a lot of prizes). It's ofcourse, about low level programming, but since, the lower levels underpin the higher ones, for me the most useful thing was this book. It was a super challenge for me personally (no degree in computing or anything), and working through it i felt more things…

I have some project ideas but they are too complex for me. I have domain knowledge but my programming skills are lacking + lots of ambiguity/confusion/uncertainty/fuziness while implementing. I haven't delved into low level programming much but I will give it a shot. I do mostly scripting and automation - I want to improve my programming skills to the next level.

What 'type' of project ideas are this? don't need to share the idea, but in general: webapp,networkapp, desktopapp, does it have a GUI, is it a CLI tool, etc.

These different types will likely have very different learning paths and things for you to explore that will get you to a practical skill level in the areas you want quicker than going the assembly -> c -> c++ -> script engines route for example. This last one is really a long journey (to me atleast), and it will bare fruits only near the end unless you're into embedded stuff because hardly any apps these days are written in such languages (c++ being a bit more common).

Re: Ask HN: What is the most challenging programming course you have taken?

#55
post #50

Maybe it was just how tough on grading my professor was but I had a hard time with a class called "Concepts of Programming Languages". It covered stuff like syntax, typing, garbage collection, etc. My professor was on the Racket dev team, and the whole class was done in Racket. He was actually pretty thorough about recording lectures and notes so it can be found here: https://jeapostrophe.github.io/courses/2013/fall/…

Probably the hardest CS undergraduate course I took was "Principles of Programming Languages" which was similar to this, and another course mentioned in this thread. Not sure if it was not taught well or was just inherently difficult. Covered programming paradigms (object-oriented - Java, functional - Common Lisp, and logical - Prolog), designing a language with an abstract syntax tree and then parsing and executing it etc. A lot to cram into one course I guess.

Re: Ask HN: What is the most challenging programming course you have taken?

#57
UNH CS 720, OS programming ... it was basically posix programming in C. All my cohorts told me not to take it cause I wasn't going to pass it. I busted my butt and I clawed a B-. I basically worked a 40 hour week on that single class, sometimes more. My entire CS degree was a struggle. What a great value - that degree dealt me into a domain I wouldn't have had access to on my own. I have felt very blessed since then.

Re: Ask HN: What is the most challenging programming course you have taken?

#58

If you are searching for challenges, then whats the point of limiting yourself to school level?

I haven't graduated out of university yet. I would appreciate anything that's challenging and helps me improve my programming skills.

It's not a course, but I definitely recommend the book "Deep C Secrets", I couldn't put it down, and had a similar feeling to being in a good, difficult, class.

Re: Ask HN: What is the most challenging programming course you have taken?

#59
My compilers course was definitely the hardest, most rewarding, and most fun course I took. I got to take it my last semester and barely squeezed in since it was a grad course and I was an undergrad, but I had taken the professor's Programming Language Theory course (which was brutal) and he emailed me as soon as a spot was available (thank you Professor Fluet).

My prof maintained a notable SML compiler, so the language we developed our compiler for was an SML style language that was statically typed, type inferred, and functional (very capable language). From parsing, to type checking, to code gen, to optimization, every project in that class was so much fun. I hate a lot of late nights with four or five tmux windows open tracking down errors, but I don't regret any of those. Aced everything in that class except the exam on parser algos (did not study as well as I should have).

That class made me realized that I can probably write any code I needed to, assuming I had some reading on the existing domain. Huge confidence booster.

Re: Ask HN: What is the most challenging programming course you have taken?

#60
post #55
post #50

Maybe it was just how tough on grading my professor was but I had a hard time with a class called "Concepts of Programming Languages". It covered stuff like syntax, typing, garbage collection, etc. My professor was on the Racket dev team, and the whole class was done in Racket. He was actually pretty thorough about recording lectures and notes so it can be found here: https://jeapostrophe.github.io/courses/2013/fall/…

Probably the hardest CS undergraduate course I took was "Principles of Programming Languages" which was similar to this, and another course mentioned in this thread. Not sure if it was not taught well or was just inherently difficult. Covered programming paradigms (object-oriented - Java, functional - Common Lisp, and logical - Prolog), designing a language with an abstract syntax tree and then parsing and executing…

I took a similar class. What surprised me was that depending on the teacher the classes were significantly different. For most of my friends it was more of a survey of different programming languages. They covered like 4 r 5 languages.

When I took it, the teacher taught LISP to start with, then taught us about compilers, BNF grammar, tokenizing, lex, yacc etc. We had write a compiler (translator) to compile the BNF code we were given. The BNF was a stripped down Pascal. Think ints, for loops, if statements, long expressions (abc * bxy - (delta/time .... I think variable names where like normal. Implementing BNF was very much a recursion exercise.

I did not like the teacher, but it really upped my programming skills.

Post reply on HN