Time to wrap up our last poll on how useful it is to distinguish between “web apps” and “web sites”.
The exact question was:
Is it useful to distinguish between “web apps” and “web sites”?
First, the data:
- 28% of people voted: Nope. It’s all just the web.
- 72% if people voted: Yep. They are different things with different concerns.
A visual breakdown:
See the Pen SVG Doughnut chart with animation and tooltip by Chris Coyier (@chriscoyier) on CodePen
The vast majority of people think it is a valuable distinction to make.
Let’s kick off some armchair analysis by sampling some opinions from around the web. Jeremy Keith wrote about this very subject somewhat recently. He’s of the opinion that the distinction isn’t valuable:
Why?
Why do you want to make that distinction? What benefit do you gain by arbitrarily dividing the entire web into two classes?
He argues that not only isn’t it useful (and used as a term because it’s simply fashionable) but that it is actually harmful (e.g. assuming some technology/advice/approaches don’t apply to you because of this label).
Some folks think the distinction does have some value. Billy Brown says it might be useful for thinking about the future, although doesn’t mention exactly how. “Armstrongest” says it is useful simply because human beings need to categorize things by our nature in order to make sense of the world, and that useful properties of that categorization emerge.
Defining the Difference
Setting aside the argument on if the distinction is useful or not, how might we define the distinction.
Here’s some people’s thoughts:
- Kory says it might be scope. A “five page website” vs. an app with “dynamic data and user input”. Kevin agrees and says web apps “require a non-trivial amount of code” around user interaction.
- Russel Heimlich says “If it requires JavaScript to work then it is a web app, otherwise it’s a website.” Mat Marquis says it is excuse for that.
- Ginestra says it is about how users access it and what their expectations are.
- Paul Wallas says it is about time spent. Less than 5 minutes, website. More than 5 minutes, web app.
- Ben S says the distinction comes between a front and back end angle. More front-end, website. More back-end, web app.
- Covarr says it’s about uses. “Perform tasks”, web app. “Provide information”, website.
- Joshua says search bots are a part of it. “Crawlable resource”, website. “Personalized for your consumption”, web app.
- Steve says it is about navigation. Normal of things like the back button, website. Customized approach to moving between screens, web app.
- Jeremy Worboys says web apps content is created by users where websites content is created by the site workers. Jeremy Castelli agrees.
- ernO says if the page never scrolls, it’s a web app.
- Colin Léger says if you can print the page and get the same content, it’s a website.
- Sean says it is about cost. Web apps are simply more expensive.
- Michael Chang says it is about public vs private. Websites are public while web apps exist in a private space.
Other things I’ve heard:
- Content strategy is only important for websites.
- A website has an RSS feed; a web app has an API.
- It is important for investors (i.e. web apps == make money)
- It is important for hiring/recruiters (i.e. people who make web apps are different than people who make websites)
- It is “get stuff” vs. “do stuff”.
- You login to web apps.
Almost none of the points above ring true for me. All I see are exceptions and gray area.
I was kind of hoping we could get somewhere close to a solid distinction between these two classifications, but I don’t think it’s going to happen. There is very little agreement and heaps of opinion.
This leads me to think perhaps the “web app” moniker (certainly the newer of the two) is simply just a fashionable term. We like the sound of it, so we use it, regardless if it truly means anything.
One thing that almost rang true to me while discussing this was the hiring aspect. If you look at all the web workers in the world as a whole, I feel like there is one group of people who work on a short term basis on a website and then move onto something else. Agency and freelance work would be a big part of this. Then there is this other group of people who work on a long term basis on website. They work at LinkedIn or something and they’ve been there working on it for 4 years. It’s tempting to think the short-term stuff is more websites and the long-term stuff is more web apps. So then if you were hiring for one or the other, you might look at someone’s history and talk to them about which they tend to prefer and that might influence the hiring situation, as some people are better suited to one or the other.
The more I think about that though, the less true it seems. I think the long-term vs short-term is more relevant than what “kind” of site is in question.
Gray Gray Gray
A restaurant site that has just photos and a menu on it is just a website right? What if it has a Google Map embedded on it? All the sudden you can scroll around and pan and zoom and get directions. Is the restaurant site a web app now? Is it a website with a web app on it? Is componentizing like that still useful?
What if you could leave a comment on the site? That’s a web app now right because there is user generated content right? Or are comments too commonplace to get that distinction. What if you had to create an account before you could comment? What if the menu items had aggregate ratings stars on them? Still too simple? Isn’t Twitter just comments, accounts, and meta data?
But Twitter has an API right so it’s definitely a web app. And the experience while logged in is customized to you. But you can also search it for content, I thought that was websites you can do that on.
What if the restaurant site was actually primarily a blog where the chefs wrote up recipes and cooking tips and wrote about the restaurant business. That’s a website right? What if there was a paywall to read that content because it was so valuable to other restaurant owners? An agency was hired to custom develop that paywall and there was user accounts with access levels and admin and Stripe integration and whatnot. Surely that’s a web app. What if they used used WordPress and a plugin? Which is it then? And speaking of WordPress, the admin area is a web app right? But what you build are websites? Can a website be both?
There is just nothing but questions, exemptions, and gray area.
If we could pin down a super accurate definition that we agreed on, even then it might not be particularly useful. And since we can’t, I argue it’s even less useful.
Yet, the poll numbers show otherwise. Most of us are convinced that it is important and useful to distinguish between these things. I guess more investigation needs to happen.
The Shared Importance
Again, even if we could draw a perfect line between web apps and websites, wouldn’t these things still be true?
- They should be fast.
- They should be secure with any data they store.
- They should be accessible.
- They should offer a good user experience.
- They should have appealing design.
- They should meet the goals of the site owners.
- Good people would be valuable to have on the team.
- They are built with the foundational technologies that power the web and that browsers understand.
If so much of the fundamental parts of web(thangs) are shared, isn’t the distinction not useful?
Wrap Up
I know I spent most of the time disagreeing with the data here. Perhaps some more conversation will help. Let’s hear those thoughts.
New poll soon.
I’d say the biggest differentiation for me is simply that Web Apps don’t really need to be SEO friendly past perhaps a login or info page which means the viable possibilities for extremely dynamic views are much higher as there is no need for worrying about things like HTML snapshots that the bots can understand
Labels, even if they’re vague and there’s a ton of gray area, help the owner form a development strategy. You can have both static content and interaction, but generally only one will be the focus. If you decide early on what to emphasize, you end up with a product that knows what it is.
Look at something like MySpace. It can’t decide what it wants to be. As a result, it’s become something rather aimless, and users can see that.
I agree that a site shouldn’t be BOUND by a label; nobody in their right mind would say “Well, I’m making an app, not a site, so I’d better not put product descriptions on my online store because that’s non-interactive”. But understanding your core functionality is important to making a great app or site, and a label can be quite helpful as a guideline, even when not strictly adhered to.
I guess what I’m saying is that it’s okay that there’s a gray area. As many people are advocating labels as a good thing, not a one of them thinks they need to be hard and fast. At the same time, they can provide useful information as to the purpose of a site in a single word, and they’re harmless, so there’s no real need to get rid of them.
To me a huge difference is that in any web app I’ve worked on (financial services), security is a huge, huge concern, and things like SEO and searchability are absolutely, completely irrelevant (nobody can get into the app by clicking a Google result link). Obviously, the base technology is all the same, and things like interaction design and information architecture are comparable, but the web application focus on doing things with persisted information and making things happen in the real world seems like a distinction from a site that doesn’t do those things. (I think an e-commerce “shopping” site covers both sides of the distinction; your home-banking application however really isn’t much like a commerce app, or a news aggregator, in a lot of ways.)
Web apps (often, or at least in my experience) don’t sell anything (other than upgrades); the product has already been bought if a user is using the web app.
However I do sympathize with your opinion that differences in the content character of one app/site from another may not mean much when focusing on the design and engineering work involved.
It seems like you are presenting us with a fait accompli: Come up with concrete, disjoint definitions of web site and web app, and if we can’t, then that means the terms aren’t useful. I think you’re missing the point about categorisation, which is that categories can be an important and useful shorthand for thinking and speaking, even if, outside of mathematics, they aren’t ever absolute.
Dealing with real world complexity means coming to terms with the nebulous, contradictory nature of human cognition and discourse. Attempting to nail down abstract concepts to precise and universal definitions, and discarding any for which you can’t as useless strikes me as a joyless, doomed exercise. Ambiguity is part of the fun of language, especially English, where you invariably have a variety of synonyms for any concept, each with subtly different shades of overlapping meaning.
If I can say to someone, “I am building a web site” or “I am building a web app”, and your choice communicates some meaning, which I would argue it does, then they are useful, even if neither you or the person you are speaking to could produce an indisputable demarcation of the differences between the two.
Chris, I’m with you. I think it’s all way too gray. For us, we have “websites” packed full of dynamic data and user-generated content we’ve been working on and iterating for years for our clients and then we’ve done six week or less projects with massive amounts of information and interaction that are in every sense a “web app”. The truth is that most of what we do falls somewhere in the middle. You could even argue that any CMS-based website is actually a web app due to the nature of its construction.
My two cents: labels aren’t worth the paper you could print them on. When you talk to your aunt or your kid’s soccer coach, you build websites. When you talk to the CTO of a client you’re pitching, get specific on what you’ve done and how you do it. Labeling it on your portfolio site doesn’t get us anywhere and is just a bunch of jargon that makes it even more confusing for already under-educated clients and hiring managers.
I think Mr Coyier might be right about the gray-ness of it all.
Scanning through what people think the differences are above, I wonder if it’s not that a website developed using more modern tools & approaches fits the ‘web-app’ mould, whilst older, more traditional website development is more like what people are saying is just a ‘web-site’.
Although maybe that’s just what I think as I’ve levelled-up quite a bit recently, going from a lot of static HTML/CSS/JS/Crufty-old-1st-gen-CMS, development to Sass/SUSY Grids/Drupal theme & modules/Compass/Vagrant/Git so I’m feeling more like my day-to-day fits a web-app mould for skills, but I’m just supporting a content driven website really.
When my 1-year-old sees something flat with pages she says “book”, when I read to her on my ipad, she says “book”, and when she sees the newspaper, she says “book” – in all cases she’s right – she means “lots of words and pictures that are interesting to see and play with” but there are useful distinctions for a more sophisticated thinker.
Her board books are fundamentally different than my novels, both of which are different from the newspaper or ipad. To a baby they are all ‘book’
Certainly the assembled thinkers here are much more sophisticated than my baby, and I don’t mean to imply otherwise. But I don’t see any harm in having a richer vocabulary for talking about stuff on the web. The 3D game I build in WebGL is different than my blog, which is different from Facebook and different from Netflix. Why do we need a single word to describe all of them?
Maybe website and webapp are both bad terms, or maybe webapp is just marketing hokum, but either way having more nuanced language can only help us communicate what we do.
It’s all content. We just do something with it. Still loads of fun to talk about ;)
If you’ve been around here long enough you’ll find there is/has been some sort of marketing/development/CIO coined phrase or acronym for what your doing to that content. It’s better to look ahead for the next word that Oxford and Webster will twist over.
Ya’ll keep making it. SOmebody will consume it. I know I probably will.
Here’s what Google thinks “website” means:
By this definition, web apps are just a subset of websites. I agree with that.
So what makes a website also a web app? Such a subtle distinction is probably subjective by its very nature. I find that I use the term “web app” to describe websites that perform a task for me (rather than to me).
As an example, I think of CSS-Tricks and CodePen as websites. But the primary function of CSS-Tricks is to be a repository of information. It helps me tremendously, it informs how I write code, but it doesn’t write any code for me. By comparison, CodePen takes my code, injects dependencies, does syntax-highlighting, previews and auto-refreshes my input, and shares the result with anyone I want.
Is the distinction arbitrary? Absolutely! Are web apps inherently superior to “mere” websites? Of course not! But I think the term is a natural byproduct of how new these rich, app-like experiences are relative to the web as a whole. It feels weird to say that Google Docs is essentially the same thing as any given
index.html
, even if that really is the case.We’re probably also suffering from feelings of inadequacy in the wake of our industry’s relatively recent obsession with native applications. The term “web app” can be a line in the sand, meant to say “this should hold up against any native app.” Some take it even further, rejecting the word “web” entirely.
Ah, semantics…
Language is full of “gray-ness.” That doesn’t make it less useful. For example, when does “few” transition into “some?” Or “many?” Be exact, and pick numbers everyone agrees on.
Yet the concepts of “few,” “some,” and “many” remain useful in our day-to-day lives.
Most of human speech does not involve exactitude, nor precision. Yet we communicate. It’s useful to have fuzzy terms defining fuzzy concepts, because reality doesn’t ship with clearly delineated borders.
This was simple to answer in the 90s. If it just had content (“readonly” or “static”), it was a website. If it interacted with a database (“read-write” or “dynamic”), it was a web app. The type of coding skills required to create that database interactivity was vastly different from just creating an HTML content site.
I think the general idea can still apply today, albeit with an additional very fuzzy grey area in between, due to the proliferation of blogs with comment systems (which simply did not exist in the 90s!), content sites built on WordPress (meaning the content is stored in a database, even if the public only has a “readonly” interaction with that content), etc.
Additionally, think about the languages required to build the site. Do you only build static content using HTML/CSS/images? Website. I don’t care if it is running on WP – if there are no customizations involving scripting, then it is a site. Do you use scripting or OOP languages to build dynamic interactions? App. If there is only a little scripting or one-off use of an API, then it falls in the middle grey/hybrid area. Nothing wrong with having a 3rd option to reflect modern complexities. :^)
A web app is something that is dynamically extensible without changing any code. So while a company’s website may use Node, and HTML5 attributes and whatnot, if you cannot add additional content (ie pictures, pages, media) from the existing interface, it’s still just that; an app. However if you can somehow add data to a database which will still be there when the browser is closed, an app it is… Thoughts?
In a way, I can’t believe this is a question. Although, I’ve recently heard people refer to a website, web app, & local files, as all the same thing. Which is instantly confusing when I’m trying to help them with some problem. There’s definitely a difference between websites & web apps.
I think of a website as being one of three things or, a combination of them:
a collection of web apps.
a collection of static files (HTML, CSS, etc).
an interface for the web app(s).
Whereas, I think of web apps as programs, scripts, or applications, used/served by a web site.
If you tell someone unfamiliar with development and design that you make ‘Websites’ they instantly think “Oh, like Geocities, right?” If you tell someone you make ‘Web Apps’ they instantly think “Oh wow, so like Facebook?” The only real difference (Unfortunately) is about $20k / yr when you’re looking for a new job.
Apps sound engineer-y. Websites sound script-y.
Something I think might be worth throwing in … Some things (like Facebook, Twitter, Netflix, Pandora, Google Maps, Basecamp, just to name a few) seem to think that web apps are awesome solutions on desktop computers and crummy solutions on mobile devices.
So they have native apps on mobile devices and web apps on desktops. Why is this? If the native app was worth making on a mobile device (for a better experience I presume), why is it not worth making on a desktop? This is a serious question – most big services seem to agree on doing it this way.
What specific things contribute to this reality?
Would most full featured web apps not be better as desktop apps?
It does make sense to classify the difference in websites vs web-apps. I’ll use the company Evernote as an example why (I have no affiliation with them besides being a happy customer).
Evernote is a company that has many digital entities across many platforms. Two of those platforms are on the web. If you browse their website you’ll find information about Evernote (the company), and the products they offer. That information can be found in a variety of resources on their site such as the product pages and blogs.
The web-app on the other hand is what you see after you hit the Sign In button. It mimics the Evernote apps (functionally if not visually) that you’ll find on PCs, phones and tablets. It contains information that only pertains to the user that is signed in — not everyone else. Though, that is not the definition of an “app”.
One of the confusing parts of web-“Sites” vs web-“Apps” is that they are both based on the same web-technologies: HTML, CSS and JavaScript (mostly). This is also exactly the virtue of web-apps. They allow developers who have learned by building websites to make apps.
Obviously, there are many grey areas between a site (something you look at) and an app (something you interact with). But in the case of a company with diverse offerings such as the above example, there is some usefulness in making distinctions. If those distinctions lead people into making poor hiring decisions that’s on them, the individuals doing the hiring, not the canonical categorization of “Sites” vs “Apps”. To the contrary, to assume that someone can make web-apps because they have built many websites is also wrong as they usually differ in complexity and thought patterns and may require a different skill set.
I think their is a big difference…At the place where I teach we in fact have two separate programs one that focuses more on web site design and the other on web application development…
I like Covarr’s distinction …. “Perform tasks”, web app. “Provide information”, website.
It really is as simple as that…now a web site can contain an application but if it’s primary purpose is to provide information it is a web site…so that Pizza restaurant with a Google map is a web site that contains a web app…
Web application developer may put a lot more emphasis on getting the functionality to be excellent…spending a lot of time on the programming and using frameworks like Bootstrap to get the front end of the web application done quickly…
A Web site designer / developer may spend more time dealing with UX and the custom design of a web site and less time on functionality…
These are just my opinions…but I do believe that their is definitely a large difference between a web site and a web app…in both the technologies used and the skill sets involved…
Web app is simply a more current, catchier term for Web 2.0. Take a look at Wikipedia’s definition of Web 2.0:
http://en.wikipedia.org/wiki/Web_2.0
As you can see it encompasses many of the “requirements” of a web app quoted in the article, but is also a meaningless term.
However, Web 2.0 makes a bit more sense because its title implies that is an improvement or build up of the original web, not something entirely different. The web app term, on the other hand, implies a site is some how not a site. Web 2.0 states that a website is still a website, but it has a bit more than what users used to think of when they thought website. A web app would be described similarly, a website with a different focus than what we used to consider the focus of a standard website. This doesn’t mean that a website is not a website, it just means that it is different than it was.
As others have stated we as people love to categorize, but categories should be defined or have some natural consensus. Based on the article quotes, there is no consensus beyond being a site that has more than just content. Essentially the same definition as Web 2.0.
Over time we dropped Web 2.0 and reverted to calling everything the web. We will end up doing the same with web app.
We already have categories for the web that are truly sub-categories of website. Social Network, E-Commerce Store, Wiki, Blog, SaaS, Etc., Etc. All these terms can be well defined, even if they include some gray areas. All these categories could also fit in both website and web app. Even blog would fit, it would be hard to call blogger.com just another website. Wouldn’t it also be defined as a web app?
Web App is just another term for website, it does not provide any more information or clarification. It is too vague and the differing opinions about its definition prove that it is not a viable category of the web. Its just another catchy term that will be replaced in a few years with something else, because it has no natural meaning.
78% people say it walks like a duck, but you disagree? Cool, you of all people should have some say :)
To me, I like the “perform a task” vs “get information” route. It still suffers from issues, but as a rough guideline, that would be my main guide.
a webapp is a kind of website?
or
a website is a kind of webapp?
answer: both
I think serving up static vs dynamic content is an important distinction to be made, regardless of whether you call the former a website and the latter a web app.
Another distinction I would make is that a website tends to be more for marketing purposes, whereas a web app is more like a tool.
I was thinking that one way to distinguish between web apps and websites is who decides what platforms supports the site/app.
What I mean is that a website’s support is generally defined by the public – what browsers are still being used, will the site degrade gracefully in IE7, is it accessible using any mobile device under the sun?
Conversely, web apps seem to get away with saying ‘This is supported in IE10 and up’, only releasing an iOS app etc.
Definitely not a definitive answer, but another way to think of it.
For the last 12 months I’ve been developing mobile web apps only full time [we are hiring by the way].
To us mobile web app is something that mirrors native experience, we bake in all the touch events, take advantage of local storage, services oriented architecture and even have an End User License Agreement they must accept the first time to use our apps, whether its downloaded from various app stores or accessed first time online via login…
We are very much building to accommodate BYOD [Bring Your Own Device] methodology.
codepen.io is an obvious example of a webapp vs website.
I prefer Sites over Apps. As apps use some disk space and will use more to store its data. Then I’ll have to install another diskcleaner app huh. So, for me Sites are better, just clear your browser history and there you go.
I really like the restaurant example. For me, a website in this context would welcome you, show you the menu and provide as much or as little information about the restaurant as you wanted. A web app would greet you by name, ask you how your kids are, bring you your favourite drink – without you having to ask, cook your steak to your exact liking. A web app knows you and actively attempts to improve it’s relationship with you based on the information you have supplied it. A website can often provide functions and utilities which mimic the practices of an app in some form, but for me the primary distinction between the two is that a website – or at least – a brochure site has an end objective to stimulate user contact by you, whereas a webapps objective is stimulate on-going human-robot interactions.
The difference is often within the expectation of the user
To me, a web app is a program that is found online. You can hardly tell the difference from a standalone program, aside from the fact that it runs in your browser. I may be completely off, but that’s what I think.
I agree with Chris. There is no distinction. Any claim to a difference is just a personal choice. Any claim to there not being a difference is ALSO a personal choice. We are looking for a truth here, when TRUTH is a relative term. There are no truths. The truth is relative.
And no one can prove a negative. No one can prove that Spiderman does not exist. So speaking AGAINST someone’s believe is futile. So my truth is, there is no truth here. Keep walking people…there is nothing to see here.
I define a website as displaying static content and a web app as having dynamic content.
A website can have web apps integrated into it, such as your example of Google Maps or comments. Google Maps is a standalone web app and so is a comment section (basically a forum).
The distinction emerged because it is useful. For freelancers and agencies, it helps define the scope of their clients project, which impacts fees. For startups, it helps define the purpose of each project/product, e.g. website to give info about the project and web app as the project.
The distinction is analogous to distinguishing between a phone and a smartphone. To your 80 year-old grandmother, the distinction is meaningless. But, to the startup launching a mobile app as their product, it will help them decide not to pay to impossibly have an app developed for the millions of dumb Nokia phones in the world, simply by knowing their are ‘phones’ and ‘smartphones’.
My take on that is :
A static web site is the most basic web application you can have , because it just
takes your URL, ‘transforms’ it, without any interaction, to the page you will see then.
The more processing, based on your input, is performed, before the result is
presented to you , the more the web site is drifting towards the application side.
I simply think if we just have the “read only” and “static” thing then it is the website ( it maybe little differents ! ) but web apps can be like “HIBRYD” or “Almost (Like Almost Flat Design) ” or complete !
But generaly I think if we use Dynamic things like API in our project or dynamic database or Scripts can have dynamic Interaction with user like upload images or sending comments or reload automaticaly or … The Project will be “Web App” and when we build “Mobile Friendly Web App” (like build Responsive Web App) then we can call it “Mobile Web App” …
That’s what i think :)
Best Regards –
Arian Tashakkor
I couldn’t agree any more with you Chris. The terminology for a website in this age is becoming more and more subset to just simply being a ‘website’. Like mobile frameworks, they’re no longer known as websites, they are know as “application” frameworks. Take Sencha, for example. Not something like Python or Ruby. But the other end of Python/Ruby on Rails, when used in web development, still conclude to the same result as any other website. They render the code in to HTML. So it’s still just a website. Twitter is widely known as application, primarily because it’s popular on mobile devices, but I would strongly disagree in calling the desktop website an “application” by any means.
The same rule of thumb applies to websites for travel agents, hotel bookings, car rentals and so on, that are all available online but in mobile form (like a specifically built website for mobile devices) and responsive websites that a merely the same site you view on your desktop computer. These aren’t applications, these are known as websites in my eyes. Google is a great example of the definition “application”. Drive, Docs, Maps, API, Play, Apps, YouTube — you name it, Google call these “apps”. These are still websites to me. The only application status they hold are on my mobile/tablet device that are built in Xcode, Android IDE, Windows Phone Dev or PC software (like Windows 8 Apps, even then, W8 apps are built on JavaScript, HTML & CSS). A website is just a website. Whether it’s built on Backbone, Underscore — whatever. It still renders the same picture I could have designed statically, except sites built on Javascript/PHP/Python/Ruby have dynamic values. When was the last time you called WordPress an application? Never. They began religiously as a blogging platform, now, that title of “just a blogging platform” is nowhere to be seen. WordPress has now become a multi-functional CMS catered for almost anything. But we don’t call websites built on WordPress “applications” do we? “That restaurant theme you downloaded with loads of additional dynamic features to allow customers to make an order online…” – would you still define that as an application?
I think if you were to do a poll to less technically inclined users around the world of web development, you’d get an opposite reaction by a mile. How many of these results from the poll were from people with knowledge about development? I might be biting the bullet here, but I’d say 99% of them, if not all of them have an opinion based on their knowledge of development.
Website is just a website in y opinion. Defining the web like it has a split personality only makes things harder for yourself. You’d treat it like you need a special subset of components to make one or the other. Hard truth is, you simply don’t. You use HTML, CSS, JavaScript — whatever — you use these whether you’re building a static or dynamic site. From your personal blog to a real estate website, if it’s rendered in HTML and specifically built to be viewed as a website in a browser, it is a website. Not an application. That’s just my two pence though. Many will probably think different.
I totally miss the “offline” aspect. Manifest files for offline caching in combination with Javascript as a very capable language can lead to good applications which don’t need permanent server access.
Two years ago I made myself an offline RSS reader. It’s able to download feed data and stores it locally, so I can read my feeds while being offline using public transport. It uses plain web standards, so it’s a website. It runs while being offline, so it’s an application aka app.
This is especially notable for closed-down systems (you might even call them “crippled”) like ‘droids and iStuff. Carefully crafted webapps provide an often neglected way to install software on your device without downloading it from some “store”. Apparently it’s much harder to earn money by publishing webapps than by selling them through a store. So, as of today the world of good webapps is kind of limited.
Can’t everyone be right? Differences can be important without being binary absolutes. There may be infinite different shades of grey, but it is still sometimes important to distinguish between light and dark. However, I really can’t see much benefit in getting fussy about terminology that no one can agree on the meaning of.
My instinctual interpretation is that the term “web app” should be used only for “tools” which the user interacts with to create something new or different from the content provided by the website creator. But this is not an either or distinction, since most modern websites do both. Sometimes, they do both by having an interactive element along with provided information — like these comments. Other sites (blogging platforms and wikis) have complex interaction tools for a small subset of users, but are just information pages to most visitors.
From a coding perspective, the programming required for interaction is significantly different from simple markup and style. So it makes sense that the web programmers who presumably dominate your poll results think that the distinction is important. But very few projects will be exclusively one or the other.
From the perspective of a less technically-savvy public, I suspect you would find a different distinction: websites are for computers and apps are for mobile devices. When a news site where I used to work introduced a mobile-optimized website, their announcement was all about how they had a new “mobile app”. Of course, then they had to explain how there was no download required, just point your browser to app.thetyee.ca. The help section even has step-by-step instructions for how to get a bookmark on your iPhone home page, for users who expect that everything they do on their smartphone has to involve a separate application.
By the definition I used above, this wouldn’t really qualify as a web app; the only interactivity is a simple bookmarking feature, you can’t even leave comments. But then, the same could be said for a zillion and one downloadable mobile device apps on offer from everyone and their favourite restaurant. As someone who is familiar with programming and web standards, I thought that they missed an opportunity to really educate people on a better way. Certainly, the tech-heads doing the programming seem to come from that perspective (all their code is on github, if you’re curious). But I understand that the powers-that-be were just sticking with the terminology they thought users would understand.
Mobile users expect apps. Corporations want to have apps to offer them. If the term “web app” is successful in convincing companies that an interactive, personalizable, mobile-optimized (or responsive) website is a better alternative than a suite of device-specific downloadable applications, then by all means, keep calling things web apps. But I hope you don’t mind if l keep calling them interactive online tools.
The most obvious definition of a web app that I think most people would agree with is like something you would download in the Chrome store or a native application made from web technologies.
There’s also a dirty secret about most web apps and it’s the fact that they aren’t semantic or follow many web standards. Go into any web app and you will see
divs
everywhere. Sometimes you will see some ARIA attributes, but for the most part developers either don’t care, don’t have the time, or they simply cannot make something that is based on HTML5 principles and philosiphies.For me it simply comes down to how you interact with the site. If your actions are creating feedback (visual/audio/physical) then it’s quite likely you are working in a web app. Much akin to the difference between a book and a toy; a website’s main purpose is usually the delivery of useful information for the consumption of the user, whereas a web app often allows you to change the conditions of the environment you are exploring while still providing useful information and offering some kind of learning experience.
That said, I’d be in the “no” camp. I don’t see any real value of drawing a line between the two. Regardless of your original intentions for the user’s experience – let the user decide if they’re looking at an app or a webpage.
Its a mistake to mix up web apps and websites. I love this comparison here which shows why they should be kept different http://techbrush.org/never-make-same-website-for-pc-and-mobiles-read-why/
Its a mistake to mix up web apps and websites. I love this comparison here which shows why they should be kept different http://techbrush.org/never-make-same-website-for-pc-and-mobiles-read-why/
As a producer, not so much a designer, there’s a big difference between the two. I can frequently cache website content; can’t do that with a web app, so the back-end architecture is much more aggressive. Web apps usually handle non-public information, so there are tremendous efforts around security and auditing. As mentioned earlier, SEO is of great importance to a website and influences how it is built, but is of no concern to a web app. Finally, there’s probably going to be a difference between the type of information being presented (i.e. website = paragraphs for scanning or reading; web app = form fields, tables, and lists), so presentation is going to differ some.
On a humorous note, discussions like these remind me of this Dilbert cartoon:
http://dilbert.com/strips/comic/2007-09-09/
It seems to me the distinction is clear based on user motive.
A “website” feels largely consumptive, where the user’s goal is to consume information.
A “web app”, conversely, is creative. The user’s goal is to create content.
Knowing your end goals up front will influece design and architecture decisions. All things considered, it is still a very fluid notion because the same web page can be very different things to different people.
For me web apps are a subset of websites in the same way as cars are a subset of vehicles.
And social media web apps are a subset in the same way as sports cars …
I don’t think there is an either or, if your browser can use http requests to access it, it is a web site, whether it is a web app or not is another layer of categorisation.
As such I voted no – this is not a useful distinction because, for me at least, there is no distinction. Mammals are animals, they’re not mammals or animals.
Chris, I see a lot of exceptions and gray areas as well and I think it’s silly to make a strict dichotomy where none needs to exist. Most things on the web are some hybrid between a website and a web app. However, I do think, linguistically, the terms website and web app are much different. A website is just that, a site, a place you can go (you may just be there to see, or to do something, or both), but a web app, linguistically, must have a practical…. wait for it…. application!
I don’t think a distinction is always necessary, but the term app to me implies “doing stuff” more than “getting stuff” as you put it. A website seems more like a simple source of information, while an app implies at least one specific functionality that is hard or impossible to find elsewhere.
IMO:
Web Site: SEO-friendly, marketing-oriented, online brochure, built to promote an idea, concept or person.
Web App: Limited SEO concerns, non-marketing-oriented, built to solve a business problem.
For me, it is helpful to have this distinction, especially when trying to gauge what a client is looking for. The term “Web App” carries more weight, it has a more robust connotation. There are many web designers who just build web sites, but have no capacity to build a web app because they don’t know how to write code or their skill set is limited to client-side technologies. There are many web developers who can write code, but cannot build a successful web site, because their ability to bring an idea to fruition through spacial layout, colors, typography and aesthetics are simply non-existent.
Many seem to really feel distinction and categorization is necessary. But “website” is a great word, better than app, since it distinguishes itself from “application” which we would use to talk about a program that is installed and runs on your operating system/device. Now for us web people web app sounds cool and we get it, but with Apple introducing “app store” and really setting in stone that app means something you install on your device I don’t like it as a term for the web. My mother does not know what a “web app” is and the best guess was a browser she can download from the app store like safari. Even on most wikipedia pages everything from facebook, twitter, youtube etc are termed “website”.
In a way there are already categories, apps are installed and run on your device, sites are navigated to using a web browser, key term being site a position or location of something, like a URL for instance.
These marketing buzzwords always create more confusion than any clear distinction. It’s almost exactly what happened when the “Web 2.0” phrase started getting thrown around. “Web 2.0 sites are sites with AJAX.” “No, Web 2.0 sites are sites that have user generated content.” My favorite example of this is how nothing is on the internet anymore, it’s all on the “cloud”. Like everyone moved their servers into a magical datacenter in the sky.
There is no benefit to grouping the internet into subcategories like this. Is there a difference between a small 5 page site for a restaurant and Google Docs? Absolutely, but they are still websites. We don’t make this distinction with desktop applications. For example, on OS X I use an application that does nothing but hide the extra icons on my menu bar. This is very simple compared to say Photoshop, yet they are both just applications.
I do think that we are moving toward a future where the line between what makes a desktop application and a website is going to blur together. But a the moment this is just marketing speak to say, “Hey, look we have that cool new thing everyone has been talking about.”
If the front-end loads only one page (i.e. index.php) and has got a router, it’s a web app. If it loads different pages, it’s a website. :D
Def a good subject to raise. Web site and Web app are essential substructures. Although Web App has a prevailing feature of efficient functionality rather than infusing content.
Both users and creators have felt the benefit of collaborating both simultaneously.
Can you please implement an up-vote system in your comment section Chris? I want to read these comments, but only the best ones .. There are some very intelligent people commenting here and I don’t want to have to sift through these comments for the best opinions.
Second. View by UPS/date option would be nice. And replies.
In my experience they are very different. Sites are more like books or galleries; apps are more like tools or people. Apps have a greater number of interactions, and many different types.
Read Randy Hunt’s book, Product Design for the Web
He lists a lot of distinctions between product design and site design.
If the server computes most of your interactions in real time, as playing a game, searching or producing an e-mail, adding a todo item, within the same page, it’s an App. When the server computations are mostly for presentational purposes, most of your interactions are related to media consumption, and it’s divided in separate pages, it’s a Web site.
There are exceptions to everything here, but this idea serves me as a guide to separate both.
Who is saying these terms are mutually exclusive? No one. So what’s this debate about?
Human language isn’t a hashtable.
“Our new project is a restaurant website” vs “Our new project is a restaurant web app” vs “Our new project is a restaurant phone app.”
Neither of them really says much on what the project is, but they cue me in on what to expect heading into the conversation.
here is an interesting (semi-related) take on the topic
Tom Dale: Stop Breaking the Web — JSConf EU 2013 >>>
The main difference is that website needs a browser to run while web apps is a standalone application. Content wise, it may do the same thing, i.e displaying information but web apps almost certainly better for user interaction. Navigation and other buttons are more clearly defined while websites may used lots of text hyperlink.
I was going to say essentially the same thing Nott said. I see a webapp as a single function, stand-alone application that may also be used as a module in a site, while a website may have many pages and multiple functions. Google’s map-app is a good example, it’s an app that can stand-alone or be inserted into a web page.
Chris, I have appreciated your content in the past. The question was how useful is it to distinguish between the two?
Apparently about 72% useful :)
All language is arbitrary. It’s usefulness comes from shared meaning. Even numbers, which seem concrete, carry ambiguity. Binary, octal, decimal systems change the meaning of 10. It still carries enough meaning to use in common practice.
Is there a difference between a website and a pdf? Is it useful to distinguish between Photoshop and a web based photography editor? What about Eclipse IDE and desktop solitaire? They all “exist” as bits of energy moving around in some hardware that processes and interprets a bunch of things.
Technical relativism is not helpful if communication is the goal.
You guys often answer, “Just build websites,” when people are getting too caught up in what is exactly “best”.
I say, “Just use the language,” it has some meaning to the majority of your audience :)
I’ve written some additional thoughts about this over on my website.
In short, distinguishing between behaviour (interaction) and information (consumption) makes a lot of sense …at the pattern level. But distinguishing between “web sites” and “web apps” makes very little sense because they inevitably contain a mixture of both kinds of pattern.
I thought web apps were webpages that were heavier on the client side. Doing more work in JavaScript than usual, just like a native app would.
Reminds me of a joke I used to tell, when the term “web 2.0” first came along:
“What’s the difference between a web site and a web application?
“A web application comes with built-in excuses for why it doesn’t need to be accessible.”
There is a major difference between web applications, and native applications.