Enabling ActiveDesktop on Windows XP
I love having an empty desktop without any clutter from icons. It seems that every time I repave my box I end up having to scour the web for information on how to make this happen, so Im mostly posting this for my reference.
For whatever reason, it seems that XP ships with ActiveDesktop turned off. When ActiveDesktop is turned off, you do not see the “Show Desktop Icons” option off the Arrange Icons By context menu from the desktop.
To get this to show up, I have to go into my registry (regedit.exe) and navigate to HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer and set NoActiveDesktop to 0.
After the cumpolsory reboot, I am presented with the option and unchecking it hides all of the icons on my desktop.
Visual Studio and regions
At work, we like to group methods together by scope, meaning that all private methods are group together, and so on. The best way we’ve found to handle this is to define regions for each scope level.
However, I personally, like to see the whole file when I open it. However, C# defaults to collapsing the regions. Up until a few minutes ago, this was a frustration that I just thought I had to deal with.
Open Tools | Options from Visual Studio and select C# under the Text Editor option. Click the Advanced option and uncheck ‘Enter outlining mode when files open’. Voila. Files open expanded.
Cheese Head Award
Every single one of us has written cheesy code at one time or the other in our life. Our team, in good-natured fun, has decided to “reward” the person that commits a piece of cheese to our Subversion repository.
Sometimes, the cheese is warranted; let’s say to get around a vendor issue. Our latest application involved rendering PDFs to the client screen via a smart client. We decided to use the TallPDF component suite for PDF creation and presentation. For the most part, these worked out really well. However, an issue was discovered that occassionally (very occassionally), the PDF would not update unless the mouse was bumped.
So, our developer wrote some code to nudge the mouse one pixel, just to get the PDF to display on the screen. On his 1920×1200 display, it was unnoticable. However, the target resolution was 1024×768, so on the inital commit, we were really able to notice the nudge in the test environment. However, after some fine tuning, you can hardly notice anymore. With any luck, a fix from Tall Components will be forthcoming and we can remove it from our codebase.
All that said, this fix cracked enough of us up (not in a bad way) that we decided to order a cheesehead hat for him. We happened to order the ‘Top Cheese’ hat, but any of these would do.
It’s Not Just Standing Up
Recently, I came across this gem from Martin Fowler’s site called “It’s Not Just Standing Up: Patterns for Daily Stand-up Meetings“. If your stands up are starting to hit a rut, you will definately want to read this article.
Some of my favorite parts of this article:
Good stand-ups will feel supportive. When people are knocked down every time they raise a problem, they will tend to stop raising problems. Beyond preventing removal of obstacles, a non-supportive stand-up works against team dynamics. The stand-up instead becomes a ritual that team members dread.
Regular interruption by observers is very disruptive to the delivery team by challenging the premise that the daily stand-up is primarily for the delivery team. Interruption also threatens Fifteen Minutes or Less. Enforce Pigs and Chickens.
I love this article. Absolutely recommended.
Does Agile Software development work?
This was a question our development team was struggling with coming into the new year. I can firmly say that yes, agile development (even when not done completely right) is much better and much more accurate than waterfall development. Let me talk a little about why I feel this.
Around February of this year, we started a new project. Although we had been dabbling in agile methodologies, this would be the first project that would be developed from using these principles from the onset.
We started with monthly iterations, simply because this seemed to make sense from a release planning point of view. We also realized the importance of acknowledging the work that was done by the development group. We decided the best way to do this was to showcase the iterations work in front of anyone in our organization that wanted to take a look. Our sprint review, if you will.
Back to this application… Our business folks had a reasonable idea of what needed to happen to bring this application to market, so we started breaking out story cards from there. Once we had the story cards, we estimated and prioritized them on the calendar for a release scheduled for the end of June.
The teams (QA, development, and the business folks) went away and started collaboratively writing acceptance tests against these particular stories. This was the first project in our history that had 80% unit test coverage, and a full suite of acceptance tests in Fitnesse. We’re able to change the application with much more confidence, knowing that we haven’t broken anything along the way. This is when the impact of agile hit me.
I personally feel that the positive impact of agile development was felt in our organization at the first sprint review that we had where we were able to show the application we’d been working on. After working for only four weeks, we had the single most important part of the application on the projector in front of the entire company.
I also feel that the impact of agile was felt towards the release of the project. Instead of going through mad coding sprints until 4:00AM trying to get required features in, we were developing stupid things like splash screens and keyboard shortcuts.
As it turns out, our marketing department misunderstood a feature from the application and touted something that was not in the original story cards. However, since we were not in the mad coding frenzy and were working on trivial things, it was very easy to implement this feature and save the day.
Why did things end up like this? Because the items that the application absolutely needed to have were developed first. What a concept, but something that gets lost in a traditional waterfall model.
After having worked in this type of model, I can positively say that I would never willingly go back to the traditional waterfall model. The core agile manifesto values:
- Individuals and interactions over process and tools, working software
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
This is in line with things that are important to me.
Goodbye, MovableType
After more than three years of using MovableType, I have finally decided to migrate my weblog over to the open source WordPress system.
WordPress is open source and uses PHP, whereas MovableType is commercial software. My biggest complaint about MovableType is the lack of addition of any substantial new features in quite some time.
WordPress is dynamically driven, and everything is stored in a database. While MT3 allows for this, there are some major character encoding issues when going this route. Ultimately, this was the straw that broke the camel’s back.
This being said, I have gone through a great amount of effort to insure a seamless transition for everyone reading. I do encourage you to drop me a line if you see any issues (404s, etc).
Thanks for your patience through this transition.
Windows Live Writer
As most people have probably heard by now, Microsoft has jumped into the blog writer arena. I’m even more content with my decision to discontinue MovablePoster after playing with Windows Live Writer for a while.
The coolest thing about this tool? You edit the post on a skin that looks exactly like your blog.
Of course, Ill post more thoughts as I use this tool more, but for now, this is a winner. Go ahead and download it here.
Character Encoding help requested
This blog runs under MovableType, with dynamic templates enabled. For whatever reason, it seems as if the dynamic templates cause some issues with character encodings that are driving me bonkers. Unfortunately, I’ve yet been unable to figure out how to get around them. Any advice would be *much* appreciated.
To see what I’m talking about, visit the home page and look for this entry. See how it looks normal? Now, click on the title of that post to see the entry on its own page. See how goofy everything looks? The quotes and apostrophe characters really seem to be wreaking havoc with the dynamic page. Both pages specify a UTF-8 encoding, which is what’s baffling me.
Again, many, many thanks for *any* advice that will help me resolve this.
Funniest thing I’ve heard in a while
Headline: Paris Hilton Taking Year-Long Vow of Celibacy
Enough said.
Firefox Bookmark Keywords
I’ve been a big fan of Hanselminutes, a podcast done by Carl Franklin with Scott Hanselman. The best part of this podcast is that there is no fluff in it. Scott does a great job of making sure that he doesn’t waste peoples time.
While listening to the podcast, I always find myself wanting to go to the links he talks about. Thankfully, Scott uses shrinkster.com to make real short, quick URLs. However, using Firefox and keyword bookmarks, we can make navigating to these sites even quicker.
Here’s how it works:
Create a new bookmark. Call it whatever (I called mine Shrinkster). For the location of the bookmark, enter http://www.shrinkster.com/%s. Now, for the magic… in the keyword field, type your shortcut (mine is shr). Click ok.
Now in your firefox address bar, type ’shr goo’. You’ll notice that Firefox has replaced that text with http://www.shrinkster.com/goo.
This is a great technique to save a lot of keystrokes. You can also adapt this to other tools as well. For example, Firefox comes built in with a dictionary keyword. Try it: type “dict innocuous”.


