Thursday, June 21, 2007

AJAX Adventure

For over a week I've been building, and just completed, a web-based website content editor. All of my client website's content exists in MySQL databases and all of their pages are dynamically generated XHTML/CSS w3c compliant pages. Until now, the connection has just been PHP. The availability of great Javascript AJAX libraries encouraged me to undertake this project.

I wish I could say everything is taped out and it's just a matter of putting some blocks together... but it's not! Often doing some of the simplest things with the web monster can be frighteningly complex. If you wanted to be 100% competent on web development, you have to know all about server-side languages and database interaction and client-side browser interactions and all of the different quirks of the five or six main browsers and their earlier versions and new releases and how each handles CSS1 and CSS2. Even then, certain things fail. It's a 90% technology that's never finished.

The problem really isn't the software, the problem is (as usual) people. Incomplete communications, erroneous communications, missing data, conflicting opinions and even greed, jealousy, envy and other destructive emotions all regarding the methods, means and tools to use our glorified "universal" interface called the Web.

I have right now only one user for my simple content editor, so I've debugged and set it up for Firefox. Works great! IE squishes table columns, completely alters the dimensions of submit buttons and refuses to refresh windows--usable but ugly. Opera renders incorrect font sizes, may or may not refresh pages--again, usable but ugly. Haven't tried Mozilla, Netscape or Safari, don't want to.

Ths same conclusion again presents itself: Fine tech if you don't do anything too fancy. Most public pundits belie the level of complexity. If you're a non-techie, try right-clicking somewhere on the background of a webpage and select: "View Page Source". This will popup a window to show you what has been sent to your browser to display the page you are looking at. It could be the tip of the iceberg as every piece of that page's code could be generated by multiple programs accessing multiple databases that exist on the server that served-up that page across the Internet's virtual space.

I'm not knocking the complex, just holding out to have all you developers out there at least consider simplicity and clarity for the rest of us--please!

No comments: