Why Performance Reviews Don't Work

This morning, I came across this interesting post about why performance reviews don’t work.  The alternative that stood out was weekly one-on-one meetings with direct reports.  It’s a recommendation I first heard nearly two years ago on the Manager Tools podcast.  I’ve managed employees in the past, and when I followed the advice about weekly one-on-one meetings, virtually every relationship improved.  It is more meetings, but the results are worth it.

While I don’t have a manager title in my current job, I’m still in fairly regular touch with the employees I used to manage.  Were it not for those regular meetings, I doubt I’d have the same relationship with my former co-workers that I do today.


More Financial Crisis Info

I heard about this site on the financial crisis during an episode of the Planet Money Podcast.  They interviewed Simon Johnson (one of the co-founders) during “A Very Scary Cut–In The Interest Rate”.  The Financial Crisis for Beginners may be the best place to start.  Right near the top of that page, you’ll see links to both shows from This American Life I blogged about October 8 and May 28.


Understanding collateralized debt obligations

The best explanation of collateralized debt obligations (CDOs) I’ve heard so far comes from the latest episode of the Planet Money podcast.  I was driving to work at the time, so I don’t have the exact time index of it, but I think it starts at the 16 minute mark.  The whole episode is worth hearing too.

Wikipedia has something to say about CDOs too, but I prefer the Planet Money explanation because it does a great job of showing how just one CDO can connect widely disparate parts of the economy.


Bailout Price Tag Continues Rising

According to this story in the Wall Street Journal (it’s subscriber-only, sorry), AIG just got another $37.8 billion from the Federal Reserve.  That puts the price tag for just bailing them out at $123 billion.  This may be a sign that the $700 billion $850 billion may not be enough.

In other news, the national debt is now so high that the US debt clock has run out of digits.  I don’t know if the figure includes the spending on wars in Iraq and Afghanistan.


More Financial Crisis Education

The reporters who did the Giant Pool of Money story have followed up with Another Frightening Show About the Economy.  Like the first show, this one is well worth setting aside an hour to listen to–much more worthwhile than the same amount of time spent watching network or cable news on the same subject.  The explanations of precisely what frightened the U.S. Treasury and the Federal Reserve into begging for new legislation are especially worthwhile.

Other worthwhile stories on this topic include:

Having listened to a number of episodes of Planet Money, it's proving to be a good podcast.  Each one is a lot shorter than the stories I mentioned earlier, so they're especially convenient if you haven't got a lot of time.

Planet Money Podcast

The “Giant Pool of Money” episode of This American Life I blogged about in May has apparently spun off an entirely new podcast called Planet Money.  If that first story is any indication, the new podcast will definitely be worth listening to.


Grand Canyon, North Rim

After the Antelope Canyon tour, we pushed on to the north rim of the Grand Canyon. The north rim doesn’t get the kind of attention that the south rim does, but it was well worth the visit. The views from the overlooks we visited were amazing.


Antelope Canyon

This morning, we rode into Navajo Nation land to see Antelope Canyon. It’s one of a number of slot canyons in the area. Unlike other canyons, this one had very narrow openings at the top. This meant it was pretty dark (and cool, thankfully) even at midday.

Nate, our guide, grew up in the area and told us a lot about how the canyon formed (mostly water, a little wind). He also played some flute for us, and pointed out the best places to take photos from. Hopefully, my shots will turn out well.

One other interesting bit of trivia Nate shared was that Britney Spears shot a music video in the canyon.


Arches National Park

A couple of days ago, we left Torrey and headed for Castle Valley, UT. Our purpose there was to visit Arches National Park, especially the famous Delicate Arch.

Once we got to the park, we found not just beautiful arches, but balancing rocks as well. Some of them looked as if they were placed on top of the massive stone columns by giants. Getting to Delicate Arch was a long, steep hike. It took almost an hour to walk the 1.1 miles. We got there before sunset (when it is supposed to be the most beautiful) to avoid going back downhill in the dark.

We stayed at yet another great bed & breakfast there, the Castle Valley Inn. In addition to a main house, it has a number of cabins, all set in an apple orchard. It also has a big hot tub, which proved perfect for stargazing. We met a French couple there who are currently living in northern Virginia.

The next morning, we got to sample the apples in fresh apple juice and as spiced apples on our pancakes. We also had a nice conversation with one of our innkeepers. They turned out to be very experienced travelers, with multiple trips to South America, Europe, and Africa under their belts.


Bryce Canyon

After breakfast at the Spotted Dog Cafe, we bid farewell to Springdale, Utah (and an excellent hotel, the Desert Pearl Inn) and headed to Bryce Canyon. The biggest difference between our two canyon experiences so far was elevation. At the highest point we could drive today, we were over 8900 feet up. We spent three or four hours there, driving to different overlooks and stopping to take photos. After the tough hike yesterday, my travel companions and I opted for a much shorter one.

From Bryce, we drove to Torrey, Utah. It was a beautiful and terrifying drive. Beautiful because of the sandstone cliffs and trees. Terrifying because of the substantial number of hairpin turns, the rocks, trees (or really long fall) awaiting any misjudgment, and my pedal-to-the-metal friend that I was attempting to keep in sight.

After surviving that drive, and checking in at Skyridge Inn Bed & Breakfast, we had dinner at the Diablo Cafe. It’s the only time I’ve ever seen “free range rattler” on a menu (and no, I didn’t eat any). What we did order was very good. The dessert was excellent.

Even better than good food and great dessert, was having a hot tub outside my room to relax in and look at the stars before bed.


Zion National Park

