Thursday, March 30, 2006

New Ruby on Rails minor bump

Ruby on Rails 1.1 was released earlier this week. Following the directions on the Rails blog, I upgraded my 1.0 installation to 1.1 and fired up a simple Ruby server. The update went without issues, and I was able to start up and display the opening simple web page. However, when I clicked on the link "About your application's environment" I get a routing error:



I thought it might be due to some conflict in upgrading Rails 1.0 to 1.1. So I uninstalled 1.8.4-16 and re-installed the latest Windows version, 1.8.4 RC1. I still get the same error.

Not a big deal at this point, but I'm moving up into more complex applications and testing other features. So far everything else seems to work.

Wednesday, March 29, 2006

An example of how MS Word is superior to Open Office Writer

There's been considerable debate of late over the use of Open Office in preference to Microsoft's Office suite. The general argument is that Open Office is 'good enough' for most work, and that documents are interchangeable for the most part. I'm about to provide two screen shots showing that for my work (and the work of a lot of other engineers) Open Office is inferior to supporting engineering, and in particular system engineering.

The issues I'm about to write about cropped up when I opened a large MS Word document in Open Office Writer under SuSE Linux. I then rebooted my notebook under Windows and created the much smaller sample document that captured two of the problems I found on the Linux side. To keep from having to boot back and forth, I installed the Windows version of Open Office, and found it had the same issues as the Linux version did.

This first image shows the example document opened in MS Word.



Note the comment block to the right. Also notice the graphic at the bottom of the page. Now, the same document opened in Open Office Writer under Windows.



