Home Projects Philosophy Hobbies About Me Updates

Head Cloud

We present to you a new innovative cloud platform. It's an application-as-a-service platform, with three layers, called:

The description of each of the layer follows:

System 0

This layer is practically invisible to our users, and it handles all the mundane physical tasks, such as power management, provisioning, temperature control, networking, repairs, and scaling, but also backups and disaster recovery. It's the oldest and most finely tuned of the layers, working perfectly on hardwired procedures beyond user's control. There is nothing you need to know about it other than that it simply works, and when it doesn't, you can't fix it.

System 1

This layer is our pride. It's the effect of years of work and evolution, a massively parallel cloud platform with unlimited scaling capabilities. As part of the System 1 you get access to a plethora of high-efficiency heuristic APIs for calculating approximations of linear and logarithmic functions, as well as some simplified approximations of other functions (they are just calculated using the linear extrapolation anyways). You get super-fast visual processing and sound recognition algorithms. You get instant spacial calculations in 2.5 dimensions (3-dimensional data gets automatically simplified). All of this is behind our bleeding-edge Fuzzy Cache™ technology, which detects when a similar computation has already been performed recently, and returns linearly interpolated cached results instead of performing the costly calculations.

System 1 also contains a state-of-the-art associative database, without any storage limits and automatically scaling to arbitrary sizes. Say goodbye to complicated SQL queries – with this database you only have one API call, and that simply takes a free-form string. It adds it to the database and returns the 50 most recent database entries most similar to it.

There is also a number of super-efficient approximate algorithms for data processing and statistics, working closely with the database. You want to know how many entries matching a given pattern are in the database? No problem, our algorithm will just call it with your pattern, and then estimate the numbers matching it by comparing how similar the results returned are to the pattern itself.

To encourage your application programmers to use this platform, there is a flat fee for using it. In fact, even if you don't run any calculations on it, our smart predictive algorithm will pre-compute calculations similar to what you most recently did, and fill the cache with them, so that you get an instant answer!

System 2

During the initial tests of the platform it was revealed that System 1 is not suitable for all possible workloads. In particular, it was exceedingly difficult to debug it and fix bugs in the applications. That is why with great effort we created the System 2. System 2 is a virtual machine running on top of System 1, providing a familiar, single-threaded, step-by-step procedural execution environment, with extensive introspection and logging facilities.

Due to the cost of this layer, the customers are limited to a single thread of of System 2 at a time, and billed by minute of using it. To avoid excessive costs, there is a quota on its usage – when it's exceeded, all calculation results are taken from System 1's Fuzzy Cache™ to ensure continued execution of the application.

Oh, and one more thing, due to the need for locking and un-parallel nature of System 2, it only runs at the speed of about 100Hz.


You think that's a programmer's nightmare? That's what actually all the usability engineers have to work with every day. This is the basic architecture of a human brain. And to make the user interfaces easy to understand, the tasks easy to perform, the directions easy to learn – we have to make sure we use the "broken" System 1 as much as possible, and only resort to System 2's help when absolutely necessary.