Editing 2224: Software Updates

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 12: Line 12:
 
However, as many updates create multiple versions, support for all of them can become a bit of a hassle for the company that creates them, so old versions frequently become unsupported after some years, or in some cases even months, of their releases.
 
However, as many updates create multiple versions, support for all of them can become a bit of a hassle for the company that creates them, so old versions frequently become unsupported after some years, or in some cases even months, of their releases.
  
{{w|Software as a Service}} (SaaS) is a software licensing and delivery model in which software runs on the vendor's computers (servers), accessed by customers remotely. The software is said to run "in the cloud" as "cloud applications". Customers purchase subscription licenses. Since the only copy of the software is that which the vendor runs on their own computers, all customers use the one latest version of the software, which is upgraded whenever the vendor chooses to.
+
For users that prefer to stay on old editions because of unfavorable changes in the newer programs, this can mean that they are left unsupported, causing them to become more susceptible to hard-to-solve bugs, newly discovered security vulnerabilities, or incompatibilities with newer versions of operating system or other software.  Emulators or virtual machines are one way to keep such a program running as though it were in its native environment.
  
The benefits of SaaS is that the customer mostly does not have to worry about whether their machine is able to run the software, and both the vendor and customer only have to concern with managing one version instead of being familiar with multiple ones. The downside of SaaS, however, is that if the vendor alters or removes a feature that the customer prefers or requires, or introduces a bug, the customer has no ability to remain with an older version, losing a feature of the software that they depend on, or get impacted by a new bug that is introduced by an upgrade to the software with no ability to run the older version.
+
{{w|Software as a Service}} (SaaS) is a software licensing and delivery model in which software runs on the vendor's computers (servers), accessed by customers remotely. The software is said to run "in the cloud" as "cloud applications". Customers purchase subscription licenses. Since the only copy of the software is that which the vendor runs on their own computers, all customers use the one latest version of the software, which is upgraded whenever the vendor chooses to. If the vendor removes or changes a feature that the customer prefers, or introduces a bug, the customer has no ability to remain with an older version. A major benefit of SaaS is that the customer never has to do anything to upgrade to the latest version of the software to get fixes to newly discovered bugs or security vulnerabilities. A major disadvantage of SaaS is that the customer may lose some feature of the software that they depend on, or get impacted by a new bug that is introduced by an upgrade to the software, and has no ability to run the older version.
  
This downside of SaaS is frequently pointed out by skeptics of SaaS, who like to argue that the traditional purchase model allows the consumer to theoretically able to operate that version indefinitely; there is no obligation to pay ongoing fees or to upgrade to later versions. Indeed, some users do stay on old editions because of unfavorable changes in the newer versions, which is not something SaaS customers can do.
+
With traditionally marketed software that consumers purchase to run on their own computers, the consumer is theoretically able to operate that version indefinitely, there is no obligation to pay ongoing fees or to upgrade to later versions. In reality, though, running increasingly old software versions becomes increasingly problematic.  Vendors will stop providing support for their oldest versions, which can cause problems for those customers who do not upgrade when bugs or security vulnerabilities are discovered, or newer versions of operating systems require changes in the software. Additionally, that software may no longer be compatible with the latest version running on other peoples' computers. A customer may eventually be forced into the bind of having to upgrade just to be able to run the software, but then lose a feature in the software that they depend on.
  
Randall argues that in reality, though, because even these traditional pieces of software have versions and are equally susceptible to having a feature axed by the developer, as well as the problems of running increasingly old software - mainly concering bugs and later-discovered security vulnerabilities that would only be patched via upgrades, the practical upshot of these trends is that it's rarely plausible to buy a single copy of software and continue to run it indefinitely. Almost all consumers who continue to use a particular piece of software will eventually need to upgrade to and pay for new versions. While this isn't precisely the same as paying regular licensing fees and running software that automatically updates, it's an effectively similar model. In that sense, "All software is Software as a Service".
+
The practical upshot of these trends is that it's rarely plausible to buy a single copy of software and continue to run it indefinitely. Almost all consumers who continue to use a particular piece of software will have to repeatedly upgrade to and pay for new versions. While this isn't precisely the same as paying regular licensing fees and running software that automatically updates, it's an effectively similar model. In that sense "All software is Software as a Service".
  
 
The title text refers to a different aspect of cloud applications. Since they run "in the cloud" on remote computers, they are subject to the limitations of network speed to the servers. The time for data to be sent to a server and a response to be received back is called the "ping time".  
 
The title text refers to a different aspect of cloud applications. Since they run "in the cloud" on remote computers, they are subject to the limitations of network speed to the servers. The time for data to be sent to a server and a response to be received back is called the "ping time".  
Line 26: Line 26:
 
However, technically speaking, there is a nonzero time taken for the data to travel from the user's keyboard onto the computer, across the various circuitry, and back to the monitor. Hence there is a "ping" time even for a local computer (in fact, many "gaming" monitors advertise low input lag, in the order of 1-5 milliseconds, as a feature). Therefore, you could technically say that all applications are cloud applications, just that some (local computers) have very fast ping times whereas for others (servers on another continent) it may be quite slow.  
 
However, technically speaking, there is a nonzero time taken for the data to travel from the user's keyboard onto the computer, across the various circuitry, and back to the monitor. Hence there is a "ping" time even for a local computer (in fact, many "gaming" monitors advertise low input lag, in the order of 1-5 milliseconds, as a feature). Therefore, you could technically say that all applications are cloud applications, just that some (local computers) have very fast ping times whereas for others (servers on another continent) it may be quite slow.  
  
This ignores the fact that being a "cloud application" implies that it runs on a server in a remote location. The joke is similar to the one that claims everyone commutes to work - including those that "work from home" - but their commute times just vary a lot. For example, consider the "commute" from your bedroom to your home office.
+
This ignores the fact that being a "cloud application" implies that it runs on a server in a remote location. The joke is like saying that everyone commutes to work - including those that "work from home" - but their commute times just vary a lot. For example, consider the "commute" from your bedroom to your home office.
  
 
==Transcript==
 
==Transcript==

Please note that all contributions to explain xkcd may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see explain xkcd:Copyrights for details). Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel | Editing help (opens in new window)