One of the new requirements of WM5 was that it now had to be installed in the flash ROM instead of the main RAM (on WM5 there is only “program” memory and not “data” memory shared anymore). Microsoft’s Mike Calligaro blogged as to why this change can save lots of battery life.
So that’s it! When my dad came to me saying “my PDA battery died and it erased all my data”, I assumed it was something defective with the PDA. I thought to myself “They must keep data in flash, right? They couldn’t possibly be keeping it in RAM! Nobody would be stupid enough to design a device that kept critical contact info in RAM!” So much for that theory.
I’m sorry, designing things like that is just unforgivable. It’s akin to designing a faulty car that explodes during a crash. Whoever said “let’s keep this data in RAM” should be fired. People keep critical data on PDAs. Business contacts, appointments, etc. In the real world a certain phone number can be priceless. The people who design these things should take the critical nature of the data seriously.
To be fair, the idiocy is apparently endemic to both Palm and Microsoft…
This was not a dunb decision. Back in 1998/2000 when these decisions were made, it made sense to do it that way. PalmOS did that way, PocketPCs did it that way, and yes, Zauruses did it that way too (my 5500 does it that way too). Back in the day it was costly to write back to flash in terms of power and flash was much slower back then. Also, it would have made the device more expensive becuase you would need both flash and ram.
The industry is full of such examples: decisions that made sense in the past, but not today (e.g. BeOS’ 1 GB RAM limit). The real question is who has the guts to make the change. Microsoft did.
You can’t compromise safety for speed. So what if flash was slower? A device designed to hold important data shouldn’t lose it just because it runs out of batteries. Clearly, somebody realized the problem, because they made the 3-day margin of safety, but that’s not a very good guarantee. Why is it that engineers in the computer world are held to such a low standard of quality? If you’re an auto engineer, and three cars out of a million catch on fire, your company gets sued for tens of millions of dollars. Yet, if you’re a computer engineer and your PDAs lose tons of critical data just because their battery died, nothing happens. Doesn’t it strike anybody as problematic that nothing in the computer industry comes with a real warrenty? No piece of paper that says “your data is guaranteed to be safe on this device”? Why is the computer industry held to such a low standard?
With regards to the BeOS 1GB RAM limit, it could have been excused if BeOS had been designed in the 1970s, but by the early 1990s, that particular lesson had been learned. Even back then it had been obvious for quite some time now that software should be designed with the assumption that it’ll last for 25 years. I very much admire Sun’s engineers for their seriousness. Stuff like 128-bit pointers in ZFS shows an degree of foresight often missing from the software engineering world.
Oh, and I explicitly tired not to make it a Palm versus Microsoft thing, but since you went there first, I’d like to point out that Palm put NVFS in the T5 sometime last year, a good 6-8 months before WM5 came out.
“Back in 1998/2000 when these decisions were made, it made sense to do it that way.”
Even once upon a time, in 1998, a power failure wiped out data in RAM.
Even once upon a time, in 1998, a device prone to wipe out data so easily was, and remain, a useless toy.
It could have been the best choice, it could have been the only choice even, but it makes those devices useless toys even for 1998 standards.
Consumer electronic market is full of useless toys that have high sales for 3-5 years because they are à-la-page like a new disco or a new pub and then stop selling because they are definitely useless toys, unless companies are able, in those years, to make a quality jump and making the device have sense for a real world usage.
Back in the late ’90s it’s pretty much the only choice. Flash is incredibly slow, prohibitary expensive and can’t handle that many rewrites.
Even if they were to install small amounts of flash back then, would you buy a PDA that says you can only keep 256 contacts because that’s the flash it contains? If it takes like 5 secs for a search to come up it’s alright too? People are already complaining with the “fast” flash that they install on the Palm T5s and the LifeDrive. Think about how slow flash would be circa 1998
PDAs were developed as a business tool. Therefore, the hotsync software came along with the PDA for a reason. One is that the business users need to use outlook or Lotus notes or something similar to work to sync to anyways. In the worst case, losing power means that you lose the data since your last sync (which shouldn’t be more than a day or so if used correctly).
Back in those days, syncing is all that’s needed to backup (at least for palms – where applications and data are backed up).
So really I have trouble seeing how people who use PDAs properly will lose days and days or data… People who use their PDAs as a toy will get their version of an expensive toy / paperweight. People who treat their devices properly like it’s suppose to be used as a tool will get the tool they want.
“Back in the late ’90s it’s pretty much the only choice. Flash is incredibly slow, prohibitary expensive and can’t handle that many rewrites.”
That remind me something… oh, yes… multidimensional tricoder for the time machine i’m planning to sell are slow and prohibitary expensive, let’s use candy sticks instead… they doesn’t allow time travel but are widely available, costless and cool.
“People who use their PDAs as a toy will get their version of an expensive toy / paperweight. People who treat their devices properly like it’s suppose to be used as a tool will get the tool they want.”
Hallo?!?
Peolpe reading the ads of an palm-sized PC have the right to belive that ads are speaking of actual facts, not fantasy or hype or something planned not in 1998 but in 2005 (or i’ll buy it in 2005…).
What’s wrong in buying something that is supposed to work like a (palm sized) personal and instead is a toy that wipe memory when power fails?
If technology is not ready to back up ads claims, it’s quite a dirty move to sell toy devices that will, maybe, act like they claim in ads not before 4-5 years!
Back in the late ’90s it’s pretty much the only choice. Flash is incredibly slow, prohibitary expensive and can’t handle that many rewrites.
Oh come on. We’re talking about the late 1990s, not the late 1980s! The Franklin Rex existed around that time, and used flash memory. The Rio 300 also existed around then, and it also used flash memory.
Even if they were to install small amounts of flash back then, would you buy a PDA that says you can only keep 256 contacts because that’s the flash it contains?
The aforementioned Rex Pro (which was a relatively cheap, for the time, $180 product) stored 3000 contacts. Oh, its battery also lasted 6 months. The Rio had 32MB of flash, even 1/8 that is plenty to store lots of contacts and appointments.
If it takes like 5 secs for a search to come up it’s alright too?
5 seconds for a search to come up isn’t really that long. It’s certainly worth it knowing your data is safe. In any case, flash wasn’t that slow. The Rio 300 (which was on a parallel port) transferred 1MB in 7 seconds, and the Rio 500 (which was on USB) transferred 1MB in 1.5 seconds. Plenty fast for looking up contacts or appointments.
People who treat their devices properly like it’s suppose to be used as a tool will get the tool they want.
Good designers make products that stand up to how people will use them, not how they are supposed to use them. People don’t have time to babysit something that’s supposed to make their lives easier, and they won’t. Good designers take that into account.
This was not a dunb decision. Back in 1998/2000 when these decisions were made, it made sense to do it that way. PalmOS did that way, PocketPCs did it that way, and yes, Zauruses did it that way too
But the Newton, which pre-dated Palm, did not. When I moved from Newton to Palm, that was one of the big disappointments with the new device. It was much less capable, and losing all data when replacing the battery was/is bad design.
I completely agree with you Rayiner. It is probably one of the dumbest issues existing in [portable] computing.. it makes pdas imo completely useless. Having a pocket rolodex is safer, cheaper, and easier to use.
I can’t express this enough: even those with tons of contacts should only take up a few thousand bytes of memory. My sister doesn’t even use her’s because the damn thing loses power at least once a week. Just idiotic. I can’t believe people buy these things. Definitely a solution looking for a problem.
I wonder how often these things get stolen too. Sigh
I use my PDA for work every day and have never lost anything. But then again, I back up my data (something both Palm and MS strongly recommend). If your dad had practiced safe computing, he would not have lost anything…
Computing shouldn’t be like sex. It shouldn’t be inherently dangerous, requiring user precautions at the risk of disasterous consequences. It’s not like GM designs cars such that they’ll just spontaneously combust if sitting unattended for too long! Actually, Ford did that, but they got sued for it!
And that Zaurus switched to using flash a couple years ago, as far as I remember (after the 5500).
Since you seem to like car analogies….
It would be very dangerous to run out of gas in your car on a busy freeway in rush hour traffic. Should Ford or GM somehow design their cars differently so this inherently dangerous event cannot happen?
Given the physics involved, there is nothing that GM and Ford can really do if you run out of gas on the freeway. That’s not the case for PDAs. There is something manufacturers can do — the solution (flash memory) has been around for years. In any case, your analogy flawed. When you run out of gas, your car stops moving. This is both expected and logical. It doesn’t explode, however. When my iPod runs out of batteries, it stops playing. It doesn’t lose all my music! That is also expected and logical. People expect that without power their devices will stop working. They don’t expect that without power their devices will lose what was previously put into them. Almost no other electronic devices works that way.
A better analogy would be the airplane analogy. You would expect that if an engine on a plane explodes on the runway, the plane would have to abort takeoff, right? That is not the case. All airliners are designed to be able to take-off with one engine out. It’s more expensive that way, but safety is more important. Devices designed for storing critical data should be designed using the same sort of thinking.
If you had critical data to use with your PDA, it could be stored on removable storage. Compact flash storage devices, and later, SD/MMC could/can be used for persistant storage of applications, music, documents, etc., on pre-WM 5 devices and is still needed if you have enough data/applications to exceed the built-in storage.
In Palm original vision, the PDA is an extension of the PC, not a stand-alone device. The critical databases are stored on the PC, the Palm merely holds a copy that you can carry around everywhere. A loss of data on the PDA just means time to Hotsync. Nowadays the PDA is more powerful than many stand-alone PCs of the past, so people tend to view them as such. But the original Palm worldview is that your desktop holds the critical information. What do you do if your paper organiser with critical information is lost or stolen? With Palm, your info is still on the PC Palm Desktop and if you buy a replacement you only need one Hotsync.
PDAs like Palm or PocketPC have always been designed as devices that share information with a PC. It’s totally easy for them to synchronize the database with the PC. If you have “tons of valuable information” on a PDA without a backup, you are dumb. PDAs can break, get lost or stolen. For that reason, using flash memory would only encourage stupid user’s behaviour, like not syncing.
“For that reason, using flash memory would only encourage stupid user’s behaviour, like not syncing.”
What would be stupid in thinking that (what is claimed to be) the mass memory of the device would act just like the memory mass of your PC?
If we see something stupid in using memory mass of an handheld to store informations and not only like a PC peripheral we should also admit that it’s essentially stupid also the personal computing paradigm and stick on using computers like a peripheral of a mainframe because it certainly in that way we have better chances of data integrity, data availability, security, robust backup and disaster recovery routines, professional migration tools etc…
but if someone wants a personal, sell him a personal, not a termial, and if someone want an handhed personal vendors should sell to him an handheld personal, not a PC peripheral, or honestly say “actually we CAN’T build such a device, it will be possible and economically acceptably priced in 200x”.
Tell me why I am dumb for not using my PDA for a week, and discover when I turn it on that it was hard resetted…no matter if I have backups or not, if I have valuable data in it or not.
using flash memory would only encourage stupid user’s behaviour, like not syncing
This is like building a car that explodes once it hits 100kmh and say “build a car that doesn’t explode would only encourage stupid driver’s behaviour”.
…on my PocketPC, coz I left it unattended for a week…and I simply couldn’t believe (as well as my co-workers) that they put the data on RAM!!!! It’s one of those “no, no, they can’t be THAT dumb” moments…
Now I make daily backups, but still, it makes the device quite useless, as I won’t store any important data on it anymore, since I can’t trust it.
The Essence of Handhelds
http://www.palmos.com/dev/support/docs/zenofpalm/Enlightenment.html…
Zen of Palm is quite a good read anyway if you have some time spare 🙂
Brilliant link! Thanks.
Even if you lack time, the link adheres to its own zen so well, a skim of the headings is worthwhile.
Nice link indeed.
But there’s one thing that Palm and Pocket PC, as well as most handheld, share: most of the buyers use it for a while, then once the “new factor” is gone, the thing is forgotten.
For a couple of years now I’ve been asking the owners of these devices how much they use it and the most common answer is “I used a lot in the first 1 or 2 months, but now it’s in a drawer somewhere” or “I gave it to my little bro/my kid/my girlfriend”.
it stores the data alright, but not settings, etc…when the Pocket PC loses all power, it has effectively experienced a Hard Reset and the device is in the same condition it was when it was shipped from the factory.
My Zaurus SL5500 kept everything in RAM. It tended to lose everything fairly often because of that. My Sl6000 keeps everything in flash. Fab. Only, it’s not – flash isn’t like a HD. Writes take quite a long time, even today. So doing the usual stuff you do on a PDA (downloading email, etc) takes a lot longer. Startup times for apps are slower ‘coz the apps & libs aren’t in RAM anymore (ok, you can set quickstart mode that effectively leaves the program in RAM asleep, but it’s not quite the same).
The other downside of using flash for all data storage is that it will impact battery life. Writing to flash takes a lot more power than writing to RAM.
It’s all a trade-off. A better place for all that data is on an SD card…….download a few large emails, install a few nice extra apps (GCC, Ethereal, etc) and you can rapidly start filling up the meagre amount of storage PDA’s have built-in anyway.
My ipaq 4155 has never lost a single thing. It has a second battery which keeps RAM charged plenty long even though I can’t turn on the PDA. I use my PDA with WIFI alot and it kills the battery. I normally charge it once it shuts down on me and won’t turn back on. Yes Flash would be safer but I can back up my PDA to nonvol memory (ROM) on the PDA itself without the use of a computer. Even my old Palm 3 only had a complete loss of data once and then a sync brought it all back.
How long does your secondary battery last?
If it’s SRAM and not DRAM, it can keep state on 1 micrwatt of power, which is miniscule for any battery. Memory can’t be read on that power level, but it’ll maintain its current state. So, as long as you have a battery, or even a capacitor large enough, it’ll survive long enough to change batteries.
Two more posts from the team replying to the issues:
http://blogs.msdn.com/windowsmobile/default.aspx
From the blog:
Innovation
There have been a number of posts berating us for waiting until 2005 to do PS on PocketPC. We deserve those. I wish we had done PS a long time ago. No great conspiracy here. Just a ton of stuff to do and not enough time to do it all…
Some of the stuff we do is innovative. Some of the stuff we do is keeping up with the Joneses. This is how every single competitive product on the planet works–from automobiles to zoology…
No, there’s nothing innovative about Persistent Storage. If a marketing guy tries to tell you otherwise, send him to me. But PS is a good thing.
LOL. I like this guy. He seems to be a straight shooter
I find the power use part of the article interesting, and it does make sense to an extent. Since you have to refresh ram (wasting power on the discharge and chewing it on the charge) at a regular interval it’s one of the highest use items in a portable device…
My only concern would be exectution speed… Would the need for things to take longer to run offset the extended battery life?
Although I have to say, I question the wisdom of anyone who puts critical data on a battery powered device… Hard storage exists for a reason, and with the USB2 powered laptop hardrive external enclosures, there’s no good reason to not be able to back up something.