PDA

View Full Version : Two Key Beginner Concepts


miguelito928
04-14-2008, 05:43 PM
I was talking with a colleague about what we thought were two of the most under-taught skills necessary to be a successful programmer. We were wondering if Alice included these concepts.

The two vital skills we hope to see in Alice are Debugging and Utilization of API Documentation.

Are these already included somehow in Alice? If not, what are your thoughts about their effectiveness if they were included?

DickBaldwin
04-14-2008, 06:27 PM
I was talking with a colleague about what we thought were two of the most under-taught skills necessary to be a successful programmer. We were wondering if Alice included these concepts.

The two vital skills we hope to see in Alice are Debugging and Utilization of API Documentation.

Are these already included somehow in Alice? If not, what are your thoughts about their effectiveness if they were included?

There is no debugger of any significance in Alice 2.0, and since most error messages are presented in a Java context, they mean little or nothing to most intro programming students. However, I'm not sure I agree that the use of a debugger is particularly useful in an intro programming course (but it certainly wouldn't hurt to have one). Because Alice 2.0 has no place in a programming curriculum beyond the intro programming course, I don't consider the lack of a debugger to be a serious weakness of Alice 2.0.

API documentation, or any other official documentation for that matter, is totally non-existant. In my opinion, this is the greatest failing of Alice 2.0. Let's hope that Alice 3.0 doesn't suffer from the same failing.

Dick Baldwin
Free Alice tutorials: http://www.dickbaldwin.com/tocalice.htm
Free programming tutorials: http://www.dickbaldwin.com/toc.htm

miguelito928
04-14-2008, 08:50 PM
There is no debugger of any significance in Alice 2.0, and since most error messages are presented in a Java context, they mean little or nothing to most intro programming students. However, I'm not sure I agree that the use of a debugger is particularly useful in an intro programming course (but it certainly wouldn't hurt to have one). Because Alice 2.0 has no place in a programming curriculum beyond the intro programming course, I don't consider the lack of a debugger to be a serious weakness of Alice 2.0.
I agree with you that debugging errors (or Exceptions, for that matter) is probably unnecessary, as I can imagine much of that is abstracted away from the user so as not to be able to even make many of those mistakes.

However, there must still be things that go wrong in the fundamental logic that the user put in that might be easy to overlook. Plus, even if things are going right, I would think it would be a helpful exercise to validate your logic by stepping through the code in a way where you can see the many values and states at each step.

lanceA
04-14-2008, 09:06 PM
I agree with you that debugging errors (or Exceptions, for that matter) is probably unnecessary, as I can imagine much of that is abstracted away from the user so as not to be able to even make many of those mistakes.

However, there must still be things that go wrong in the fundamental logic that the user put in that might be easy to overlook. Plus, even if things are going right, I would think it would be a helpful exercise to validate your logic by stepping through the code in a way where you can see the many values and states at each step.

This is not much help, but for now Alice has the print statement. It is awkward to use, etc. but it can report on the state of objects

miguelito928
04-14-2008, 11:23 PM
This is not much help, but for now Alice has the print statement. It is awkward to use, etc. but it can report on the state of objects
This is true, it isn't much help. :D

However, printf is a great skill to have, when all else fails.

Well, anyway, the point of my post is that I think it would make a great addition to the skill set being taught here. To me, these are two invaluable skills for any developer to gain at the very beginning.

Perhaps the focus of the project is more teaching object-oriented programming concepts and also just getting people interested. But if the focus is also to provide a foundation on which to build on, I think these two aspects should be included.

DrJim
04-15-2008, 12:38 PM
Pardon my pessimism, but "higher education" just isn't what it used to be.


I have to agree. When I was in grade school, I already knew everything there was to know about every commercial programming language there was. :)

Then when I was in high school, somebody developed FORTRAN and COBOL and the completeness of my computer education has gone down hill ever since. :mad: