Friday, January 2, 2009

NaturallySpeaking 10 test drive

Hello.

I suppose I should actually do a blog posting about Dragon NaturallySpeaking. I've been using Dragon NaturallySpeaking, now, for about six months. The version I'm using is version 10. I got at the moment it came out. In fact I actually bought it before Amazon Canada managed to get any stock of it.

I have to say that the speech to text engine is really quite impressive. And I can easily get two hundred words per minute. I suspect a lot of the reason for this is because I speak with a fairly common northeastern American accent. A friend of mine who has a sort of Québecois French Canadian accent and he had a lot of trouble getting Dragon NaturallySpeaking to work for him. I think he had to take pronunciation courses in order to get it to work at all.

Installation went fairly smoothly. I don't really like their installer, though. It doesn't have a progress indicator on it. Well, that's not completely true. It does have a progress indicator on it but the progress indicator doesn't actually show progress. It starts at the beginning and then fills through to the halfway and then goes through to 100% and then starts over again. I didn't count how many times it did this but it was enough to be annoying. The first time the progress indicator came up I was using it to gauge approximately how long it would take to do the install. I could just hear it laughing at me when it started back at zero again. Ha ha. You thought I was done.

When you use Dragon for the first time it does sound checks and make sure that the microphone you're using is of good enough quality. I use the included Dragon NaturallySpeaking microphone and was rather surprised to find out that it failed the quality test. This turned out to be because I had a second microphone plugged into the back panel of my computer. It was using the crappy microphone that was included in the computer instead of a Dragon microphone. Doh!

My dad was curious to try it as well. Since he has a different accent from mine I was curious to know if it would work as well. At first he tried use Dragon on 64-bit Vista. It didn't work. Apparently it doesn't support 64-bit Vista. It won't even install. booo.

My dad then tried it on his desktop computer. While it installed fine, we couldn't get past the voice quality test. Unlike me he didn't have another microphone plugged in. I spent some time trying to figure out what was wrong. I could record just fine in a third-party audio application. The microphone sounded great! Unfortunately Dragon and just wouldn't work with it. I still don't understand why.

In desperation we tried it on his other laptop computer. This time it worked flawlessly. I'm still annoyed that it didn't work on his 64-bit Vista laptop or his desktop computer. I don't understand why didn't work on his desktop machine. It's most perplexing. All of this means that Dragon only successfully installed on half the computers I tried it on. That's kind of depressing. I would make sure you can get your money back just in case it doesn't work.

My dad reports that it works great on his older laptop computer. It recognized what he was saying almost perfectly. At least this means it works with a hybrid British and American accent (which is what my dad has) without problems.

Integration with random applications doesn't work as well as with the included DragonPad application (which looks like a modified version of WordPad). I'm actually okay with this. It's not a problem for me to dictate all my text and then copy and paste it where I need it. It would be nice if DragonPad would transparently save as you go, though. I've actually had Dragon crash for no apparent reason on my machine and I lost a bit of work.

That brings us to stability. The software seems kind of flaky, in my opinion. I have a fairly high standards when it comes to quality of applications. Most of the time it's not unstable enough to become a bother. The most common error I get is that every once in a while it pops up with some kind of dialogue about how it can't run the speech analyzer or something. I have no idea what the error means. If I close the application, restart it then run the speech analyzer manually it works just fine.

You do find yourself fiddling around with a microphone and other settings in order to get it to do recognize your speech better/faster. I've been having problems with Dragon inserting the word "him" every once in a while when I'm not saying anything. You may have seen this on one of my past posts. Go ahead, laugh. I don't mind. I fixed this problem by tweaking the sound driver I was using and also changing the "speed versus accuracy" slider setting in Dragon NaturallySpeaking's preferences.

