Which Stack Exchange best for https://softwareengineering.stackexchange.com/q/410410?
How distinguish Cloud Computing vs. IaaS, PaaS, and SaaS? I don't know computer science or programming...please explain like I'm 5 and use simplistic English!
I researched with Reddit. I was reading this r/explainlikeimfive comment
Cloud computing is actually something you do, but aren't fully aware of. The basic idea is that you have a sever run by a major company, say Google for instance, that holds all of your documents but allows you to access them from any computer. The cloud is their servers, allowing you to use any computer with internet access to reach these documents.
But u/nooseforyou under argues
Actually, this is not cloud computing. What you describe is just storing stuff on a server, which has been possible since, well, since the Internet. It is still pretty much the mainstream understanding of the term, though.
Cloud computing is an abstraction, and to really understand it you need technical knowledge of how servers and networks work. The simplest way I can explain it, is that it is a whole bunch of servers/computers, in many different geographical locations, appearing as just one server and connected in such a way that computers can be added and removed instantly and on-demand. This means that instead of having to buy lots of unused servers just in case, you can rent exactly what you need for exactly as long as you need.
What I described was not "just renting a server", but a method of abstraction - a technical solution. It does enable more convenient and flexible renting of servers, but that is not the essence of it.
What you are now describing is Software as a Service (SaaS), a concept and term predating cloud computing, but now often seen as part of, or one type of, cloud computing. The other types being Platform as a Service and Infrastructure as a Service. It is all very confusing and the term is really not very well defined, but the essence of it, the new and innovative part, is what I described.
u/DoctorOddfellow explains that "IaaS, PaaS, and SaaS are acronyms for, respectively Infrastructure as a Service, Platform as a Service, and Software as a Service".
Infrastructure as a service refers to leasing access to networks, servers (or, more likely, virtual machines), file storage, etc. I.e. someone else providers the network and servers, but you can put whatever OS and software you like on those virtual machines and manage them how you choose.
Platform as a service is a step up from that -- pre-configured virtual machines with OS, database, app server, development tools, etc. loaded up and ready for you to install or build applications. Emphasis on the pre-configured -- you have less control here than you do with IaaS, but you also have less cost and complexity of set-up and maintenance.
Software as a service is another step up, abstracting all of the "back end" stuff (OS, database, etc.) and just presenting you with an application to manage. These tend to be dedicated in the sense that application A from vendor A and application B from vendor B wouldn't be installed on the same virtual machine. (If you wanted that sort of environment, it's back down to PaaS or IaaS). You're giving up almost all back-end control, but many companies don't want or need that control (because it means having a big investment in IT staff and infrastructure).