The good thing about predictions is that they are benchmarked by time. In the technology arena some things are always being pushed forward into the future, until they ceased to be "cool", and some get to be back from the past to be cool again. Like Mobile and Client/Server. Cliff Saran wrote back in 2012 on this article the following setence which is really interesting to read now in 2015: "According to Gartner, CIOs will need to rethink application development by 2015 to refocus on mobile apps". OK, nothing new here. But the fun begins with this sentence:
"Client-side native code may be needed to achieve the desired level of user experience integration and performance".
Later on the same year, Dale Vile would write an article on The Register about the same Deja Vu feeling. He points out some very interesting insights about how the client/server computing model freed up, and made more democratic, application development back in the early 90's. The parallel is set for the motivations for then and today:
"Just as they did two decades ago, people are talking about ease of use, flexibility, and how great it is to be able to store your stuff locally or copy central data from the network so it is available offline when you need it."
The most impressive similarity about mobile application development and the "old" client/server computing model seems to be, according to Dale, on the fact that people need the same experience accross different devices and because of that you need to "translate" the code into its native form, locally. On the client.
Indeed times have changed a lot since the client/server model, but I must confess that the model before was "mainframe" like, where everything would be stored centrally, while "dum" terminals whould just be a windows into the crystal ball. "Terminals" today are everything but dum, specially high-end smartphones and tablets, the same ones that people use to play games whilst in planes. Or write (ever)notes. Or do email offline. In sum: work offline, knowing that on the next chance of being online, the app ("client") software will somehow make its way to sync up with the cloud ("server").
Today several computing models co-exist: mainframe (which IBM decided to rebrand for "mobile computing"), distributed, open, client/server, web, virtual, cloud, you name it. Due to the IT consumerization one thing is for sure: people want to be able to do more and more in mobile, but not giving away (just yet) the desktop/laptop. In order for mobile to grow more the world either needs to become more client/server, or always "on", always online. No wonder why companies like Google or Facebook prefer the later, as they are investing billions in making sure the internet reaches more and more people world wide.
For me, I just whish my ISP (which is also my TV, Mobile and Landline service provider) would stop patronising me in not agreeing that the internet is as vital as the water service (but not as important as electricity, let's be honest!).