The importance of having a web presence

I have a neighbour who emailed me the other day. His email signature said “John Smith – JSmith Insurance. 801-123-1234.” I was curious, so I googled his name. Nothing came up. I googled his name and business. Nothing. No matter what I typed, I couldn’t get any information on Google about him. Maybe it shouldn’t have surprised me, but it did. Designing and putting up a basic website wouldn’t take more than about an hour. Sure, designing custom graphics or animations might take more time, but to design something basic with business and contact info would be simple, and would probably greatly increase his number of potential clients. So, honestly, if 1 hour of my time would help his business, why don’t people do it? I’m not really sure why actually. Maybe he doesn’t realize just how easy it is. Or, maybe he doesn’t see the value a website might offer. Maybe he’s in the yellow pages :) . Who knows, I haven’t opened a yellow pages in probably 10 years.

Sure, I actually work in the tech field, so I’ve coded lots of websites, including multiple revisions of my own, along with my brother’s, and father’s, but I’m not what you’d call a real web designer. I just know how to hack some code together. I’ve never really studied HTML, PHP or other web languages, I usually just learn how to do what I want to do on the fly. It’s different when you don’t know how anything works on the web, or when you don’t have either a techy friend, or the money to pay someone to do it. I get that your average Joe Schmoe wouldn’t make the effort, but when you have an actual business that your family’s income depends on, having a website should not be optional.

(yet another) new phone.

HP wanted to compete with Apple and Google. Rather than just make hardware and license Windows, they wanted to own the complete product, both hardware and software. Rather than create this all from scratch, they decided to buy Palm for $1.2B. They of course then used this technology to create the HP Touchpad, and we all know what happened there…… Because things didn’t go as planned, they decided to stop making webOS hardware, and focus on just the software (Palm’s webOS). webOS’s future is now uncertain. HP has mentioned either licensing it or selling it, but with Android being free, and doing really well, they’ve probably struggled.
Of course, when HP manufactured their own phones, they required that all employees with a company phone have an HP phone. This makes sense. They’re not going to buy their own employees a competitors device. But, just in the last week, HP decided that since they were no longer making their own devices, they’d approve non HP phones. That means I now have a Samsung Galaxy S2, and it’s amazing!

I love it. Being a lover of Linux, open source, and most things Google, this is the perfect device. I was a longtime Android fan before joining HP, and it was something I missed over the last 18 months.. Sure, with Android there are so many devices coming out that soon this won’t be super high end, but right now it’s pretty much the best Android device available. It has a great screen (4.3″ 800×480), 1GB of RAM, and probably the best SoC available (similar overall to the A5. Better CPU, worse GPU). It uses a 1.2 Ghz dual core ARM A9 CPU with a 4 core ARM Mali GPU.

Sure, the new Galaxy Nexus will probably be a little nicer phone overall when it comes out next month, but mostly just because of the software and screen. The SoC (TI OMAP 4460) in the Galaxy Nexus is actually inferior to the Samsung Exynos 4210. I’m fairly certain that Google picked the TI OMAP as the Android 4.0 lead hardware because it would be fairer for other device manufacturers (especially their newly acquired Motorola Mobility). TI doesn’t make their own phones, so all their OMAP chips ship to other companies like Motorola and Nokia. Samsung will sell their chips to other companies, but the bulk of their chips go in their own devices.
Regardless of what may or may not come out in the future, I couldn’t be happier. My work approved and paid for the exact device I would have chosen for myself anyway! The only downside is that I had to switch from Verizon to AT&T to get it :(

It’s crazy, but in just the last two years this is my 7th smartphone (all company bought!).

At my last company I had an HTG G1. We then switched to Verizon and I got the original Droid. Then when I switched jobs to HP and got an HP windows mobile phone. Then, HP bought Palm, so I got a Palm Pre plus. Then They upgraded me to the Palm Pre 2. Then I requested to switch from Verizon to AT&T (so that I could use my phone in India), so I got an identical Palm Pre 2 for AT&T. And now finally, I upgraded to the Samsung Galaxy S2!
All’s Well That Ends Well :)

GNOME vs Ubuntu

With today’s release of Ubuntu 11.04, Ubuntu has officially diverged from the default GNOME.
For those of you who don’t know, in the open source software world (free software) there is no single company that does everything. In Windows, Microsoft creates everything (with possible exceptions of codecs etc..). Apple is sort of a merge of the two. It has a lot of proprietary software, but has also taken a lot from the open source community (X.org, KTHML, CUPS, GCC, openSSH, etc..)

