« February 2004 | March 2004 Archives | April 2004 »

Most interesting present

| 1 Comment | 1 TrackBack
My birthday lasted all week, which was good. I celebrated on the day at Strada in upper street, on Friday at the Almeida and on Saturday at Curry Special. Thanks for all the wonderful presents. Right now the most "interesting" is probably the Vew-Do balance board that Chris and Hilary bought me... I'd really noticed a big improvement in my skiing from the extra balance work that I'd done during the summer on roller blades. The balance board could take that to the next level - at present it seems most likely that the next level will be laying flat…

We'll be right back, after this word...

| 15 Comments
Surprisingly enough the Bluetooth server "technology preview" has generated quite a bit of interest from potential clients, which is nice. In a similar spirit, I'm making the compiled version of our server that uses the OpenSSL Toolkit available for download. This code uses our freely available IOCP server framework and adds SSL support using OpenSSL. We have an SChannel version in the pipeline for those of you who don't want to have anything to do with OpenAnything...…

POPing back

| 0 Comments
Way back in mid November, before we dumped our building's managing agent for being worse than useless and possibly stealing from us, I was working on some POP3 code. I had some down time today so I decided to drop back into it and see if I could move things along a little. In summary, having lots of tests helped...…

Thought for the day

| 0 Comments
If you don't write the code are you doomed to forever be thinking that the abstraction is all in the wrong place? Another day, another dollar. Starting with a new client, well starting back with an old client, and doing that 'get your head around the source' thing...…
STL containers are great. Rather than have to worry about writing doubly linked lists, efficient maps, and other such data structures you just grab one from the STL and you're away. Unfortunately the STL containers have quite a large 'surface area'. Their interfaces are rich because they are generic containers. Often the container you actually need is much more limited in scope and in such situations I always find it's worth wrapping the STL container and providing a more appropriate interface to the user.…

Craig on TDD

| 0 Comments
Craig Andera talks about TDD. I couldn't have said it better myself.…

Adding layers without adding value

| 2 Comments
I'm a great fan of wrapping stuff up with thin layers that make the wrapped code easier to use in a given circumstance, or to provide a more appropriate interface. Obviously there are other reasons to wrap APIs but I'm continually amazed at how often the wrapping fails to add much value.…

Cypher

| 0 Comments
I'm currently working with a corporate client. The plan is that I'll help them refactor a key component in their system and make it more robust and increase performance. Right now they're in the middle of a release and are in 'slip mode'. I find myself feeling some sympathy for Cypher from The Matrix; there I was, safe in my green-tinted world of TDD, then suddenly I find myself in "The real world" and it's nasty and messy and there aren't any tests. Now I wish I could get back to where I was and I don't care if it…

Meanwhile, back with the tests

| 0 Comments
I've seen a lot of blog postings recently that pour scorn on the ideas behind TDD. Ah well, if you don't like it, don't do it. I'm more than happy if our competitors decide that TDD isn't for them. In fact, testing is bad, don't do it, move along now, don't read any of the testing articles here...…

OpenSSL test server certs expired

| 0 Comments
The test certificates that shipped along with the OpenSSL server demo that I posted here have expired. I'll post some new ones shortly.…

Const correctness

| 2 Comments
Interesting thread over on Joel today about using const, or not. The original poster asked how many people bothered to mark function parameters that they don't modify as const and whether there was any performance or readability advantages in doing so. Ignore any performance issues, making your code const correct has massive readability and comprehension advantages. I'd go so far as to say it's one of the most important coding standard issues there is...…

Code review

| 0 Comments
I'm reviewing a large body of code for a client at present. It's a general review of the design, coding style, code correctness and testability of a project. I started off by making notes on some of the general design changes that I'd recommend and eventually got down to a detailed review of the code. There's a lot to say about the code and, as with all code, sometimes it's hard to figure out the reason behind the use of a particular construct. I was starting to think that the note taking was going to take an age when I…

Saas Fee in September

| 0 Comments
Those of you who are interested in the Warren Smith Saas Fee ski training sessions you might like to take a look at Warren's latest DVD, Warren Smith Ski Academy Lesson 2. The first two sections, carving and steeps, were filmed during our course in September 2003. As you can see, the snow was pretty good and, as I said at the time, he had us doing some pretty interesting stuff. I think the freeride and moguls sections are from the course earlier in the year. With the whole group to choose from he had quite a lot of "don't…
"I'll bet you that from ten feet away I can tell if a program is bad. I might not guarantee that it is good, but if it looks bad from ten feet, I can guarantee you that it wasn't written with care. And if it wasn't written with care, it's probably not beautiful in the logical sense." Charles Simonyi…

Jimmy on TDD

| 0 Comments
I agree 100% with this piece from Jimmy Nilsson's blog.…

Async Pop

| 3 Comments
A while back I finally started on the async version of the POP3 client. It ended up as a state machine and seemed to work well. The next step was to write an async version of the mail collector that I used to pull all mail from a mailbox on a server and optionally delete it.…

Testing synchronous communications

| 0 Comments
Today I'm doing some work for a client that involves writing some blocking sockets code to talk to one of our servers. Blocking mode fits well with the architecture of the client application they use; we're moving the app from blocking reads on a serial port to blocking reads on a socket and jiggling the protocol it uses a bit. Testing blocking calls is actually a bit harder than testing non blocking calls because hand cranking the mock objects so that your object under test works correctly is harder to do when your test harness is blocked in a call…

Bizarre Googling

| 3 Comments
As Gavin pointed out in a comment yesterday, if you type "cure for rsi" into Google right now my hair-brained babblings about how drinking lots of water helps is top of the pile... If only I could do that with technical posts that would bring in work ;)…
« February 2004 | March 2004 Archives | April 2004 »

About this Archive

This page is an archive of entries from March 2004 listed from newest to oldest.

February 2004 is the previous archive.

April 2004 is the next archive.

I usually write about C++ development on Windows platforms, but I often ramble on about other less technical stuff...

Find recent content on the main index or look in the archives to find all content.

I have other blogs...

Subscribe to feed The Server Framework - high performance server development
Subscribe to feed Lock Explorer - deadlock detection and multi-threaded performance tools
Subscribe to feed l'Hexapod - embedded electronics and robotics
Subscribe to feed MegèveSki - skiing