COMMENTS
Actually, we're already seeing that shift, precisely in the form of "ajax" and other similar solutions. As you noted yourself, the difference between thin and thick clients in where the bulk of computational work is done (or, rather, simply how much work does the client take over), and not where the actual application is located.
What we are seeing is that the client-side applications are now loaded from the server to run in the client, instead to be installed on the client itself. It gives us all the power of a classic thick client, but the maintainability of the thin client. The reason for this is the current availability of broadband access, and is not really than new an idea -- Java Web Start tried that several years ago, but still required some software to be previously installed (JRM).
Actually, even this approach requires some software to be installed (browser), but these days it's extremely difficult to find a PC without some kind of HTTP client installed.
Another advantage of this current "thick in-browser" approach is in the ability to degrade gracefully -- if your system lacks crucial components (e.g. Flash, a recent version of Javascript etc) to run it, a well-designed application can gracefully degrade itself to a standard interface (HTML).
There are tons of examples where AJAX alone won't cut it. Take a look at any market that requires higher quality object viewing at the client and a plugin of some sorts is almost always required.
The medical imaging market is the first of such applications that comes to mind. Clinicians can't view radiology studies in a browser that is not able to display the advanced attributes required of the files themselves.
That's one reason why a lot of hospitals use Citrix.
That's absolutely correct; however, like thick clients haven't made dumb-terminals disappear, and like thin clients continued to exist after Web became a standard, there will always situations where thick clients will have more sense than any Web-based solution.
Dharmesh,
Isn't *smart client* architecture, by microsoft, serves the purpose as your proposed next generation wave would do ?
--RAK
microsoft's "smart client" is just trying to rip off flash
Mark: Microsoft's smart client stuff is nothing like Flash. It's basically a set of tools to build self-updating, Internet-connected apps that are more like desktop apps (and don't run within a browser).
Berislav: I agree with your point, but I'm thinking more about the "predominant" model at any given time. Right now, it's thin client whereas 10 years ago, it was thick client.
dharmesh i know what microsoft means by a "smart client" thank you very much
microsoft started plugging the architecture just after macromedia started pushing flash as a so-called "rich client" interface. go figure
I only have one thing to say : the future is already here (but not open source) since 1998 : REBOL. Data is code, and code is data.
The equivalent of .NET in less than a megabyte.
http://www.rebol.com
At any one time there are always apps of the different sorts.
Things improve over time, but it usually seems too slowly.
Maybe what we really need is a truly easy way for developers to weave apps together from, smart, desktop, web... components. (I mean so truly easy that a savvy and determined person, who is not a full time programmers can do a very good (and entirely acceptable) job.)
The history of these systems is deep. I believe MS was looking at the codebase, that is now called Flash, during the blackbird project. Years ago I remember some smart stuff being done with XMLHTTP, now it's called Ajax. It's certainly not new!!
When considering mass-scale technological trends (including cyclical, linear, paramteric and nonlinear ones) I believe a large part of the debate is cultural.
When a technology or area of technology touches so many people and affects so many areas of our lives in complex ways (developers' lives and consumers' lives) its reasoning space grows in scale and complexity. Mass-psychology and the psychology of "cults" (how they're formed and how they die off) becomes part of the reasoning space.
Consumer and developer psychologies are not driven by logic alone. Your post could end up being a book if it was to cover the entire reasoning space for cultural phenomena as it applies to thick and thin clients.
The subject requires a much more complex treatment.
Marc
Dharmesh
I think your estimate of what is coming is happening in the form of Adobe's Apollo and Microsoft WPF: i.e. let web apps break out of the web browser
The browser will not die in the near term. Apollo and WPF will be used in addition to the browser. Diversity is what will happen. the browser model is too culturally deep rooted to be discarded in the short term. The situation is a lot more complex than thin-thick cycle.
There is so much X/HTML based content and skill that it cannot go.
One logical way to the future is that HTML can contain WPF and vice-versa, allowing a sane shift, and it's all seen via a single interface, the browser!
"The future has arrived but it's not evenly distributed" is a good answer to this debate. My guess is that there will be a distribution of various technologies, not one grand unifying technology or model. That's what evolution is all about, i.e. diversity... everything emerged from a singl celled organism (or HTML in this case)
Webstart has been around for a long time. Since Ajax is starting to prove itself as an unreliable and dangerous hack, we're back at thick clients. I couldn't place an order on Dell the other day, because of some stupid live-updating-javascript-html-dom hack, ie, an Ajax(y) type of hack.
Java Webstart is the way to go:
* portable
* sandbox-able, safe, like an applet
* stable
* auto updatable
* proven
Java Webstart is indeed a great concept, and has only one thing against it -- it's based on Java.
Does anyone know of something similar for Python?
We've got good examples of language favouritism here.
I'd be very happy with:
1) XHTLHTTP/Ajax capabilities inside the browser and available to any language, and solid
2) Continued improvement of the browser, real improvement not tinkering with the paint job
3) More thorough and dead easy interop, Python, Java, C#, VB.NET, JavaScript (aka C--), Monad...
I wrote down a few good thoughts about this topic <a href=http://evolvingtrends.wordpress.com/2006/05/29/what-evolution-means-for-the-web/>here
well, here then: http://evolvingtrends.wordpress.com/2006/05/29/what-evolution-means-for-the-web/
I am thinking about a thick client protocol that is a bit like a media player on steroids. It includes a GUI toolkit that mirrors much of the Windows interface and client-side processing of OpenGL and multi-media streams but definitely NO client-side application code. It can still be processor intensive on the client for rendering multi-media streams. For security reasons, it will normally only connect to a single server where the application runs. It is implemented as a common client shared between all server applications: http://mantle.homelinux.net/sap/
plz tell me the difference between thin and thick client web application in asp.net
Dharmesh, have you heard anything new regarding thin client use in the business world or in the military?
Dear Sir or Madam
Greetings!
We are Thin Client Manufacturer in China.
Thin Client is a cost-efficient computer terminal inside which is without processor, harddisk, and RAM, it acts as an agent between server and thin client user, each thin client user work independently while sharing the resource of server, a server supports up to 30 thin client users simultaneously. Comparing to traditional computer, thin client is far more economical and managable, it has been widely used in business, factory, education, hospital and Internet cafe.
Established in 2003, Kingsem Technology Co., Ltd has been focusing on thin clients and network related software & hardware products which include: Thin client, LCD monitor, Internet/web filter, VOIP, etc. Along with our product line we provide OEM/ODM service to our customers. 500,000 sets yearly productivity makes us the leading thin client company in China.
Best Regards,
Kyle Wang
Sales Manager
TEL: 0086-020-85898717
MOB: 0086-13631305590
WEB:
www.kingsem.com MSN: kyleKINGSEM@live.cn
EMAIL: kyle@kingsem.com
35USD for a Thin Client Computer, fairly saving cost for PC access!