While Ubuntu is a complete operating system, Canonical (creators of Ubuntu) write relatively little code. Sure, they have a few special things in it, but, unlike Apple and Microsoft, they get all of their code from what is called ‘upstream.’ Upstream refers to software developers who write complete program that are then included in operating systems. For example. Firefox is an upstream. Downstream in this case is Ubuntu. People who use Ubuntu aren’t getting Firefox directly from Mozilla. They receive it from the downstream, Ubuntu. If the Ubuntu developers find a bug in Firefox, they can either report it upstream (to Mozilla), or, hopefully, try to fix it and submit a patch (also to upstream). Then, when Mozilla fix the issue, or accept the patch, they will release a new build of Firefox, and here comes the magic – All downstream people will get the improvement. This includes all Linux distributions, but also the official Windows and Mac builds of Firefox. Sounds great right? The code is fixed once, and the benefits are reaped by all. This is precisely why open source works. Why reinvent the wheel. All of the above also goes for the other software in Ubuntu: the Linux kernel, OpenOffice (though now it’s Libreoffice), GIMP, VLC and of course, GNOME.
GNOME plays a huge part of Ubuntu. GNOME is a desktop environment/graphical user interface. By using GNOME, Ubuntu essentially gets a bunch of its code for free. That’s precisely why it was a bit strange that they announced that they’d be replacing a big piece of GNOME with their own in-house Unity. There are many reasons for this, but the majority are philosophical differences of opinion. Basically they wanted a little more control. Sure, there’s more competition now, which can be good, but it means there are less open source developers working together.

Gnome-Shell (which comes with the new GNOME3)

or Unity, now default starting with Ubuntu 11.04

 

There are obviously quite a lot of similarities, and they both require hardware acceleration. It’s certainly a good time to be a Linux user. GNU/Linux distributions are now not just about stable and secure, they’re also about pretty!
I have been using Arch Linux for a while now, which means I’m using GNOME3. I’m sure Unity will be available in one of the community repositories, but for this I think I’d rather put my trust in the original upstream.

protecting personal information

 

For reasons that aren’t important, I bought 2 cell phones yesterday (rundown, they were for other people).
The sellers were both in their 20s and I contacted them both through craigslist.

One of them worked a technical job at an Engineering firm. The other probably worked at Walmart.
So, the purpose of the story. Both of the phones I purchased had hundreds of contacts, text messages, photos and emails still on the phone.
Are people seriously stupid? The first thing I did when I got each device was do a factory reset. It took me all of 20 seconds to do it. Why aren’t people concerned about these things?

So, a word of advice, don’t just assume the guy buying your stuff will be nice enough to do a factory reset. Do it yourself.

All browsers created equal?!?

A statement that hasn’t been true since the release of Firefox 1.0 is now truer than ever. It’s shocking to think, but Microsoft have actually released a good browser (Internet Explorer 9). Now, as expected, this browser only runs on Windows (though they did drop support for Windows XP – due to it not supporting DirectX 10). This is fine, as I still wouldn’t use it, but it’s still a very good thing, as it means that non-technical people who never even thought to upgrade to Firefox/Chrome will have a good internet experience – And that’s a large part of the population. Once people start upgrading, web developers will be able to design much better websites that don’t have to conform to old, broken, IE6 non-standards. Even on some of my webpages, I have a check that says: Is this Internet Explorer? if so, do some stupid simple layout, else, do a cool layout (that’s too complicated for Internet Explorer to figure out). Now with IE9 this shouldn’t be a problem. So, while I wouldn’t use it, it’s still a great thing for everyone. To explain it another way, most web developers want to code a website that works across all web browsers. To do this, they have to only use the web-standards that everyone supports. If you used a feature that Firefox supported, but IE didn’t, you’d get a site that didn’t work on 50% of the population. Not practical. To put this in terms of numbers, there’s a web standards conformance test that everyone uses. It’s called the ACID test. It is basically a site that’s designed to see how well your browser conforms to HTML standards, and gives you a score out of 100. Go here to test out your browser.

Just to give you some idea of scores:

Previous versions (for comparison)
Firefox 3.0 – 71
Internet Explorer 8 – 20

