Showing posts with label AJAX. Show all posts
Showing posts with label AJAX. Show all posts

Friday, November 10, 2006

New Toy! Script#

Looks like a really clean concept. I won't talk out of my butt about it, because I haven't played with it yet.

Oh, and thanks to Brennan for turning me on to this. Lot's of other nice stuff on his Power Toys post.

Wednesday, November 08, 2006

More reasons why a Web Application is a fundamentally unnatrual act.

Yes, more railing about the evils of browser-based "applications".

Follow the link for an MSDN article about how you can put a progress bar on your web page when the server is going to take a long time to process your request.


The rub lies in the fact that the operation runs on the server and there's no way for a server-side environment to push information to a page displayed in a browser (unless the server holds the connection open to the client, rendered to the unfinished page, but that's not recommended). Basically, when a classic postback is taking place the client page is virtually frozen and no other client activity can occur.


The advice in the article is actually pretty good. A perfect job for AJAX. ("A sufficiently advanced technology is indistinguishable from a rigged demo.")

But let's just not forget how much simpler it would be to accomplish the same goal in a thick client. Spin up a separate thread, and point it to a callback method that updates the progress bar. To be fair, it's a fundamentally difficult problem. You generally get fake progress bars when you'd have to pay a high cost for real progress information.

But the mechanics to accomplish all of that is much harder in a web client environment. AJAX does at least bring some sanity to the situation.

Thursday, November 02, 2006

Bamboo Technology

I googled around a little bit, and apparently this expression is not as popular as I thought. And no, I'm not talking about the content management system by that name.

Its inspiration is The Professor on Gilligan's Island. Well, I'll be darned, there's a whole article about it on wikipedia. (I go there a lot to make sure I don't say something patently stupid on here.) The coconut Geiger counter is an all-time classic.

Normally I use it as a negative, but it doesn't always have to be. I'm sure you all have your own bamboo technology you have to deal with -- you're just calling it something else. If I had to define it, I'd say it's stretching an old or limited technology well beyond its intended use. Usually you run across this in a bad way. Our accounting system runs on a "database" called Universe which is almost as old as I am, and you program it in Pick Basic. It calls itself a "multi-value database" which really means, "This group of flat files are fixed-width delimited, but sometimes inside a column you might see multiple values delimited by an unprintable character."

I had heard of neither Universe nor Pick Basic until I got here. You hit the application with a terminal emulator. It has since been bought by IBM, who, clearly by magic, have written an XA JDBC driver for it that actually works. We update our Oracle back-end and the accounting system inside a distributed transaction. I can't begin to think how it actually accomplishes that. Hat's off to IBM for that -- I'll buy their coconut Geiger counter when it ships.

I'd call AJAX an example of good bamboo technology. We've been stuck with javascript since before the dawn of time (assuming time dawned sometime after '95). And we'll continue to be stuck with it for the foreseeable future. AJAX is getting a big bang for the buck in a sensible way that makes the best out of what we have.

But I should save that up for a rant about knee-jerk decisions to do everything as a web app.