Live data from Hacker News

The Disadvantages of Single Page Applications (2014)

adamsilver.io

71–80 of 105 posts

Re: The Disadvantages of Single Page Applications (2014)

#71
post #5

This seems to be aimed at Single Page Websites and not Applications. The aim isn't to "mimic the browser using Javascript" but to create an immersive application that feels like you're no longer in a browser at all.

At which point, the question becomes, "why is this a website?" if you're building an application, usually languages like C#, Objective-C, etc offer far more powerful tools for making an application.

Re: The Disadvantages of Single Page Applications (2014)

#72
Some problems with the article.

One you cherry pick SPA attempts, like with Twitter. This is an example of a company trying to refactor for SPA, not doing SPA from the beginning.

Libraries that help with SPA are maturing. It's easy to implement routing with backbone for example. You just have to be a good developer and actually learn.

The part that really matters is being a solid dev. Not if you choose SPA or not.

Re: The Disadvantages of Single Page Applications (2014)

#73
post #49

One of my favorite SPAs is Trello. It demonstrates a great use case for a single-page app, a highly-interactive interface based around a single view. I realize that the "single page" in SPA refers to loading a single HTML page, but I've generally felt like SPAs work best when they're based around a primary view. Once you start building a SPA that emulates a multi-page website, you're suddenly jumping through hoops th…

Nailed it! This is one of the first things on my checklist for SPAs.

Is it an application?

Does it revolve around a single view that is not just a header toolbar?

Ok. You are now cleared for any other questions to evaluate SPAs. If the answer to either of those questions is no, just don't use a single page site.

As for answering the question of how much of a primary view makes the SPA worth it. If data needs to be retained within the view while making requests, then yes. Examples - spotify, most multi column apps, ERPs etc.

Re: The Disadvantages of Single Page Applications (2014)

#74
post #5

This seems to be aimed at Single Page Websites and not Applications. The aim isn't to "mimic the browser using Javascript" but to create an immersive application that feels like you're no longer in a browser at all.

At which point, the question becomes, "why is this a website?" if you're building an application, usually languages like C#, Objective-C, etc offer far more powerful tools for making an application.

Because a web based application doesn't need installation, it's cross platform and accessible by everybody.

Re: The Disadvantages of Single Page Applications (2014)

#75

I completely disagree with the assessment of this article. I've been building and managing the build of simple to enterprise web applications since the web was born. I'm familiar with the entire spectrum of development platforms from old CGI/Perl, ASP, JSP, Cold Fusion, ASP.NET, MVC-platforms (pick one), and now SPA's using front-end platforms like AngularJS and ReactJS. The amount of time saved in developing service…

Maybe the MVC frameworks you used weren't the best, I can do everything on the backend and still have all the advantages that you described.

It's not about where you execute your UI code, It's about how you structure your application.

I've seen plenty more of SPA's become an unmaintainable spaghetti nightmare and also seen many non-SPA's work splendidly.

Re: The Disadvantages of Single Page Applications (2014)

#76
post #63

This reads like a very good list of things to implement in your SPA. Having said that, you should also be supporting simply rendering the pages on the first request, and progressively enhance it, rather than a blank thing that then goes and fetches all the JS and render itself. The HTML/CSS should arrive and render as soon as possible. His reference to twitter's 2012 writeup is good. Having said that, take a look at…

Link doesn't work for me on iOS. I just get a blank page?

Try now, it should be working!

Re: The Disadvantages of Single Page Applications (2014)

#77

As with everything, if you're going to do SPA, you should do it well. So far, one of the best SPA website I've seen is https://gocardless.com (disclaimer: I work there). Once loaded it's probably one of the fastest website I've browsed, and it doesn't have any of the drawbacks you mentioned: navigating to a new page is quick: ✓ navigating back is quick: ✓ remembering scroll position: ✓ cancelling navigation: ✗ but we…

While it is very fast, I wouldn't consider that an application but rather a static website. In my view, an application needs to do work, usually dependent on user input. Otherwise, basically every website is an application.

The dashboard looks like a much better example of an SPA.

Re: The Disadvantages of Single Page Applications (2014)

#78

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 (…

Personally, 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.

Re: The Disadvantages of Single Page Applications (2014)

#79

As with everything, if you're going to do SPA, you should do it well. So far, one of the best SPA website I've seen is https://gocardless.com (disclaimer: I work there). Once loaded it's probably one of the fastest website I've browsed, and it doesn't have any of the drawbacks you mentioned: navigating to a new page is quick: ✓ navigating back is quick: ✓ remembering scroll position: ✓ cancelling navigation: ✗ but we…

Wow! Very snappy.

    > customers in the UK and the Eurozone
Feel like this should be on the landing page though.

Re: The Disadvantages of Single Page Applications (2014)

#80
post #5

This seems to be aimed at Single Page Websites and not Applications. The aim isn't to "mimic the browser using Javascript" but to create an immersive application that feels like you're no longer in a browser at all.

"create an immersive application that feels like you're no longer in a browser at all"

That seems like a very odd goal.

Post reply on HN