Some Nerdy Stuff

May 7, 2010

Will External SSDs Bring Portable Applications to the Mainstream?

Filed under: Uncategorized — aaronls @ 11:52 am

As high-speed external SSDs become more affordable, I expect we will see portable applications becoming more mainstream. External SSDs can provide the portability, reliability, shock resistance, and speed that is needed to make portable applications more popular among the mainstream crowd.

As of right now users have the choice of a flash drive or an external HDD. Flash drives often have horrible write performance which results in sluggish portable application performance, and HDDs are more easily damaged by bumping or dropping. Additionally some external HDDs have problems with overheating due to poorly ventilated enclosures.  These problems have prevented portable applications from becoming mainstream, and even for power users there are only a handful of must-have applications that they use.  Usually the poor performance makes the portable application a last resort where it is a must-have application that you just don’t want to do without, like a password manager, or a browser configured for optimum security.

External SSDs connected over USB 3.0 or eSATA don’t have the same problems. SSDs produce almost no heat compared to HDDs, are extremely shock resistant, and often provide read/write performance that outpaces both HDDs and flash pen drives.  Drives like the
OCZ Enyo External USB 3.0 SSD will provide these key features, and hopefully the 64GB models will be under $200.

There was a time when applications were heavily intertwined with the Operating System they were installed upon.  In Windows sometimes hundreds or thousands of registry settings would be written by a single application installation.  Over the years this has evolved and manifested itself in different ways as each newer version of an Operating System tightens security with new restrictions.  In Windows 7 various hacks are employed by the OS to allow legacy applications to continue to function, but the expected pattern is that the application installs to the Program Files folder, and only writes data to user folders such as Documents.

I expect the next logical step in this evolution will be driven by a demand for portable applications such that developers make applications portable by default.  This is in contrast to the current situation where most applications require a special build, platform, or hacks to get it to function as a portable application.  A portable application would not interact with the OS in any way during installation, and the files it writes out during installation are confined to a single folder.  Additionally, program data read and written during program execution would be confined to a user defined folder.  Such an application could still be installed to Program Files and user files pointed to the Documents folder, but now users also have the option of placing the application and data on a portable drive.

I think the portable SSD will bring a new drive for portable applications, and probably prompt desktop applications to adapt to allow for more reliable and user-friendly installation processes that are portable friendly.

We might even see improvements in virtual machines or bootable OS packages that make them more accessible to the lay user who wants to maximize the portability of their applications by also including the OS on their external SSD.  Properly implemented, this would allow someone the means to plugin an SSD to any computer hardware that is capable of supporting the bootable OS, regardless of what OS is currently installed on that hardware.

Of course similar flexibility could be accomplished by using portable apps that are compiled into cross-platform intermediate languages such as how Java or Flash is implemented.  Such languages generally require a runtime engine such as the Java Virtual Machine or Adobe AIR to be installed on the hosting OS.  Perhaps the key to solving this roadblock is to make the runtime engine portable as well, so that it can be loaded on demand from the portable media without installing on the host OS.  In this scenario, the runtime engine would almost act like a cross-platform bridge.  Of course the portable version of the runtime engine would be large and bloated as it would need to contain redundant builds for each target OS that is supported.

Buying a high performance SSD and enjoying the performance benefit of installing an application or game on that drive is one thing, but then being able to take that drive from your desktop, to your laptop, to a friends machine,  etc. and have access to that game or application on the road with the extra benefit of a high performance SSD would be awesome.  Now the only roadblock is when you plug that drive into a machine that doesn’t meet the system requirements of the game you have on the SSD 🙂

Regardless of what comes to light, I think we might see the availability of high performing reliable portable media in the form of portable SSDs become the driving force that brings portable applications to the mainstream.

Blog at WordPress.com.