News for hackers. Stuff that matters.
Re:Notes on Data Structures and Programming Techniques by opportune on Saturday October 14, 2017 @11:48PM (#15475780)
Not that you are wrong for you opinion, but I feel differently. My data structures class was all programming, essentially just the professor writing code on the board for a linked list / trie / etc. after briefly describing it conceptually, and then having to implement the data structure and perhaps solve a problem with it for homework. My algorithms classes were all proof based / theoretical (the most applied problems asking you to come up with a "novel" algorithm to solve something, but still written). I felt cheated out of an actual class once I realized my data structures class could have been designed the same way. Coding the algorithms is usually the trivially boring or frustrating part to me; it's the actual design or concepts that I enjoyed.
Re:Notes on Data Structures and Programming Techniques by hackpert on Sunday October 15, 2017 @12:29AM (#15475891)
Couldn't agree more. The data structures class I'm taking currently (which is unfortunately a prerequisite for most other CS classes) is simply a bunch of trivial programming exercises that take almost no effort to do. While I understand that everyone has different preferences and is at different levels of comfort with the concepts, I feel that a proof-based class would be much more fun.
Re:Notes on Data Structures and Programming Techniques by andai on Sunday October 15, 2017 @06:31AM (#15476593)
Sounds like universities would benefit from having separate "learning tracks" for students of varying ability like in many high schools.

Or more realistically, taking a more layered approach to each course. So you could have the basic "code algorithm X to pass the tests" level (the kind of work most people will be doing later anyway), and then the "let's prove properties of X / come up with an alternative with the same properties" for people who can pass the first part in their sleep.

The best courses I've taken work like that already, plenty of extra challenges if you finish early. But it takes a dedicated instructor to make it work, and most of them unfortunately seem dedicated to getting by with minimum effort.

Re:Notes on Data Structures and Programming Techniques by blueatlas on Sunday October 15, 2017 @07:53AM (#15476773)
Just curious, did you already know how to code when you took your data structures class? And I mean not just write some basic programs, but really know how to code.

I ask because data structures usually comes in the 2nd or 3rd semester of a CS curriculum, and for most CS students, they can't apply the proofs and theory because it obscures where it applies in the problem domain. They can't draw the line between the theory and practical application, unless they already have written a good bit of code.

Maybe this doesn't apply to all CS students, but I would say the majority.

Re:Notes on Data Structures and Programming Techniques by tzahola on Sunday October 15, 2017 @03:54AM (#15476299)
Maybe they should introduce a class about implementing algorithms and data structures for those who don’t find it straightforward.
Re:Notes on Data Structures and Programming Techniques by megaman22 on Sunday October 15, 2017 @09:39AM (#15477052)
My experience was that most people who ripped through the proofs were subseqently completely lost when they had to actually implement things in C later. They are different skills, and downplaying the importance of implementing on real hardware and programming languages and under real conditions does a disservice.

For instance, I recall my professor being wired up about some esoteric sorting algorithm, that had better asymptotic performance than qsort. Except, the constant factors involved in a real implementation made it slower for anything but stupidly big datasets. We spent like a week going over that one...