Today is the 61st day without rain here in Texas. That’s several days beyond the previous 58 day record set back in 1934. Water supplies are low enough in the Dallas/Ft. Worth area that water rationing has begun. Normally, during droughts, we get every-other-day restrictions on residential watering but this year it looks like every-five-days will be the rule. The whole idea of growing grass on the land all around a house has always seemed fairly stupid to me anyway, so I really don’t mind seeing it die off. Lawn mowers put out an amazing amount of pollution – probably more than a car. And with no wind or rain these days, all that smog seems to hang over the city for way too long. The grass in our in our front yard is so dead and dry right now that it makes a lot of noise to walk on it. Dumping some Captain Crunch breakfast cereal in your driveway and walking around on it will give you a good idea of what it sounds like.
Oddly, there are always lots of people around during these droughts who prefer to have green lawns more than drinking water and they frequently ignore the rationing rules and water their lawns on a daily basis. We’ve restricted our watering to the plant life we’d really like to keep such as our trees. And lately, we’ve discovered that the reptiles that live around the house are so thirsty that they’ll happily drink water provided by our watering can. Our lizards occasional get brave enough to eat out of our hand but it’s rare to see them drink at all. A few days ago, a green anole decided he liked the water pouring out of our watering can so much that after drinking some, he jumped under the stream of water and let it cover his entire body as if he were taking a bath in it.
Susan and I went to a computer auction saturday and picked up a few interesting odds and ends. Live auctions are strange; they can be really boring sometimes and a lot of fun other times. But eBay is a lot more convenient most of the time.
All the work with JSP and servlets that I’ve been doing for one of my clients lately has gotten me interested in using them myself. I’ve got a development box set up with Tomcat and have been fooling around with it for a few days. It actually looks like one could implement a portal site like Slashdot or Advogato pretty easily using Java servlets. I’ve found a really cool HTML template scripting language that seems much better than JSP, called WebMacro. It allows you to completely seperate the Java code from the HTML markup so the web designers don’t have to know programming and the programmers don’t have to do page design. There’s a nice article about some of the problems with JSP by the WebMacro author over at servlets.com.
I’ve been working with a client using Epicentric to develop portal sites lately. I’ve worked on portals for other customers in the past and have lately started wondering what the most efficient way of developing these sorts of web applications would be. The Epicentric product is Java-based and relies on a fairly huge stack of software above the web server including a JDK, JDBC, a JSP server, and a Java servlet engine such as Jrun or Tomcat. Epicentric is a commercial portal app. Other (free) portal apps such as slash use the mod_perl approach – basically a Perl app combined with Perl DBI. Zope is Python-based (which I’m assuming would be slower unless there’s a Python equivalent to mod_perl?). And then there’s mod_virgule which is written in C but has no database interface (yet).
The question that I really haven’t found a satisfactory answer for is the speed/scalability issue. Which approach handles transactions faster and which scales to very large sites best? I’ve been unable to find any type of benchmarks or even anecdotal comparison of systems like these. I’m thinking about coding a simple benchmark program that simulates typical portal site operations in both mod_perl/DBI and Java/JDBC and comparing the speed and scalability using the same hardware, OS, database, and webserver. Has anyone done anything along these lines before? If so, I’d love to hear about it.
I’m almost caught up on my work for the week. If it weren’t so late, I’d write a nice long account of my evening. The short version is that the IT department at the company I’ve been working with the last few weeks had a dinner at a nice (and expensive!) restaurant. A good time was had by all. Now, I’m off to get a few hours of sleep before sunrise.
It’s been nearly two weeks since my last news update – I think that’s the longest gap in over a year. It looks like the recent on-site work that’s been sucking up so much of my time will coming to end fairly soon, however. We’re still working on server migration issues and the client is a large company with way too much in the way of corporate politics and B-Ark middle management – so I’ll be glad to get back to work in the Open Source world where people have these wacky ideas about working together and helping each other. I will miss the IT staff I’ve been working with when the job is over though as they are a great group of people.
I set up an LDAP server last night. Actually, I just had to configure it – this was on a Red Hat 6.2 system and OpenLDAP comes already installed. It was much easier than expected. I’ll be spending a few days trying some experiments with Samba to see if I can get it working with LDAP. I was hoping to find some sort of web interface that would allow users to edit their LDAP entries but, other than a couple that allow users to change their passwords, their isn’t much out there yet.
I had a recursive dream last night. I don’t think that’s ever happened to me before. I went to sleep in my own house and dreamed (dream level 1) that I was on a business trip and staying in a hotel room. I went to sleep in the hotel bed and dreamed (dream level 2) that I was at a party. I became tired at the party and was led to a bedroom where I slept, dreaming (dream level 3) that I was in my office coding while someone stood beside my desk playing an electric guitar. I somehow became aware (in dream level 2) that this (dream level 3) was a dream and began listening to the guitarist, noticing how good the audio response was and wondering how my brain was able to produce such a good guitar solo in a dream when I can barely put two notes together in real life. Suddenly I woke up back in the bedroom in the house where the party was (return to dream level 2) and decided to leave the party. As I opened the front door to leave I was awakened in the hotel room (return to dream level 1) by someone saying that I was having a bad dream and should wake up. As I sat up on the bed in the hotel room, I awoke in my bed back in the real world. My first thought on realizing what happened was wondering how many recursive realties I could push onto the stack before my brain had a stack overflow and dumped core.
If I haven’t been doing a very good job of keeping my news page up to date lately, I can only make the excuse that I’m running a little short of free time these days. I’ve been helping a client migrate a lot of Solaris and Linux boxes to a new data center and it’s turned into a quite a major project. The last several days have also been spent helping them set up a Linux box to run Epicentric, a large, non-free, buzzword rich web development gizmo. Officially it’s used to make “portals” but the term seems to be defined very loosely so as to mean what we used to call a “web site”. And to make sure that enough buzzwords can be included, the Epicentric Portal Server runs on top of a big stack of other stuff including a Sun JDK, a JIT compiler, a web server, a Java servlet engine, JSP server, JDBC, and an SQL database. The end result is that you can take a simple web project that would take one person a couple of hours to do on a server with Apache and mod_perl and turn it into a giant project that requires dozens of developers, costs lots of money, and goes much slower.
The large number of components involved has created its own political problems with some people insisting that only high priced, non-free software like NT, IIS, and such must be used. What I’m actually using is Linux, Apache, the Sun JDK, IBM JIT compiler, and Jakarta Tomcat (the Apache Java servlet engine & JSP server). The only non-free components will be our existing Oracle 8i database and Epicentric itself. If anyone is interested, I may post a HOWTO page of the steps it takes to get all this debris working together. (assuming that I do in fact get it to work together!)
In unrelated news, I guess everyone saw the Slashdot article about Copyleft being named as a new defendant in the DeCSS suit because their DeCSS T-Shirt is a “circumvention device”? I’ve already bought two of their DeCSS shirts but when I heard the news I decided to buy some additional T-Shirts from them. Some of the money from each shirt you buy goes to the EFF or FSF so visit their site, buys some fun stuff and help fight the forces of evil.