www.jlion.com

Wednesday, February 27, 2008

I often have the desire to rotate column headings 90 degrees in table header columns. My brute force to this solution, an ASPX page that creates a rotated image of the text, has worked well for me in the past but I've just discovered what may be a much more elegant way to address this in the future. It seems that IE supports a "writing-mode:tb-rl;" tag that will force text to be rotated 90 degrees. Unfortunately it does seem to be supported only by IE at present so I can't scrap my ASPX page just yet. Still, for corporate web pages where my users are required to use IE (and a certain revision of IE, at that) it may work just fine.


I read with interest in the Christian Science Monitor that a mixed bag of Republicans and Democrats are joining forces to restrict political robocalls. The bill would not outlaw political robocalls entirely, only restrict the number of times in a 24 hour period that a household can be contacted, restrict the time of day in which calls can be made and require that caller-id not be spoofed. All good things, in my humble opinion.


One of my favorite books as a kid was "The Oldest Man and Other Stories" by William Kotzwinkle. While going through the basement last night I happened upon it. It's still too old for my boys who don't yet have much of an attention span for books that are not liberally sprinkled with pictures. Still, it set me to thinking and this morning I googled Mr. Kotzwinkle. It seems he's been a busy author, penning the acclaimed "Walter the Farting Dog" as well as a screenplay for one of the "A nightmare on elm street" movies. Interesting that writers of children's books sometimes cross the line to horror. Roald Dahl also did this.


About two months ago, I happened upon the VSS.VSSCoordinatorClass, a COM management interface for the volume shadow copy service. All the testing I did was on various XP Pro and 2003 server configurations. It seems that this COM interface doesn't work with Vista or on 64-bit XP. It doesn't seem to be documented by Microsoft. If I have time, I may open up a support issue with them and see if I can find out more info about the VSS.VSSCoordinatorClass interface, how Microsoft intends for it to be used and whether it will be supported in the future. Until then, use at your own risk.


I'm about a third of the way through Steven King's "The Stand". My first exposure to this book came from watching the miniseries which I enjoyed and found quite thought provoking. The film stuck with me, and after finishing GK Chesterton's biography of St. Thomas Aquinas I was feeling somewhat apocalyptic so I turned to the audio book version of The Stand.

The book is quite different than what I remember from the movie. The first third of the book (at least) deals with the ending of civilization in the US after a military grade genetically engineered flu virus is accidentally released from a clandestine lab in the southwest. It spreads rapidly, and King gives us snapshots as 99% of the population of the US dies within a week's time. The military stage manages the news, so mass panic is averted. As hospitals fill up with the dead and dying, people slowly come to realize that there is a pandemic. This phase of the book is really well imagined, I think, and I don't remember much coverage of the spread of the virus from the miniseries. I'd like to re watch the miniseries and see how the miniseries handles the spread of the plague.

Plagues seem to be a favorite bogeyman and seems to have supplanted nuclear catastrophe as the most popular way for us to imagine the world's end. We have avian flu fears, and that lawyer who was quarantined last year. I wonder how much of an influence "The Stand" has had?

It did influence me to rent "Osmosis Jones" for my kids. Osmosis Jones is a great movie about a brave white blood cell who fights fearlessly and against great odds to save his host, "The City of Frank" (played by Bill Murray) from an Anthrax infection. Great movie, even if IMDB does indicate that it was a box office flop. Ebert liked it, too.

Wednesday, February 20, 2008

I just had a really interesting conversation about time management with one of the engineers with whom I work. He says that he has jettisoned his PDA in favor of a 3x5-based system pioneered by a guy named David Allen. The 3x5 system has some great benefits: It's infinitely flexible and can store any information that can be recorded on a 3x5 card. There is even a web page where one can print out 3x5 cards optimized for tracking certain kinds of information. There's no expensive PDA to worry about losing or being damaged (although 3x5 cards are also subject to water damage). There's no requirement to synchronize the PDA with a desktop computer or the internet. In short, very similar to a Day-Timer.

The demonstration of his paper-PDA segued into a discussion of personal efficiency techniques. David Allen has a system for optimizing personal efficiency with which I am not familiar. The engineer and I agreed that some effective techniques are:
  • Do it now rather than later, when possible.
  • Make lists and review them.
  • Everything should have a place.
  • Always ask yourself "where do I want to go?" and then "am I getting there?"
Some things I like about tracking things on my PC rather than on paper are:
  • I can easily make backup copies
  • Sorting and organizing is quicker (and takes less space)
  • Windows Search Companion
  • No real need ever to throw anything away
