Debuggers

debug.jpg

Knowing how to use a debugger is an essential skill that any programmer should have. Yet, I see many final year students and future “programmers” still not knowing how to use one whether in C++, Java, … and I pity these poor souls who have no choice but to use only print statements in their code to try to locate bugs.

Print statements is a good debugging technique and it works (and sometimes, for some bugs this is the only practical way of debugging) but deguggers, with the ability to set break-points, trace over or into functions is a class above and is definitely very very very useful.

Also, the first computer bug was technically a moth and this is an account from Grace Hopper:

"Things were going badly; there was something wrong in one of the circuits of the long glass-enclosed computer," she said. "Finally, someone located the
trouble spot and, using ordinary tweezers, removed the problem, a two-inch moth. From then on, when anything went wrong with a computer, we said it
had bugs in it."

Grace Hopper was one of the first programmers working with big Mark I computers.

bug_1.gif The first bug.

13 responses to “Debuggers

  1. Surely the debugger helps a lot rather than printf.

    “Yet, I see many final year students and future “programmers” still not knowing how to use one whether in C++, Java, …”

    Depends on the programmer🙂

    Am I among those final year students🙂

  2. Never thought about the Etymology of the word…😕

    Would have never guessed that software bugs are so-called because of a true bug… lolz…😆

  3. Hello sir. You’ve got a nice little realm which has impressed me. Well I don’t attend UOM and I landed on your blog through roushdat’s blogroll. Most of the universities use Turbo c or C++ but not visual perhaps because the license fees are not affordable. Regarding C++ I have some questions for you.

    Well ANSI has said that the following code is deprecated:

    [code]
    #include

    int main()
    {
    cout

    using std::cout;
    using std::endl;

    int main()
    {
    cout

  4. Indeed the codes look weird here!

    I think Microsoft has an academic scheme where universities can use thier products (which include Visual C++) for a very low price. However, is C or C++ the right language to introduce students to programming? That’s another debate

  5. That I don’t know. Some unis use C++, a lot use Java, python is starting to gain a foothold and some unis use scheme. So what to use?

    Anyone has any ideas?

  6. Python seems to be great. in fact i have been intoduced to this multi-paradigm programming laguage. seems very fascinating surely when used with the panda3D game engine. perhaps students would prefer this than the blue screen.

  7. Most universities do NOT use Turbo C or C++! These are the past now. I’ve attended university abroad and I’ve used SUN’s UNIX servers, Linux’s very popular GCC (it’s free and up to date with a plethora of functions) as well as Sun Studio’s C/C++ compilers (which is also free).

    As for what comes to be the most suitable language for learning programming: I won’t look towards anything other than C (not the C we have from Turbo C++ as I’ve learned from in UOM) and Scheme (Did you know that many have mastered it just by self-learning?). Ruby also looks fascinating but that’s THE second language anyone needs to know!

  8. Well whether with Visual, Turbo or gcc, on lunux, SUN or PCs, it’s still C/C++ being taught!!!

    C like (my colleague) Avinash says is advanced assembly – so should we stick with C?

    Also I learnt half of the things we do in C at uni before coming to uni (self-learning) so does it mean that it’s inappropriate for teaching?

    Don’t get me wrong C++ is my favourite language but is it really suitable for introducing students to programming and especially problem solving, I’m starting to have some doubts…

  9. Well sorry for looking back here after a long time! I have applied in view of joining UOM this year. Don’t know what’s written in my f8. Perhaps you’ll be my lecturer and I hope pa pou trouve zetwal with weird code. lol! Well I hope u didnt mind about the joke above!

    C is a must for every programmers! It is widely used in micro programming stream and also in the development of embedded systems, unix programs and POSIX Operating sytems if I’m not wrong!

    10 Reasons why a every programmer should learn C:

    http://www.jubling.com/ten-reasons-why-every-programmer-should-learn-c.html

    C++ is a good start for Object Oriented Programming. Yet many students advance that it’s difficult and weird!

    Well u didnt reply, would you accept the code which I mailed u?

    With Best Regards,
    Yasir

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s