There are a number of differences to note between the two. First, the comment block on the right of the document is missing in Open Office. The graphic at the bottom of the page is not rendered correctly (it's too wide, and the bullet character is not properly rendered). The graphic in the example document is a stripped down version of a more complex drawing. The original so overwhelmed Open Office Writer that Writer displayed it as large blocks of black-on-black, with the text showing up as gibberish.

Open Office Writer might be suitable for basic editing or document preparation. But for large complex documents with complex embedded graphics, or using collaborative features such as the comment block, Open Office is a poor choice at best. The comment block is an incredibly useful collaborative feature used extensively on many engineering projects, especially during a system engineering review process. It keeps track of multiple reviewer comments. After being introduced to it, I can't imagine not having it available any more.

Many critics of Microsoft Office like to point out that Office users don't use most of the features available under Office. And I'll be the first to admit I probably don't use most of the features. But it is surprising how poorly Open Office Writer supports the features I do find important and useful in Microsoft Word. Folks considering Open Office need to be very careful about switching. You may not like Microsoft, but moving over from Word to Writer can leave you in a precarious situation, especially with partners who will not leave Office, and who use the latest Office releases and features.

Tuesday, March 28, 2006

Baby, I'm a rich man

I don't know what I'm going to do with all the money I've won over the last two days. I've received no less than four (four!) emails telling me I've won a combined $6,580,994!!! I can give up this life of grinding drudgery called work and go retire to a mansion next to the ocean (until the next Florida hurricane blows it away).

Once again the phishers are out plying their cons. This time it's official looking emails about winning jackpots in lotteries I've never heard of before. Three of the winnings were in Euros, and the forth was in British pounds. I just have to wonder if anybody even falls for this crap. I mean, this really rings the bells off the 'if it sounds too good to be true' alarm. But somebody somewhere must have responded. Why else this latest spate of bogus winning emails?

Microsoft may yet survive; OEMs will get their Vista fix after all

The Inquirer is reporting that Microsoft is set to ship Vista to its major OEM partners in time for Christmas. Imagine that. Earlier in the week we were entertained with stories about how 60% of Vista needs a rewrite, and how all the poor shivering OEMs were going to get nothing but lumps of coal in their stockings for Christmas 2006. I think what happened is that the retail version of Vista, which has to support upgrading, has problems upgrading all those various versions of Windows that are still out there. OEM partners burn clean installs, and corporate users pretty much do the same (or they should).

I think that many folks seem to forget that Microsoft is in a lot more than just operating systems for desktops. There's the other major money maker, Office, and it has shipped on time. Yes, Office was slipped to February 2007 to coincide with the retail release of Vista. Big deal. Oh. And a clue to the clowns who think Balmer should leave. Balmer's not going anywhere. But you just might.

In defense of Eclipse vs. NetBeans

There's a post over on EclipseZone titled "Too Many Cooks Spoil the IDE", wherein the author, Robert Thornton, takes Eclipse to task over his difficulties with the tool. In essence, his complaint is that the "incoherent complexity" of Eclipse makes it difficult to use efficiently and makes the tool fragile and unstable. As a former Eclipse user I can attest to some of the "incoherent complexity" if you stepped outside of the Java development environment. But I can also attest to the very high quality of the application as well.

My Eclipse experience began in earnest (starting with versions 2.x) when I used it on a large program I was a part of called WARSIM. The WARSIM team turned to Eclipse over two years ago in order to effectively handle the development of a very large Java-based application that we inherited from another development team. That team had used JBuilder version 5 for its IDE. When we were given all the existing application resources, we were also given the existing JBuilder licenses, but no funding to upgrade or maintain JBuilder. And that was a problem. We knew when we accepted the Java-based app that we were going to upgrade it from Java 1.2 to 1.4. JBuilder was locked into using JDK 1.2, and it was already a generation behind when we got it. With no money to upgrade the JBuilder licenses, I started to look at alternatives.

I first looked at NetBeans 3. I found it to be slow and I had issues with the interface. I had several other engineers evaluate NetBeans and they came back less than satisfied as well. I then looked at Eclipse. I was immediately impressed by the performance of the IDE. I found it snappier than JBuilder, and certainly snappier than NetBeans 3. There were other Eclipse features I found superior to NetBeans. In particular, the editor pane showed every error in a given file and the problem view showed every problem across all the files in the project. I could change my problem view filter and quickly search for (and fix) a given group of problems. And I certainly appreciated how I could open up my project, and see visually which packages had warnings (and errors). Eclipse was a great tool that helped us to continue to efficiently develop high-quality features and capabilities for the WARSIM UI.

Eclipse's built-in compiler was a great help as well. The IDEs ability to compile code as it was entered, line-by-line, without impacting overall performance was amazing at the time. It just made writing Java code that much more productive and enjoyable. And then there is the superb refactoring support. During one session I removed an older problematic library used extensively throughout the application in order to use equivalent functionality available in Java 1.4. Once again the Eclipse IDE's features helped manage the complexity of the changes involved such that my work didn't impact the work of others in the group. I was able to make my changes, integrate them back into the main branch, and not impact the schedule or the deliverable in any negative way.

If you use Eclipse for what it was originally intended, as a powerful Java IDE, Eclipse has stood, and continues to stand, as first among equals in the free Java IDE field. But if you stray from that primary capability, you begin to see some of what Thornton talks about. You'll find a boat-load of extensions, many of varied quality. While I've only sampled a small handful, I can see where someone would get pretty annoyed by the varied quality, especially when compared to the core capabilities of Eclipse. There's only one other Eclipse plugin that I've installed and use along with the core IDE, and that's Subclipse. Everything else I've ever installed has eventually come back out because it just wasn't as good.

Even though I think quite highly of Eclipse, there is one reason why I moved away from Eclipse and to NetBeans. It is, in a 'word', SWT. Thornton is right to call SWT "a wedge" being driven into the Java community. Sun correctly saw SWT as a challenge to JFC. At the time I started using Eclipse, SWT was considerably better in overall quality and performance when compared to JFC. And Sun was correct in its response to SWT. It fixed the issues in JFC that SWT was attempting to address, and it did so within the overall Java ecosystem so that everything benefited. The original reasons for using SWT over JFC I feel no longer exist.

It is for that reason, coupled with NetBean's remarkable evolution over the past 12 months, that I've switched from using Eclipse to using NetBeans. NetBeans 5 matches the set of Eclipse features I discovered I wanted for developing Java applications. Further, it allows me to add extensions to the platform using existing Java applications, especially applications based on JFC. NetBeans has changed such that I find it better fits with what I want to do today in Java development. But just because NetBeans is better suited for my needs today than it was two years ago does not mean that Eclipse has 'fallen' or somehow gotten worse. Everything that made Eclipse the right choice for me two years ago is still there, and has been enhanced over time. It's simply that my needs and goals have changed, and NetBeans better serves them. Eclipse will continue to be quite successful, as will NetBeans. I have never believed that for NetBeans to succeed Eclipse must fail. NetBeans and Eclipse need each other. The need to create a fierce, but healthy, competitive environment. We all need both for the simple reason we all need choices in open tools. I sincerely wish the best to both Eclipse and NetBeans.

Monday, March 27, 2006

An annoyance using Firefox on Linux

Many of the Linux boosters point out how there is essentially no difference between Linux and Windows when it comes to essential tasks such as web browsing, email, and even basic office tasks when using Open Office. I have discovered over time that there are differences. In this post I'd like to point out an annoyance that occurs on web sites that use Javascript and Flash.

In this post I'm comparing Firefox 1.5.0.1 on Windows XP SP2 and SuSE 10. The SuSE window manager being used is Gnome 2.12.0. The annoyance I'm about to describe manifests itself on the ATI site (www.ati.com), and is visible on any site that has a mix of Javascript menus and Flash. The problem is this: Javascript drop-down menus appear behind Flash objects on a web page in Firefox running on Linux, while they properly appear in front of Flash objects in Firefox on Windows. This is what makes working with equivalent applications on Linux so difficult at times. Applications and functionality are not the same between platforms, and the equivalent user experience can be very inferior under Linux when compared to Windows.



This cropped screenshot shows the Javascript dropdown menu above the Flash object on the web page. This is Firefox on Windows. This is the correct rendering.



This cropped screenshot shows the dropdown menu behind the Flash obect on the web page. This is Firefox on SuSE Linux. This is the incorrect rendering.

The ongoing stupidity of phishers

I now have four email accounts: Yahoo (the oldest since 1999), RoadRunner (nee Bright House), Google Mail (GMail), and my work email address. They make for interesting comparisons, specifically what kind and how much spam gets sent to each.

The Yahoo account, being the oldest, receives the largest quantity. It's not unusual to get over 50 spam emails/day. I use the Yahoo account as my 'trash' account when I'm signing up for technical information and when I'm placing orders on-line. I use my other accounts for various levels of personal communications with family, friends, and co-workers. I get various levels of spam email on the other two public accounts, and none (so far) on my work email.

Not only does the quantity vary between accounts, but the type of spam varies as well. The Yahoo accounts get a little of everything, including pr0n. The RoadRunner accounts seems to get a large percentage of penny stock investment scams, while the GMail account seems to get a large percentage of phishing spams. That phishing spam consists of warnings from the Federal Credit Union, eBay (a real favorite), PayPal, various banks such as Washington Mutual, and recently, a lot of warnings from Chase or Chase Manhattan.

The most recent spate started showing up Sunday, March 26th, and they all start out like this:
Your online credit card account has high-risk activity status. We are contacting you to remind that on March 27 2006 our Account Review Team identified some unusual activity in your account. In accordance with Chase Bank User Agreement and to ensure that your account has not been compromised, access your account was limited. Your account access will remain limited until this issue has been resolved.
That's a wonderfully scary opening. There's just two problems with this opening, however. The first and biggest blunder is that I received this second warning a day before the first was supposedly sent. The second is I don't have an account with Chase Manhattan. Never had, as a matter of fact.

And of course, I've gotten multiple copies of the same email, all on the same date and all with the same message. I even got the same exact email from service@paypal.com, where Chase Bank was replaced with PayPal.

The other peculiarity I've noted is that the number of phishing emails dropped quite a bit through most of March. They've been replaced with on-line pharmacy scams. There was even a spate of phishing emails from Chase Manhattan promising to pay me $20 if I took an on-line survey. Of course, you should (obviously) be able to take this survey only once.

The fact that these spam still show up are a good indication that there are still people falling for these type of phishing attacks. Sending out spam is still a no-cost way of casting for victims, and all it takes is a few in a large operation to make it worthwhile. And I'll bet that a 'few' victims actually numbers into the thousands. I just don't intend to be one of the many.

Update

This came floating in today."Chase Bank Account is fraudulent and it will be suspended" screams the subject. It goes on to say:
You have received this E-mail because you or someone else had used your Account from different locations. For security purposes, we required to open an investigation on this matter.

Oh my! What am I going to do? The email ends with:
If we do not receive the appropriate Account Verification within 48 hours , we will assume this Chase Bank Account is fraudulent and it will be suspended.
Wow! Those guys are tough! Too bad I don't have an account with them. I'd feel so ... safe if I did. They also need to polish the grammar up a bit, especially in the opening sentences. It's tough writing well. I'm certainly no shining example, but I do know good grammar when I read it. Bad grammar blows their 'cover' every time. I'm especially driven to grind my teath when I read sentences that have improper tense or missing words. But their efforts are entertaining.

Sunday, March 26, 2006

Everybody loves to hate Microsoft

There's no love lost between partisans of Linux and Microsoft. The war between the two has been going on for as long as Linux has been in existence. The war was fanned to a fever pitch with the 2003 SCOX vs. IBM lawsuit, and it's stayed at that level ever since.

It's totally unsurprising, therefore, that Microsoft's delayed release of Vista would have the anti-Microsoft forces watching gleefully for any signs of stress, internal or external, at Microsoft. Schadenfreude is alive and well and practiced with raucous enthusiasm by many Linux partisans.

Microsoft has no-one to blame for this but itself. Since it's inception 30 years ago, Microsoft has played a brutal game of hardball with competitor and partner alike. The ultimate example of this was Microsoft's treatment of IBM during the initial development of OS/2. IBM and Microsoft were partners until it became obvious that Windows would suite Microsoft's purposes better than OS/2. Microsoft developed and marketed Windows, competing against OS/2. This culminated with the release of Windows 95, where Microsoft finally buried OS/2 once and for all. Windows 95's win over OS/2 was a text-book example of Microsoft FUD versus IBM marketing ineptitude.

Microsoft's business practices go hand-in-hand with their software practices: promise features to keep back the competition, then deliver very little and deliver it late. Such as, for example, Vista, the next greatest version of Windows. Vista is not the first delayed release of Windows. The predecessor to Windows XP, Windows 2000, was paper launched in December 1999. It had been in development for over five years. The other significant problem with Vista, its loss of pre-announced features, is also shared by earlier releases. In fact, the one feature that has forever been added and dropped is an advance file system. Starting in 1994 with Cairo (Windows NT 4), Windows NT was supposed to ship with Object File Store, or OFS. It was supposed to provide a foundation for advanced features, such as search. Sound familiar? It should. It was dusted off and added to Longhorn's features in 2002. It morphed into WinFS, then was dropped again so that Longhorn (now known as Vista) could make an August 2006 delivery.

But even that date has slipped. Vista won't be out now until February 2007. And according to some accounts, over half of Vista needs to be rewritten. That's from leaked internal information and "informed sources." And so the anti-Microsoft forces gleefully report the problems and chant ceaselessly about the coming downfall of Microsoft and the rise, yet again, of Linux. The only problem with reveling in someone else's misfortunes is that what goes around comes around. If we could harness all that energy anti-Microsoft folks want to expend trashing Microsoft, and put it towards really polishing the Linux desktop experience, then maybe, just maybe, Linux really would be a viable alternative to Windows. Instead of the perennial loser.

Saturday, March 25, 2006

NetBeans overwhelms Eclipse

I never thought I'd see this happen. Not like this. But MyEclipse, the company that cleans up, then bundles up, all the good Eclipse IDE extensions, has now created a developer preview for ... wait for it ... NetBeans Matisse visual UI developer as a plugin for the Eclipse IDE. That's right. MyEclipse essentially ported a NetBeans module to run on the Eclipse IDE environment.

Eclipse fan boys and girls will point to this as an example of how extensible the Eclipse IDE can host anything. I see it as a failure of a major subcomponent of Eclipse. And I have to ask: Why not just use NetBeans? Or I'll ask as soon as I stop laughing so hard. Oh, how my sides hurt!

It's a Fud Fud Fud Fud World

Today I did something I knew was going to cause me no end of trouble. I put my two blog entries regarding my experiences with the Nokia 770 on a public forum; OSNews. Reading some of the comments you'd have thought I was in league with the Great Satan Microsoft. In particular I was accused of spreading FUD: Fear, Uncertainty, and Doubt.

What is FUD anyway, and does it apply to my "rants"? Well, according to Eric Raymond, it is "any kind of disinformation used as a competitive weapon." Wikipedia defines it as "a sales or marketing strategy of disseminating negative and vague or inaccurate information on a competitor's product." Many of my comments are certainly negative. They were meant to be. After all, I purchased the device with my own funds (as opposed to having a demo device delivered). As such I have a very strong motivation in reviewing the device; my hard-earned cash is tied up in it. But are my comments delivered because I compete with Nokia or Linux, or work for a company that competes with Nokia or Linux? No. I'm an end-user. I have no stake in any competitor of Nokia and have no business connection with Microsoft (other than I happen to use Windows; I guess I'm guilty by association).

What convinced me to purchase the 770 in the first place? For many months I'd read many positive articles about the 770. The most visible I read was the article written by Doc Searls in Linux Journal titled "Linux for Suits - A First Look at the Nokia 770." No where in that article was there any indication that the 770 was, as poster CrLf commented, "targeted at developers, not consumers." No where did the article state that the 770's "sole purpose" , again as CrLf commented, "is starting a new platform..." Instead, Doc Searls wrote a very positive article about its available capabilities and features. The 770 was even featured on the cover of the February 2006 issue in which Doc Searls' article was published. With all the positive press the 770 had received up to that point, the Linux Journal article tipped my decision towards purchasing the 770.

The Nokia USA web site presents a very positive, consumer-oriented pitch for the 770. You can find the 770 easily enough. It's just one level down from the front page. The 770 section, with their sophisticated Flash insets, are designed to sell specifically to consumers. No where on any of the Nokia 770 pages is there any indication that this is a product targeted at developers, not consumers. You're seductively invited to experience rich broadband content on your 770.

Well, folks, I'm here to tell you, that the real thing falls far short of the "moving experience" advertised on Nokia's site. And it falls with a big flat dud.

Before anybody carps off, let me state for the record that neither Doc Searls nor any Nokia representative came to my house, put a gun to my head, and forced me to buy the 770. They didn't have to. I was in the market for something along the lines of the 770. I certainly wanted something better in the screen department than the current crop of PDAs. The 770 certainly has a gorgeous screen, one of the best I've ever seen in a device this small. The overall case is also light and strong with quality construction throughout. It's simple, elegant, beautiful. And I even like the color. My complaint is with the software bundled with the device. Without software that matches the hardware, the 770 is little more than a very pretty, very expensive paper weight. If I had known then what I know now I would not have purchased the 770. I did what I thought was reasonable research, but it looks like it wasn't enough.