The D*I*Y Planner web site does have a lot of really cool forms (a mood diary?, a life-map of achievements?) but there is such a thing as over-analysis and over-planning.

A reason that this is interesting to me is that I am presently working on a corrective-action management task management system. The basic idea is that someone will perceive a problem. They'll log into the system and fill out a form which will be routed depending on the problem described. Users will then have the opportunity to weigh in on various ways to a) solve this instance of the problem (if it has not already been solved), and b) prevent the problem from reoccurring in the future. The system will also support searches so users can see how previous, similar problems were addressed.

We agreed that writing is cathartic and also helpful for determining where one is going and whether or not it is important for one to continue in that direction. I think for a lot of folks this is an important value of a blog.


There was a mention in yesterday's New York Times of a book called Ultimate Blogs: Masterpieces from the Wild Web. This seems like web 0.0's take on web 2.0. Why bother making this a book? Isn't a review of blogs itself a blog, even if it's printed? I agree with an observation quoted in the article, that most blogs are merely collections of references to other blogs and web sites, without substantial unique content.

Many writers of blogs like to have readers, and google encourages writers to focus; to center themselves around a particular topic such as charting or politics. Many blogs are commercial in nature, written as a way to keep interested customers informed of new developments at a company. A lot of blogs were created because the author had something very specific to say (perhaps about the Iraq War, or bad customer service at a store) and once the author has vented the blog no longer is updated.

Friday, February 15, 2008

I have my DotNet 2.0 web applications configured to send me email messages whenever errors happen. This wasn't too hard to do: I just added some code to the application_error event of global.asax. Usually, it works quite well and often I have a problem resolved before the user has time to alert me.

Recently, however, I've been getting a slew of puzzling errors. The message is: "Files does not exist" and it occurs in System.Web.StaticFileHandler.ProcessRequestInternal.

What was puzzling about this error is that it doesn't tell me which file is missing. I looked, and as near as I could tell everything was working fine. Yet my error logging continued to spew out these errors by the dozens.

After a little bit of research I was able to resolve the issue. It turns out that the request object as a "rawurl" property that returns the entire url being requested. I modified my error logging code to include the contents of this property and was able to determine that the icon file for the web page was missing. I copied it into its proper location and the stream of errors ceased.

Problem solved!

Here is the code that I use to log the errors, modified to include the rawurl property.


Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
' Fires when an error occurs
Dim oEX As Exception = Server.GetLastError.GetBaseException

Dim oMessage As New JMail.Message
oMessage.RecipientAddressList = "wse@jlion.com"
oMessage.SenderEmail = "wse@jlion.com"
oMessage.SenderName = "ReportingErrors"
Dim sMessage As String = "The following error has occurred: " & vbCrLf & oEX.Message & vbCrLf & oEX.StackTrace
Try
sMessage = HttpContext.Current.Request.PhysicalApplicationPath & vbCrLf & _
HttpContext.Current.Request.RawUrl & vbCrLf & _
sMessage

Catch oex3 As Exception
'---Don't do anything
End Try

oMessage.Message = sMessage
Dim sSubject As String = "Error in Reporting Web Site"
Try
sSubject = sSubject & ": " & HttpContext.Current.Server.MachineName

Try
sSubject = sSubject & " User: " & Session("UserID")
Catch oEx3 As Exception
'---Don't do anything
End Try

Catch oEx2 As Exception
'---Don't do anything
End Try

oMessage.Subject = sSubject

Dim oSender As New JMail.SendEmail
oSender.SendThisMessage(oMessage)
End Sub

Friday, February 01, 2008

The annoying hardware problem du jour is a Gigabyte GA-8ANXP-D motherboard that refuses to recognize memory (or so it seems) I've tried three different sets of DDR2 RAM sticks and all I get is a flashing light on the chipset fan and a steady beep-beep-beep. It's a nice motherboard. I hope I don't have to scrap it.



The washington post reports today that Microsoft has made a buyout offer for yahoo. That would certainly be a seismic change in the internet. It would also probably open Microsoft up to fresh new antitrust charges. My fear is that with software companies such as yahoo that most of the value is in the personnel and in the culture.

I suspect that many of the engineers at yahoo deliberately chose to work there rather than at google or microsoft and that a merger is going to cause some of them to jump ship. There would also be the inevitable grace period when executives at microsoft and yahoo are trying to figure out which parts of the merged organization to keep and which to discard and the low morale and uncertainty that accompanies wondering if you'll still have your job tomorrow.

So the question is, if the merger does go through, will Microsoft be able to keep yahoo's momentum going?