You live in the US? The land of broken bluetooth, crippled wifi and no ringtones except those bought from the carrier? In that 3rd world country of crippled-by-carrier phones, that is true to some extent.
You been to the US? This only happens on select carriers. FWIW AT&T and/or T-Mobile have the least crippled phones: they're just customized GSM phones like you'll find in the rest of the world.
There are thousands of third-party downloadable applications for PPCs, Smartphones, Palm OS devices, Series 60 devices, etc., etc. Anyone can download an SDK and make their own apps with access to a suite of communication, sound, storage, and animation APIs. Number of third-party downloadable applications for the iPhone that aren't web applications: zero.
Phone apps look like 1992's ass.
Most phone application developers do not consider "look pretty" a huge priority.
Usually the phones are crippled in some way, so that is not true.
What the fuck are you talking about? My Samsung Blackjack runs any application I throw at it. The default WM Smartphone configuration only runs signed programs: to fix this problem you can either add your own certificate (a matter of going to a URL with the certificate and answering Yes to a few promprts) or plugging in the device and running a program that disables all application locks. Pocket PC and Palm OS devices do not have signature requirements that I'm aware of.
The iPhone does not have the ability to run arbitrary programs natively at all. Just web apps.
Can I run a real Web browser? No.
Series 60 phones often ship with Opera. Opera & a port of Mozilla called Minimo is available for Windows Mobile.
The phones you're talking about are pocket calculators with phones in them
Every smartphone I have ever used has used some sort of ARM CPU, recent ones often around 400MHz. Compare this to the 620MHz iPhone ARM CPU (WebKit needs all that power to render HTML...)
The iPhone is an iPod with a phone AND a Web 2.0 browser in it. People really like it.
I'm sure people really like it if they want to use Web 2.0 applications and listen to music. But what if they want to do something that isn't possible with the included software and isn't implementable in the iPhone's JavaScript environment? Last I checked, there were no APIs acessible from JavaScript on the iPhone that allowed access to just about anything. No Bluetooth (so no GPS), no sound, no fancy graphics, no file access -- nothing interesting.
There are other phones that play music and do a better job of surfing the internet for cheaper: often cheap enough that you could still buy an iPod nano if you wanted.
The apps that regular people run are MySpace, YouTube, Flickr, Facebook, eBay, and they want to run the whole app, not just see some snippets of text out of each page with no formatting. So for most users the iPhone is a better application platform than other phones.
Those applications run just as well on other mobile browsers such as Opera Mobile, for those who like to use the full version. Have you not used mobile applications recently? WEP is dead and pages are now written with XHTML. In fact, with stylesheets, the same HTML can be designed for mobile and normal-sized devices.... and even after the iPhone's widely touted support for full-sized webpages, there are lots of people talking about how they can adapt their app to use the iPhone. Hmm....
For those who don't have the luxury of being in an iPhone-friendly wifi environment, not loading advertisements and (relatively) high-res GUI elements and logos can shave a noticeable amount of time off the loading time: on my 3G device, PayPal's mobile site takes 2 seconds to load. The full site takes almost 10 and uses 122k.
Without downloadable app support, you can't download games for your phone -- you're stuck with web apps. A
The problem is that for smartphones & PDA phones -- the phones with native APIs -- those limits do not apply or are easily bypassed by using your own certificate.
To quote myself from an hour ago:
There may be signing requirements that (at least in the case of Windows Mobile) can be bypassed by disabling signature checks on executables or (a much better solution IMO) adding your own certificate to the list of trusted certificates and signing.
Now that I think of it, that limitation only applies for the actual Smartphone (non-touchscreen) devices. There is nothing stopping you from installing your own certificate or disabling the application certificate checking altogether on Windows Mobile Smartphone. For full-blown Windows Mobile PDAs with touchscreens, this is simply not a problem.
Even on carriers that limit functionality to applications without proper certification, the APIs still exist for those phones and you can do some things. (sorry Verizon users!) But for smartphones/PDA phones, that is nothing to be concerned about/nothing that can't be easily satisfied.
Last I checked, Palm OS, Windows Mobile, and Symbian all have native APIs with SDKs you can download along with thriving third-party software support. No cracking required! You can run real applications that work without an internet connection and write your applications in languages other than JavaScript.
There may be signing requirements that (at least in the case of Windows Mobile) can be bypassed by disabling signature checks on executables or (a much better solution IMO) adding your own certificate to the list of trusted certificates and signing.
And standard "dumb" phones in the GSM world along with Blackberries have Java 2 ME, which has SDKs you can download to write applications that are downloaded to and run on the device... they can often interface things like sound, Bluetooth, etc., making GPS applications possible.
No hacking required! No funky way to get a serial connection required! Just at least one way to get applications on the phone (which includes over-the-air via the Internet and USB -- sometimes even Bluetooth).
The process has been very similar on every phone I have used, both GSM (Sony Ericsson/Nokia S60/Nokia S40/Motorola/Samsung/Windows Mobile), PBX (Lucent), and even VoIP (Sipura, various smartphones)... make or answer the first call, put the first call on hold/dial the next call directly from the phone book/answer the next call, and choose the menu option or button "Conference" or "Join"... It's the same as three-way calling, but just with more calls.
I can't speak for AT&T's documentation, but T-Mobile's website seems to have directions for conferencing for all of their phones.
AT&T 3G HSDPA exists in enough of the US's large markets that Apple could have reasonably put 3G in the iPhone; to those that aren't covered by AT&T 3G yet, it's not really a big deal. But for those of us that *have* HSDPA in our market, it's an insult that such a data-centric device would be sold without 3G.
Most of the major markets without any trace of 3G apparently are due to lack of available spectrum. Some have not yet been launched or have not yet been launched on paper (the network is up and working but not yet mapped/announced). AT&T has secured additional licenses for at least some of these markets.
It appears that I spend most of my time between two MSAs, one of which is on the bottom 25 of the top 100 and the other which isn't even in the top 100... and my phone has not left a Cingular 3G coverage area since I got it in November...
Verizon and Sprint EVDO would require a separate network interface because CDMA 1x/EVDO networks are significantly different than GSM-based networks, including WCDMA/HSDPA as used by AT&T and nearly every other country. Even if Apple did use HSDPA/GSM hybrid chips and happened to use North American and rest of the world chips only for 3G, the software to control the chips would be the same and the chips would most likely be a drop-in replacement (with perhaps some antenna changes). If they used CDMA/EVDO for North America and GSM/WCDMA for the rest of the world, that advantage would disappear.
- You can hold a conference call with up to five people.
FWIW this is common with nearly all GSM phones with decent switches. The first GSM phone I had (still when they made phones with black and white screens) supported 6-way calls. I do recall that not all networks supported conference calling with more than 2 participants (e.g. could only three-way); the Cingular GSM network in North Carolina was one of them (originally deployed as BellSouth GSM, and of course is now AT&T). I roamed on that network in 2003 and could not make calls with >3 parties, but iirc in 2004, I could.
This feature might actually be an ISDN feature. It seems that digital (non-VoIP) or mixed analog voice/digital signalling phone networks also often support 6-way conferencing (e.g. multi-line appearance PBX phones).
- Wi-Fi capability doesn't fully make up for the lack of a fast cellular data capability
It's good that they reportedly now support PPTP as one of the wireless networks I use regularly uses this (or, you can opt for ports 80 and 443 only in the clear if you don't mind giving an email address every time you get a new DHCP lease.) The other network I use regularly uses certificate based WEP, with certificates signed via some Active Directory server.
The lack of GPS internally isn't a huge deal but the ability to use a GPS over Bluetooth would be nice, especially with the iPhone's screen. Even non-smartphones on AT&T's network are supporting GPS over Bluetooth via a service (e.g. maps are downloaded on demand). TomTom is available for Windows Mobile and Symbian phones (locally stored maps, or a data plan / network connectivity aren't needed) as are a few other map packages. Google Maps and Windows Live Search both support GPS on Windows Mobile via native applicatoins (not Java, not JavaScript -- C/C++/C# I imagine)... not to mention other third-party programs that use maps from those sites.
(With GSM, tower-based locationing is not nearly as reliable as real GPS or even CDMA 1x aGPS)
I don't think this is an Opera problem, or if it was, it seems to be fixed. This happened to me in Firefox quite some time ago, and I haven't experienced it in Opera or Firefox since.
My local cable system's video on demand does not go over the wire in the clear. (Time Warner)
I'm not sure if it's just encrypted or if it's done over a packet-switched channel (DOCSIS) instead, although there is mention of VOD IP addresses in the diagnostic menus.
The CPU is a three year old Athlon 64 2.0GHz. Linux chooses the best raid5 parity calculation method (based on a quick benchmark of integer, sse, mmx, etc. based algorithms). The selected method on the Athlon 64 box calculates at 6000 megabytes/sec. If you provided ample bandwidth (once again no slow PCI) Linux would have no trouble scaling.
What is the advantage of having a proprietary RAID card? With PCI Express, there is enough bandwidth between the HBAs and CPU to perform software RAID[56]/RAIDZ2? without a problem. Any recent CPU can perform RAID5 calculations much faster than hard drives can provide it. The bottleneck becomes either PCI bandwidth or hard drive speed.
I haven't seen a consumer level motherboard that has real (hardware) RAID. It's all software RAID with a fancy driver & BIOS support to allow Windows to boot.
I'm not sure how many people would want to dual-boot a large fileserver. There's no universal filesystem that's suitable for large volumes multiple OSes besides ZFS, if you're using Solaris, FreeBSD, and OS X... with (slow) userland support in Linux. Otherwise you've got ext2/3 on Linux and the myriad of various implementations for other operating systems.
Have you used Linux RAID5 or ZFS RAIDZ lately? In a six-drive setup using consumer hardware (nForce chipset, Seagate Barracuda drives), I get write speeds that are nearly double the write speed of a single drive using MD RAID5. With ZFS RAIDZ2, I get write speeds that are slightly more than the write speed of a single drive.
Why? Linux software RAID (md) does a fine job with excellent performance, assuming you are not saturating the PCI bus (solution: use PCI Express or PCI-X instead). With sufficent bus bandwidth, software RAID outperforms the majority of soft RAID (rocketraid) and hardware RAID controllers.
You can expand the array without losing/migrating data off of the array. You are still limited to the size of the smallest disk in RAID 5, but it helps alot.
You can do this with md without having to deal with quirky RAID hardware that leaves you in the cold if you have a controller failure.
Their demos clearly show Qt applications. Qt 4 includes native support for win32 in a free GPLed edition and does a very good job of looking like real Windows programs (Gtk+ and WIMP do an okay job already)
Is something like Software Virtualization Solution needed on unixlike systems?/opt handles separating programs pretty well. Environmental variables for the ld preloader help too, if needed. Special installation consideration only needs to be made for GUI integration (file assocations and menus). chroot and/or unionfs and/or lofs can provide most of the layer functionality.
Of course, SVS is so useful because it provides a good way to keep applications separate and keep them from actually leaving files on the system / breaking other things (and deploy them). Any unix has suitable functionality that makes this unnecessary in most situations -- for example, nfs-mounted/opt & group ACLs if licensing / who uses what is an issue.
Is that really what it is? That would give it binary compatibility with Linux.
There is already a GPLed WINNT POSIX NT kernel subsystem (not updated for a long time), which could be updated to support smp/x64 and integrated with parts of perhaps Linux proper, Solaris lx brand, or FreeBSD Linux compatibility...and if Windows could boot ELF binaries via that layer, with a redirection for system directories yet without having to do funky sharing/mapping for user directories.
"You have to compile binaries specifically for Lina, but it's fairly trivial, no different than compiling binaries for SuSE or Red Hat."
So it's like UML on Windows using Qt/Windows and Gtk directly? And it runs as a layer on top of Win32??
I'm not sure that this effort is really worth it if you've to recompile. With Qt4/KDE4 more or less all of KDE will operate on Windows. Most major open source applications are already functioning in Windows.
No matter what this thing does, it's still an extra layer between the win32 subsystem and the applications.
Linux 3D applications generally use OpenGL. Windows / graphics drivers for Windows support OpenGPL. Therefore, this should be trivial (provided a decent X server / DRI "implementation" is provided)
There's a lot more 3G than you think... Sprint and Verizon have 3G in nearly every major market they cover. Cingular is getting there. They all cover the majority of their top markets.
I don't know about Sprint or Verizon in general, but from what I understand Cingular has been starting with the core areas of a market then pushing out to suburbs/rural areas. Since fall 2006, Cingular has gone from covering the two big cities in my area, to the more distant mid sized cities (75-150k), to the small cities/towns (25-50k). They haven't bypassed suburbs or restricted coverage to city limtis + connecting highways.
When I first got the service in Nov 06, the coverage maps were inaccurate and were missing an entire county of 3G coverage. Since the beginning of the year, it seems like 3G coverage has been pushed out about 10 mi. in parts from its previous boundaries...
EDGE is a better (still slow) version of GPRS, compared to EV-DO and WCDMA/HSDPA. EV-DO and WCDMA/HSDPA are much faster than EDGE. AT&T has deployed HSDPA in many markets and Sprint and Verizon have deployed EV-DO in most markets..
Basically, the iPhone (coming out in mid 2007) uses slow network technology. The replacement (HSDPA) was available in most major (top 10-20) markets with the notable exception of Los Angeles..... at the end of 2006. Now, HSDPA is available in some parts of 2/3 of the states, obviously the most populated areas first.... not to mention all over Europe & parts of east/southeast Asia.
WCDMA doesn't just mean faster data; it also means better voice quality (through the use of higher-bandwidth codecs)
You been to the US? This only happens on select carriers. FWIW AT&T and/or T-Mobile have the least crippled phones: they're just customized GSM phones like you'll find in the rest of the world.
commercial software: Handago Smartphone.net
free software: FreewarePPC Freeware Palm
There are thousands of third-party downloadable applications for PPCs, Smartphones, Palm OS devices, Series 60 devices, etc., etc. Anyone can download an SDK and make their own apps with access to a suite of communication, sound, storage, and animation APIs.
Number of third-party downloadable applications for the iPhone that aren't web applications: zero.
Most phone application developers do not consider "look pretty" a huge priority.
What the fuck are you talking about? My Samsung Blackjack runs any application I throw at it. The default WM Smartphone configuration only runs signed programs: to fix this problem you can either add your own certificate (a matter of going to a URL with the certificate and answering Yes to a few promprts) or plugging in the device and running a program that disables all application locks.
Pocket PC and Palm OS devices do not have signature requirements that I'm aware of.
The iPhone does not have the ability to run arbitrary programs natively at all. Just web apps.
Series 60 phones often ship with Opera. Opera & a port of Mozilla called Minimo is available for Windows Mobile.
Every smartphone I have ever used has used some sort of ARM CPU, recent ones often around 400MHz. Compare this to the 620MHz iPhone ARM CPU (WebKit needs all that power to render HTML...)
I'm sure people really like it if they want to use Web 2.0 applications and listen to music. But what if they want to do something that isn't possible with the included software and isn't implementable in the iPhone's JavaScript environment?
Last I checked, there were no APIs acessible from JavaScript on the iPhone that allowed access to just about anything. No Bluetooth (so no GPS), no sound, no fancy graphics, no file access -- nothing interesting.
There are other phones that play music and do a better job of surfing the internet for cheaper: often cheap enough that you could still buy an iPod nano if you wanted.
Those applications run just as well on other mobile browsers such as Opera Mobile, for those who like to use the full version. Have you not used mobile applications recently? WEP is dead and pages are now written with XHTML. In fact, with stylesheets, the same HTML can be designed for mobile and normal-sized devices.... and even after the iPhone's widely touted support for full-sized webpages, there are lots of people talking about how they can adapt their app to use the iPhone. Hmm....
For those who don't have the luxury of being in an iPhone-friendly wifi environment, not loading advertisements and (relatively) high-res GUI elements and logos can shave a noticeable amount of time off the loading time: on my 3G device, PayPal's mobile site takes 2 seconds to load. The full site takes almost 10 and uses 122k.
Without downloadable app support, you can't download games for your phone -- you're stuck with web apps. A
To quote myself from an hour ago:
Now that I think of it, that limitation only applies for the actual Smartphone (non-touchscreen) devices. There is nothing stopping you from installing your own certificate or disabling the application certificate checking altogether on Windows Mobile Smartphone. For full-blown Windows Mobile PDAs with touchscreens, this is simply not a problem.
Even on carriers that limit functionality to applications without proper certification, the APIs still exist for those phones and you can do some things. (sorry Verizon users!) But for smartphones/PDA phones, that is nothing to be concerned about/nothing that can't be easily satisfied.
Last I checked, Palm OS, Windows Mobile, and Symbian all have native APIs with SDKs you can download along with thriving third-party software support. No cracking required! You can run real applications that work without an internet connection and write your applications in languages other than JavaScript.
There may be signing requirements that (at least in the case of Windows Mobile) can be bypassed by disabling signature checks on executables or (a much better solution IMO) adding your own certificate to the list of trusted certificates and signing.
And standard "dumb" phones in the GSM world along with Blackberries have Java 2 ME, which has SDKs you can download to write applications that are downloaded to and run on the device... they can often interface things like sound, Bluetooth, etc., making GPS applications possible.
No hacking required! No funky way to get a serial connection required! Just at least one way to get applications on the phone (which includes over-the-air via the Internet and USB -- sometimes even Bluetooth).
The process has been very similar on every phone I have used, both GSM (Sony Ericsson/Nokia S60/Nokia S40/Motorola/Samsung/Windows Mobile), PBX (Lucent), and even VoIP (Sipura, various smartphones)... make or answer the first call, put the first call on hold/dial the next call directly from the phone book/answer the next call, and choose the menu option or button "Conference" or "Join"...
It's the same as three-way calling, but just with more calls.
I can't speak for AT&T's documentation, but T-Mobile's website seems to have directions for conferencing for all of their phones.
AT&T 3G HSDPA exists in enough of the US's large markets that Apple could have reasonably put 3G in the iPhone; to those that aren't covered by AT&T 3G yet, it's not really a big deal. But for those of us that *have* HSDPA in our market, it's an insult that such a data-centric device would be sold without 3G.
Most of the major markets without any trace of 3G apparently are due to lack of available spectrum. Some have not yet been launched or have not yet been launched on paper (the network is up and working but not yet mapped/announced). AT&T has secured additional licenses for at least some of these markets.
It appears that I spend most of my time between two MSAs, one of which is on the bottom 25 of the top 100 and the other which isn't even in the top 100... and my phone has not left a Cingular 3G coverage area since I got it in November...
Verizon and Sprint EVDO would require a separate network interface because CDMA 1x/EVDO networks are significantly different than GSM-based networks, including WCDMA/HSDPA as used by AT&T and nearly every other country. Even if Apple did use HSDPA/GSM hybrid chips and happened to use North American and rest of the world chips only for 3G, the software to control the chips would be the same and the chips would most likely be a drop-in replacement (with perhaps some antenna changes). If they used CDMA/EVDO for North America and GSM/WCDMA for the rest of the world, that advantage would disappear.
FWIW this is common with nearly all GSM phones with decent switches. The first GSM phone I had (still when they made phones with black and white screens) supported 6-way calls. I do recall that not all networks supported conference calling with more than 2 participants (e.g. could only three-way); the Cingular GSM network in North Carolina was one of them (originally deployed as BellSouth GSM, and of course is now AT&T). I roamed on that network in 2003 and could not make calls with >3 parties, but iirc in 2004, I could.
This feature might actually be an ISDN feature. It seems that digital (non-VoIP) or mixed analog voice/digital signalling phone networks also often support 6-way conferencing (e.g. multi-line appearance PBX phones).
It's good that they reportedly now support PPTP as one of the wireless networks I use regularly uses this (or, you can opt for ports 80 and 443 only in the clear if you don't mind giving an email address every time you get a new DHCP lease.) The other network I use regularly uses certificate based WEP, with certificates signed via some Active Directory server.
The lack of GPS internally isn't a huge deal but the ability to use a GPS over Bluetooth would be nice, especially with the iPhone's screen. Even non-smartphones on AT&T's network are supporting GPS over Bluetooth via a service (e.g. maps are downloaded on demand). TomTom is available for Windows Mobile and Symbian phones (locally stored maps, or a data plan / network connectivity aren't needed) as are a few other map packages. Google Maps and Windows Live Search both support GPS on Windows Mobile via native applicatoins (not Java, not JavaScript -- C/C++/C# I imagine)... not to mention other third-party programs that use maps from those sites.
(With GSM, tower-based locationing is not nearly as reliable as real GPS or even CDMA 1x aGPS)
??
I don't think this is an Opera problem, or if it was, it seems to be fixed. This happened to me in Firefox quite some time ago, and I haven't experienced it in Opera or Firefox since.
Sounds more problematic and expensive than copper (for maintenance), not to mention bandwidth issues.
Not sure what Linux has to do with this...
My local cable system's video on demand does not go over the wire in the clear. (Time Warner)
I'm not sure if it's just encrypted or if it's done over a packet-switched channel (DOCSIS) instead, although there is mention of VOD IP addresses in the diagnostic menus.
The CPU is a three year old Athlon 64 2.0GHz. Linux chooses the best raid5 parity calculation method (based on a quick benchmark of integer, sse, mmx, etc. based algorithms). The selected method on the Athlon 64 box calculates at 6000 megabytes/sec. If you provided ample bandwidth (once again no slow PCI) Linux would have no trouble scaling.
What is the advantage of having a proprietary RAID card? With PCI Express, there is enough bandwidth between the HBAs and CPU to perform software RAID[56]/RAIDZ2? without a problem. Any recent CPU can perform RAID5 calculations much faster than hard drives can provide it. The bottleneck becomes either PCI bandwidth or hard drive speed.
I haven't seen a consumer level motherboard that has real (hardware) RAID. It's all software RAID with a fancy driver & BIOS support to allow Windows to boot.
I'm not sure how many people would want to dual-boot a large fileserver. There's no universal filesystem that's suitable for large volumes multiple OSes besides ZFS, if you're using Solaris, FreeBSD, and OS X... with (slow) userland support in Linux. Otherwise you've got ext2/3 on Linux and the myriad of various implementations for other operating systems.
Have you used Linux RAID5 or ZFS RAIDZ lately? In a six-drive setup using consumer hardware (nForce chipset, Seagate Barracuda drives), I get write speeds that are nearly double the write speed of a single drive using MD RAID5. With ZFS RAIDZ2, I get write speeds that are slightly more than the write speed of a single drive.
The "writes being slow" problem clears up if you have enough bus bandwidth. This means PCI-X or PCI Express.
Why? Linux software RAID (md) does a fine job with excellent performance, assuming you are not saturating the PCI bus (solution: use PCI Express or PCI-X instead). With sufficent bus bandwidth, software RAID outperforms the majority of soft RAID (rocketraid) and hardware RAID controllers.
You can do this with md without having to deal with quirky RAID hardware that leaves you in the cold if you have a controller failure.
Their demos clearly show Qt applications. Qt 4 includes native support for win32 in a free GPLed edition and does a very good job of looking like real Windows programs (Gtk+ and WIMP do an okay job already)
Is something like Software Virtualization Solution needed on unixlike systems? /opt handles separating programs pretty well. Environmental variables for the ld preloader help too, if needed. Special installation consideration only needs to be made for GUI integration (file assocations and menus). chroot and/or unionfs and/or lofs can provide most of the layer functionality.
/opt & group ACLs if licensing / who uses what is an issue.
Of course, SVS is so useful because it provides a good way to keep applications separate and keep them from actually leaving files on the system / breaking other things (and deploy them). Any unix has suitable functionality that makes this unnecessary in most situations -- for example, nfs-mounted
seems like the correct term is "multi-window" mode. Xorg supports both
Is that really what it is? That would give it binary compatibility with Linux.
There is already a GPLed WINNT POSIX NT kernel subsystem (not updated for a long time), which could be updated to support smp/x64 and integrated with parts of perhaps Linux proper, Solaris lx brand, or FreeBSD Linux compatibility...and if Windows could boot ELF binaries via that layer, with a redirection for system directories yet without having to do funky sharing/mapping for user directories.
But I'd just run Linux or coLinux instead.
This thing's main advantage is that it seems not to use X and uses Qt directly on the host, using Qt's native interface...
also, rootless X servers have been around for a long time...
So it's like UML on Windows using Qt/Windows and Gtk directly? And it runs as a layer on top of Win32??
I'm not sure that this effort is really worth it if you've to recompile. With Qt4/KDE4 more or less all of KDE will operate on Windows. Most major open source applications are already functioning in Windows.
No matter what this thing does, it's still an extra layer between the win32 subsystem and the applications.
Linux 3D applications generally use OpenGL. Windows / graphics drivers for Windows support OpenGPL. Therefore, this should be trivial (provided a decent X server / DRI "implementation" is provided)
No one is supposed to check for a photo ID for Mastercard or Visa.
There's a lot more 3G than you think... Sprint and Verizon have 3G in nearly every major market they cover. Cingular is getting there. They all cover the majority of their top markets.
I don't know about Sprint or Verizon in general, but from what I understand Cingular has been starting with the core areas of a market then pushing out to suburbs/rural areas. Since fall 2006, Cingular has gone from covering the two big cities in my area, to the more distant mid sized cities (75-150k), to the small cities/towns (25-50k). They haven't bypassed suburbs or restricted coverage to city limtis + connecting highways.
When I first got the service in Nov 06, the coverage maps were inaccurate and were missing an entire county of 3G coverage. Since the beginning of the year, it seems like 3G coverage has been pushed out about 10 mi. in parts from its previous boundaries...
EDGE is a better (still slow) version of GPRS, compared to EV-DO and WCDMA/HSDPA. EV-DO and WCDMA/HSDPA are much faster than EDGE. AT&T has deployed HSDPA in many markets and Sprint and Verizon have deployed EV-DO in most markets..
Basically, the iPhone (coming out in mid 2007) uses slow network technology. The replacement (HSDPA) was available in most major (top 10-20) markets with the notable exception of Los Angeles..... at the end of 2006. Now, HSDPA is available in some parts of 2/3 of the states, obviously the most populated areas first.... not to mention all over Europe & parts of east/southeast Asia.
WCDMA doesn't just mean faster data; it also means better voice quality (through the use of higher-bandwidth codecs)