The package I got was the most basic one. It didn't have things like integration with Microsoft Word. As a result I can't tell you how well it works with Microsoft Word. It works tolerably well with most applications and text entry boxes, however. Sometimes it doesn't insert a space when it should. Some other times it doesn't capitalize a letter like you would expect. Sometimes it just bugs out in a way that's so weird I can describe it. These problems don't exist to the same extent in DragonPad. I would expect that integration with word would be similar.

Dragon NaturallySpeaking does tend to use a lot of RAM. It looks like its using about 256 megs. My machine has 2 gigs of RAM. I didn't notice any problems I could trace back to lack of RAM. I'm surprised to find out that a program that uses as much ram as it does isn't 64-bit yet. On the other hand maybe I shouldn't talk since the program I work on, InteleViewer, is even more ram hungry but isn't 64-bit ready yet either.. at least we *run* on a 64-bit OS, though.

My processor is a 3.2 Ghz Core 2 Duo monster machine. Dragon runs fast on this machine as you would exepect. One thing I did notice, however, was that it wasn't threaded. If you're running on a multiprocessor machine Dragon will only use one of the processors to do it's thing. That means if you're trying to figure out if your machine is fast enough, don't count the number of processors you have. It really doesn't matter. Dragon recommends a 1Ghz CPU with SSE2 support and at least 1 Gig of ram.

My dad's old laptop uses a 1 Ghz laptop processor and, reportedly, works fine.

Dragon NaturallySpeaking definitely improves with training. Going through all the included training texts will improve accuracy. Dragon can also go through your old e-mails and documents to learn your writing style, which help quite a bit too.

The biggest problem I have with Dragon NaturallySpeaking is that I often speak too quickly. Dragon seems to be limited to about two hundred words a second. Faster than that and it tends to lose words. I tend to speak considerably faster than the average person and slowing doing to only 200 words a minute is quite an exercise in self control. Dictating at this speed give me two realizations. The first is "Wow, I speak really fast". The second is "200 words per second is insanely fast compared to typing!". Writing these blogs posts now takes a fraction of the time.

So there you have it. Apart from the odd quirk or two it actually works very well. I'm a happy camper.

By the way, this post, and the last few posts too, were dictated using Dragon.. so any mistakes you find our it's felt. :-) <= real dragon error there

Thursday, January 1, 2009

Market caculus


I am very surprised to see that Microsoft is still having trouble selling Vista. I would've expected, by this point, it would have been the uncontested operating system.

Every time that Microsoft has released an operating system there has been some resistance to it. Others, like Windows ME were a flop. Operating systems, like windows 98 SE and Windows XP were, eventually, a great success.

What does it take to have a successful operating system? Why did some operating systems do better than others? What I want to concentrate specifically on is how a company can release a follow-up and have it fail to catch on.

Let's look at word processors for moment. Word processors are like operating systems when it comes to whether or not their follow-ups will be successful. If I buy version 1 of a word processor I make a natural assumption that version 2 will be similar, better, more stable, have more features, and most importantly will be backwards compatible with all the files that I wrote in the previous version of the word processor. It will, in essence, be a better version of the product that I already own.

Let's say I buy version 2 of the word processor I really like. Version 2, however, does not work at all like version 1. It's, in fact, completely different. It doesn't have the bugs of the old version but then again it has brand-new ones. It has new features that the previous one doesn't but then again it's missing features that the previous one had. Finally, it doesn't read the files created by the old version. In a situation like this, I would argue that this is in fact a brand new product.

What is the difference between a version 2 of an existing product and a competitor (completely different product)?

Is it the name? Is it that I know I'm getting something with at least as many features as the previous version? Is it that I know will work with my old files? Is it that I know it will work in a way that I like and am used to?

If any one of these things is missing will it be a true version 2? How many of these things does it need to miss before calling it version 2 becomes a lie?

Instead of looking at version 1 and version 2 of the product why don't we just think of each version as a completely new product. By looking at it this way, version 2 of a product is actually in competition with version 1.

Version 2 has a lot going for it in its competition with the existing version of itself. For one thing it's called version 2. This naturally implies that it is like the previous version in every way that matters only better. While we could be a bit pedantic and assert that this is not necessarily the case, this is exactly the impression we give when we name a new version of a product version 2.

