At my previous company, we developed an 'applet' (one of the little widgets on the desktop) for the Nokia 770 and N800 tablets. I worked closely with the tablet team (all great people, for the record) and yet it was one of the most painful development processes I've ever experienced.
Applets run in the context of the desktop app, so if there's a crash, the entire device reboots, period. The desktop toolchain worked well enough once set up, but it didn't have access to the wireless APIs so we were unable to use it. I eventually wrote an app for the device that loaded and ran our applet inside it, which made debugging with gdb possible, but even with this it was horrid.
I'll be a Nokia fan for life after working with those guys, but I can't help but see Maemo in itself as one step forward, two steps back.
Symbian will serve that market quite nicely for a while yet...
Maemo is running just on some smart internet devices from Nokia. A similar Linux offering, Android, has gained a lot of mind-share within OSS enthusiast's circles, but little elsewhere.
But the problem is I don't think Nokia's top management has understood this at all. They are still favoring Symbian over Maemo and Maemo is only shipped with their internet tablets as of now.
What they need to do is to make Maemo something like Android where any manufacture can contribute and use the OS and then design their smart phones for Maemo. Otherwise they will fail miserably in the smart phone race.