Save? Not In My Memory...

I have moved to Google Docs entirely. Dropping the Microsoft Office all together. And I am not going to do yet another comparison of the one to the other. Emphasizing just one, fundamental paradigm difference instead.

The lack of the "Save" operation.

We were living with the old paradigm of Load / Save / Save As for 30 years, since 1981 to 2011. But it is gone. Forever. I am really not sure how it started. Probably with editing the OS batch files. UNIX vi or DOS edit. There was a file on a disk. The disk was the nonvolatile storage holding the data, when the computer was powered off. The data was organized in files, files were chains of disk sectors. A processor could not change the data on a disk character - by - character. It had to write the entire sector, or the entire file. To edit, the file had to be loaded into the RAM memory, manipulated there character - by character and then saved. And this paradigm continued on to office packages, like the Microsoft Word. Building on the file - to RAM - and back to disk paradigm, the Word introduced the save operation. It was fundamentally different from that of typewriters. In Word, you could be typing for 8 hours and then lose everything. When you did not save the file.

The save operation seems natural for us, long time computer users. But it is not. Save is a workaround, something that was needed back then in the early 1980s. But not today.

In Google Docs whatever you type, is always saved. It is being "saved" continuously. Or maybe even not saved at all. We even don't know if Google servers have disks. They are never off, that is for sure. So they may not need disks. Anyway, from the user's perspective, there is no save operation. Like in a typewriter. Whatever you type, is there. The natural way to be.

But because computers are more capable than typewriters, the Docs give us more functionality. With every document we can go back in time. Have it, like it was a minute ago. Or five minutes ago. Or yesterday. Or before others working simultaneously on the same document introduced their changes. See? There is no save, it is implicit. But there is a way back machine, which is explicit.

The paradigm of implicit save and explicit way back machine will be coming to programming frameworks too. And will affect the programing languages being widely used today. Especially as the new types of memory (FeRAM and ReRAM) soon become mainstream. The old model of working memory and storage will disappear. Taking the old .NET and Rails and most of today's frameworks with it, to the oblivion.
jack = User.new
jack.name = "Jack"
if jack.save
 # save success
else
 # save error
end
will be gone.
jack = User.new
jack.name = "Jack"
will be enough.

What is more. The coming memory revolution will expose the hidden weaknesses of the most popular programing languages today (have I said Ruby?). Their poor performance. Disks have been slow. The save operation is orders of magnitude slower than everything else today. So it hides the inefficiencies of the language itself. But what happens when save is no longer needed? Your crawling - tortoise - Ruby will become the bottleneck. And you will have a hard time catching up with your old school Java - based rivals. Do not be surprised when you spot the tide turning back.

Comments