50 years ago, developers used to code directly to the underlaying hardware platform. This implied that if they were going to move their applications to another hardware platform, it would require a complete rewrite of every aspect of their own apps. Steve Ballmer was once asked what he thought of HAL from the movie 2001, a space Odyssey. At which he replied “HAL means Hardware Application Level for us in Microsoft, and is at the core of our ability to make money”. Ignoring the fact that HAL actually means Hardware Abstraction Level, the story implies a crucial historical turning point for software developers.
Before we had “Hardware Abstraction Layers”, we needed to write the same app, for every hardware platform we wanted to support with our app. After “HAL”, we could write our app once, compile it, and run it on a million different platforms. This arguably became the dawning of the “computer age”. In fact, similar arguments were used as the main selling points of both C++ and Java. When it comes to Web Operating Systems, they arguably supply the same function, except at a much higher level. Notice though, I catch myself at “renaming” Phosphorus Five once a month, and tend to sometimes use the category of “web application framework”. However, even though the overlap is obvious, there are some differences.
Phosphorus Five is a “Web Operating System”, and serves as a “host” for your applications, on top of the underlaying operating system. This implies that it doesn’t matter if you are developing on a Linux Machine, running Phosphorus Five on XSP4, building it on a Mac OSX machine, and deploying it to a windows IIS web server – It simply works, regardless of where and how you created it, or built it, or choose to run it! When it comes to devices, the same is true. If you have created a Phosphorus Five application (correctly), it’ll run just as well on an iPhone, Android, Tablet, Linux, Windows and Mac OSX computer!
When IBM developers created their apps back in the 50s or 60s, they probably employed dozens of developers, simply to create their “SaveFile()” function. Today we take it for granted that the underlaying operating system is capable of saving our files. However, today, as you create web apps, you still need to create some sort of Ajax mapping, between your server and your clients. In Phosphorus Five Ajax is simply solved. Today creating a dynamic C# web application is a nightmare, with Phosphorus it’s simply solved. And if there’s something needed from a lower level than that which Phosphorus Five supplies, no problem! Need to create a PGP encrypted email? No problem. Need a button on your page, that invokes the server when clicked? No problem!
create-widget element:button onclick do-something:with-some-argument
It doesn’t take a rocket scientist to understand that being able to create 4 lines of code, compared to writing 4,000 lines of code, to accomplish the same, makes you more productive. To the extent that I was able to create a fully fledged integrated development environment, with ~3,000 lines of code. If you compare it to the alternatives, I imagine they probably contains tens of thousands of lines of code, if not hundreds of thousands of lines of code – To accomplish the same as Hyper IDE does with 3,000 lines of code.
Maybe you believe this was because of that Phosphorus Five is geared towards developing IDEs? Well; There’s also a PGP webmail client in there somewhere. There’s also a CRUD app creator in it, etc, etc, etc. Phosphorus Five is at its heart a general purpose web application development framework, and it allows me to create almost anything, up to 1,000 times faster, than anything else out there does – To the extent of that the question of whether or not you need a Web Operating System, is arguably condensed down to the following …
Do you want to be 1,000 times more productive?
And that’s really what it’s all about …