Does Your Debugger Sing to You? 242
ZahrGnosis writes "TRN Mag Online is carrying an article titled Programming tool makes bugs sing. '[The researchers] set up software that mapped pitch and melodic contour information to structural elements in the programming language Pascal. "[We] aimed to see if information about the structure of Pascal programs could be communicated using such musical phrases".' They even found a practical application for software debugging."
listening experience (Score:1)
Re:listening experience (Score:1)
Actually ... (Score:4, Funny)
With Palladium, I suspect that there will be more variety. Normally, it will still be "Money" at about 120db, but if you click on an mp3, you'll hear the "Dragnet" theme and sounds of wailing police sirens followed by the Monty Python ditty "There's Nothing Quite as Wonderful as Money".
Now (Score:4, Funny)
Re:Now (Score:2)
Re:Now (Score:2)
Homer: "Not fast enough!"
If debuggers could sing.... (Score:4, Funny)
Somebody wrote it - THATS YOU!
Re:If debuggers could sing.... (Score:2)
"Insects" by Oingo Boingo. Or the other song by the same name by the Kids of Widney High.
Re:If debuggers could sing.... (Score:2, Funny)
Or "If I Had a Hammer' by Leonard Nimoy.
Either it'll make you try and code better, or actually want to put a hammer to the speakers and/or computer.
Stink-A-Tron (Score:4, Funny)
That's it! Associate *smells* with bugs.
Stack_overflow_error ==> Dirty_Socks_Smell
That will encourage programmers be more careful. Then again, single programmers are probably use to all those smells anyhow.
Nevermind.
Re:If debuggers could sing.... (Score:2)
Dum, Dum, Da-Dum (Score:1)
Re:Dum, Dum, Da-Dum (Score:5, Funny)
You think that's bad? The .NET code samples play The Imperial March.
hmmm (Score:4, Funny)
namely:
"Another one bytes the dust. Another one bytes the dust. And another and and another bug bytes the dust."
For those of you who need the background music, think Queen, or uh, I guess Weird Al Yankovic
Re:hmmm (Score:2)
You've got a syntax error in your lyrics.
Lets Hope.... (Score:1)
Re:Lets Hope.... (Score:1)
I tried this... (Score:1)
In the perfect world... (Score:3, Funny)
PDHoss
Windows Joke (Score:2, Funny)
KDE Joke (Score:1)
I'm relieved (Score:5, Funny)
It's good to know that software debugging has a practical application.
I can hear mine now (Score:3, Funny)
Ninety-nine off-by-one bugs,
Take one down,
Fix it up,
One hundred off-by-one bugs in the code!
-Joe
the first version of this I ever heard (Score:2)
ninety-nine little bugs in the code,
ninety-nine little bu-u-u-gs,
fix a bug,
compile again,
one hundred and one little bugs in the code!
The next verse went from 101 to 105, then from 105 to 113, then from 113 to 129, and so forth, adding a new power of two on each loop.
Dancing? (Score:5, Funny)
Gnu Debugger, the real Dance Dance Revolution?
Haha, only parlty serious. Just as we need new ways to "view" information, it could also be helpful to be able to respond in a way that goes beyond the keyboard and mouse.
WARNING (Score:1)
Re:Dancing? (Score:2)
Kinda a cross between DDR, Whack-a-mole, and coding.
Somehow I don't see this being popular
Re:Dancing? (Score:2, Funny)
Re:Dancing? (Score:2)
So that's what this guy [watchmedance.com] is doing....
Re:Dancing? (Score:2)
But I hear they're working on DDDRM, which kills your program unless you only look at the data that the arrows say you can...
Ports (Score:2)
Better application than music. (Score:1)
beep beep beep beep beeeeeeeeeee.....
Of course... (Score:1)
Re:Of course... (Score:1, Troll)
1) Idiot who posts so fast he mis-spells "luck" as "lug".
2) Fool who should learn to use the Preview button.
different variations based on language (Score:1)
C/C++ == classical sounding music
perl == heavy metal
php == rap
vb == boy band
and so on..
Re: (Score:2)
Re:different variations based on language (Score:2)
To me, I think PHP would sound somewhat like System of a Down. C is more like Stratovarius, and C++ should sound more like Mercyful Fate.
Perl? uuuh... Within Temptation? Python... hmmm... Definately something like After Forever..
Right, I guess you kinda gather from that that I like heavy rock with some pretty symphonic tendencies. It would be pretty cool if you could tune your debugger to a certain style of music.
I somehow also think my code would sound line Tristania, or sometimes (depends on my inebriatedness) Bal Sagoth... But that's just me :)
Re:different variations based on language (Score:1)
Re:different variations based on language (Score:1)
(I use Perl every day and I love it, but it's ugly)
Going further... (Score:2, Flamebait)
Python == British novelty songs
LISP == modernist symphony
BASIC == music from a casio keyboard bought for $5 at a garage sale
my code... (Score:2)
Infinite loop... (Score:1)
AAARGGHH... MAKE IT STOP!!!!
So Does that mean..... (Score:2, Funny)
Re:So Does that mean..... (Score:1)
Good idea, but a better place would be.... (Score:4, Funny)
You could even have a nice menu:
Select your musical preference:
1) Death-metal guitars
2) Funeral dirge
3) Cat-in-heat-at-12:00-am
Ohhh, the possibilities....
It would be better than the anguished "NOOOOOO!" frequently heard around the office.
No, but I know a song about a debugger! (Score:5, Interesting)
The UPS Debugger Song: "Just One More Hack (and then I'll put it on the 'net) [mp3.com]
(Ah, thank you Google, for the historical reference to first puclication!) UPS - The Song!" [google.com]
Boot It! (Score:3, Funny)
This came out years ago, I found a printout of it a couple of days back while going through some papers. Picture Weird Al Yankovich singing this to Michael Jackson's "Beat It" (this isn't a Weird Al though, he did "Eat It"):
Boot It
You're processing some words when your keyboard goes dead,
Ten pages in the buffer, should have gone to bed,
The system just crashed, but don't lose your head,
Just BOOT IT, just BOOT IT.
Better think fast, better do what you can,
Read the manual or call your system man,
Don't want to fall behind in the race with Japan,
So BOOT IT,
Get the sys admin to
BOOT IT, BOOT IT,
Even though you'd rather shoot it.
Don't be upset, it's only some glitch.
All that you do is flip a little switch.
BOOT IT, BOOT IT,
Get right down and restitute it.
Don't get excited, all is not lost.
CP/M, UNIX or MS-DOS
Just BOOT IT, boot it, boot it, boot it...
You gotta have your printout for the meeting at two,
The system says your jobs at the head of the queue,
Right then the thing dies but you know what to do,
BOOT IT.
You always get so worried when the system runs slow,
And when it finally crashes, man you feel so low,
But computers make mistakes (they're only human you know)
So BOOT IT,
Call the local guru to
BOOT IT, BOOT IT,
Go ahead re-institute it.
If you're not lucky, get the book off the shelf,
But if you are, it'll do itself.
BOOT IT, BOOT IT,
Then go find the guy who screwed it! Operating systems are built to bounce back,
Whether it's a Cray or a Radio Shack.
BOOT IT, BOOT IT,
Sorry I don't know who deserves the attributes for that.
Re:Boot It! (Score:2)
Judging by this line:
Ummmmm.... (Score:2)
Re:Ummmmm.... (Score:1)
Probably get sued by Metallica for copyright infringement.
Sure. (Score:5, Funny)
But wait..... I've said to much.
Sound is a great debug tool! (Score:5, Interesting)
"Oh, the program went Boink-Ding and Bloop, but not Clunk... that must mean that palette creation failed!"
Re:Sound is a great debug tool! (Score:2)
-l
coming up on kazaa... (Score:1)
Re:coming up on kazaa... (Score:1)
I'm not saying Win98 was great, but I've had it installed on machines and had it never crash. And I've never had it trash the file system on me like I've had happen to me twice with Linux 2.4.x.
Re:coming up on kazaa... (Score:2)
You know... (Score:3, Funny)
I managed... (Score:2)
It can't be bad (Score:3, Funny)
Re:It can't be bad (Score:2)
Re:It can't be bad (Score:3, Funny)
That something wasn't right?
Oh baby baby, I hacked on that blasted code...
Till the morning's early light!
Tell me, how to fix it, soothe me,
Tell me, baby, cuz I need to know now, oh because,
This bloody LISP, is killing me ---
Though I test-regress, it still goes bleep!
(Still goes bleep!)
If it's the closures, I'll lose my mind,
And rewrite the damned thing one more time!
(Repeat until 3 minutes and 50 seconds is achieved.)
gdb blues (Score:2)
Re: (Score:2)
The Past Revisited (Score:2, Interesting)
I don't have a reference to it, but I thought that Admiral Grace Hopper and her crowd had done something just like this generations ago simply by hooking up the accumulator of a Univac to a D/A converter, which in those days resulted in audible frequencies! A quick search on Google found something similar was done on a CDC 3300 (search for CDC 3300 in this page [chac.org]).
Cheers,Richard
Step into the wayback machine... (Score:2)
Interesting. Back when I first got into computing I used a BBC Micro [gondolin.org.uk]. This was a primitive machine by today's standards, with no fan (the 2MHz 6502 CPU didn't get hot), no disk drive of any sort, basically nothing to make any noise except the CPU. In a quiet room you could hear the processor humming. It would change pitch as a program ran - you could tell when you hit an infinite loop because the pitch would change to a continuous whine. It was actually useful - and used - for debugging. Fun days,
I can see it now... (Score:4, Funny)
"Whoever wrote the code that produced these tunes, we want to find them and bring them to justice." said Hillary Rosen, of the RIAA. "Neither Microsoft, nor the developer in question, has paid royalties to the artists whose songs they have violated. Renegade debuggers must be stopped, for they pose the greatest threat to the artists' intellectual property we've ever seen!"
<sigh> Fact is often stranger than fiction
Re:I can see it now... (Score:2)
gdb on the other hand.... well I'll sure miss it.
--
Garett
Close Encounters (Score:2, Insightful)
This is nothing new (Score:2)
Bill Joy Enjoys Listening to... (Score:3, Funny)
Okay, who's going to build this into emacs? (Score:2)
Now I think gnu emacs supports sound, so who knows elisp and is curious enough to set this kind of thing up?
Multi-format input is Good (Score:4, Interesting)
Particularly in applications where you're trying to track status over time, having some background that varies with changes can be very helpful (I seem to recall the game Populous using this to good effect to help you get a quick idea of how you were doing overall). In the context of a debugger, having clashing noises that become more melodious as the program gets closer to completion and perhaps also asit comes closer to defined standards seems to bea good motivator.
Just my
What would this look like in reverse? (Score:3, Funny)
Re:What would this look like in reverse? (Score:2)
If only Dijkstra were still around... (Score:2)
Singing back (Score:3, Funny)
---
Hello bluescreen my old friend,
You are my program's bitter end.
All my random poke and peeking,
Didn't stop the memory leaking.
And the Interrupt, I set so long a go,
did never throw...
My only option... is viloence.
Slam the mouse in to the desk.
Pound the keys and beat my chest.
Do what I say not what I mean,
Open the window, thow out this machine.
And as it falls, and crashes on the street
Debugging complete
my only option... was violence.
why do you think... (Score:2)
Yep (Score:2)
The worms crawl out.
The bugs play pinochle
On my shout."
R2D2 (Score:2)
R2D2's voice may be due such a bug-to-tone translator. That is probably how my code would sound under the Bug-A-Phone.
Better fix that bot.
Barbara Striesand sings geek (Score:2)
Things slow in England I see (Score:2)
Techie unemployement pressue seems to be doing to computer scientists what cyclitron shut-downs did to those "Higgs Boson discoverers".
ObAmIdol (Score:2)
Back in the Old Days... (Score:2, Interesting)
Well the first computer I ever had free reign of was one of those Commodore Pet computers with the little tiny calculator keyboard. Little memory, little keyboard, no disk, and I still managed to learn a little assembler to pep up my BASIC programs.
When I came out to the Silicon Valley to go to college in 1978, I left the PET behind, but still checked out the computer shops when I had free time (anybody remember The Byte Shop in Palo Alto? Computerland in Los Altos?). One of the things that I found pretty entertaining at a Commodore shop was a guy that was debugging by putting a little AM radio next to the computer. If you tuned to the right frequency (and I'm embarassed that I don't remember it), you'd hear the sound of your code executing as static. If you had the right loop coded, you would hear a burst of static when it executed, and this guy would drop in the little flag routine as a debugging aid. By putting in a marker like that in the different long-running repetious sections,you could actually tell where your code was running, or if you were stuck in an infinite loop.
Kind of cool back then, although I have to admit that I don't remember writing anything that ever took 2 minutes to execute. Well, intentionally anyway...
David Fung
Re:Back in the Old Days... (Score:2)
Open Source and this app (Score:2)
The resulting melody was "Please, release me... let me go...."
What if- (Score:2, Funny)
Microsoft AudioComposer (Score:2)
Everything old is new again (Score:5, Interesting)
There were also programs designed just to place music on the radio with their EMI.
Re:Everything old is new again (Score:2)
Well that is not a dead practice. A few years ago I discovered that my TI calculator disrupted my FM radio, specially when I was plotting graphs or time-consuming fractals. The ENTER key produced short interference sounds as well. All this is somewhere in the 90Mhz bands. Funny because the fastest a TI processor goes is like 10Mhz, yet some interference always manages to defy logic, to us non-engineer ppl.
CPUs used to have this same interference effect when the interference equivalent of "overtones" came out of my Pentium 1's and Pentium 2's to keep me from listening to decent homework-side music. Insightful
Re:Everything old is new again (Score:2)
It was easy to see loops, interrupts and other program patterns and most importantly, deviations from these patterns.
I've heard it all before... (Score:2)
This is not as strange as it sounds. (pun intended) I've seen precursors to this, and have actually experienced something similar about 25 years ago.
I see this research as an interesting step that continues along that path.
As for me, I'm much more a visual person than auditory. I'd find it much more valuable if I could "see" my program execute. Once in a while, I've messed things up with my postscript printer and the listing came out at what appeared to be 1 point sized text; at 300 DPI, that worked out to being about 5 dots high. At times it was almost possible to make out the words, but realiistically, it was too small to be legible. But it WAS sufficient to show the structure of the program, especially since I consistently use indentation. If different colors were used to denote different structural items (conditional, loop, assignment, key words, etc.) AND there was an indicator that would highlight each statement as it was executed, then I'd be able to see the actual flow of the program. I could tell what functions and subroutines were executed most often. Hmmm, this seems like such an obvious idea... does anyone know if such a tool already exists?
On another note, It would be interesting to combine visual profiling of a program with a touch screen -- I could use different gestures to debug my program! Double-tap to zoom in/out on text; single tap to set a breakpoint on entrance/exit of a subroutine, etc.
NO! (Score:2)
And to whoever mentioned dancing, I've seen Richard Stallman dance too. Thanks for the image. Really.
On Big Iron (Score:2)
You'd better hope your debugger doesn't start singing this ditty [netins.net].
Hey, I did this 10 years ago!!! (Score:2)
Re:If you play "Stairway to Heaven" backwards.. (Score:1)
Re:If you play "Stairway to Heaven" backwards.. (Score:1)
Re:dumbest thing all day (Score:2)
Well, the cycles we're all burning today to come up with clever examples is pretty close! ;)
PDHoss
Re:dumbest thing all day (Score:3, Funny)
And now introducing:
TASTE-BASED DEBUGGING!
You'll never miss another semi-colon after one spoiled milk dose!
Infinite loops will fade into myths after the first few developers get a taste of dead-fish-left-in-the-sun-for-a-week.
And for those minor offenses such as not commenting code and choosing horrible names? A few times through with the Taste'O'Soap and you'll be cured for life!
This project brought to you by the Federal Government. Always looking for more ways to make your life unpleasant.
Re:Microsoft must sound like a rock concert! (Score:2)
Duh Duh Duh Doooooooo
Duh Duh Duh Doooooooo
Re:Douglas Adams was right! (Score:2)