While it does leave out server rendering time, that could not possibly account for several seconds of difference. TTFB could maybe be increased by 300-500ms… 1/10th of what gains are happening here
I'm not OP, but I don't think the argument is even about rendering. The whole point of SPA, if I understand correctly, is to send the javascript/data and then dynamically create the web page client side (with minimal updates when data changes). Javascript is fast, but a server can dynamically generate HTML in any language. Most server side languages and/or frameworks will be written in faster languages than Javascript. Additionally, you don't need to wait for the browser to deserialize the JS before it can start generating the HTML.
So the benefits of server side generation is no need to deserialize the code that generates the page and locality to the data. I'm guessing these two things are the biggest contributors to the speed ups.
I guess "server side rendering" is a bit of a misnomer, since you're not getting a rendered image, but rather a functional web page. It's possible I've misunderstood the whole SPA vs server side rendering arguments as well and my entire argument is invalid ¯\_(ツ)_/¯
In the Stack Overflow survey it looks like the top 8 frameworks are all JS, C#,and Java. Flask, Django, Laravel and RoR start coming in after all these frameworks. So it looks like most server side apps are either JS or something faster like C# or Java.
Also this is if you check professionals. It's pretty similar for all respondents, but Flask and Django rise above spring and ASP.NET, although ASP.NET Core is still above those.
But most of the desktops, notebooks, phones and tablets doesn't have 3GHz, 50Mb L2 processors coupled with Gb/Tbs of RAM and local (compared to the client requesting the page) storage.
I used to hire in a shop that did a lot of Ruby and if we were hiring for a junior position, Python was perfectly acceptable as a language to know. Knowing a dynamic language, being the type of person who teaches themselves, and being able to have visible code was what really mattered.
We found that we could drop capable juniors in a project that has some senior leadership and they were able to pick it up quickly.
Yeah, I won't learn something because somebody might think that I'm a jerk for knowing it. This is mostly due to an uninformed, judgmental, and very specific piece of the populace who won't let something go from several years ago.
Sencha and jQuery Mobile seem to be solving two very different problems. jQM delivers something that works across a variety of browsers that Sencha is not capable of serving to. Doing this will limit some of the solutions that can be put into place, for certain.
I find that with the insane amount of meetings and interruptions I might face in any given day that don't contribute to "coding time," this works really well to ensure that I'm getting things done and to keep my mind fresh. I can then engage on the business side of things later without having that nagging feeling in the back of my head that something needs to get done.