What does version 2 have to its advantage when in competition with other word processors in the marketplace? Well, if you didn't like version 1 because it was missing a certain feature then why not try version 2? It might have the things you need.

When someone is upgrading from version 1 to version 2 things that they are interested in is

1 -- I assume it still works the way I like.
2 -- Have they finally fixed that bug that annoys me?
3 -- I assume it is compatible with everything else that I'm running.
4 -- I assume it has all the features I need.
5 -- Does it have any new, useful features that I want or can make use of?

When someone is looking to switch to a competitor the things that they are interested in are

1 -- Does it do everything I need it to? Does it have all the features I want?
2 -- Will allow me to use my existing files?
3 -- Is it robust enough to be usable?

(Note: someone buying their first version of the work process or does something very similar to the person looking to switch from a competitor. The main difference is the competitor is something that is not a word processor. Another possibility is that this is the first time they have done anything that would require a word processor. In this case what they can do is ask people's advice and ask only question one.)

The barrier to go from version 1 to version 2 of an existing product is almost always lower than to switch to a competitor. The reason for this is because upgrading an existing version tends to be a drop-in replacement. So long as you're version 2 is a drop-in replacement of version 1 and doesn't do anything stupid like take away existing feature or make things that used to works just fine in the previous version now not work due to bugs, people will always upgrade.

If the barrier from version 1 to version 2 is high then the mask used by consumers to decide whether or not to upgrade becomes progressively more similar to the math they use in order to decide whether or not to switch to a competing product. If version 1 and version 2 are different in ways that matter to the consumer than the decision to upgrade or not becomes indiscernible from a decision to switch to a competitor.

The opposite is also true. If a competitor comes out with a product that is a drop-in replacement to an existing product but with more features, fewer bugs, fully compatible and a streamlined workflow that consumer is more likely to see a competing product in terms of an upgrade to their existing product. If you have such a product, all you need to do is wait for your competitor annoying their user base enough and you are practically guaranteed that your market share will increase (assuming you are known as an competitor).

Over the lifetime of a product the calculus of whether or not to invest developer time in a new feature or refinement of a good and existing feature slowly changes. When a market is new the overwhelming drive should be to add new features and to try to grab as much market share as possible by adding the features required by each segment of the marketplace. As the product matures it will have enough features for every segment of the marketplace. When that happens the competition becomes more about refinement to those features and about the features themselves.

This switch from competing on features to competing on the refinement of those features can occur very rapidly. As soon as a segment of the market (a niche, if you will) is satisfied with a given feature set they will tend to start to switch their purchasing decisions to be based more on refinements over features. It's not always obvious what the niche is our because nieces are dependent on feature sets rather than any other kind of categorization.

I think the way to play this game is to map out the niches available to a product is in terms of feature sets used (structured in terms of workflows used). Using this map you can then get a handle on which niches are the easiest to target in terms of how easy it is to implement the new features required to have a product for that niche. You then compared this to how many users (and how much money) you can make in that niche.

Once the market is saturated you need to shift to targeting your competitors by making the transition to and from your competitors as painless as possible.

Notice I said to and from your competitors and not simply from your competitors. The reason I say this is because it's very easy to switch to and from your competitors and there is no risk for your clients to switch to. It is difficult to go back then you need to be significantly better for your competitors before your clients consider going on with you. The reason is because it is far riskier for your clients. If you're competing in the marketplace we are far, far superior then you don't need to worry about going back to your competitors. If you're working in a marketplace where the differentiation between your competitors and yourself is small then you need to worry about the fact your client is taking a risk. If you're product was drastically better they would go with you but since it's not a fear of switching will win out over the potential benefits.

(I could go on on this topic for long time. If you're interested in this sort of thing I would recommend reading "Crossing the Chasm", and "Inside the Tornado" by Geoffrey A. Moore.)

How does all this play out with Vista and XP? Well, let me ask you this: what is the new feature in Vista that will make you upgrade from XP? Let me also ask you this: what's the downside to upgrading to Vista? Will your drivers work? Will your programs all work? Will your hardware, scanners, printers etc... all work? Is Vista more robust than XP? Is Vista faster than XP? Does Vista to work like XP? (I actually know the answer that question! It's no. Sure, it's similar but the answer is still no.) Is there any compatibilities with Vista and XP? Like CD-ROM formats? Like network problems?

And there you have it. People aren't buying Vista because it creates problems and it doesn't offer anything compelling enough to justify fighting through the hassle.

I think Microsoft is too concerned with coming out with something different. If they just came out with something slightly better than XP they be able to sell it. If they reduce the memory, increase the speed, improve the experience of setting up a network (!!!) And they probably have enough to endear themselves to the consumer space. If you do that, though you can't break backwards compatibility. The thing is, I don't think Microsoft has the ability to come up with something slightly more compelling than XP. The company is undoubtedly geared towards large features and sculpting its software based on user feedback. In order to go beyond that they would need to pull user feedback and go do some real usability testing. Anyway, maybe I'll elaborate on that later.

How will this Vista upgrade disaster interact with the 2 gig / 64 bit barrier? Will the need to address more memory be Vista killer feature? yuck.



(Funny enough, years ago when Apple transitioned from Mac OS nine to MacOS X I switch to Windows. I've never regretted that decision.)

(Yay, no wikipedia links in this one!)

Wednesday, December 31, 2008

The 99.99999% done problem

I don't know what exactly causes it but some things are hard to finish.

Consider programming projects. Have you ever been on a project where... Actually, maybe I should stop right there. Have you ever been on a programming project before? Oh.. Well, in that case I'm going to pick another analogy.

Have you ever written a story or book or something? Well, as you probably have observed, getting the first draft completed, while nice, doesn't mean you're finished. Depending on how much you care about the final version, you'll go through many other drafts. The text will be written and rewritten each time getting better. It may take more time to go from the first draft to the final copy than it took to get the first draft in the first place.

From the point of view of someone who has never written, this may seem weird. How can it take more time to go from the first draft to the final version than it took to get the first draft? Well, for professional writing it can. It depends on how good you want the end product to be.

This sort of thing happens on software projects too. In fact this sort of thing almost always happens on software projects. The bigger the project the more likely, in fact. What happens is that there is a big difference between having all of features in a project working then having all the features in a project working to the point where you can sell it as a product.

Here are the usual things that need work before you can release it to the general public:

1) Error Handling.

Error handling is one of those things that doesn't add any obvious features, that no one wants to plan or think about, but that people yell about when it's missing.

When you're working on the code, you'll notice that some function or other can fail. Any network call, any disk IO function can fail, for instance. What do you do if there's an error? The most common thing to do is just to put up a dialog box that says "I can't do that because something bad happened." but this is rarely the right thing to do. The right thing to do is to try and recover.

For example, if you talk to the central server and there's an error, can you try another server? Can you simply reconnect to the server and restart the communication? This sort of thing is hard to plan out and implement but the users love it. It means that the software can automatically recover from errors without the user having to do anything.

2) "Minor" UI tweaking.

When finishing up an application "minor" UI tweaking often gets dropped by the wayside. The reason for this is once you have a bare-bones basic UI to access a feature everything else just adds time to the schedule. What adds to this, is that either nobody cares about the UI or everybody gets to add their two cents to the UI. In both cases the UI will end up sucking.

3) Bugs!