Stable versions
Firefox 4.0 - 97
Internet Explorer 9 – 95
Chrome – 100
Opera – 100
Safari – 100

As you can see, All the current stable releases score >95. This is great, and a couple of points shouldn’t really matter. But, just look at Internet Explorer 8′s score of 20. It’s pathetic. (and to think that Internet Explorer 6 and 7 scored less!).

But what’s almost more surprising is how Firefox is losing marketshare (mostly to Google Chrome). I used to use Firefox for everything. But that’s because back then they were the best, and there weren’t so many options. Once Google Chrome came out, it wiped the floor with Firefox (speed-wise), and, more importantly, they have a lightning fast release cycle. They release a new version of their browser every 6 weeks. They have a really clever way of releasing too, they have a stable, beta, and developer version. Basically, and features that they want to add to the stable build, first get added to developer build. Gradually, they promote features from the developer build to beta, and then to stable. It’s a brilliant idea (and one that Mozilla is now going to copy with Firefox). This is exactly why Firefox has suffered recently. Lets say they add 50 new features for a new version of Firefox. What happens is 47 of those features are great, but the other 3 have some issues. The entire release gets delayed while those 3 remaining issues are worked out. With Chrome, the 47 working changes would get pushed quickly from the developer build to beta and then stable, while the 3 broken changes would stay in the developer build (with an optional flag to enable them). It just sounds so logical. Anyway, because Firefox pushes so many features per release, they are ALWAYS delayed. Something that has allowed Chrome to overtake them. Had you asked me 3 years ago, I would have told you that I’d never switch away from Firefox. Still, I always recommend Firefox to anyone who asks, as it’s got a lot more marketshare than Chrome, and web developers always make sure their site works well with it. If i’m taking an online test, or filling out an important government online form, I switch back to Firefox. Just in case.

I know the past is in the past, and technically now that Firefox 4 is out, it’s fairly comparable to Chrome, but it’s been lagging (particularly in speed) compared to Chrome for over 2 years. That’s a long time. Over those 2 years they’ve lost a lot of users (me included). Many of those users won’t switch back now. Lets hope they can copy some of the good ideas from Chrome and create more competition.

If any of you read browser tests (or benchmarks), you’ll hear the word ‘javascript speed’ tossed around. The inventor of javascript works for Mozilla, so you’d think that they’d do really well….. but you’d be wrong. They’ve been the slowest (not counting Microsot) for years. Microsoft’s IE9 actually beats Firefox 4, which is disappointing. Also of interest, Mozilla copied the javascript engine open source code from Webkit (Safari). So not surprisingly, their performance is going to be very similar to Safari. I asked a Mozilla developer why they chose to go this route. See my previous post here. I think they should have taken Google’s open source V8 code, but Mozilla claim that it was simpler to integrate Nitro.

As a separate, unrelated note, one thing I hate about Firefox is that they don’t prioritize Linux users. The Firefox 4 build has several features (GUI and hardware acceleration) that aren’t yet available in the Linux build. Very annoying. Luckily for me, Chrome does a great job on all 3 platforms. Google has a vested interested in Chrome on Linux because they’re developing ChromeOS (a netbook Operating System based on Linux)

are there updates available?

Everyone who knows me knows I love technology. I love everything about it. I especially like the fact that in the last few years most products can now receive updates. Computers always received updates, but not much else. Now I update everything. My computer’s BIOS, firmware for my hard drives, firmware for my TV and AVR (Receiver), my printer, and it goes without saying that I update my consoles, phone and desktop OS.
We live in a world where products can be improved for free and with little effort. Unfortunately there are a few downsides:

  1. Companies know that most people don’t update their hardware, so sometimes they have no incentive to make improvements.
  2. Companies sometimes deliberately ship products with buggy/slow software, because they know they can fix them later with an update.
  3. Updating software/firmware can sometimes cause regressions (meaning it can make your product worse/slower than before the update)
  4. Sometimes a company would rather you buy their next generation product, rather than give you the update for free.

I’ve seen all the the above situations. I have a really great WDTV Live media player.  I love it. It has a Sigma SMP8655 chip that has hardware accelerated decoding of everything.

