The conversation

Lessons learnedExperience excerpt · English

I think you are right when you frame debugging as a scientific process

I think you are right when you frame debugging as a scientific process. It really is about observing and measuring while perturbing a system in some way to provoke it to provide you with observation. But as roenxi points out, academia doesn't see programming as something they are supposed to teach. Academia sees programming as a vocational skill. Something to be learned "on the job" - or done by "other people" (whoever they might be). They see it as their job to, mostly, teach you the math that is needed to model behaviors of software and systems. I think the closest I ever got to something that was practical was system design/modeling. And as to demonstrate how terrible academia is at keeping itself updated, the methods we learned were, without fail, known to be impractical, outdated and wasteful. Nobody who took that class would ever apply anything they had learned in that class later in life. Computer science is a bit odd. If you become an architect (the kind that draws houses) it is understood that you are not going to be actually building houses. …

Original discussionWhy don't schools teach debugging, or, more fundamentally, fundamentals?154 source comments · at import
2

What was this responding to?

Parent context · original excerpt

RC

In the case of debugging I would say that the academic side would benefit from the teaching of the fundamentals of debugging: this is because debugging at its core is just science, the process of measuring and perturbing a system to understand something about how it works. You can teach someone gdb but if they don't get the fundamentals then they will struggle to actually debug anything

Full original

Community replies 0

No community replies yet. Add your perspective.

Replies from the source 2

Direct replies available in this import. Original-language excerpts.

JL

The academia teaches practical programming. The CS department usually doesn't, as it's not their job. You can see the same situation with the mathematics department. They teach mathematics, not doing calculations. If another department has a need for more practical mathematical skills (physics is the usual example), they often teach their own classes. Like many other biases in the academia, this is mostly a matter of self-selection. If you want a career in software, the industry is clearly the better option. If you want a career specifically in CS, there are not that many good alternatives to the academia. Which means that CS departments are populated by people with no particular interest in software.

Full original
RT

This strikes me as so odd. My CS degree had tons of practical classes but it was all application of things you learned because, being quasi vocational, the best way to learn to program is by doing so the learning to program portion of the degree were the assignments to the classes. We had loads; your standard welcome to Java course, the second level where we had some of the early Google Nexus phones and experimented with building little apps [0], then a whole class on development methodologies which had a lab/group project portion where we were adding to a little digital health document system that was actually passed from class to class taking the best version(s) from each semester and adding to it on the next, and at the end a Senior capstone project. Each semester generally had at least one largely practical class. > It is as if you expected architects (the house-designing kind) to bu…

Full original
Continue on Hacker News

Respect different perspectives. Share concrete experiences.

Sign in to post, reply, repost, and quote.