RSS 2.0 Feed
RSS 2.0

Atom 1.0 Feed
Atom 1.0

April 2004 Entries

Death by premature generalization 

OK. I admit it. At times I do generalize prematurely. Premature generalization is a term given to the act of adding functionality or abstraction to your code simply to account for the “what if...” cases that might (or might not) arise in the future. Sometimes referred to as “over-abstraction”. Your requirements might be to code X, but you think it would be really cool to also account for the possibility of YZ so you abstract, or overly generalize your code to include for the future possible need

Offshoring, bureaucrats, and laziness. Scenes from a BigCo 

A friend of mine, Neil, who works for a “BigCo”, shares his insight on the problems and causes of offshoring, developer laziness, and the difficulties of getting any real work done. It is one of the most insightful posts I've read on the subject to date.

Pure p/invoke bliss 

P/ is about time someone put up a site like this. And the fact that it is a Wiki makes it even better and something that will likely grow to include about anything. If you ever need to find a P/Invoke definition for a Win32 function, this is the place to look.

Page 23, sentence 5 meme 

"The goal of normal forms is to avoid certain data anomalies that can occur in unnormalized tables." SQL for Smarties: Advanced SQL Programming by Joe Celko

Disabling the Windows Close action 

There are times that you'll see a Window that has a close button in the titlebar, but it is disabled. This is often found in applications where the dialog/window changes it's status past a stoppable point so the Windows close action is removed so the user cannot close the dialog to stop the process (For example when installing a Windows service pack). You might want to produce this same effect in your own applications. While there is nothing built into the .NET Framework to do so, with a few Win

10 years ago today 

It was ten years ago today that I married my beautiful Jennette.

Counting the number of lines in a TextBox 

A while back I helped a friend with determining how to count the number of lines contained in the TextBox. He needed to count each line - whether it was a line wrapped from the line above it, or from a carriage return to start a new line. Using Windows Messages you can easily get to this information.

Using images in an ImageList as Icons 

At times you might want to take images from an ImageList and use them as Icons in your application with things like a NotifyIcon or a StatusBar etc. The ImageList stores it's images as System.Drawing.Image objects, but converting them to Icons is easy.

Subscribing to the Event Log via RSS 

This one is just too cool to not pass along. I came across something cool from RoudyBob again. This is something from Greg Reinacker, maker of NewsGator. Greg has written an app that will publish your Windows Event Log entries as an RSS feed. How cool is that?! I think I'll start putting it on my live servers and build a custom aggregator to let me know of problems.

MSDN Subscriber downloads RSS feed 

About time! Just heard via Bob Roudebush's blog that the MSDN subscriber downloads area now has an RSS feed to notify you of newly posted downloads. Awesome!

Retrieving database independent schema information 

Something that I think is often overlooked in the .NET Framework is the cool stuff you can get at using OleDbSchemaGuid to retrieve database schema information. I just thought of this again earlier today when I was reviewing a C# database application where ADOX was used via interop to retrieve schema. Why use the extra overhead of interop to get to ADOX when you have something built into the framework that will accomplish most of what can be done via ADOX? However, you'll find that ADOX is used



Also see my CRM Developer blog