by Mathias
30. March 2009 10:06
Among my new year resolutions, I vowed to have a working version of my first application by the end of the first quarter 2009. Fortunately, I have had plenty of consulting work recently, but as a result, finding time for the “Blue Lobster” project has been tricky. In the end, it may have been a blessing in disguise, because it forced me to narrow down the scope to the essential features – and I made it: “Blue Lobster” version 0.1.0 was ready on March 29th. It is a working proof-of-concept; it’s also my first pure WPF project (the M-V-VM workshop came in very handy), and I am very proud of it!

(picture by Adam Field)
My next target is to release by end-April a beta to a few selected testers, get feedback and fine-tune it before the grand opening. I don’t want to talk too much until the legal stuff is in order, so until then, the project will be known as “Blue Lobster” (and yes, there is a reason for that name other than the incredible coolness of blue lobsters), and the only thing I will say is that if you work with Excel files, have version control issues, use a PC, and would be interested in being a beta tester, you are encouraged to shoot an email to blue-lobster@clear-lines.com.
76add21e-1048-4a03-a32b-784ef147602c|1|1.0
by Mathias
26. March 2009 12:32
I have been following Eric Lippert‘s blog for a bit, but I had not realized that he had co-authored a book on VSTO with Eric Carter until the second edition came out recently. I needed a good reference book on VSTO, so I went ahead and purchased it. And because the second edition is focused exclusively on Office 2007, but a good part of my VSTO work revolves around Excel 2003, I figured I might as well get the first edition, too.
I received my package from Amazon 2 days ago, and I must say, this is massive. As in, about 2000 pages total. I began skimming though, and so far I really like it. I have been learning VSTO mostly by grabbing pieces of knowledge here and there, and as a result my understanding lacks a bit of cohesion – which is where a book usually helps, by providing a comprehensive and structured approach to a topic. A friend of mine asked me today if I planned to read it all: probably not all in detail, but I’ll try to skim through everything. You don’t know what you don’t know, and glancing at everything quickly can prove surprisingly helpful.
a65d4ba6-3b96-4e1b-a288-3791735dce97|2|5.0
by Mathias
15. March 2009 09:46
I was writing some code yesterday, and need to generate different "names" for objects. Rather than using Guid.NewGuid(), I decided (for no clear reason) to append a random int generated by System.Random, with code looking something like that:
public string CreateRandomName()
{
Random randomizer = new Random();
return randomizer.Next().ToString();
}
All looked great, until I wrote code like this:
[Test]
public void CreateInstancesWithDifferentNames()
{
var firstInstance = new MyClass();
firstInstance.Name = CreateRandomName();
var secondInstance = new MyClass();
secondInstance.Name = CreateRandomName();
Assert.AreNotEqual(firstInstance.Name, secondInstance.Name);
}
I expected each instance to have a different name, but the test fails miserably. Both instances get a random number, but... they get the same random number.
More...
40738bb0-1a31-402f-b641-2ec92e637186|0|.0
by Mathias
12. March 2009 14:27
One positive aspect of this whole financial crisis debacle is that I keep receiving amazing discounts for hardware, and after resisting for a while (maybe waiting for an even-better offer?) I went for it, and replaced my desktop with a big bad Dell workstation - and this time, dual screen! A long time back, someone remarked to me that we spend a good quarter of our lives in bed, and therefore putting some good dollars into a top-quality bed was a good investment. By the same token, I do spend another good quarter of my days in front of my computer, so there is no point in being cheap there! Next step will probably be an Aeron chair...
b9e2a2ce-3aa5-413e-ba26-c3103b5455f9|0|.0
by Mathias
9. March 2009 13:39
No concept seems too esoteric or complex for comic strips! (from xkcd.com)
1de70462-a25c-4795-b2b9-f865a7bf2f12|0|.0