Oh well. Live and learn.

Honey

We had an interesting guest at our house earlier this week. She was a greyhound/basset hound mix we named Honey Bee.

Honey came barreling into our lives while I was out walking Max. We started to pick her up around mid-January as we were walking down our main street. Honey, who was actually named Larry at the time by her current owner, would escape from her yard and go visiting around the neighborhood because she was bored and lonely. When she spotted us she'd come flying up the street and literally shoot under Max. It later turned out that her owner would just tie her up out in back of his house when Honey wanted to go out. Honey would then throw her collar and take off.

This kept up all through February and on through March. I'd be out with Max and then Honey would show up, and then they'd play together. Then Max would get back on task (walking) and Honey would follow along right next to him. And that was a lot of following. Max and I would walk (and run) three to five miles/day. On a long run one day, Honey spotted another dog across a road (Dr. Phillips Blvd) from where we were. Honey took off across four lanes of traffic to visit the new dog, and then to come running right back to us. I nearly had a heart attack as traffic zoomed on both sides of the road. It was at that point I decided we had to do something to protect Honey before she got killed.

The problem was that Honey had no collar most of the time, and when she did, she had no tag. When my oldest daughter was down for spring break, she was out one day shopping with her mom. They spotted Honey loose in the neighborhood. Lauran got out of the van and quickly talked Honey into the van, then everybody came home. Honey then got to spend the rest of the day with Max and Babe. Everybody loved it.