The difference between the number of bugs you find if you have one, ten, one hundred, one thousand and one million users is impressive. We seen this happen with our product at Intelerad. The more places we deploy our product to, the more bugs we get back. What's impressive, is that this product has been on the market and in use for over five years. The bugs we get back are ones that were introduced five years ago. These bugs have lurked in the code for over five years. The reason we are only getting them now is because the larger user base the more people there are using it in different ways.

People don't report bugs as a rule. When they do report bugs it's because either they're the kind of person that reports bugs or because the bug is blocking their work. The more people use your product the more likely that someone will find data but is blocking their work. Also, the more likely that you'll stumble upon someone who will just happen to report a bug. People who report bugs for the fun of it are extremely rare. I would say there much less than one in a thousand. As a result, you are still gaining many of these people as the total number of people using your product goes past a hundred thousand.

A you could release when there were only a thousand people using it can be more buggy than if there are one million people using it.

A product that is usable for demoing purposes can have many more very hard to find bugs that I product that has to be released to the general public.

4) Scalability:

It is far easier to build a web site/ service for use by a tiny number of people than for a large number of people.

Intelerad know how hard scalability is; it's one of our specialties.

Jeff Atwood does too.

.. so I'm not going to dwell on it.

If you want to cut corners, not making your site/application scalable is a great way of doing it.. unless you need it then you're doomed.