We spent most of the day inside Zion National Park (in Springdale, Utah). The centerpiece of it is a large canyon made mostly of sandstone. Even though we’re in the middle of the desert, there is a surprising amount of greenery (pine trees, cacti, etc). It turns out that the desert can be quite beautiful.

Hiking to the Emerald Pools was very tough (we took the steeper of the two routes by accident). It wasn’t just the rocks, but the fact that a lot of them were covered in this really fine sand. That made our footing rather treacherous, but we made to all the pools there were to see.

It’s a lot easier to see the stars at night out here–so different from home with all the lights and traffic noise. Springdale has narrow roads, and traffic is light enough now that you can hear crickets more often than cars passing by.


Need An Icon For Your Application?

Visit ASP.NET Icons and download what you need.


Stack Overflow is Live

Stack Overflow is a great new programmer Q & A site from Jeff Atwood and Joel Spolsky.  I (and about 500 other developers) got a 5-week headstart on using it as part of the private beta test.  As good as googling for answers to development problems has been, Stack Overflow is a big improvement.  I’ve already gotten answers to questions that I was able to use in my own work.

If you write code for a living, I strongly encourage you to check out the site.  They support OpenID, so you can use your existing Yahoo! or Blogger (other other OpenID-compliant) identity to register with the site.  You can use it anonymously as well.


Now I'm Blogging for Work Too

In addition to the entries I post here, I’ve started blogging for my employer, along with some of my colleagues.  If you’re interested in blog posts more specific to agile software development, check out all the posts here.  My first post there begins a discussion of what enterprise applications can learn from games.


New Toy

Vacations and holidays are my primary excuses for buying new toys.  Since I’ve got a trip to the American southwest (at least the Utah and Arizona parts) coming up soon, I figured I’d buy a new lens to capture the landscapes and canyons I plan to see.  Since I don’t have any truly wide lenses, I settled on a Tokina 12-24mm for the Nikon D70s I shoot with.

I bought it used on clearance from Penn Camera, which probably saved me at least $100.  I’ve never shot anything as wide as 12mm (I think it’s technically 18mm because of the multiplier effect) before, so we’ll have to see how the vacation shots turn out.


Granting full permissions to all tables and views in a database

One of my assignments is to write a script that will grant CRUD (create, read, update, delete) permissions to a database role.  SQL Server Management Studio does a nice job of generating scripts for adding logins, roles, and adding users to roles, but isn’t terribly clever about granting permissions across types of database objects.  Some of the difficulty has to do with not having upgraded to SQL Server 2005 yet.  Thanks to some helpful people at Stackoverflow and a page I found through a Google search, I was able to put together a script that handles the permission-granting part a bit better.

Step 1 was to develop a query that generated all the commands for granting permissions.  Here’s the query I got from Stackoverflow that retrieved all the user tables and views:

SELECT *  FROM information_schema.tables  WHERE OBJECTPROPERTY(OBJECT_ID(table_name),‘IsMSShipped’) = 0

This query is especially useful because it filters out system tables and views that can appear if you query the sysobjects table.

Using a cursor to apply permissions to all the tables was something one of my colleagues first suggested.  I only found this implementation today, and adapted it for my purposes.  The change I made to the code in that implementation is in the select statement.  I populated the @tables variable this way:

SELECT ‘GRANT SELECT, REFERENCES, INSERT, UPDATE, DELETE ON ' + TABLE_NAME + ' TO ' + @role FROM information_schema.tables WHERE OBJECTPROPERTY(OBJECT_ID(table_name),‘IsMSShipped’) = 0 

@role is declared earlier in my script as varchar(50).

I still need to grant execute permissions on the stored procedure.  I’ll need a different select query to accomplish that.


First Impressions of Google Chrome

I started using Google Chrome (hereafter referred to as just “Chrome”) yesterday to see how it compared with Firefox 3 (my current browser of choice).

So far, it does seem faster than Firefox.

I find the user interface to be clean and intuitive.  Particularly nice touches include:

  • The subtle "do you want to save this password" functionality (probably lifted directly from Firefox 3)
  • The default home page (most visited pages, recent bookmarks, recently closed tabs, etc)
  • Combination of location and search textboxes
The last of those changes is perhaps the most important one, because the current UI of both Firefox and IE keep page locationa and search separate.  While you can enter search terms into the location bar and get either search results or an actual page with both Firefox and IE, you wouldn't guess if from the interface.
As far as how pages look in Chrome, they look the way they should (at least on the sites I visit regularly).  Pages that don't render properly in Chrome don't render right in Firefox either.
One thing that seemed odd was how long it took for the bookmarks I imported from IE to show up in Chrome.  They didn't appear right after I was done installing, but later, after I'd done some browsing.
For now, I miss having plug-ins like FlashBlock in Chrome.  If I still feel that way after another week or two, I'll stick with Firefox.

Google Gives Us a Browser

Even though Google Chrome is open source, I wonder what will happen to Firefox (my current browser of choice).  Its extensions (like FlashBlock) and other ad-blocking capabilities make browsing the web a much more pleasurable experience.

If you want to try it out, grab a copy from here.


Reflector Update

When I originally posted about the purchase, Red Gate hadn’t added a product page to their site yet.  Today’s blog post from Richard Hundhausen includes it.  The product page also links to the free plug-ins available for Reflector.


smallestdotnet.com

Scott Hanselman came up with this site that tells you what version of .NET you’ve got and your shortest path to .NET 3.5.  I’ve tried it from a couple of different Windows machines (one virtual machine, one real) and it works pretty well.  When I browsed the site with my iPhone, it figured out I was running a Mac.

Especially useful is the JavaScript snippet he provides that lets you have that functionality on your own website.  I’ll definitely be passing this url around the office.