Basically I just plug the device into the TV via HDMI, and then connect a hard drive (that has media) to it via USB. It plays everything. Pretty much any format and all resolutions upto 1080p. Possibly the thing I like best about it is how power efficient it is. It can decode a 1080p film using <5 watts. It goes to sleep when off, and wakes up in around 3 seconds. Unfortunately Western Digital has been pretty horrible with updates. The problem is, Western Digital have releases 6 different versions of the device. The first (WDTV) was a reasonably good media player. The second (WDTV Live), which added more memory, faster CPU, and an ethernet port (with support for youtube, pandora etc..), then a 2nd generation of the FIRST product (WDTV gen.2), then a crummy cheap version that doesn’t play HD (WDTV mini), then a product that’s IDENTICAL to the WDTV Live, but which also adds support for netflix (yes, they screwed all original owners forcing them to buy an entire new device). Now, they argue it wasn’t their fault, as they needed to use a slightly different version of the Sigma SMP8655 that allows encrypted netflix content, but seriously, they should have thought about this earlier, and used the right chip on the original device. You’d think I was done, but no, they just released yet ANOTHER device (WDTV Live Hub). This time with an internal hard drive.

Now, I have no problem with them releasing a new version if it’s substantially different (or improved), as they did by releasing a version with a hard drive, as it clearly caters to a different market (I personally don’t want an internal hard drive, I’d rather stream or connect my own). My problem is that they released the new version with a significantly better user interface. It’s way better. The device uses the exact same chip as the previous WDTV Live plus, so it would be very easy to port back the improvements. They didn’t, and I now hate them. There’s nothing worse than getting screwed for being an early adopter. It’s because people like me bought the original Western Digital devices that they’ve been making newer, better models, yet this is how they repay us?!

Now, I know what Western Digital would say. They’d say “We only have a small team working on media players, we can’t possibly release updates for all 6 products, and have to give our latest release priority.’

The problem is, their argument is fundamentally flawed. A company like Western Digital shouldn’t be making 6 very similar devices. They should be making 1 or possibly 2. Just think of how Apple does things. They’re (by comparison to Western Digital) HUGE, yet they have an extremely small portfolio. They make 1 media player, 1 phone. Now yes, they do make a few different iPods and laptops, but those models are substantially different. Massive differences in size, cost and features differentiate them. That is because the market requires it. Some people want the best laptop for $2000, others want a cheaper laptop etc… Some want a $1000 laptop, but I don’t believe for a second that there is a market for 6 different media players $70, $80, $100, $115, $150, $200. They should have just 2. A version with a hard drive, and a version without. I understand that a company will release new models (usually yearly), but when a company does that, they discontinue the old model, and only sell the new one. They are usually never meant to go head to head with the old model. The iPhone 4 doesn’t compete with the iPhone 3GS. Just look at the wikipedia page for the WDTV. Their models are released a few months apart. The other huge issue with this model is that they’re confusing customers. When someone buys an iPhone 4, they KNOW that the following year, the iPhone 5 will come out. There are no surprises. If WDTV had released a device and said “soon we’ll be releasing a 2nd device that adds this feature” then I’d be fine with it. But the WDTV Live device that I bought was supposed to be their flagship device. Still it does technically do the things I need it to, and has a great hacking community. On the one side, it’s unfortunate that a device built by a company with millions of dollar in R&D budget can be outdone by a couple of guys in their parents basement, but on the other side, I get a better product through hacking it, so why complain!

Yet another mobile phone

Those of you who know me know that a little over six months ago I started a new job at HP working on their Web Print Solutions team. Leaving my previous job at a startup meant giving up my old phone (Motorola Droid). It was a great phone. One that I’d only had for about five months. During the transition, I temporarily bought an old HTC T-Mobile G1 with a month to month plan. I had that for two months until HP got me a phone on their corporate plan. Working for such a huge company has many differences vs the average startup. First, they actually produce equipment that you use. Rather than buying everything from other companies, you can order many things from yourself (internally), and save a bunch of money. Because of this, if HP makes a version of something you want to buy, it’s usually expected that you get the HP version. Usually this doesn’t matter, as I don’t really care if my computer monitor is made by HP or someone else. There aren’t going to be too many differences. But, in the case of a mobile phone, the differences are huge. I was only given the option of one phone on one network. Unfortunately for me, the options were both bad. It uses the worst ‘smartphone’ operating system (OS), on the nation’s least reliable network. The reason for the lack of choice? HP builds their own phones, and have only released them for AT&T. It would obviously look pretty bad if HP employees didn’t use their own phones.  Now, as I’m sure you’re wondering, “why can HP force you to get a certain type of phone!” Obviously they can’t force you to buy a certain type of phone, but they can restrict what types of phones they give their employees. Due to my job, HP pays for my phone (and plan), so it’s only fair that they choose what it is. Thus, my only choice was to get an HP iPaq Glisten on AT&T.
I am a current HP employee, so I probably shouldn’t be too critical. But I’ll say one thing. They’re using Windows Mobile 6.5, and I believe Windows Mobile 6.5 to be truly terrible. HP, being mostly a hardware (and services) company didn’t have their own mobile OS. Most mobile OS’s aren’t for sale. Apple and RIM won’t licence out their OS for use on HP hardware. So really, there were only 3 options:

  1. Build their own OS
  2. Ship with a licensable OS, such as Windows Mobile (or, more recently, Android and Symbian)
  3. Buy a phone company that already owns its own mobile OS

