Debugging

With two of the projects I’ve been working on finally out the door, I’ve finally got some downtime at work. To make use of the time, I’ve started reading Debugging Applications for Microsoft .NET and Microsoft Windows by John Robbins. One recommendation he makes that’s very useful is to treat warnings in managed code as errors. I followed that advice for our in-house bug tracking tool (a customized version of the IssueTracker starter kit) and it revealed at least a couple dozen instances of methods that needed to be overriden, unreachable code, declared but unused variables, etc. I wonder how much of the code we’ve written since last year needs the same treatment?


$44.92

That’s how much it cost me to fuel up the Volkswagen Jetta I drive today. $3.59 a gallon, and only because I drove past stations charging nearly $4 a gallon for premium. Buying the same amount of gas in continental Europe or England would have cost me at least double that amount though, so I won’t complain. But telecommuting regularly is looking like an even better idea than it already was.


Refugees?

I was listening to C-SPAN on the way into work and one of the callers had an interesting question: why are the people suffering in New Orleans being called “refugees” in the press when people in Florida suffering from hurricane damage aren’t?

I checked out the Wall Street Journal this morning and sure enough, there was that word. Checked the Washington Post, same thing. Was the caller being overly sensitive? Maybe. Was he reading some racial connotation into the use of the word? Probably. But it may also be that the press has been sloppy in how it uses words. Usually you see the word “refugee” in the context of someone fleeing another country from religious or political persecution. The people in New Orleans aren’t running from some dictator, they’re from here. They’re just unfortunate enough to be too poor or too ill to get out of the way of the storm in time.


Taking Time to Think

Came across this blog post via digg.com. The management tips seem quite reasonable in isolation. But when I try to map them to my current workplace, I don’t know if my employer is necessarily ready. Guess it’s one of those “your mileage may vary” kind of things.


A Leap of Faith

I had a chat with a former co-worker at Ciena Corporation yesterday. I was surprised to discover that since one of the layoffs there, he and his family recently moved to Israel. When I asked him where, he said north of Jerusalem. As it turns out, they moved to Kochav Yaakov, in the West Bank. There was a big feature in the Baltimore Sun about it last month.

It certainly puts that conflict in a new light for me, now that someone I know is over there. I respect Glenn for his courage and pray that he keeps safe.


Robin Curry - AJAX and ASP.NET Resources

When my employer moves to the latest version of VS.NET, this article will get a lot more “hands-on” use.


VB.NET Coding Guidelines