Thursday, December 11, 2008

Mmm cookies


Okay, so it's finally all gone. I have finally got rid of all my cookies. I am very happy as I thought I would never give them all away. You see, it all started on Saturday when I decided that I'd make a triple batch of chocolate chip cookies. I was making chocolate chip cookies for the company charity auction. Every year Intelerad, the company I work for, set up an auction site on the company LAN and employees can put things on the auction site and sell them to other employees. The idea is all proceeds go to charity. It's quite a lot of fun, although it can be quite distracting at times. I don't have any scientific data but I'm pretty sure most employees spend their time simply watching auctions and trying to snipe one another on various goods.

I don't like to buy things in the charity auction so much as sell things. I think this is partly because I don't like to buy things period. At any rate, what I usually do is cook up a couple of batches of chocolate chip cookies and sell those on the auction. I can't figure out why exactly, but everyone seems to like them almost to the point of farce. They sometimes act as if my chocolate chip cookies or some kind of drug. It's quite flattering, but also really silly. The recipe I use the one you find on the back of the Nestlé chocolate chip package. Many people have tried to equal my cookies but apparently all have failed. I'm not entirely sure how.

The weekend before the auction I decided to make a triple batch of cookies. I like making a large number of batches at once because it takes almost the same amount of time to make a triple batch or quadruple batch of cookies as it does to make a single batch of cookies. Making larger batches is better because eventually you end up with so many cookies you can start to make little houses out of them or put the, in long lines, all over your furniture (what? Only I do that?). After you finish playing with them you can then give them away and make lots of friends.

In the end, I couldn't make any cookies over the weekend and so I made them late on Monday night. On Tuesday, I took in the cookies I made the previous night and started putting them up on the auction site. I amused myself way too much putting cute, little, nonsensical descriptions of the cookies on the website. I would sell them in units of two or three cookies each. This works well however, I was putting in way too much work coming up with cute descriptions that I got tired and stopped. I then realized that all my auctions have it in time approximately 7 minutes from each other. This guaranteed that I would be bothered almost precisely every second minute when somebody coming to collect their cookies and chat. While fun, it made doing code reviews much more difficult. On Monday I got through about two thirds of the first half of the three batches of cookies. (For extra points, what fraction of the total number of cookies was that?)

On Wednesday I somehow tickled a bug that stopped me from making more than one auction at a time. Every time I created a new auction all it did was modify the last auction it created. I started selling cookies in larger batches feeling a slight twinge of panic that I might never be able to get rid of them all. On the plus side, I got slightly more done that day. I say slightly more because Wednesday was chilly day and I got involved helping others get everything ready. Chilly day is a great day. It's a almost spontaneous outpouring of food. I love spontaneous out pouring of things.

