When I was a boy, I learned BASIC on the Apple II+. It was a joy, because I could turn on the computer and instantly find myself in a programming environment that was easy to learn and fun. Granted, I had to plot sprites on graphing paper and then convert them to hex digits. Still images were created much like an etch-a-sketch, but using cursor movement keys instead of dials.
Later, I purchased an Amiga and was full of excitement and joy when I learned how to use AMOS BASIC. It was more powerful than Apple BASIC, and I could use a mouse and graphics utilities such as Digi Paint to create bitmaps for sprites.
In recent years there have been few programming experiences that rival those early days. Ruby on Rails was a joy to discover after Perl and PHP. But as it evolves, I find keeping up with new features and best practices tiresome.
Yesterday I downloaded the Android SDK and followed the "hello world" tutorial. After completing it I had almost no desire to continue developing on that platform. The emulator took several minutes to load and many of the instructions on the developer site were confusing or plain wrong.
Are there any modern programming environments that are simple, fun, and a joy to use? It seems strange to me that as computer hardware has grown increasingly powerful and software tools more sophisticated, making programs that take advantage of these advances has not become easier or more enjoyable. On the contrary, programming seems to become more frustrating as it advances, like always trying to keep up with a frantically moving target. Am I missing something that can bring back my early joy or discovery, or am I just being nostalgic?
I'm also trying Pygame and Pyglet and for a hobbyist game programmer it's very enjoyable not having to deal with C/C++ memory management crap.
PS: I think most programmer still have a fondness for their first coding environment because when your young everything is awesome, especially computers :) I have good memories of writing an adventure game using QBasic.