Here's one of the things that makes Smalltalk more productive that the mainstream systems - the ease of exploratory development. Sure, Eclipse has workspaces, and similar things exist in other tools - but it's a pale reflection of what you can do in Smalltalk. Remember this post from awhile back, where I talked about categorized searches in BottomFeeder? Well, here's the workspace I mucked around with in the running application:
You can click the image for a bigger view. I developed that code mostly in the running application, not in my development image. Why is that relevant? Because I was interested in that kind of answer, so I started scripting it - and once I had something that looked reasonable, I went back to the development environment - witness the code in a browser:
Concept to completion - pretty quick, since the code was virtually the same (there was refactoring in order to slot it into the update loop process and the framework). That's not the big thing though - the big thing is that the idea came to me while browsing through my feed data, and I was able to act on it in the runtime with the actual feed data. I didn't have to import the feed data into the development environment first - I was able to just noodle around in the runtime.
That's something that you can't really do with applications built on top of the mainstream technologies - .NET and Java. They aren't set up for it. With Smalltalk, it's just a byproduct of working in the system.