Because we didn't know Honey's owner at the time, the girls put up 'Dog Found' signs around the neighborhood. That evening we got a call from Charlie, who identified Honey. We were sad that Honey was going home, but happy that we finally found her owner. We got his name, phone number, and address. I thought that maybe, just maybe, it would finally sink into Charlie's head to take better care of Honey.

But such was not to be. After her initial return, Honey started to show up at our front door on a regular basis. Honey remembered where Max lived (with us, of course). She would show up around late afternoon or early evening, and whine. I'd go to the front door to see who it was, and Honey would then walk right in to visit Max. I'd put all three dogs (Max, Babe, and Honey) in the back yard, let them play for about an hour until they tired, then I'd put Max and Honey on leads and walk Honey back home. I did this multiple times, getting to meet Charlie's wife and one of his sons in the process.

Finally, this past weekend, after Honey showed up at the front door at midnight Saturday, I made the decision that we were going to adopt her. It was obvious that Charlie was not taking care of Honey, and it was equally obvious that Honey wanted to stay with us. Judy and I fixed her a place to sleep, and we started to feed her and include her in the family activities. Honey fell right in to the schedule.

On Tuesday, March 21st, Judy took Honey to our vet, Phillip Callahan. Phil has been our vet for nearly 20 years. He's been with us as through four labs, two that have passed on. Phil helped place Babe with us. While at the vet Honey got a complete checkup, her rabies shot, and an official tag. Phil didn't charge us for his time, just for the shots and medicines. Everybody in the clinic fell in love with Honey and her story, and Honey fell in love with the clinic staff. One problem discovered about Honey that couldn't be fixed at the time was Honey's severe overbite. Phil suggested he take out one of Honey's teeth so that the jaws would fit better. Phil was afraid that over time Honey wouldn't be able to eat well. Judy scheduled to drop Honey off and have the simple operation performed. I thought we were set.

