4 ms·
PushState, for example, is not a bandaid In the sense of overall web architecture, it is a bandaid. You're using an imperative language to change the state of
by gambler 14y ago
PushState, for example, is not a bandaid
In the sense of overall web architecture, it is a bandaid. You're using an imperative language to change the state of the page, and then you're using imperative language to fake moving from one page to the next. If you want the whole things to be crawlable, you also need to have extra code that generates the new "page" as if it wasn't a result of client-side manipulations.
Did you ever ask yourself what would it take to go the opposite way and efficiently represent client-state changes by page navigation? Not that much, especially which proper technologies built into the browser.
In many cases such as WYSIWYG editors, which he mentions, Javascript is the only way
There is nothing wrong with using WYSIWYG editors written in JavaScript. However, they shouldn't interfere with standard functionality, such as spell-checking.
It wouldn't hurt if such a popular control was built into browsers either, rather then re-implemented hundreds of times.
I particularly disagree on the last two points: These days, Javascript and CSS is minified, sprites are used on basically all popular sites and content is gzipped.
That doesn't stop people from writing inefficient JS code or simply loading too much stuff. Open this with FireBug, for example: http://www.smashingmagazine.com/ http://www.smashingmagazine.com/ . That is one of the leading websites on webdesign. What is there to expect from corporate pages and various product (i.e. movie or game) websites?
Try browsing on Kindle (not Fire) to see which websites really are efficient and which ones aren't.