The feature that has impressed me the most is not one that I thought it would be. The ability to take videos is huge, and I didn't really realize how huge until I had a 3Gs in my pocket. The quality of the video is pretty darn decent, and the tap-to-focus works really well. It also adjusts the light-metering based on where you tap, so if you tap to focus on something closer to the camera, for example, it will adjust the light so that the object you focus on can be seen better.
Man, I wish I had this twelve years ago. As a parent, the ability to take short video clips is really great. Pictures are great, but being able to remember what your kids sounded like and seeing their mannerisms is great. You forget things, even things you wouldn't think you'd forget. Having short reminders in the form of videos is great.
We bought a camcorder when my oldest, now twelve, was born, and were diligent about taking video when she was young. As she got older, and the other kids were born, and life got busier, we got less and less good about taking video because it was a hassle. After a few years, we stopped taking video almost altogether, except on vacation sometimes. The camera was big and bulky and importing the video into the computer was a painful, multi-step process. Now, my phone doubles as a video camera, so it's always with me, and importing the video is as easy as plugging it into my computer and pressing a single button.
This weekend, I took several movies and pictures of my boys as we were out and about, and was able to immediately send them to my wife and daughters who are out of town, as well as to my parents who live in Florida. It's pretty amazing how quickly the iPhone 3Gs compresses and sends movies to YouTube over the 3G connection. The quality of the video does suffer a bit, however, when you send it to YouTube. There is a noticeable degradation when you compare the YouTube video to the original pulled from the phone through iPhoto. I couldn't seem to find any way to tell it to use less compression, which I'm guessing is done on purpose to preserve bandwidth. It would be nice to have the option to use less compression, at least when sending over wi-fi.
The ability to zoom and a little higher resolution for still images would be great, but I'm being pretty demanding there. Cell phones have had video for a while, but none have had video like this. I think the video camera will be my most-used feature of this phone, since it will let me share, almost immediately, what's going on with relatives who live far away.
The speed increase is noticeable for me. I upgraded from a first-generation Edge-based iPhone to a 3G phone, which is quite a nice improvement in connection speed. Coverage is quite good around here (it wasn't a year ago), and I'm very happy with the speeds I'm seeing. Even watching YouTube videos is quite tolerable over 3G and Mobile Safari seems lightning fast other than the short latency delay at the start. I'm sure I'll be jaded and wanting more speed in a few months, but for now, I'm really happy with the internet speed I get on this phone.
I haven't pulled down any games that really utilize the capabilities of the new graphics chip and additional memory, nor have I done any OpenGL ES 2.0 work on my own yet, so my impressions of that will have to wait for another day, but I'm sure it's going to floor me. Everything on this phone is snappy, and the demos we saw at WWDC of what can be done with OpenGL ES 2.0 are pretty phenomenal.
Voice control seems to work well. It's not a feature I really care about much, but I've tried about a half dozen commands and they were all interpreted correctly the first time. The last phone I had with voice control was much dodgier in that respect, so if voice control is something that matters to you, I think you'll like the 3Gs.
The Oleoresistant screen, which is supposed to resist fingerprints and smudges, works pretty well also. it's not perfect - it is possible to smudge the screen, especially if your fingers are really dirty. I found out first hand that having wet clay on your fingers, for example, will smudge the screen. But under ordinary use, you should see very few fingerprints, and the screen cleans easily on your shirt or other soft cloth.
Walking directions with the magnetometer are great, and that's quite a boon in a strange city. I can't tell you how many times I've been somewhere traveling and had to walk a block (or two) in order to get my orientation. Knowing which way you're heading is a really great feature and it's implemented almost flawlessly.
I would love to tell you all about MMS and tethering, but um... y'know... AT&T. sigh.
In fact, AT&T is almost my only complaint about this phone. My other complaint is one that I know is simply a limitation of current technology, but the battery life on this thing isn't as good as my first generation iPhone. I know that the 3G radio sucks additional power and all that, but it's still frustrating. Especially when I'm traveling, I use my phone a lot. I use it to check e-mail, and tweet, make calls, and to pass the time on long flights playing games, watching movies, and listening to music. Standby time and music-listening time seem to be at least as good as my old phone, but if I'm actively using the phone with the screen on and with 3G service, the battery goes frustratingly fast. An external battery pack is probably a good investment if you go long periods away from your computer or power outlet.
I saw this morning on TUAW that Apple sold a million iPhone 3Gs's over the weekend. I'm not surprised, as there were still long lines yesterday (Father's day), on the phone's third day of sale. I don't think the sales are going to stop, either. I think it's going to continue to sell very strongly based on strong word-of-mouth. Everyone I've talked to who got one is thrilled with the phone. Granted, many of my friends are, like me, borderline fan-boys, but even taking that into account, it's still an impressive phone.
If you're on the fence, I say go for it if you can afford it. It's a great update that addresses most of my complaints with the original. If you're a developer, especially if you're a game developer or developing anything with a lot of visual impact, I'd say the 3Gs is not only compelling, but necessary. If you want to create cool looking programs, you want to be able to leverage the power of OpenGL ES 2.0 and the new graphics chip and extra memory that the 3Gs provides.