Earlier quoted context omitted.
If Q&A is QA then it should be considered development, in a specialized domain.
except you just click things on a GUI there.
Why Don't Schools Teach Debugging?
91–100 of 132 posts
Re: Why Don't Schools Teach Debugging?
#92Earlier quoted context omitted.
Print statements for debugging is not necessarily a bad thing: http://www.scott-a-s.com/traces-vs-snapshots/
Agreed! In the same vein, I recently wrote about both debugging vs logging [1] and about session-based logging [2]. [1] http://henrikwarne.com/2014/01/01/finding-bugs-debugger-vers... [2] http://henrikwarne.com/2014/01/21/session-based-logging/
Re: Why Don't Schools Teach Debugging?
#93I’m no great teacher, but I was able to get all but one of the office hour regulars up to speed over the course of the semester. The first part of the sentence is in direct contradiction to the second part. If you did that, it means you had patience, were willing to explain, re-explain, and find alternative ways to explain. And you cared .
As someone who had his share of poor TAs and was a TA, caring is what sets apart the good teachers from the poor ones. Taking the time to sit and figure out the fundamental misunderstanding and then a good way around it is essential. It may look obvious to you, but the other person is obviously lost. The only way to solve that isn't by special power or teaching acumen, but taking time to figure out the core problem.
Aptly, it often involves debugging the person! Figure out where the chain of thought broke down!
Re: Why Don't Schools Teach Debugging?
#94Because it isn't fun or exciting.
Yeah, I'm a little... different.
Re: Why Don't Schools Teach Debugging?
#95I did an electrical engineering course. Especially with hardware ("welcome to tweak week"), there was a real sink or swim approach. I ended up feeling like it had to do with testability. It's easy to grade a test if you just look for right answers, and mark everything else off. It's easy to grade labs if you just look for the circuit tracking the input frequency. Grading either based on some assessment of how well th…
The professor I had for Networks and Linear Systems had an interesting approach to that. He developed every test problem such that the input values were small, whole numbers. If you did the problem right, your answers would also be small whole numbers. If you went off into the weeds, you would get really weird answers. That was both a hint to the student that they were barking up the wrong tree and a guide as to where the solution broke down.
Re: Why Don't Schools Teach Debugging?
#96The author mentions the answer in the first paragraph: ECE 352 was the weedout class that would be responsible for much of the damage. Weed out courses are common in undergraduate education. In some disciplines the logic is plausible because the resources available for upper division undergraduates are limited and vast numbers of Freshmen choose the track. The first year biology sequence is a good example. The proble…
> The problem is that weed out classes substitute the easier task of deciding who is prepared for the harder task of preparing students. I don't think this is the intent, at least in some disciplines. For example, I minored in math and went through the weedout class. It wasn't intentionally difficult (for some it wasn't even difficult). It weeded people out because it was the first class where you actually learn what…
Re: Why Don't Schools Teach Debugging?
#97Earlier quoted context omitted.
That's a common thing I didn't understand about my fellow CS majors. Many of them did not want to become developers and even took pride in the fact that they made it until the final exams without ever having to hand in a single programming assignment they did themselves. Yes, these people have amazing careers in management and consulting ahead. Is this good for the industry? I doubt it. For me, the purpose of a CS co…
Funny, I always thought it the other way around. I struggle whenever I try to teach myself any formal/theoretical stuff because without the aid of a teacher checking my work I'm never sure if I really understand or not. I never had a problem learning programming languages on my own by following examples though.
Re: Why Don't Schools Teach Debugging?
#98The short answer is because they're supposed to figure it out themselves. I've been on the teaching staff of CIS 120 and CIS 121 at Penn for five semesters now (the second and third classes in the intro computer science series). Both have units on debugging, both in Eclipse and independently of an IDE. We teach students proper testing fundamentals, how to use the debugger, and how bottom-up design can make debugging…
Re: Why Don't Schools Teach Debugging?
#99I never knew this was a problem in EE, but I know for a fact it's a huge issue in CS. They don't want to teach any "tools" b/c CS professors find teaching people how to be good developers as beneath them. They honest to god think CS is an actually hard science on par with math and physics. You can sum up their attitude with: "It's not an associates degree goddamnit!" (even though it should be) Another source of reluc…
Plenty of people still use ant. It's the path of least resistance where I work since we have a lot of tooling and preexisting code that use it.
Re: Why Don't Schools Teach Debugging?
#100Earlier quoted context omitted.
CS prof. here. We don't want to teach "tools" (e.g. IDE) because they are always changing. There is no point is knowing how to set up an IDE when the IDE will have a different GUI before the student graduates. We teach"unix tools" a bit more because they did not change much during the last decades. My goal is to teach "concepts" (which is hard) and use tools as examples of these concepts. Dealing with the specifics o…
We aren't asking for vocational training, but for teachers that teach how to think, how to design, how to run experiments, and so on. So many schools (even the 'top' ones) turn out people that cannot do this, and I find it appalling. These things are foundational, they are not vocational. Unfortunately that does in fact meaning having to learn some tools which will become obsolete. So what? I did EE labs, and while r…