4 ms·
I must say i'm constantly surprised by the negativity towards changes in technology by the technology oriented crowd. More specifically, the pure negativity. So
by fizzbatter 11y ago
I must say i'm constantly surprised by the negativity towards changes in technology by the technology oriented crowd. More specifically, the pure negativity. So many (here included) constantly shout negativity towards these technology concepts (SPA, in this case), and thankfully also citing what they're negative specifically about.
What i'm surprised to see though, is that so few focus on improving the tech concept (SPA). I see so many complaints, but so few fixes. I don't think SPA is inherently bad, not by a long shot. It's just that, like any young idea it is far from perfect. But, that's technology! It's how advancement goes.
As technology goes, we tend to take two steps forward one step back. But it's often for the sake of _progress_. I have a Moto 360 on my wrist as i type this, but do i consider it amazing? God no, it has some nifty features sure, but it's massive and i can't even see what the time is without turning it on.
Take that in for a second - i have a watch and i have to turn my wrist and bring it up to my face to see the damn time. But do i think that it shouldn't exist? God no. When i got my first "smart" phone it was also awful. If i followed the (seeming) mantra of these negative people, i'd have been shouting for no smartphones phones and no smart watches for years before they had a really solid UX.
I understand a MPA currently offers a more reliable and overall better UX than SPAs tend to. However, can we please focus on improving this technology concept rather than screaming for them to not exist anymore? The HTML5 History API attempts to solve many of the complaints here. It also sounds like we should use data caching (in our SPAs) so that when a user hits back, they get a back-like experience. And as far as scroll position goes, that might be something the History API should provider (if it doesn't already).
Like it or not, JavaScript is here to stay. Usage of it will only increase. Rather than saying how terrible of a UX it has, please try to think in the reverse. Even if you aren't going to work on the solutions, this is the exact type of crowd that will. Cite your concerns and UX improvements - These are the sort of people you should be helping, to help you :)
/rant
- mattdeboard 11y agoThis isn't an anti-change thing. I have personally experienced the annoyance/pain of having to re-implement navigation in JavaScript. Sure, there are routing libraries that try to make this easier, but on the other hand, routing is kinda built in to the platform. The author of the post made his point pretty clearly: > [T]he application handles the browsing instead of the browser. Attempting to mimic the browser using Javascript is the root cause of the self-induced issues. I think you're conflating "single-page applications" with what the author called "rich user interfaces". They're two separate things. A single-page application is defined by the fact it does not let the remote server handle routing. I think you're conflating the two because otherwise your rant doesn't really make sense to me. You asked for fixes, and the blog post comes with one: let the server & the browser handle routing; don't re-invent the wheel (badly).
- thebfed 11y agoThis.
- jestar_jokin 11y agoI worked on a project that implemented a SPA with its own tab-based browsing, including nested iframes for some tabs(!). I worked on another projected that implemented a SPA with its own windowing system, because the lead dev thought browser tabs would be too cluttered and users might not know how to use them. (Considering his browser had something like 100 tabs open and he never cleaned them up or opened the existing tabs, I think there was a bit of personal experience colouring his view.) I think the general issue is that there are existing solutions that avoid the downsides associated with this approach, so this seems like re-inventing the wheel. Yes, needless negativity should be avoided, but so should breathless enthusiasm without due diligence.
- qu4z-2 11y agoIn all fairness, I thought early smartphones were pretty silly, and my opinion hasn't much changed. I also find people touting "progress" don't realise that a lot of the time they just mean "change". I mean, sure, if a new way of doing things is demonstrably better, by all means let's use it. But a lot of the time you're just swapping one (well-understood) set of tradeoffs and considerations for a new, less understood set, because "That's what we're doing now". For all that a lot of technical people like to make fun of the fashion industry, we definitely have our own as well. (Not to take away from people trying different approaches. I'm all for trying alternate paths from 'best practice'. You don't want to get stuck on a local maximum. That said, there is a chunk of our industry that seems to congregate around whatever technology or approach has been recently discovered to be feasible)
- fizzbatter 11y agoRe:Progress Well, i sort of disagree. I agree that all progress isn't positive, but the problem is you can't really know that in the current timeframe. "progress" very often contains one (or more) steps back for every step forward. In the future, after the concept as matured, we will know if it is positive or not. But that is exactly how this works. Sure, we can only use well tested, well understood, and well functioning concepts - but we already do that. What you are experiencing is bleeding edge, and we do not do bleeding edge where it really matters. Eg, good luck finding Nasa pulling this crap haha. In places where it is far less important, where you as a company/person have decided to use a product that is newer (probably for the sake of not being old, stale, and "safe"), then you have clearly chosen to accept the tradeoffs.
- qu4z-2 11y agoThat's a fair point. I mean, I try to avoid rushing onto "the new thing" just because (although I'm certainly guilty of it at times), but I guess I forget that the ratio of articles posted to HN isn't representative of what people are actually doing, because the well-understood methods are, well, understood, so they don't generate a flood of articles.
- jalfresi 11y agoPersonally, I've yet to see a real solid case for SPAs. I know that may be confused for negativity towards the SPA technology, but I always found it to be a technology looking for a problem. Again, in my experience, SPAs break the web 99% of the time. The times that they don't (e.g. Gmail), I still don't see what an SPA brings to the table that a simple MPA didn't. Yeah Gmail is nice, but it's no where near as good as a decent desktop or mobile mail app. And its miles away from a good, well structured MPA. SPAs just seem to sit in this no-mans land for me, and I'm not sure that more technology is the answer. It's like Flash. When Flash came out I used to be a Flash developer for a while. But I had an epiphany as to why Flash development was so hard. It was the entire concept of the timeline, something that is at the core of Flash. A timeline is a sequence of keyed steps over time. The problem with this is that it make interactivity next to impossible; you were constantly fighting against the core purpose of Flash (play items in sequence over time). How do you handle users interrupting this sequence with their constant demands for interactivity? The answer was to throw the entire timeline concept out the window and generate all objects, items and stuff using code. That way you could handle arbritary interactions from the user. Well, I'm sure you can imagine how ridiculous that got over time. Frameworks and libraries and hacks and workarounds and generally just a big fat mess because Flash devs were constantly trying use Flash for something it was never designed to do in the first place. For me, personally, SPAs and the related technology bear some of the similar hallmarks. Some developers want to use Web Browsers to write the equivalent of desktop apps. But browsers and the web in particular do not have the same interaction patterns as desktop apps (or mobile). But that is absolutely fine! The web is something else, it is its own thing. But thats just me. By all means go for it! You are right that progress in technology is a good thing. I'm just wary of misdirected technological gains, like smart-jars, digital credit cards and smart smoke alarms that require internet connections. To sum up; I wouldn't say it's negativity, it's more that some people are just not convinced by the concept at its core.