Fog Creek Software
Discussion Board

Windows Good, Browser Bad, Kool Aid Yummy

Yes its true that you can develop a more sophisticated GUI with Windows.

But the beauty of the browser is it's simplicity, ease of use and availability.

Should we build Word or Excel in the Browser? Probably not.

But try not to ignore the Browser's role in the growth of the Internet?

Also aren't browser based GUI's in their infancy?

Why did Dan Bricklin of Visicalc and Trellix fame switch from his GUI front end to a browser front end?

Can we put down the Kool Aid and continue this discussion?

Thursday, November 15, 2001

To go on in this topic, we have to find out what exists on the browser.

The only browser I know is decent is IE.  Perhaps Opera, Galeon, and Konqueror are good, though I haven't tested them.

There's Flash, which has a C++ API and is really fast.  (Word to the wise:  I have seen incredible things done with this API, but don't rely on the utility libraries.  Read the sourcecode for enlightenment but keep in mind they're buggy.)

Java is reasonably fast but eats memory.  The load times are also a beat slower than what you might want.  For security it can't be beat.  It also enforces certain good programming styles, and the library sourcecode is available, which turns out to be very useful.

I've tried out Curl, which seems very fast but the licensing might be unfortunate:

There is also Inferno, from the company (I believe) that spun off from Kernighan, Ritchie and Pike:

Does anyone know of others?  I can understand people relying on groupthink a little because there's so much information to know in detail, but the road less travelled is certainly less boring.

forgotten gentleman
Thursday, November 15, 2001

I still think there is a future in using the browser to download code to the local box and running a rich client.

The advantage of the browser is that you don't have to distribute the software and upgrades, etc.

The advantage of a rich client is more flexibility in UI, a non-batch oriented UI, possibility of more efficient data entry and manipulation.

This is done today with applets, flash, quicktime and other plugin technology and the java WebStart technology.  Look for the trend to become more established over time.

Matthew Cromer
Thursday, November 15, 2001

The delivery of bits and pieces, components, services through the rectangular window of a browser seems such a nice thing.

Until you have to support it in an uncontrolled marketplace.

At least if you roll your own client you know the dependencies (someone is likely to jump in with 'what about which MSVCRT*.DLL do we work with), whereas with vagueness such as a browser, flash, calendar plugin, O/S etc, etc there is no end to the possible number of permutations.

Simon Lucy
Thursday, November 15, 2001

Version dependency is a main problem with writing to browsers.  Fortunately, vendors are seeing this and creating better versioning systems.

For Java Webstart:

"... an application can request a particular version of the platform it requires, such as Java 2 SE 1.3.0. Several applications can run at the same time on different platform revisions without causing conflicts."

Java is pretty platform-independent, except for the fact that outside fonts do not get rendered to exactly the same pixel-size on different OSes, which annoys me.  But then again, I don't think this is at all unique to Java, and one should use layouts anyway.

forgotten gentleman
Thursday, November 15, 2001

How about the simplicity of plain HTML with light DHTML.

Additional functionality often leads to additional complexity in both development and usage.

Thursday, November 15, 2001

Gee, everyone here has missed the solution to this issue. First, the browser does suck from application development point of view. It is simply a lousy tool to use for development of software. A few mentioned some Oracle Forms examples. In those cases, you are not using HTML any more. You fact wind up using a client. The fact that the client runs in a browser is really a moot point (there are also 3270, and VT100 terminal emulators that run in a browser also….but that is not crappy html browser anymore!).

However, the browser has one thing going for it:
It allows you to run a application remotely.

Just like in the old main frame days, you don't send the application down the wire, but only the text.

Hence, the solution to this problem is very simple: Split the windows interface. In fact, Microsoft miss a HUGE opportunity in this regard. Take a look as to how x-windows works in Unix/Linix. The application and the *connection* to the interface is split. This is very important concept, and one that the browser has. This means that when using x-windows I can run a program on the PC in the cubicle next to me, and the program will load, run and execute on THAT PC, not mine! However, all  commands, and updates to the interface are sent to a window on MY PC (a socket just like the browser). In other words, I can run multiple applications on my PC, but the applications can be on other PC’s all over the place (on that PC next to me, or half way around the world).

Microsoft really blew this one. They did not want to take this view because of their polarized view of selling software for *each* PC. However, they are learning. Windows XP now includes a Windows Terminal Server client. While this remote control software is not the same architecture as splitting the application and output, it is very close. With a change to the windows architecture, I should be able to launch a program on your PC, but have all output go to my pc. This is the way Unix has always worked (telnet), and the concept of functional was carried over to the x-windows GUI. The ability to run a piece of software on a PC down the hall that I use once a year, and not having to install it on my PC is truly a great feature.

Of course with the .net stuff, my com objects actually talk across the net! This opens up a whole new world…but I think the thin client idea is better and more reliable.

Not only does this thin client approach make sense, but I instantly get a client that works on existing software without a rewrite. In other words, you get all the benefits of the browser, and a much better interface. While I don’t think Linux will ever rule the desktop, if it does it will be the split application/output feature that wins the war.

Albert D. Kallal
Edmonton, Alberta Canada

Albert D. Kallal
Tuesday, November 20, 2001


You should look at


Wayne Price
Wednesday, November 21, 2001

*  Recent Topics

*  Fog Creek Home