February 2004
-
:
Where do the mocks live?
During the recent library adjustments the main aim was to add tests. As we write tests we create lots of mock objects. Our libraries are dependant on each other, as libraries tend to be, and this means that often a library uses an interface … -
:
Thought for the day
*There are two ways of constructing a software design; one way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far … -
:
Looking for more blogs to read
I want some new and interesting blogs to read, so leave a comment if you have any suggestions. I subscribe to quite a few (opml file here) but I’m a bit tired of the Microsoft Employee Bleating Edge Blog stuff… Ideally … -
:
We want information, information, information
Who are you? The new number 2… Who is number 1? Looks like Roy Osherove is making waves with his comments about MVP information hoarding… Having been in the position of being a developer searching for scraps of information on … -
:
I'd rather have poor information than no information
Roy’s post about information hoarding made me think, which is always good… Last night I followed a link from Larkware to this article on MSDN about Pocket PC services. The article annoyed me, I’d have preferred that it … -
:
Quality of MS developer support
Alex Lowe asks what Microsoft could do to improve their developer support. In general I think they do a reasonable job given the huge surface area of APIs and products that need support; I think some of the MS staff blogs are helping too. … -
:
.Net 1.1 TCP/IP wierdness fixed
“Additional information: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full” I’ve managed to get the .Net 1.1 TCP/IP issue that gives the above … -
:
Explicit callbacks or virtual methods
I’m in a bit of a quandary. I’m writing a class that does processing on a byte stream. You poke bytes in, it does stuff, it gives you bytes out. My quandary revolves around how it gives you the bytes… The processor … -
:
Can performance tests treat the object under test as a black box?
Barry suggests that to do meaningful performance tests you need to know a bit out the way the thing that’s under test operates. I guess he has a point given his reason for performance testing was to compare a new version of the thing … -
:
You learn something new every day
I’m writing some tests where I need to log calls to function for the test log so that I can make sure the function is called in the expected way when the test runs. The logging version of the object under test derives from the object … -
:
Is Open RBL a crock or is my DNS set up wrongly
One of the people I email’s corporate mailer has started to bounce my mail with the following message: *mx.example.com[xxx.xxx.xxx.xxx] said: 554 You have been blocked by a DNS blacklist, please see:- http://www.openrbl.org/ (in reply … -
:
I always regret leaving the perfmon code out
I had one of those “Doh!” moments yesterday. In summary, always put the performance monitoring code in early, looking at a program’s vital signs as a jiggly graph can show up all kinds of unexpected things… The work … -
:
Do blogs without comments have any value?
I’ve noticed that quite a few blogs I read have turned off comments and trackbacks and removed all trace of any previous comments/trackbacks. I realise that the comment spam problem is a pain but I find that I treat blogs without … -
:
Off to Saas-Fee again...
We’ve just booked up with the Warren Smith Ski Academy again for another week of training in Saas-Fee. Not until early next season though :( But it’s the first trip booked… Now, where and when to go this season… -
:
Test Driven OBEX
Way back in June I was playing around with OBEX. I’ve had a quiet day today and went back to the code to progress it a little more (a client is making interested noises so I need to get back up to speed again). The code I wrote in … -
:
I seem to have lied earlier...
Earlier I said “I’ll probably keep the code for now, but it’s not the code I’d have written first if I was working from a test. I wouldn’t need it yet… I may never need it in production…” I … -
:
Uncontrolled coupling - Singletons, just say NO!
We’re developing some code for a client. There’s a standalone server, which we’ve completed, and a small stub of code that allows the client’s existing system to talk to our new server in place of the old thing they … -
:
66% Evil, seems about right...
Er, I blame him, him and hiiim, oh and that little voice inside my head… -
:
Finally, the penny drops about AcceptEx
So there I was, cleaning my teeth, about to get into bed and suddenly I saw a reason for using AcceptEx… I’ve known about AcceptEx for ages, and even written an article about how to use it but I always thought that it just … -
:
Happy Birthday to me...
37 today. -
:
Bluetooth server demo
I’m making the compiled version of our Bluetooth server shell available for download here. The source is not available at this time. The zip contains a simple server that advertises the following Bluetooth profiles: OBEX file … -
:
I hate things that turn off the explorer status bar
<rant>Whoever decided that it would be a good idea for the explorer status bar to be ‘switch offable by someone other than the user’ should be taken outside and given a good kicking. Why is it a good to let someone other … -
:
Why is Outlook 2002's POP handling so slow?
I ran Outlook against my POP3 server just now and once again was unimpressed by the speed that messages were being downloaded. It seems that Outlook 2002, over an SSL link to a POP3 server (so no anti-virus weirdness is going on) takes … -
:
Does anyone know of a VS.Net 200X to VC 6 project file conversion tool?
We have lots of clients who haven’t moved away from VC 6 yet. At present we need to maintain all our projects in a VC 6 compilable form. The easiest way to do this is just to use VC 6 as our primary development platform for C++. If we … -
:
Implementing the new AcceptEx server
Following my tooth brush revelation about AcceptEx earlier in the week I found some time today to test out my ideas. The implementation went pretty smoothly. It was helped by the fact that I had a previous attempt at using AcceptEx floating … -
:
Some thoughts on complexity
I find that these days I prefer my complexity to be obvious. Things with hidden complexity aren’t any less complex, they’re just less obvious. If you make all of your complexity obvious then you know which pieces of code are … -
:
Why I started thinking about obvious complexity
So, what brought on those musings on complexity? There’s a bug in the recent public release of The Server Framework code. It’s in one of the example servers. Some code got snipped out and it shouldn’t have been and the … -
:
More on the bug
As I mentioned earlier, I found a memory leak in a piece of code and was lamenting the difficulty in providing automatic tests for such a think when you use new and delete directly. I’ve thought about this some more and I’m now … -
:
An abstraction too far
Today turned into a day for pondering complexity, abstraction and memory management and watching Pirates of The Caribbean on DVD… I experimented with a version of the buffer allocator that allowed a user defined memory allocation …