The Nokia N900 smartphone runs Maemo 5 (Linux) operating system. Nokia have released a phone for the open-source community and which hasn't been locked down by either the service provider (T-mobile, Vodafone) or Nokia themselves. This is great news for developers as well as hackers who want to customise their phones as much as possible.
Out of the box, the phone is sim-unlocked and I could insert another sim card without needing to get it unlocked by the service provider or some corner-shop.
This is true of the contract models as well as the sim-free ones. There are tools available for easy flashing of the firmware, so you could change to a non-standard firmware and back again if you want.
Maemo Linux is very similar to desktop Debian or Ubuntu Linux. It uses the apt package tool for easy installing or removing of applications from repositories on the internet. You specify which repositories you wish to use, and then select the free applications you wish to install. Nokia's Ovi Store has more applications available (free and commercial ones) on top of that. I recently counted the applications available in the main repositories (standard, testing, devel) and the total exceeded 7500. Note that Linux software ports really easily to the N900 (It has a Qt based GUI running on an ARM processor).
Although not as intuitive as the iPhone, the Maemo interface on the N900 is still great. I really like it. It has one of the best resistive screens available. There is a tendency for smartphones (e.g. iPhone, HTC Desire) to use capacitive screens. Capacitive are excellent for light touching, skimming the surface, but are poor for high accuracy where resistive excel. The N900 performs very well when skimming with the fingers as well as very accurately when used with fingernail or stylus ("The best of both worlds"). This makes the N900 ideal for full web-browsing and for sketching pictures or notes.
The graphic interface has a number of sections. The main view allows you to select from a number of home screens, and place app short-cuts, notes, web-links, contacts on each home screen. Click on the corner and you bring up the application menu, and then scroll through the icons to select an app to run (very similar to iPhone or Android touch-screen smartphones). Click the corner again, and you get a group of running application boxes. Select a box to make that application run full screen, click the corner to come out of it and then select another running application.
The multi-tasking on the N900 is superb. Run a load of apps, and switch between them easily. Open address book, calendar, calculator, web browser, media player all at the same time and flick between them. One more point against the iPhone.
The web experience includes Flash. I have played a number of Flash games on websites, as well as browsing Youtube and even playing iPlayer (BBC) television from within the browser. You have a choice of multiple browsers to choose from. The default Maemo-browser, Firefox (including plugins), Chromium, Opera, and probably more by the time you read this. In comparison, the iPhone has been restricted by Apple so that it cannot play Flash in its browser.
The latest PR 1.2 Maemo firmware brings Skype video calling to the N900. It has a small VGA camera in the front of the phone and a larger 5 megapixel camera with dual LED flash in the rear. I've used Skype Video calling from my N900 to a friend's N900. Also Google Chat and Skype are integrated into the Phone Contacts so you can make Skype calls just as easily as a standard phone call. (At the point of calling you just select what type of call you are making.)
The N900 comes with 32Gb of flash memory built-in, for storing movies, music, documents, photos, and so on. It also has a micro-sd slot (which will take 16Gb micro-sdhc cards) to expand the capacious memory even further. I really like the built-in Media Player which does a great job of handling playback of multiple files types (including OGG and FLAC). The quality of audio through the 3.5mm standard stereo socket is very good too. The Media Player can stream internet radio, as well as streaming videos/music from Windows Media Player, MediaTomb media streaming server.
The N900 has many and varied features. I really appreciated the N900's TV-out capability when on holiday. I was able to plug it into the hotel's TV and play back movies in standard definition (no need to carry around a laptop or portable dvd player). Also it has FM radio receiver and transmitter built-in.
I prefer a real hardware keyboard, and that's another thing the N900 has. You can use the N900 with a full-size bluetooth keyboard (if you want). It will play to stereo bluetooth headphones quite happily too. I've even used a Sony PS3 six-axis console controller to play games on the N900 (Quake, Duke3D ports).
Nokia and Intel have joined forces to co-develop MeeGo (Linux) operating system from now and into the future. This will also be (mostly) open-source and eventually take over from Maemo. It is already possible to boot up the N900 to basic MeeGo version 1.0 via usb flasher program and a suitably formatted 2Gb micro-sd, without over-writing your current Maemo install. There isn't a lot of difference between Maemo and MeeGo so all the apps should translate between the two nicely.
I find the battery lasts very well, when the phone is mostly idle and connected to wifi rather than 3G. Mobile 3G data does drain it a bit, but you should still get a day out of it from standard use. Taking it off mobile data, and with light use it'll last 3 days-ish.
Browsing Google Maps with a PR1.2 Maemo N900, and its GPS turned on, makes geolocation data available to Google (if you want), which can be handy when you want to know where is the closest ATM, bar, petrol station in your vicinity.
The screen has a resolution of 800 x 480 pixels, which is more than twice as many pixels as the iPhone 3GS (480x320). This is excellent for reading documents, watching movies, viewing photos, reading text, and web-browsing.
For developers and hackers: Set up the N900 as a web-server with PHP support. Run Python and PyQT script-based GUI applications directly on the N900. The N900 is good as SSH client and SSH server (remote connect to it from your PC over Wifi). It runs fairly standard Linux (bash scripting, cron jobs, etc). Rsync your data to or from the N900. Build apps and then release to Maemo repositories or to Nokia OVI store without draconian app policing.
The N900 is a fantastic device and I'm really happy with it. There are issues to criticise but then every device has compromises.