Rethinking Atwood’s Law
In 2007, Jeff Atwood made the quote that was popularly referred to as Atwood’s Law.
Atwood’s Law
“Any application that can be written in JavaScript, will eventually be written in JavaScript.”
— Jeff Atwood, Author, Entrepreneur, Cofounder of StackOverflow
10 years ago:
As a Java developer, I couldn’t tolerate JavaScript. I always believed coding in JavaScript is a mistake. I actually preferred GWT where you write Java code.
When I first heard this, I felt Atwood’s law is a corollary of Murphy’s law.
“If anything can go wrong, it will.
where when you put Writing in JavaScript for Wrong you get Atwood’s law.
Now:
10 years has passed. I believe he is more correct today than ever. Almost everything that used to be desktop only, are available in the web. At present the number of desktop apps created are reducing significantly. They are being replaced by Web version and smartphone Apps.
JavaScript everywhere:
JavaScript is not only used in the browser, but also on the Server. Thanks to Node.js. Also Chrome team for open-sourcing V8 javascript engine.
You can build Android and iOS Apps with JavaScript.
You can even build Desktop apps with Electron.
Browser and the Cloud:
Although JavaScript apps can run anywhere, the primary driver for its usage is the Browser and the Cloud.
You interact with the browser, some or most of the processing happens in the server.
- Store data in the server.
- Access from multiple devices.
- Safe from data corruption
- More secure than many individual’s desktops.
- Use any number of CPUs for processing
The rise of Chromebooks despite its limitations shows the power of this model.
- Write documents
- Create Presentations
- Track expenses
- Chat
- Edit Photos and Videos
- Write Code
Almost everything is done in cloud through the Web or an App.
Hosting
Unless you are a super-big company, you don’t own your servers. Many of the big companies today were small startups once. For them, cash is the king. No one wants to tie them up by buying servers that depreciate quickly.
The applications have browser or smartphone App that connects to the cloud.
Today, I think Atwood’s law should be rewritten as,
“Any application that can run in cloud, will eventually run in the cloud.”