Unfortunately it wasn't to last. That evening Charlie, the original owner, showed up with three Orange County deputies to take back Honey. Officer R. S. Brooks showed up with support to ask bluntly why I had taken Charlie's dog. I don't know what Charlie told the police, but the attitude of the police towards me was as if I had walked into Charlie's yard and stolen the dog. I had to spend the next 45 minutes, with Judy's help, explaining everything that had happened over the last three months. In the mean time I walked Honey out of the house on a lead. Charlie pounced on Honey, quickly pulling off our lead and slapping his on in its place. He couldn't get out of there fast enough. By the time Officer Brooks left his attitude had changed markedly, from aggressively confronting a possible dog-napping felon to wondering if he'd made the right decision. Judy was in tears. All I could do was to sit down on a bench outside the front door in disbelief over what had happened.

I haven't seen Honey since. I know she's not being walked. I have no idea if she's still in good health or not. I know that Charlie doesn't want the dog because it was forced upon him by a daughter living in Tampa. He even told my wife he tried to give the animal away last year, but the people he give Honey to brought her back. I have no idea what his motivation for taking the animal back like that was. But I do know this. If I had to do it over, I'd still have done the same exact thing. Honey was the sweetest little thing. She loved her walks with Max and I, and she certainly enjoyed the family interaction. I'm keeping my eye out for her, and if she gets loose again I'll have to send her in to animal control, then challenge Charlie for her ownership. But I'm concerned for Honey. I hope she's all right. I certainly don't trust Charley to do the right thing.

Using the Nokia 770 Internet Tablet - Part 2

It's been almost a month since I received the 770, and I've come to better understand its ways. Not that I appreciate it any better, but I do understand it better.

First, the power on issue I talked about the last time. You can leave the 770 on indefinitely if you flip the cover over the LCD face so that it goes into sleep mode. When you pull the cover off, the 770 immediately turns back on. This is infinitely faster than physically powering up the 770 when you want to use it. Operated in this manner, battery power will pretty much last all day, even if I use it to continuously read news on the web or view some of the simple trailers I've managed to collect. The problem seems to be the power indicator on the screen. I've had the tablet die twice on me, even though right before I closed it up the power indicator showed a full or 3/4's full charge on the battery. Either the software is flawed or the hardware is flawed, or some combination thereof. The best thing to do is just plug it into the charger every evening so it's fully charged the next day.

Second, there are system crash issues. I've had no less than four incidents where the 770 went through its cold-start sequence (white screen with blue Nokia legend, followed by the slow crawl of the progress bar across the bottom of the screen) while working with it. And every time the crash seemed linked with attempts to find a WiFi connection. Most of the time looking for a WiFi connection either finds one or it doesn't. But every once in a while the system seems to stutter, then freeze, then reboot.

And that leads to the use of WiFi. Between the lack of decent WiFi hot spots in Orlando and the odd problems of syncing up when I do find an open WiFi hot spot, I can't find a decent connection. The best connection is through my home wireless hub, a Cisco/Linksys WRT54GS. I can find open hot spots at a number of Panera Bread shops, but even though the WiFi connection utility indicates a wireless connection is solid, the network connection is problematic (the web browser fails to connect, the news reader fails to update). Couple the dearth of open hot spots with poor network connectivity even on good wireless connections, and you quickly discover that the networking experience with the 770 leaves a lot to be desired.

Third, there's the performance issue. As reported in the prior post I found that it was not a good thing to have a lot of applications open. I've also discovered that keeping an application open a long time also leads to slowdowns in performance, and even browsing through multiple pages with a single browser instance leads to a big performance hit over time. This is in stark contrast to both my earlier Handspring and Dell Axim. Startup of applications on the 770, even with the December drop of the software, is already sluggish to begin with. These slow downs only make it worse. As a consequence I've gotten into the habit of killing the browser instance after every six pages. Even then, you can tell the system is challenged because it takes a long time to even end the browser application.

Finally, there's the development environment (SDK) found on the Maemo web site. I work under SuSE 10 on my notebook, and in order to install the SDK I had to download and unpack all the tarballs. The installation was straight-forward enough, and I had everything up and running to the point where I was writing and testing very simple Hildon UI applications. The problem came when I logged out of SuSE and closed down the machine. When I logged back in I discovered the environment stopped working. I thought something had corrupted the SDK environment. Turned out (after a total of three complete reinstallations) that when you start up after a complete shutdown, that you should execute '/scratchbox/sbin/sboc_ctl start', and as root. This mounts all the restricted file system bits in Scratchbox's chrooted environment. I stumbled across this little jewel when I read the complete tutorial and found it as step 3 under the section titled 'Installing maemo rootstrap'. I say this with sarcasm because step 3 starts out as "If you have just installed Scratchbox ... jump directly to step 5!" And as dumb luck would have it, I was going through the installation all at once. I should have read all the way through each and every step. Then I would have had A Clue as to what to do on subsequent restarts.