Which did HP do? Well, they started out doing #2. The problem here is that they were entirely reliant on Microsoft to do a good job for them to have a successful product. As we all know, the iPhone came out a little over 3 years ago, and blew Windows Mobile out of the water. So HP was left with a huge problem. They had an inferior product because Microsoft had dropped the ball. By only controlling the hardware, HP could only do so much to compete against the iPhone (and more recently, Android), so it wasn’t their fault they had an inferior device. The solution? Either switch to Android, or buy a phone company. In July 2010 HP purchased Palm Inc. for $1.2b, thus giving them the very capable mobile OS named webOS, along with a whole bunch of useful patents. Now HP  controls both the hardware and software.

So, what does this all have to do with me? Well, since HP now owns Palm (and webOS), Palm phones are now on the approved list of devices for HP employees. This means that I’m now able to get a Palm prē + (in doing so, I’m also able to switch to Verizon Wireless, the best national carrier! hooray for no more dropped calls!). The choice was really a no-brainer. I was given the choice between the Palm Prē or Palm Pixi on either of the available carriers (Verizon, Sprint or AT&T). Obviously Verizon is the biggest/best carrier, and the Prē is clearly Palm’s flagship device (having a significantly superior CPU/GPU over the Pixi). Also worth noting is that the Palm Prē came out first on Sprint. 6 months later, it arrived on Verizon and AT&T with double the RAM and flash memory (512MB RAM and 16GB Flash), redubbed the Palm Prē plus. So by choosing Verizon I not only got the best network, but also the best version of the Prē.

So, how do I like it so far? While it’s obviously miles better than Windows Mobile, I do admit I’m still a fan of Android. Having said that, webOS is an extremely capable OS. To be honest, my major gripes with the phone are actually hardware (read: all easily fixable). The main issues I have with it are screen resolution (480×320, which is very last-gen), and the small screen (3.1″, also last-gen). With all recent Android devices being 3.7″ or bigger, with at least 800×480 resolution, this screen feels a little cramped. Also, the CPU feels a little underpowered. It’s the same CPU as in the original Droid (though it’s underclocked to 500Mhz). And the Droid has obviously since been replaced with the Droid 2. All recent Android smartphones have been coming out with 1Ghz CPUs, and having ‘just’ a 500Mhz CPU is noticeable. Still, two great things are the RAM and Flash storage. Both are as good as any other device on the market (with the exception of the $300 iPhone 32GB). The keyboard is decent, and usable despite being of the small portrait variety, rather than the more common landscape kind. Another downside is the fast that the touch screen is plastic (versus almost all modern smartphones that are now hardened or Gorilla glass).

I actually don’t have too many complaints for webOS. It’s an extremely polished OS with a great user interface (UI). It has clearly been designed to compete with the iPhone. In many ways it trumps it. Multitasking is perfect, and there are a number of great ideas and keyboard shortcuts. Cut/Copy/Paste is great, as is Synergy, webOS’s way of combining contacts from numerous sources such as Gmail, Facebook, Exchange and Yahoo.

The obviously downside to not having sold too many devices is the fact that the Palm App Catalog has only a small fraction of the apps that Android and iOS uers have, but, if HP can deliver great hardware in the coming months, users with flock to it, which will in turn bring developers.

