Thursday, July 12, 2007
Tuesday, June 26, 2007
In a talk on IDE tips and tricks for Visual Studio, I asserted that good programmers are ten times as productive as ordinary ones. I didn't remember where I'd read that, but I knew it was true. I've just worked with so many folks who need a week to do what some superstars can do in a morning. The ordinary guy needs half a day to find some samples that are similar, half a day to tweak them so they fit into the current situation, a day to test and realize they aren't quite right, a day to adjust them and then fix the things that broke while adjusting them, half a day to get distracted and lured into scope creep by some comments during user testing, then another day to fix up what they did that they shouldn't have, and finally a half a day to clean things up and make documentation. The terrific guy only spends an hour finding samples, stays focused, documents and tests along the way, and makes short work of a specific small task. And I find this holds over months and years as well as over the course of a week.
Now I bumped across a proper cite of that, and not surprisingly it's from the Mythical Man Month. The quote and some related musings is over on Phil Haack's blog. Worth reading and worth thinking about. There are many ways to be productive ... write code that solves the real problem, don't write buggy code, don't write brittle code, and so on.
Monday, June 25, 2007
One of the things that people comment on when they work with me is how much of a keyboard shortcut person I am. In fact I really like the fact that Vista supports my typing-preferences and doesn't make me mouse so much. But when I'm presenting, I try to use the mouse as much as I can and stay away from keyboard shortcuts. I just find such presentations hard to follow myself, when I don't know what the demo-ing person is typing and what shortcuts they are using. It's easier to see what they are clicking on.
This became a bit relevant during Speaker Idol when I mused aloud about whether to dock Mark Miller for using CodeRush while demo-ing. Anyone else I would definitely have told not to, but perhaps Mark has a dispensation. I just find that many attendees can't follow along with the blazing speed that CodeRush enables and really lose track of the demo.
Roy Osherove has put together a little utility that displays your shortcuts as you type them. His first post on the topic suggests its value to presenters, while his second one focuses on using it to become more keyboard oriented or to train a coworker to be more keyboard oriented. If you really can't switch to the mouse while presenting, consider using this utility so that people can see what you're doing.
Sunday, June 24, 2007
Saturday, June 23, 2007
Just a small personal observation. My oldest child turned 18 and is now technically a grownup ... though of course still living at home and still technically in high school ... graduation is only six days away though. So many of my fellow RDs and MVPs are new parents, it seems strange to be approaching "the end of the beginning" of my parenting journey. But that's how it is.
Friday, June 22, 2007
There is a lot of confusion about writing your own exception classes. I see far too much code out there that just catches "Exception" anyway, that I hate to complain about someone who has set themselves up to have different catch behaviour for "The server is probably offline" than for "you probably don't have permissions on that file you just told me to use". However those who write their own exceptions have generally derived them from ApplicationException. If you ask why, they say things like "well" and "er" and "um" a lot because there's no extra stuff in an ApplicationException compared to an Exception. It just made it possible for you to catch "ApplicationException" and know it would be one of yours and not from some framework code.
Only thing is, that didn't really work out -- some framework code throws exceptions that derive from ApplicationException. And really, catching ApplicationException is just as generic as catching Exception. What can you meaningfully decide to do when all you know is "some code I wrote is unhappy in a way that the built-in exceptions (invalid argument, access denied and so on) cannot properly express" ?
So the word is out. Don't inherit from ApplicationException. Got it.
Thursday, June 21, 2007
Here is something really cool. If you happen to hold Shift while you right-click a file in Windows Explorer, you get more options on the menu:
The one I'm most likely to use is Copy as Path. Lets say you've just put a file on some shared drive somewhere and now you're emailing someone that you've done so, or you're passing the full file name to another application, or you're recording the file name in the files itself so that printed copies make sense. You need to copy the path from the address box, then the file name - it's annoying. This little trick doesn't save a ton of keystrokes, but I like it.
Wednesday, June 20, 2007
Recently we took a large SharePoint project live at a company that is acquiring others quite fast, and having trouble keeping its Active Directory situation up to date as new domains are assimilated. When the project first went live, everyone had to authenticate to the server when they first browsed to it, and in some cases a second or even third time, depending on what kinds of files they opened, whether they followed links to other internal servers, and so on. As you might imagine there were plenty of complaints from folks who didn't like having to authenticate all the time.
We as the developers couldn't do a lot about this, but we worked hard with their IT folks and did a few clever things of our own until we achieved single sign on glory. Workers throughout this global firm would sign in to their own Windows desktops, and from then on everything in their whole intranet was theirs with no more authentication needed. Of course it was all strictly controlled - only HR people could see the HR files, only Finance people could see the Finance files, and so on. But it was perhaps a little too transparent. After we achieved this lovely state people stopped emailing to complain about authenticating, only to be supplanted by a new chorus of complaints from people we hadn't heard from before. The most poignant read simply "Everyone can see all my files!" and was accompanied by a screen shot of a browser opened to the HR area. Our correspondent hadn't been challenged for a password and was therefore sure all these files were completely unsecured. It took an in-person visit that included "why don't we go over to Bob's desk so you can see what the portal looks like for him?" to finally convince this user that invisible security is still security.
For all I know, there are scores or even hundreds of people in that firm who don't realize their sensitive information is protected. Typing in a password annoys many users, but it soothes others.
© Copyright 2022 Kate Gregory
Theme design by Bryan Bell
newtelligence dasBlog 2.3.9074.18820
| Page rendered at Tuesday, June 28, 2022 6:39:49 PM (Eastern Daylight Time, UTC-04:00)
On this page....
Pluralsight Free Trial