Hacker News new | ask | show | jobs
by lumost 1560 days ago
After just starting a grad program after 12 years in industry. I'd have to disagree. While a large fraction of homework is busy work designed to give the illusion of challenge and rigor - tests simply estimate whether someone has memorized the material sufficiently for a short 1 hour exam.

In CS, a ~4-20 hour project is vastly more representative of how well someone understands the material and could apply it in a real world setting than a 40 minute multiple choice exam. At the advanced levels this is true for fields such as Physics, English, History or any others.

Maybe we should ask ourselves how to give better assignments in a class that aren't simply busy work?

4 comments

Many engineering programs have their most challenging courses set up as semester long projects.

In chemical engineering the final boss is the process design class, a project where you are asked to produce a chemical substance with desired properties at scale without losing money. Almost everything you learned during the program has to be used to pull it off. Programming, numerical methods, CAD, Transport phenomena, kinetics, physical chemistry, thermodynamics. It really is the best all around test for a chemical engineer.

While this is feasible for the senior year, I am not sure if you can convert for example calculus 1 into a semester long project.

Calculus 1 is an interesting subject as there certainly is a degree of memorization required (you can't re-derive the derivative of x^n every time it comes up in your career). There is a similar to intro to Organic Chemistry, Algorithms and DataStructures, intro to programming etc. But the goal is to build detailed understanding of these methods more so than memorization.

On the other hand we live in a world where access to derivative rules is trivial. I'd imagine in 1800 mathematicians would assume that you would need to have multiplication tables to be productive and not reduced to pen and paper their entire career.

I wonder if there is an opportunity to push more challenging material into the earlier classes and make them more project like.

I am currently in the last few days before submitting my Chemical Engineering Design Project (I'm designing a packed bed methanol reactor), and yes I can confirm it is absolutely fucking brutal and hands down the hardest thing I've done in my life so far
I get what you're saying but I also disagree with it as a generalization, and say it would depend on the subject. For theoretical subjects, an exam is about the only way to test your understanding. Memorization is not going to help you solve math problems.
I was a physics undergrad who hopped into a few grad classes, and to be honest I was terrible at homework and great at exams (mostly due to some youthful obstinance on putting the time in on homework). At the time I believed that the exams showed who really knew the material and who applied time to solve the problem. With some time past I see that the larger/tougher problem sets were where the real challenge was.

I recall a few unique problem sets from Graduate QM such as

- Derive from first principles the color of the sky.

- Prove that charge must be Quantized if there is one magnetic mono-pole in the universe.

The exam questions were far simpler than the theory questions asked in the problem sets. The work for the first question easily totals > 20 hours of pen and paper time.

> The work for the first question easily totals > 20 hours of pen and paper time.

I guess grad students generally take less coursework than undergrads, but how could a professor expect students to have 20+ hours on hand to solve a single question, given other demands on a student's time?

Grad students usually take 1-2 classes at a time, and the problem sets are spread out over 2 weeks.

A problem like the above would be given as a single problem for students to solve over 2 weeks.

I had an undergraduate lab where I spent 20 hours per week on the lab write ups.

That's what motivated me to switch away from a physics major.

> Memorization is not going to help you solve math problems.

On the contrary, memorization is the way most people I know got through most of their math classes, at least through calculus and linear algebra. You memorize the steps by rote repetition without really learning why they work, then the test is mostly an exercise in guessing which steps and formulas you should apply to the given problem.

Is that really memorization? Memorizing multiplication tables is one thing. Practicing the techniques over and over isn't memorization imo. In grad level maths, you are solving proofs pretty much, you can't just memorize facts in a textbook to do that.
It's memorization insofar as you can do all of that practice and become proficient at solving math problems without really knowing what they mean or why the steps work. You're regurgitating what you were taught, not making connections and using your understanding.

You used math as an example of a subject where tests are used to check understanding. I disagree, because most people that I know who did well in math did so by being good human computers, not by understanding anything.

I expect that doesn't continue to be true at the grad level, but most people don't get that far.

I’m someone who crammed their way through 4 years of computer engineering exams at a challenging university. It’s possible. It’s hard and the worst few weeks of life before exams, but it’s possible.
Cramming is not memorization. It's not optimal studying, sure, but you've still learned something.
In my experience there's little long term retention from cramming.
Can confirm. There's 0 retention. Maybe if I kept cramming over an extended period of time I could retain it. Typically though I stop after taking the exam so within about a week or two things I thought I understood disappeared.
>tests simply estimate whether someone has memorized the material sufficiently for a short 1 hour exam.

I feel a deep sadness reading this. Is your computer science curriculum more accurately described as a software engineering curriculum?

Memorization should be virtually irrelevant on most computer science exams. Proofs should be core to computer science exams; the ability to reason is the most fundamental skill to all scientists, especially for fields which are tightly coupled to mathematics.

> Is your computer science curriculum more accurately described as a software engineering curriculum?

Given that most CS students want to go into software engineering, it would surprise me if this isn't the case for most CS curriculums. In my experience CS students don't generally want to be scientists, so most CS classes are more application-oriented than proof-oriented.

Schools are starting to provide separate software engineering programs, but we're not all the way there yet.

I disagree, but at least you didn't use the word "regurgitate".

I always find it funny when people say that tests are just about "regurgitating" information. It's such a cliché that just gets regurgitated in every argument over testing, as though it's visceral imagery actually gives it any real weight.

Tests can assess whether the student learnt the material covered in class. They can also test problem solving abilities.

Assignments test conscientiousness, and the ability to make good design trade-offs when working with a single customer who is buying 100 different custom products and doesn't really care about any of them.