The biggest loser in all of this is of course Microsoft. They’re had nothing good to compete with the iPhone for 3 1/2 years, and because of it they’ve lost HP, Motorola and most of HTC, as customers. Microsoft’s new mobile OS, Windows Phone 7 is set for release this month, which will be the first time Microsoft officially supports capacitive touch screens (disgraceful huh?). Honestly, how does a company with a research and development budget the size of Microsoft’s take 3 1/2 years to catch up with Apple?
I’ll tell you why. Some companies, such as Apple and Google are creative companies. They create something better because they can. Microsoft, being the dominant player in most markets doesn’t need to take such risks. They merely need to maintain what they have without taking too many risks. Then, if a competitor releases a significantly superior product, Microsoft has time to ‘play catchup.’ Obviously this isn’t good for the consumer, as we’re all reliant on the Apples and Googles of this world to provide innovation. I’m getting off topic here, but just ask yourselves why Microsoft fired the Internet Explorer team after they released Internet Explorer 6. Why? Because there was no competition, Netscape was dead. Why did they bring them back to create Internet Explorer 7 (many many years later), simply because Firefox was released. If Firefox had not been released, Microsoft would not have improved Internet Explorer 6. Ever. Ironically, I remember when Internet Explorer 7 was released. Mozilla (creators of Firefox) made the statement “Internet Explorer 7 is the best release we’ve ever made.” (obviously implying that the only reason IE 7 was released was because of the competition they’d created with Firefox).

Will Windows Phone 7 be good? Probably; but it had better be after almost 5 years in development. The problem is, I don’t want to use Microsoft products because you then become tied to a company that only innovates if they have to, rather than because they want to. I really believe that if the iPhone (and Android) had never been released, WP7 would never have existed in its current form. They’d probably still be using a stylus. If WP7 is good, it will all be thanks to Apple and Google.

Finally, a professional chess program for Android!

Those of you who read my blog know I’m a big fan of Linux and all things open source. That’s one of the reasons I like Android. As I mentioned in a previous post, I contacted Stefan Meyer-Kahlen (the author of the Shredder chess engine) to see if he’d port Shedder to Android. Shredder has been released on far more platforms than any other successful engine, so I figured there was a good chance. Upon the initial release of Android, all apps had to be coded in Java. This is fine for most stuff, but it’s terrible for chess engines for two reasons. 1) 90% of chess engines have already been coded in C (or C++) and porting to Java would not be financially worthwhile, and 2) Java, as many of you know is not a native language. In runs in a virtual machine, and cannot possibly perform as well as native code. Obviously when writing something as computationally expensive as a chess engine, you’d never even consider coding in Java (unless your performance wasn’t a priority).

So, a little while after the launch of Android, Google made an alternate Native Development Kit (NDK) available allowing applications to be coded natively. This is obviously the perfect choice for any high performance program. I emailed Stefan asking if he’d consider porting to Android and, as you can read in my prior post, Stefan wasn’t too impressed with Android so far, and had spent the time developing an iPhone version instead.

Well, good news today, as Stefan was kind enough to remember our email exchange and wrote to me personally to inform me that he has released an Android version of Shredder into the Android Market. For those of you who are interested, here is the email.

Hello Mr. Williams,

Shredder is now also available for Android mobile devices. You can play against Shredder, analyse with him and solve chess puzzles. It offers the usual Shredder standard for your pocket.

Finally a professional chess program for Android.

Shredder for Android is only available in the Google Android Market. Simply search for „Shredder Chess“ in the Android Market on your Android mobile device to find Shredder.
Best regards
Stefan Meyer-Kahlen

I was quick to reply with a few questions about the port, and here is that reply. Yes, he misspelt my name yet again, but…

Anthony,

yes, it is the complete and native Shredder 12 engine written in C. The same engine is also in the iPhone version, so they will be equal in strength.

Best regards
Stefan

I have used Shredder on Android (and on Windows Mobile, iPhone, iPad, Linux and Windows), and while it is a great engine, the Android/iPhone ports (which are nearly identical) is clearly aimed more toward the casual chess player, unlike other versions of Shredder that are aimed at the Chess enthusiast and professional. This is in part because potential customers are iPhone and Android owners, and are probably looking for a casual, cheap, graphically pleasing chess program. Most probably don’t care that the chess engine is 2800 ELO strong. Professional chess programs for Windows Mobile, however, (Shredder, Fritz, Hiarcs etc..) have traditionally been aimed squarely at the chess enthusiast and even IM/GM level. They have lots of extras like opening books, tactics, puzzles, endgame and some even allow you to switch out the opening book and even the engine. Granted, these programs generally cost $50. Knowing that the App Store market already had numerous chess programs, Stefan rightly knew that the sweet-spot for apps in the App Store is under $10. Shredder is priced very competitively at $5.99. I highly recommend Shredder for Android. I hope it sells well and warrants the effort Stefan spent porting it.

