jQuery and Ball World
So in my first computer science course, one of the earliest labs with Stephen Wong was called Ball World. Professor Wong had set up some fill-in-the-blanks java code for us that brought up a basic frame. We wrote code to add some ball sprites and we had to define their velocity and have code to detect collisions and compute new velocities after balls collided with each other or the boundaries. I still remember the first time you get everything fired up and see two balls collide and bounce off each other realistically. Keep in mind this is somewhere pretty earlier in my first semester ever programming. It was pretty powerful and pretty exciting.
Now here I am with ten years or so professional programming experience. I'm teaching myself jQuery and javascript. Well, I guess I should put "teaching" in quotes because I'm basically just doing it since there's no learning required. I've had about twenty different things I wanted to do so far on my practice project, and each of them involves a 3-word google query like "jquery sort drag", a very tiny snippet of code, averaging about 2 or 3 lines, and it working perfectly the first time. It's amazing. I've got all kinds of HTML5 Ajaxy Web 2.0 goodness going and it works great and it's easy. AND there's a graphical debugger and rapid development tools. It's pretty darn sweet.