About W3 Systems
"Who are you, and what were you before" Humphrey Bogart, CasablancaMy name is David McCombs. I have been a developer for 20 years.
I
have seen a lot of development environments and operating systems come
and go (although nothing ever seems to completely go, but does something
more George Romero like.) I have been involved in Windows, Unix (mainly AIX), OS/2, DOS and even a little AS/400. I have developed in Shell Script PERL PHP ASP JAVA Visual Basic Javascript C C++ and on and on... I have worked in IS shops where someone made the decision to go with a certain platform and then had to live with it.
I have great sympathy for all of those shops that banked on VB. It's now a legacy language, replaced by VB.Net. Microsoft officially stopped support for it in the Spring of '05.
I have also watched with some consternation the current state of affairs for web development. My concern is that not only are many companies making bad choices, but that good choices are not available. Browser interoperability and incompatibility are another area of concern.
I decided to take a chance and start a company to provide good choices and to address those things that concerned me about the current state of the web. The resulting environment has allowed me to build robust applications for my customers that are very 'appliance like' in that they 'just work' without the need for maintenance.
State of the WEB
The state of the web is not good. If you look at Tim Berners Lee's initial intentions for the web, it has not really even done a good job of fullfilling those. TBL is a physicist, and wanted to transact science informationover the web at CERN. In my mind, that requires standard ways to transmit and edit text, mathematical formulas and vector graphics. We have just begun to do those things, but only Firefox has yet to support vector graphics natively.The standards bodies have adopted the right standards in the form of HTML, XHTML, XML, MATHML and SVG. There is also considerable standards work in CSS concerning printed output.
Now the browsers should start supporting ALL of these.
Especially galling is that the CSS print standards are only supported thus far by the Opera web browser.
When browsers support the standards on the books, at that point TBL's vision will be realized, but over 10 years too late.
Smart Clients.
AJAX is going to overtake other methods of doing web applications.
(W3Systems is already working exensively on C++ services and AJAX client APIs.)
DHTML is already well supported.
Go Figure List:
- One would have thought Java would have done better on the client, but it was always slow and strange.
- One woud have thought the Microsoft would ship the .net componets with the OS, but they have yet to do so.
- Flash and AJAX are the only viable contenders for the smart client.
- What ever happened to web fonts? (Sick of Arial everywhere?)
Buggy servers.
So since Java didn't work too well on the client, it went to the server. Since James Gosling doesn't trust programmers to be professional, he removes language features, assumes a virtual machine will know when to free memory, and creates the slowest (& largest memory footprint) development environment in history.
Since Windows doesn't fork processes, Microsoft says CGI is too slow, and we should run everything in process. Interpreted PHP, Perl etc. languages are used for expediance instead of compiled ones. And project managers all go with the flow, and make decisions based on what everyone else is doing. The result of all this are highlighted on my bug collection, which would be much much longer if I had time to copy all of the page failures I see (and I am sure you see as well.)
Machinations of W3 Systems Design
W3 Systems wants to contribute to the internet in the following ways:- Release new expressive powers to the web to allow people to communicate and learn.
- Distribute web intelligence and data evenly across servers and browsers.
- Allow easy integration of new media and standards.
- Create utterly reliable business oriented web sites.
- Push administration out to the end users.
- Add constraints as necessary.