The cost of engineering

I read something very interesting the other day while looking for a Firmware update to my Samsung LN46b650 HDTV.

An owner of the same TV as me was asking (on a forum) Samsung to release an updated firmware with support for more codecs. The Samsung rep. replied that it was an older model, and that engineering effort was mostly spent on newer and unreleased models. Sounds obvious so far, right?
Here comes the funny part. The user replies:

“I would be willing to pay for the requested firmware update to defray the companies costs”

Does anyone else see how realize how stupid this sounds?

Having worked as an Engineer at several different places I can tell you that engineering a new firmware is no quick and simple task. It usually requires a Project Manager and depending on the size of the project, it can take between a few and dozens of Engineers. Then it takes lots Quality Assurance testers who verify that there are no regressions, and finally, it requires a Release Manager who approves the final release as ‘Production Ready.’
So, given the fact that the firmware is already available and a few features just need to be added does simplify things, but you’re still talking possibly thousands of man-hours. Even if one Engineer could do this upgrade by himself, it would still require lots of testing (imagine if an ‘update’ broke your TV!). All in all, you’re probably talking tens of thousands of dollars for a fairly simply update. Something that one individual user is hardly going to fund. Seriously, what was this guy willing to pay. $10? That pays a single engineer’s salary for about 12 minutes.

This isn’t the case with software updates. How many of us have downloaded a software ‘update’ that screwed stuff up? Probably all of us. The difference here is that you can usually fix a software update with another update (or hotfix). Firmware, however is different. Because it sits right on top of the hardware, it can do much more damage. It would be quite easy, for example, for a firmware update to break its own ability to update, so, the new firmware doesn’t allow further updating. With software, this can happen too, but there’s nothing stopping you from uninstalling and reinstalling an older version. This usually isn’t possible with Firmware.

It just goes to show that for a great Engineering product, you generally need to be selling millions of devices. How else can you afford to spend millions on Research and Development? Thats what makes my change of job so drastic. My last two jobs were very small startup companies. The first (http://novadrill.com/) had just a handful of Engineers, and we were each our own QA. They ended up being very successful, selling to a much larger company. The company had some good technology, but it needed to sell to one of the big players. In fact, it was always intended to be sold. There was never a plan to get to market alone. They knew they’d need lots and lots of funding, and that meant being bought out. The initial funding was really just to create products that could show great potential, and interest some of the big players. Now I’m at HP working on Eprint. There are literally hundreds of people involved. Every week I’m on a conference call with people I’ve never heard of. There are entire teams of people in multiple different countries working on different parts of the product. Of course, HP is only investing this much money on the project because they know that each year they sell millions and millions of printers. That means several things. 1, they will very quickly have a huge customer base, and 2, they want an extra edge over the competition, and obviously they wouldn’t mind getting their own app store.

VLC 1.10 released

VLC is one of those apps that almost does too many things. Most people use it to decode (watch) videos. But VLC can also encode, stream, transcode, and runs on Windows, Linux, Mac, BeOS, and BSD.

While I use Linux exclusively at home, I’m often required to use Windows at work and when I use other people’s computers. For this reason I love using cross platform apps. OpenOffice.org, VLC, Dropbox, Firefox, Google Chrome and Pidgin are some of the more successful variants.

VLC 1.10 was released today, and it’s a big release. In fact, it’s codenamed “The luggage”
The main improvements are HD Hardware decoding (Windows and Linux), improved MKV support, support for WebM, and of course, it’s faster and more stable. To see the other changes, check the changelog.

One of the reasons VLC works so well on multiple Operating Systems is because it uses the QT toolkit (is a cross-platform application development framework). This framework runs on almost all Operating Systems including Mobile variants like Symbian and Maemo. If you use VLC on Windows/Mac, be sure to update. If you use it on Linux, you’ll have to wait for your distribution to add it to their repositories, which in the case of Ubuntu will mean waiting for Ubuntu 10.10 (yet another reason I use Arch Linux).