Nokia has got its work cut out for it. Both the environment and the SDK are going to need considerable polish before it has any kind of impact in this emerging market, the ultra-portable PC. And it will have formidable competition. While Microsoft's Origami may seem limited to many, I can assure you that when it's compared to the 770, the Origami looks like a work of genius.

Right now, I feel like I've pretty much wasted $380 on the 770. I continue to work with it the hope I'll find some hidden feature or application I've missed so far.

Thursday, March 02, 2006

Using the Nokia 770 Internet Tablet

It's been over nine days since I received my own Nokia 770 internet tablet. I purchased it for it's 'geek' factor more than it's practical value. And I suppose that's a good thing, considering that I paid $385 total for the device. The price may seem a bit steep, but it's in line with other devices in its class, such as PDAs. I own two other PDAs, a Handspring Visor Prism and a Dell Axim X5 Entry. I paid $400 for the Handspring in 2000, and I won the Axim as a prize in a contest in 2002. The Handspring has a 180 x 180 color display, a 33MHz 68K-based processor, and 8MB of flash. The Axim comes with a 230 x 240 color display, a 300MHz ARM-based processor, and 32MB of flash. I've upgraded the Axim to Mobile Windows 2003.

Ordering the 770 was not a positive experience. I had been checking back on the Nokia site for the 770 so that I could order one when they were back in stock. I ordered mine February 4th. They didn't actually ship until the 16th, and it didn't finally reach my house until the 21st, the day after the President's Day holiday. I order from Amazon and Newegg, and in both cases, especially with Newegg, the time from order to arrival is a week or less.

When it arrived, I opened the package and read the Getting Started booklet. There wasn't much to getting started: unpack and open the box, plug the battery into the back of the 770, put the mini MMC card in the bottom of the N770, and then plug in the charger and charge the battery. It took several hours to reach a full charge. Once fully charged I then turned it on and started to play with it.

Starting up the 770 is takes a long time: nearly a minute. When you hit the power button at the top of the 770, you're greeted with a white screen and 'Nokia' in large blue letters across the front. That opening hints at the quality of the display, as the text is displayed fully anti-aliased. Then you see a progress bar slowly creep along the bottom of the screen. Once it's nearly across, you'll see a pair of hands displayed briefly, then the desktop for the 770 finally comes up.

