Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Many times i have heard people saying that a particular hardware to be running a thin client web browser. But from the definition of "thin-client", doesnt all browser qualify as a thin-client? as all they do is rendering the information sent from a remote server minimizing the work at the browser end?

share|improve this question
1  
No, a browser is not a thin client, at least not anymore. With the proliferation of web applications, there's a ton of stuff that happen on the client, it's not just about rendering information. Also, this "If all browsers are indeed thin-clients does that mean all the clients in a client server architecture a thin clients" doesn't make sense. Even if browsers were thin clients, what does that have to do with any other client server architecture? –  Yannis Rizos Nov 4 '12 at 20:34
    
Sorry I did not frame the second part of my question correctly. I have removed it to focus on the first part of my question. –  maverik Nov 4 '12 at 20:45
    
The browser alone isn't the client. The memory and CPU power on the client can be factors in how well some things will run and that is what determines how thin or thick a client is. –  JB King Nov 4 '12 at 21:21
add comment

2 Answers

up vote 0 down vote accepted

The definition of a "thin client" (from wikipedia):

A thin client (sometimes also called a lean or slim client) is a computer or a computer program which depends heavily on some other computer (its server) to fulfill its traditional computational roles

Browsers started as rendering engines for HTML. Servers provided the raw HTML text and the clients (the browser) rendered the text into something nicer - so browsers are actually fat clients!.

Now if you have an application that is web-based (that is, runs on a browser), you can develop it as a thin- or a fat-client independent of the fact that it runs on a browser. You can develop full applications that will run on the browser without needing to fetch any data from the server and doing all the computation by itself, or you can develop an app that has no state, no calculations, only visual logic, and everything else is done on the server.

share|improve this answer
    
"Servers provided the raw HTML text and the clients (the browser) rendered the text into something nicer - so browsers are actually fat clients!." - By that logic, wouldn't a traditional thin client terminal be considered 'fat' because its the one that actually painting the pixels onto the screen? –  Graham Nov 5 '12 at 20:51
    
Probably the purpose of the terminal is not to display pixels but to provide an interface to an application. In the case of the browser, it is an app for displaying HTML. –  vainolo Nov 5 '12 at 20:55
    
What I meant was: It all depends on the perspective you take. As an HTML rendering app, a browser is not a thin-client. But if you have a web app that runs part on the browser and part on the server, then you can have a thin-client (almost no logic on client) or a fat-client (a lot of logic on client). –  vainolo Nov 5 '12 at 21:12
add comment

Although all browsers indeed qualify to be a thin client, browsers running certain plug-ins also qualify to be a fat client. For example, if you have an Adobe Flash or a Microsoft Silverlight plugin, your browser can be programmed to run a thick client built on top of a given plugin.

share|improve this answer
    
So If understand correctly, it is the nature of applications running on the browser that determines if the browser is behaving as a thin/fat client? The browser as it is has the capability to be a thin/fat client. –  maverik Nov 4 '12 at 20:58
    
@maverik Not all browsers have the capacity to be a fat client: for example, safari on iOS doe snot allow fat (or eve thin) clients built using flash. –  dasblinkenlight Nov 4 '12 at 21:01
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.