Back from Hades

People who buy iPads are not going to suddenly start chewing through “Moby Dick”, when the videos of urinating monkeys can be summoned in mere seconds at the click of a virtual button.


A couple of holidays and bang! the flu hits you like a hammer. Ouch. But I am recovering and getting back into the game (kindly passing the virus on to my sweet wife 😉 )

Apple released the iPhone 4.0 SDK to developers yesterday. Lots of nice features in there. In keeping with the Apple tradition they will release a product that lacks “obvious” features completely, only to add them when they have the correct solution. Multitasking is a great example (like Copy-Paste before it) – you look at the solution, then you scratch your head thinking – “Now why did the others not come up with THAT!?”

But the Apple-mania is starting to get on my nerves to be honest. The iPad is supposed to “change the world” and revolutionize the printing press. Well, to me it’s an oversized iPhone with less functionality. To me it’s really more of a fashion statement or an expensive widget than anything else. If people read – I mean really read – books, they already have a Kindle; people who buy iPads are not going to suddenly start chewing through “Moby Dick”, when the videos of urinating monkeys can be summoned in mere seconds at the click of a virtual button.

Apple is also engaging in open warfare against poor old Adobe Systems. Adobe created this system to convert flash into native code for the iPhone, thus bypassing Apples refusal to put Flash on the iPhone (which would KILL the app store). This workaround was halted with the new SDK terms.

Apparently the gauntlet has also been dropped when it comes to Google. iAds is now on it’s way, and all the gaming industry must be shivering now that there is also a GameCenter in there.

Pros and Cons of Web Interfaces in Video Surveillance Applications

Wow – longest headline ever.

A very common request is a web-based interface to the video surveillance system. An often used argument is that the end user won’t have to install anything, and that the system is readily available from a variety of platforms, after all – works on macs, PCs, my 5 year old cell phone and my wife’s spanking new iPhone*

Most people are probably familiar with ActiveX controls that are needed when streaming various video formats from a camera to a web browser. While you may not think that you are “installing” anything (since the ActiveX or plugin does not necessarily appear in the Add/Remove programs window), you actually DID. A piece of executable code was downloaded and written to your hard drive, not unlike downloading and running a regular installer. ActiveX controls may require numerous supports DLL’s, which will be downloaded on demand. So even if the installation method is a little different for ActiveX, you are technically installing something on the machine.

The ActiveX controls are platform dependent (you can’t use a windows control on a mac), and they present a security risk unless managed carefully, but then there are Java Applets. These are sort of platform independent,  but can be (always are) a little slower than ActiveX. Adobe Flash is another option, but it won’t work on my wife’s iPhone, the same goes for Silverlight.

Although the second part of the argument is technically true, there are some costs to bear; although getting text and static images on the screen using baseline HTML is trivial, interactivity and streaming video is a different beast altogether. A commonly used technique is AJAX, which pretty much boils down to issuing requests asynchronously to a server using a XML object, but the XML object differs from browser to browser, so you need to write two different pieces of code to accomplish the same feat — on the same OS! Granted, the handing of the different browsers is well documented, and libraries exist that helps the developer overcome these annoyances, but for all intents and purposes, we have just doubled the number of platforms (IE and “everybody else”). The same applies to CSS, and even PNG handling.

Some companies will happily put together a “web solution”. But if you are still pretty much locked into Windows, IE, and you STILL need to install a bunch of ActiveX controls, what’s the point? Often the web solution is a little less useful than the traditional Windows application since the developers are limited to the browsers capabilities, whereas the old-skool application can pull all the levers in the system.

Recently Adobe added GPU accelerated video playback to Flash, and HTML5 is supposed to support H.264. Javascript is now very fast on a wide range of browsers (IE 9 was shown at MIX10 and looks promising, Chrome has always had fast JS). So perhaps a viable solution for desktop PC’s and macs will be available before too long.

*actually she has a Nokia phone, but I needed to add the iPhone in there somehow.

Focus Groups?

I am pretty sure that day to day interaction between clients and developers is the best way to develop useful, and remarkable products.

Here is what Jonathan Ive said

So how did the company decide what customers wanted – surely by using focus groups? “We don’t do focus groups,” he said firmly, explaining that they resulted in bland products designed not to offend anyone.