Friday, April 20, 2007
I've been working on using Windows Forms UserControls hosted inside of IE. It's easy to get started, but there's very little good information to be found on the details of this out there. Especially for running them in an intranet where you don't want to configure the security settings on every client machine. Here are some of the things I've figured out while making this work.
posted on 4/20/2007 11:47:05 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [1]
 Tuesday, December 19, 2006
I use the Tab key all the time. From navigating between input fields in applications to indenting my code. But sometimes when I press it it doesn't work. Instead I just start getting everything I type in capital letters.
posted on 12/19/2006 1:16:59 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [1]
 Monday, December 18, 2006
How come the System.IO.Path.Combine() method takes only two parameters?

Doesn't it makes a lot more sense to take (params string[] paths) instead of (string path1, string path2)? So that instead of

Path.Combine(Path.Combine(rootPath, subFolder), "filename.txt")


it's just

Path.Combine(rootPath, subFolder, "filename.txt")
.

Seems so obvious, I can't believe they made it like that for no reason. So what's the reason?
posted on 12/18/2006 2:42:56 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
 Wednesday, November 15, 2006
"The excellent developer and my former schoolmate Bent André Solheim just posted this great blogpost about two of my favorite refactoring techniques: Guard Clauses and Composed Methods. This is stuff that I can really recommend using. I've been using these techniques for a while and they really do make your code easy to read and maintain, and it has less bugs because of it."
posted on 11/15/2006 9:28:31 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
 Friday, November 03, 2006
Have you ever wanted to debug some .Net code that you have running in some other process that you just can't get into? I recently had the problem with Custom Actions in a Windows Installer. The custom action is a .Net Installer class that I wanted to debug. But I couldn't just attach the debugger to the running msiexec instance. It wouldn't hit my breakpoints.
posted on 11/3/2006 2:43:47 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
 Friday, September 29, 2006
I've often been thinking that, since HTML is a markup language that is marking the content with semantic meaning -- like, that some text is a <p>paragraph</p> or a <h1>headline</h1> -- that other types of semantic meaning should also be possible to mark up. but the set of tags available in HTML is quite limited.
posted on 9/29/2006 11:15:09 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]

I addended the local .Net Users Group the other day. It was a good session. Mostly for the social aspect as always, but the sessions were also quite interesting.

But there was this one thing that got most of my attention: How many .Net experts does it take to get a projector working? There were two sessions; one mostly about fiddling with scrollbars on a too-low resolution projector, and one which turned out to be a live podcast with no picture at all.

I guess that projector didn't like be used for non-Microsoft stuff, because that last session was about Mono. Luckily he was a good speaker so it turned out interesting anyway.

(Does this say more about people, laptops or projectors? Seems to me this is always a problem. Why can't these things just work?)

posted on 9/29/2006 7:50:00 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [1]
 Thursday, September 14, 2006

Refactoring in Visual Studio 2005 with Web projects is incredibly slow. This helps alot!

posted on 9/14/2006 3:49:56 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
 Friday, September 08, 2006
"some comments can be good. But only when they provide some additional information other than just explaining what the code is doing. The code should state just fine what it is doing. What is needed of comments is things like noting when you are doing something that could seem weird"
posted on 9/8/2006 9:52:29 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
"Normally, you can't really extract this out into a method because of the differences in the parsing of the values. Some values use int.Parse(), some use new FontUnit(), others use Enum.Parse(). You'd need a separate ParseX method for every type you support. This is where the generics and anonymous delegates come to the rescue"
posted on 9/8/2006 12:16:27 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
 Friday, May 12, 2006
"the thing I am not doing - coding it - is exactly the part that is missing for the estimate to be good: knowing what trouble I'll get into while coding. Usually this trouble comes from me not thinking it through carefully enough and I'm missing something that ends up giving me trouble, or some functionality I'll be reusing doesn't work just the way I think it does, and my approach is wrong. I can't know this without coding."
posted on 5/12/2006 10:54:27 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
 Thursday, March 23, 2006
"I thought I would do some research of my own to see if I could find anything interesting. Expecting to read through a lot of material with little hope of finding anything substantial, I was quite surprised to find great value from the very first paragraph."
posted on 3/23/2006 3:45:41 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [9]
 Saturday, February 18, 2006
"I am a developer, and I can tell you what motivates me. It is actually not hard to do, or even expensive. I'm largely self-motivating when I'm just allowed to be. I am a developer because I love to develop software, and if I'm not being held back I will do just that, and do it well. If developers seem unmotivated there is probably something in their way that needs to be removed. If I'm just allowed certain benefits there is no need to spend money on bonuses, I'll still be doing more than I'm paid for."
posted on 2/18/2006 2:15:07 AM (W. Europe Standard Time, UTC+01:00)  #    Comments [10]
 Friday, February 10, 2006
"The good thing about this book is that it doesn't just state a fact, explain it like its common sense, and move on. It provides background information and references to studies and scientific experiments that actually prove that this is the case. This is about facts, not just some good ideas.
posted on 2/10/2006 2:55:00 AM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
 Tuesday, November 15, 2005
"In this world we don't have to work within the constraints of a contract. We control all the aspects -- the quality by how we design, test and bugfix, the scope by what features we decide to include, our time of release, and our resources. We just need to find the optimal balance so we can deliver valuable features with high quality at a good speed to a reasonable cost. Otherwise we just won't be profitable."
posted on 11/15/2005 5:07:00 AM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
 Tuesday, May 24, 2005
"There are laws of nature. And as we know, laws of nature can't be broken. One of these laws has to do with management, and in my case that means software management."
posted on 5/24/2005 10:53:00 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [2]
"A technical document should help the reader to understand your thought process and your conclusions, the problem you are solving, how it will be solved, and why it was solved that way. Only with this information can another person really understand the technical decisions that the document describes, and implement the specification by intention and not only by letter. This kind of communication is impossible if the author of the document was simply filling in some text for all of the sections, and jammed in his class diagram."
posted on 5/24/2005 10:50:00 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
"Once you have, even if you didn't intend to, made public an interface - and there is even a remote chance that some funny customer with his own twisted ideas of hacking together a list of studio equipment or whatnot, would be using it - then that inteface cannot change."
posted on 5/24/2005 10:21:00 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]
"This diagram shows the project lifecycle called JIT-D, Just-In-Time Development."
posted on 5/24/2005 10:15:00 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [4]