
Why Don't Schools Teach Debugging? (2014) - signa11
http://danluu.com/teach-debugging/
======
orionblastar
This is an easy one to answer.

Teachers/Professors don't know how to debug programs only how to teach
beginning programming.

You won't find a class on debugging. Books are not written on debugging only
on learning how to code.

I worked for a community college as a student worker, and I worked in a
computer lab and debugged the student's programs. I learned as many languages
as I could. The teachers/professors could not debug the programs so they gave
them to me to debug for them.

If you take a MOOC or go to a Programming Bootcamp they don't teach you how to
debug. They teach you how to code.

Debugging is part of a quality control process that isn't taught but should be
taught. In a business management only cares about how much time it takes to
finish a project and doesn't care if the code is buggy. It used to be an issue
of writing bug free code when computers were slower and has less memory but
since RAM is cheap and computers are faster now bugs that usually slowed down
programs don't matter anymore.

I was known for my debugging skills, could alter algorithms so they ran
faster, could fix memory leaks so programs uses less RAM, would set up buffers
to speed up database access etc. But it took extra time to do those sort of
things. Management kept cutting the deadlines for completing projects where it
wasn't possible to debug code anymore. Fix it later, ship buggy code and let
the users reboot their PCs when they have a problem.

You find so many programmers these days that don't know how to debug the code,
because they were never taught how. So it is full of security holes, runs
slow, has memory leaks, slow database connections, but it is good enough in
that it compiles without errors and can be shipped.

I became a dinosaur around 2003, nobody wanted to hire a debugger anymore.
Sloppy code was in, managed code was out.

------
nevdka
Survivorship bias might be an issue here. The professors went through their
education and careers without anyone teaching them how to debug, and they
survived. All their colleagues went through the same process, and survived.
Maybe they can debug their own work and the work of undergraduates, but they
were never taught the process, they just picked it up by osmosis.

The article says the professors used the phrase "some students just can’t hack
it in engineering" which suggests they see some aspects of engineering as
things that can't be acquired, intrinsic abilities of those who _can_ hack it
in engineering. If they see debugging (or some related skill) as one of these
aspects, then they wouldn't see any benefit from teaching them.