Today, Thursday, I managed to figure out how I tickled the bug and started to make multiple auctions again. This time I omitted the cute descriptions and placed the end of each auction at least fifteen minutes apart and often up till thirty minutes apart. This makes creating multiple auctions very quick and it only took me a fraction of the time it did on Tuesday. What is more, the end of the auctions were enough apart that they weren't a perpetual distraction. I managed to complete the work I wanted to do that week during that day and so it was a very productive. (I say this in case there are any Intelerad employees reading this)

Thursday also marks the last of the cookies. I am now officially out of cookies. I hope the cookie junkies don't come after me now.

Saturday, October 18, 2008

AHCI and freezes during startup while detecting SATA devices

You know how sometimes you're dealing with a computer problem and you find yourself trying a bunch of things, almost randomly, in a desperate attempt to try and get it to work? There's a name for that. If you're doing that while writing a program it's called voodoo chicken coding. If you're doing it while trying to debug some sort of operating system problem then I suppose it's voodoo chicken troubleshooting. it's called voodoo chicken coding (or troubleshooting) because you don't actually know what the problem is that so it is trying a bunch of random things to get it to work. It's the equivalent of mumbling things to the gods while waving some kind of voodoo chicken over the computer in a vain attempt to get to it to work.

This is not a good strategy. Even if you do manage to solve the problem this way it will probably reoccur again since whatever you did to fix the problem probably just fixed the problem by accident. (I say this coming from a background of trying to debug heavily threaded software).

What is not often stated, however, is that knowing how a system works can sometimes be of no help either. I recently had a problem on my PC where the computer would freeze early in the startup process while the BIOS was still scanning for IDE devices. I ran into this issue I was trying to switch my SATA bus over to AHCI. AHCI stands for Advanced Host Controller Interface. It's a newer protocol for talking to serial ATA devices that offers more features than the normal parallel ATA protocol such as hot swapping and native command queuing. I wanted to enable this on my internal hard drive for two reasons: 1) I thought I already had enabled it at some point in the past. 2) I wanted to enable native command queuing because it sounds cool. 3) I need to enable it in order to run the Mac OS which I've been trying, unsuccessfully, to get running on my computer since I bought it about a year and a half ago. At least part of the reason I haven't managed to get it running is because I haven't managed to get my computer running with AHCI.

Anyway, I turned on AHCI in my BIOS I started getting this freezing problem when the BIOS was scanning the SATA bus looking for new devices. I was a bit confused because as far as I know there's absolutely no way that anything I had done to the hard drive, in terms of formatting or partitioning or installing software, could cause this problem. Scanning for new devices shouldn't be reading anything on the hard drive. That's just weird. Well, it turned out that this was indeed the problem.

After trying everything I could think of I decided simply to wipe the drive in a voodoo chicken debugging attempt to try and get the system to recognize the hard drive without freezing. Amazingly, after doing a low-level formatted the drive and rebooting it worked fine. I still don't understand why this is. Why the heck is it reading off the drive during the device detection routine? Well, I don't know. Anyone want to explain this to me then feel free. Anyway, I'm just happy it's working now. Native command queuing is indeed cool!

So, I'm not sure what the moral of this story is. I think it is that once you've eliminated everything as being impossible the only thing that's left is the impossible, which is impossible. This in turn means you have absolutely no clue what you're doing and might as well start trying a whole bunch of random stuff that shouldn't work.

Now if you'll excuse me, I have some chicken stew to eat. yummy!


Sidenote: Switching from parallel ATA to AHCI requires installing drivers under Windows. Unfortunately installing drivers under Windows requires AHCI to be enabled. Enabling AHCI renders Windows unbootable unless it has the drivers for the AHCI controller installed. This is a very fun situation as it means you can't install AHCI drivers until AHCI is enabled and you can't load Windows if AHCI is enabled. I managed to get around this problem, on my machine by using my two SATA controllers to enable AHCI on the second controller, install the drivers in Windows for this controller, then manually change the hard drive over this this second controller. I then rebooted Windows under the second controller and turned on AHCI under the primary controller. I then moved my hard drive back to the primary controller and start up my machine again. And that effective all these shenanigans with the have AHCI enabled on both controllers and a half the drivers for these two AHCI controllers installed and enabled. There are apparently ways of installing the drivers by booting up from a CD-ROM or other startup disk and then inserting a floppy drive with those drivers at some point. I didn't bother reading up on how to do that as the above methods seemed far simpler to me.