The 770 has the best display of any device in this class I've ever seen. At 800 x 400 in landscape mode, it's bright colors and sharp clean graphics are a wonderful thing to view, especially for my bad eyes. Unfortunately, that's about as far as the positive experiences go.
  • The 770 has internet connectivity, but only via WiFi and Bluetooth. The Axim, by contrast, can connect to the internet if connected to a PC via it's USB cable.
  • When you do connect the 770 to a PC via USB, the mini MMC card shows up on the PC as an external drive, just like a USB thumb drive. By contrast, plugging in the Axim requires you use Microsoft's synch software. Once properly connected you then use a extension of the file explorer to view all on-board storage. While using a pure USB interface is a good thing, the problem with the Nokia is that once connected to USB the mini MMS is unavailable to the 770. Open up the 770's file explorer and the mini MMS is grayed out. Further, the internal storage on the 770 that isn't part of the MMS card is unavailable; it's not exported as part of the USB file system visible on the PC.
  • The 770 interface is slow. It's slow to start up and it's slow to execute once started. My 770 shipped with the latest software load (December 2005), so I know I have the latest release with 'performance enhancements'. If this release is fast, I'd hate to have worked with the earlier release that was slow. By contrast, both the Handspring and the Axim are quite snappy. You turn on either the Handspring or the Axim and they are on the desktop (or the last opened application) nearly instantly. I attribute the slow performance to the use of Linux, not to the processor chosen.
  • The 770 has 128MB of flash and 64MB of DRAM. This is a lot for a PDA running Windows Mobile, but it's cramped when running the version of Linux shipped with the 770. And that is a shame, considering that I once used Linux (with a GUI) on a 25MHz 486 with 16MB of ram and an 80MB hard drive (1995). If you have too many applications open you will get a dialog telling you that the 770 is low on memory and please close one or more running applications. Keep in mind that this is embedded Linux, and it has no swap.
  • The good news is that the built-in browser, from Opera, renders most pages beautifully (if slowly). The bad news is that you can't have more than a few browser instances open before you run low on memory. And if you hit a site that uses Flash, you may crash the browser or have to shut it down because the Flash-enabled page consumes nearly all the limited 64MB of DRAM. For example, go hit the Open Laszlo site and watch what happens.
  • AJAX support in the browser is limited at best. I tried to read my Google mail, and it failed. I then tried to run Google Map, and while it ran better, it was inconsistent at best. AJAX support, without the hype, is actually a Good Thing. Experiencing it on the 770's browser is not.
  • WiFi connectivity is very frustrating. If the WiFi connection is open (broadcasting the SSID), then the connection manager can find it and display it. But if it's closed (like mine is), then navigating to the dialog to manually add the WiFi connection is annoying, especially the first time you have to do it. In order to manually enter a connection you have to open the connection manager, then select the menu on the upper left. In the menu you select 'tools' then 'Connectivity settings...'. In the Connectivity settings dialog box, then they click on the 'Connections' button. Then on the Connections dialog you click on the 'New' button. The final 'New' dialog is in fact a wizard that steps you through the process of adding a WiFi connection. The ability to edit connections should be a button on the main connection manager page, not buried five levels deep in menus. That button should be titled 'Manage'.
  • Maintaining WiFi connectivity is very frustrating. Finding a connection is slow enough. But if the 770 goes into sleep mode, when it wakes back up the chances are very good that your existing connection will be shut down. That means you have to select, yet again, to connect to a wireless connection. This gets real old real fast. I'm sure the wireless portion is turned off to conserve battery power, but the software should have a settable option (in the connection manager) to automatically attempt to reconnect to the last known good connection, and pop up a dialog saying that is what it's doing. A better feature would be to not forget the connection, but to open the wireless and reload (at a driver level) the last known-good configuration data in an attempt to quickly restart the WiFi connection. Regardless of a final solution, the current solution of forcing you to repeatedly reselect a connection point after a sleep mode is poor at best.
  • When the 770 is plugged into the charger, it should not go into sleep mode. Neither my Handspring or Axim did this. This was great when I was at a location where I could plug in and work for a longer period of time on the device.
  • Game play. I like the Mahjong game that ships with the 770, but it has the most annoying habit of freezing in the middle of game play. When it finally comes out of its freeze, the sound effects are either gone completely, or only the click works.
  • New software. Right now it seems the only place to find software is through Maemo. Maemo is a development wiki, and it appears that development is ongoing and quite heavy. It will be interesting to see what comes out, but what is needed are tools for business use (spreadsheet and document viewing/editing are prime needs). I'm also waiting to see if pure performance is also improved throughout the system. I'm sure that someone will say I can view PDF documents with the built-in Adobe, but the build-in Adobe is horribly slow. Opening and navigating a PDF, especially one with images, is so painful that I kill it and just wait until I can view it on a PC.
  • A single professional portal for new software. The developer or hacker will say to the above bullet that I can follow the links on Maemo for new software. No. Handspring/Palm and Microsoft provide a single portal that links to large collections of software far more directly that what I've found on Maemo. Maemo is great for developers, not for end users.
  • Finally, the browser interface. Moving around the browser using the stylus is annoying. The buttons on the left, especially the large navigation button at the top, do not work intuitively with the page. I expected the up and down arrows to just move up and down the page (that's all I wanted). Instead, it moves from URL to URL on the page, left-to-right and top-to-bottom. The page up/page down capability works on the PDF viewer as expected. Another annoyance is when the browser is in full screen mode. If you click on an URL that spawns another window when in full screen mode, you have to hit the full-screen button again at the top of the device to bring back the desktop, so you can click on the close button. My suggestion: when in full screen mode, put a duplicate close button at the bottom of the screen with all the other controls. You have enough space, it makes it that much faster to get rid of the popup browser window you spawned.
I've heard that Nokia is getting ready to create a new network device called the 880. I hope that they've learned enough from the 770 to add more DRAM to the device (128MB at least) as well as really tune the software to run as efficiently as possible.

The 770 is not for everybody. If you want something for practical day-to-day use, you're better off buying a PDA or smart phone. And a word to Nokia: make nice with Microsoft. I would love to be able to run Windows Mobile 2005 on this device in place of your version of Linux. It's both fast and complete. Trying to impress the Linux geek crowd is not a good business plan, nor is trying to shoe-horn Linux onto this type of platform. Using Windows Mobile 2005 would make this a far better, and far more successful, mobile device.