My current project is the first one where I had to write a substantial amount of VB.NET code (I chose C# as the .NET language I’d try to learn back in 2001). This article had a lot of guidance I found useful.


4GuysFromRolla.com - Retrieving the First N Records from a SQL Query

Our development team found this article quite helpful during development of a custom portal. Unfortunately, the project is on indefinite hold.


Housing Bubble Burst?

Paul Krugman seems to believe so. Check out his complete column in the New York Times online (free registration required).

I live in what Krugman describes as the “Zoned Zone”, a few miles north of D.C. in Wheaton, Maryland. While a townhouse in my neighborhood recently sold for about $400,000, it took 2-3 weeks. I think they started out asking for $450,000 and had to drop the price some. Another bit of information I got, which supports Krugman’s idea somewhat, is a conversation I had with a realtor a month or two ago. He was essentially trolling my neighborhood for people interested in selling their townhouses and I asked him about some new ones being built (a 5-10 minute walk from my townhouse). He said the price tags on those went as high as $800,000, but that the builders were having to rent them out because they couldn’t sell them at that price.

Between this information and the increasing popularity of interest-only loans, real estate prices have to come back to earth sooner or later.


188 Megabytes

All the papers, projects, PowerPoint presentations and spreadsheets of three years in the University of Maryland part-time MBA program fits comes to just under 188 megabytes worth of files. Somehow I expected it to take up more space.

Regardless of the ultimate file size of all that work, my reason for getting an MBA was to gain enough knowledge to change careers. Even when I was getting my computer science degree (from 1992-1996), I figured I had maybe 10 years to write code full-time before I would want (or need) to do something else. The MBA as a degree takes plenty of flack from many angles. People with this degree take the blame for the dot-com bust. FedEx has a commercial that makes a joke at the expense of MBAs. There’s plenty to read in print and on the web about how the MBA is a waste of time. Speaking only for myself, the degree was worth it.

The degree got me my current job. Instead of writing code everyday, I manage projects (and the people assigned to them), their requirements, budgets and schedules. I still write code from time-to-time (more often lately since we’ve got a website launching this Friday), but I spend more time on design. Occasionally I’ll have to negotiate a software purchase or interview potential new hires. There’s too much to do for the job to become “routine”.

Could I do all this without an MBA? Sure. But the odds that a company where no one knows me would give me the chance to try all these things are pretty low. And without the prior exposure to topics like accounting, strategy, and negotiation, I wouldn’t be able to do my job as well. Beyond the things I learned in classes and the connections I made with classmates, I saw the MBA as a way to signal to potential employers that I was interested in more responsibility–that I wanted to become a decision-maker.


Map Hacking

A friend of mine came across this page with a bunch of interesting googlemaps-related hacks. I haven’t sprung for one of those GPS gadgets yet, but I’m sorely tempted.


Bush Jumps into "Intelligent Design" Fray

I wrote about “intelligent design” at length back in March. If anything it’s taken Bush longer than I expected to come out on one side or the other of this issue.

You can read the full Washington Post article here.


Never expected to see a cellphone here ...

I finally dragged myself to the gym for the first time in awhile. The combination of business school and full-time work made a somewhat reasonable excuse for not working out, but school’s been over since May.

In any case, I was rather surprised to see a woman next to me working out on the Stairmaster while chatting away on her cellphone. Later in my workout, I saw a guy doing exactly the same thing. I’ve come to expect to see cellphones in a lot of places, but seeing them in use during a workout is a new one on me.


Goodbye Blogger, Hello WordPress

A quick note of thanks to the author of the illustrated tutorial, and Andy Skelton, the author of the import script.


Exceptions in .NET

Hunting for best practices info on creating custom exceptions, I came across a post titled Systems.Exception and System.ApplicationException. I found the article pretty useful, but the comments were even more enlightening.


Configuring multiple files in web.config

I was hunting for information on security settings in web.config files when I came across this link.  I had no idea you could pull external files into web.config. The first part of the article has a decent example for dealing with connection strings.


Battle on Teaching Evolution Sharpens

I first read about the Discovery Institute in a Wired magazine article last October. At the time, I considered the piece rather alarmist. Seeing this piece in the Post months later prompted me to consider the issue more fully. One quote from a minister in the story stands out:
A prominent effort is underway in Kansas, where the state Board of Education intends to revise teaching standards. That would be progress, Southern Baptist minister Terry Fox said, because "most people in Kansas don't think we came from monkeys."

This is entirely the wrong reason to revise teaching standards. Even though I'm a Christian, and have faith that God created everything, the idea that what gets taught in science class should be decided by majority rule is a disturbing one. The intent is not to create better students, or develop their critical thinking skills, but to use political power to impose beliefs. When Christians get into these battles over what should be taught, it seems to me that faith is left out of the equation. For all the doubts that Terry Fox and others have about evolution, the proposition that God created heaven and earth is even more difficult to prove. I'm not even sure that such a thing should be provable, otherwise, what need would we have for faith? People who pursue these kinds of curriculum changes seem not to understand that science and theology have fundamentally different goals.

This quote from a mother in Wichita, Kansas was interesting:
"If students only have one thing to consider, one option, that's really more brainwashing," said Duckett, who sent her children to Christian schools because of her frustration. Students should be exposed to the Big Bang, evolution, intelligent design "and, beyond that, any other belief that a kid in class has. It should all be okay."

Beyond the feeling of some people who aren't Christians that Christian schools are a form of brainwashing, there are other problems with her statement. Schools don't have infinite amounts of time to teach any idea that comes down the pike about the origins of life. Our schools need to teach the things that will turn out thoughtful, functional individuals. Teaching a bunch of other stuff chosen by popular consensus (instead of validated through a process that imposes some objective standards) simply doesn't accomplish that goal.

The passage I found most disturbing in the piece was this one:
Fox -- pastor of the largest Southern Baptist church in the Midwest, drawing 6,000 worshipers a week to his Wichita church -- said the compromise is an important tactic. "The strategy this time is not to go for the whole enchilada. We're trying to be a little more subtle," he said.

It disappointed me that a pastor with this kind of following would openly acknowledge the intellectual dishonesty of his approach. If he wants creationism to be taught in school, he should spend his efforts building and supporting private Christian schools that will do it. This stealth approach of trying to force it into public schools is wrong. Christianity should not be compulsory.

I appreciate the approach of the Christian schools my parents sent me to from elementary school through high school. In each one, my classmates and I learned evolution in our science classes. We had Bible classes for learning about God, creation, and other theological issues. Before we could graduate from high school, we all had to take a course in world religions, so we wouldn't be ignorant of faith traditions outside our own. I think that sort of division is necessary and appropriate. Those classmates of mine who went on to graduate studies in biology and chemistry, medical school, and professional lab work or medical practice are great at what they do because of that division. It certainly hasn't made them less Christian, or less sure of their faith.

When I went to a public university, this kind of upbringing made me better able to share what I believe with others, made others more comfortable sharing their beliefs with me and asking me more about them. I didn't feel any pressure to compromise what I believed in (and still believe in). I wish more Christian schools would take that approach.

Fixing the C# IssueTracker SDK Beta

My boss wanted to use it to track issues with projects we develop internally and for clients. So I downloaded it, installed it, and began testing. So far, any problems we’ve had have been the result of missing database tables and/or stored procedures. What’s odd is that I’ve been able to find create commands for all the missing database objects in CreateDatabaseObjects.sql (located in ..ASP.NET Starter KitsIssueTrackerSetupDBScripts). I guess there’s something wrong with the script, because every other aspect of the setup seemed to work just fine.

Here’s a list of what I’ve had to add manually so far:

Tables

IssueTracker_IssueAttachments

Stored Procedures

IssueTracker_Project_CloneProject IssueTracker_IssueAttachment_GetIssueAttachmentsByIssueId IssueTracker_IssueAttachment_CreateNewIssueAttachment IssueTracker_IssueAttachment_GetIssueAttachmentById

I also replaced the query in the stored procedure IssueTracker_Issue_GetIssuesByProjectId with the query of the same name from the Access database. It referred to a view named IssueTracker_IssueStatus that wasn’t in the database or CreateDatabaseObjects.sql.

If you’re interested in trying out this application yourself, C# and VB.NET versions of it are available at asp.net.


Giant Steps, Animated

Came across this via Scobleizer (who came across it via Tim Bray). It's a recording of John Coltrane's "Giant Steps", with animation set to it. If you like jazz, the music is great. It makes the animation more interesting in the same way that soundtracks enhance movies.

"Free" Project Management Software

I was looking for information on the right way to modify the ASP.NET Issue Tracker starter kit to handle Windows Authentication. One of the things Google search returned was an app called Gemini that does a similar thing. Up to 10 people can use the version they offer for download before they start asking for money. Considering the way the current IssueTracker installation is behaving right now, I’m beginning to wish I’d found Gemini earlier.