Thursday, October 9, 2008

Computer issues

Arggh! This is driving me crazy! Is there anyway I can actually get any work done without being thwarted by stupid, little computer issues.

Yesterday is was trying to setup an FTP server on my WindowXP machine. This is pretty much a single click operation on MacOS X (not including the usual NAT shenanigans) on windows it took forever.

  • The user manual was wrong.
  • The IIs FTP component needed to be installed separately.
  • There's a hidden button for setting the file sharing permissions into "simple" (read useless) mode. For some reason, the document doesn't mention that certain menu items in the MMC sharing controls don't show up in simple mode. grrr..
  • The sharing controls are hideous and there's at least one hideous violation of standard UI widget behavior that blew my mind. For the curious it's a checkbox on a settings dialog that doesn't represent a setting but an action to do when you apply the settings. Someone apparently figured that since they were writing code that did actions (like saving settings) when the user clicked ok, that the dialog represented the actions to take when hitting ok instead of the state of the preferences that are mirrored when the user pressed ok.. grrr.
Today it's open office. I wanted to finally start fixing up one of my long text documents - adding things like style information and a table of contents. I opened up the file and spent 3 hours or so adding style information and a table of contents. Just a few moments ago I reopened the document to start adding content again. Humm, all the style information had gone. Did I open the wrong file.? nope, all the textual information changes were still there, just the style information. I looked at the file type: txt!

You have got to be kidding me.

Apparently, OpenOffice was fine with me adding the text style information but had no intention of actually saving said information.. Or even pointing out that I was adding text style information to a text document. Which makes no sense!

Last time I used microsoft word (version 5.0 mac) it didn't do this. The behavior was to stubbornly insist that if you wanted to save to something other than word's default format you manually go through the save-as process each and every time. It insisted on warning you that you might loose formating information each and every time. In the end one tended to give up, write the thing in word's native file format and save-as something else before sending.

I believe that the modern version of word will actually warn you that the specific things inside your current document can't be saved to whatever you've chosen. I might be wrong on this, though. I haven't been able to get past the modern version of word's interface. Where are the keyboard equivalents listed???

Photoshop won't silently save a file with layers or other non-savable info to a png (ie: it won't loose your layers silently). I can't think of any program that would have allowed me to just waste time like this in all the years of using a computer. This is a first: a completely novel way of destroying my data.

Thankyou Open Office. Thankyou, you stupid, useless application. May the idiot that responsible for destroying my data suffer some sort of miss-fortune... like loosing his data while using Open Office in the same way.

Wednesday, October 1, 2008

US healthcare documentary

I just finished watching the Frontline documentary. It talked about the US healthcare situation. Basically, what the documentary was about was how healthcare is done in five different countries. It contrasted this against how healthcare is provided in the US.

Healthcare, in US, is very inefficient. The health expenditure per capita in the US is basically twice what it is in most other countries. That's really quite spectacular.

I don't live in the US, however I get the impression that the health care debate is incredibly politicized there. It looks like this is making it difficult for them to make any progress with their healthcare system. That's a shame.

I live in Canada. Our healthcare system has had it's share of problems recently. From what I gather, most of these problems have stemmed from underfunding. This underfunding was in turn caused by a need to service a large national debt. Now that the debt situation is under control funding is increasing again. It looks like we're doing pretty well.

Canada wasn't one of the five countries in the frontline documentary although Wikipedia apparently has an article comparing the Canadian and US health care services for those interested.

Think of it, with all the money Americans would save they could buy a couple more maglev trains. You can never really have enough maglev trains.

I like maglev trains... and efficient healthcare ... and Wikipedia. :-)