« May 2003 | June 2003 Archives | July 2003 »

Victoria Park, The Crown, Matrix Reloaded

| 0 Comments
Skated in Victoria Park, lunch at The Crown, Matrix Reloaded and a pizza at Strada. Top day ;)…

Matrix Reloaded & Animatrix

| 0 Comments
Finally got around to seeing Matrix Reloaded on Sunday night. Then picked up the Animatrix yesterday. Before I read any reviews or blogs on the subject I thought I'd spout off on my own... (Contains spoilers and future plot speculation...)…

You don't want to do it like that....

| 0 Comments
During some simple refactoring today, a phase of 'restricting access to data members', I discovered an interesting little design 'descision'. In the spirit of completely mixing up the business logic and the display logic we have a data member that represents a colour that an object uses as its background colour when it is displayed in a grid. The colour is set depending on the state of the object; error, ok, new, complete, etc. This wouldn't be too much of an issue but it's also used to test for the object state. We have lines of code that do things…

Infect me

| 0 Comments
I'm not test infected yet. I'm almost there. I want to be there. But I'm not there yet.…

Stage complete. Time bonus...

| 0 Comments
This morning I wasted some time tracking down bugs in the multi-threaded online game engine that I'm writing for a client. Now I have tests. Tests are good.…

Blog is 1month old!

| 0 Comments
Well, the site is 1 month old and I'm still rambling on. I think I have about 4 readers now too ;)…

Final skate lesson

| 0 Comments
We had our last inline skating lesson tonight. Lots of recap on what we've done before, and lots of practice.…

A coming together...

| 0 Comments
A good week for the refactoring project. The release procedures that are now in place mean that we've been able to react quickly to new functionality requests whilst continuing the new development efforts. Ah the wonders of a source control system being used properly...…

Evanescence

| 16 Comments
Miche did the spontaneous thing this week. After hearing "Bring me to Life" on the radio once she bought the Evanescence CD. Cool stuff. Very nice sound. Kind of All about Eve meets Skin from Skunk Anansie on vocals with a nice rocky Linkin Park kinda guitar thing going on.…

Got skates, let's go!

| 0 Comments
Spent the afternoon at Decathlon in Surrey Quays. Came away with a pair of Rollerblade Lightning 03's - which are probably a little over the top considering my lack of skill ;) but they were the most comfortable and smoothest skates I tried. Also got all the pads, a helmet and a rucksack. I don't expect to get much coding done in the evenings this week :)…

I'm an exception, let me out of here...

| 0 Comments
We're adding some new functionality to the refactoring project. Unfortunately the new functionality is located in the Heart of Darkness - the most twisty and poorly structured code in the whole system. Today I stumbled onto something truly awful. Exceptions used as glorified gotos within a 350 line function...…

VS.Net 2003

| 0 Comments
Why oh why couldn't the new VS.Net solution file format have either been compatible with VS.Net 2002 or have a different file extension...…

Developer buy in

| 2 Comments
The refactoring project rolls on and the code gets better. This week saw a marked change in attitute from some of the developers on the team...…

Socket Server code updates

| 102 Comments
The latest release of the free version of my asynchronous, windows, IOCP based, socket server framework can now be obtained from here at ServerFramework.com. For some time I've been promising to update the socket server articles to use the latest version of my code. Today I finally updated the code for the first article. I'm going to update the article itself soon, but in the meantime I'm posting the new code here. [NOTE: This code leaks when adjusted to build with Visual Studio 2005. This seems to be due to a bug in VS2005's STL. See here for a workaround.…

Slacking

| 0 Comments
It's a lovely day out there today...…

The slacking worked

| 0 Comments
Had one of those days where I couldn't get started. I guess it was probably something to do with the beer last night. It was Darren's birthday and we went to Namco on the South Bank and played on the arcade machines, drank beer, drove Dogems and generally acted Darren's age ;) Since I couldn't get going with what I was supposed to do today I sorted out the next socket server release and did the Windows Update dance with all of my boxes. As Paul Graham says, sometimes it's useful to keep some boring routine work around for times…

Clean shutdown

| 2 Comments
No more zone just yet, wine's just made me blabby. The testing I've just been doing with my server is real black box stuff. The build process fires off a script that kicks off the server and then runs the test harness which connects to the server and does "good stuff", on lots of threads, until it's done. The script then runs a server shutdown app which asks the server to clean up and go away and, well, it does. When you're doing the consultant thing in banks and the like it's strange how many servers you find that are…

Weekend's hosed

| 0 Comments
Michelle's on her way home, but she'll be working all weekend drafting an agreement that needs client sign off by Monday morning. So that's her hair appointment down the pan and the 30th birthday party we were going to tommorrow night hosed; so the couple of hours last weekend sorting the fancy dress costumes were wasted. Note to self; make the $20 million this year and let her do the retire to a $10 million pad in Beaver Creek thing sooner rather than later. In the meantime, listen, understand, make pizza, and leave the PC alone until she's asleep or…

MSDN Subscription blues

| 0 Comments
and reds and blacks and greens and, well, you get the idea. Every month when I get a shipment of disks I feel stupid. I just don't get the way the MSDN Universal Sub is organised. I'd like a little hint card in each shipment that tells me what disks I should have in the wallet for a 'full set' of 'up to date' disks... The colours and numbers and dates and all that is probably really clever but I just don't get it.…

More socket server code updates

| 49 Comments | 1 TrackBack
The latest release of the free version of my asynchronous, windows, IOCP based, socket server framework can now be obtained from here at ServerFramework.com. I've updated the code for two more of the socket server articles. More merging, project file updating, and testing... [NOTE: This code leaks when adjusted to build with Visual Studio 2005. This seems to be due to a bug in VS2005's STL. See here for a workaround. I expect to post a fix for this once I've found time to convert the code to build with the new compiler and then tracked down the leak. If…

Bluetooth blues

| 4 Comments
Obviously been one of those days... I was woken before 7 this morning as Miche rushed back to work - always a bad sign when people take a wash bag with them; she's still not home... :( I was going to go back to sleep, but, well, I was awake and thought that perhaps I'd have a doze later. No such luck...…

Why do I do that

| 3 Comments
One of the good things about working on a code base of questionable quality is that you get a chance to review the way you work as well as they way the original authors worked. It's my job is to improve the quality of the code and the existing code is so different to how I would have structured it that I find myself questioning the way that I do things. Is my way better or just different? I find that I'm always analysing my actions, so here's a bit of why do I code like that analysis... Join in…

New toy

| 2 Comments
My old laptop was a brick that didn't run VS.Net fast enough for my liking, so I thought it was time for an upgrade. I went for the Sony Vaio PCG-Z1SP because of the weight, screen, wireless connectivity and the fact that I can slap 1gb ram in it. Oh, ok, and it's pretty sexy. First impressions are good; it's light, bright and fast. Done the Windows Update thing. Now installing my dev kit. Boy does VC6 install fast on new machines ;)…

The colours thing bites

| 0 Comments
A while back I found what might politely be called "a mixing of business logic with display logic" issue in the refactoring project. Yesterday it bit me...…

Password policies

| 0 Comments
Someone in an organisation decides that people's passwords aren't secure enough. They implement a policy so that people are forced to change their passwords on a regular basis. People find that changing passwords is a pain so they work around the policy by using a 'system' when they change their passwords. Rinse. Repeat.…

Stuff

| 0 Comments
The refactoring project rolls on. This week was mainly taken up with managing a seemingly infinite number of minor releases. We decide to appear "responsive" by reacting to recently reported, low priority, issues quickly whilst never seeming to make progress on long term plans... Hmm... We're moving foward, but it's slow going. We don't currently seem to be taking into account the overhead required to make a release. Management people don't seem to realise that if they keep insisting on us 'fixing this now for release tomorrow' then it takes a bit longer to get the other stuff done :(…

Real Greek

| 0 Comments
Went to a really cool local restaurant tonight. It's Greek Jim but not as we know it.…

New toy == good

| 5 Comments
The new laptop is way cool. All the stuff is now installed and it compiles nice and fast... The batteries last well, even when the screen is bright and the disk is quiet. I can sit on the sofa and code without being told off for disturbing the TV watching... The keyboard is SO much better than my aging Dell brick... Haven't yet needed to try the WIFI, I have CAT5 points everywhere in the flat anyway... The Bluetooth hardware is MS compatible, so I can write that wrapper code now...…

Working for Microsoft

| 0 Comments
Andy Hopper has written about what makes the thought of working for Microsoft appealing to a geek. "It's presented as a tough place to work even if you're a wizard coder. It's also described as a meritocracy - Impress or Be Forgotten. I honestly don't know if I could survive, and that is the exact reason why I want to do it " Agree.…

Bluetooth sockets

| 436 Comments
This morning I decided to investigate the Windows XP SP1 Bluetooth support. I played with the BluetoothXXXX API and quickly became disapointed. I then moved on to looking at how to access the Bluetooth hardware using Winsock and decided that is a much better route to take...…

Sunny day in Kensington Gardens

| 0 Comments
We skated on The Broad Walk in Kensington Gardens on Saturday morning. Lovely place. Much nicer than "The Beach" in Hyde Park. Much quieter, wider, smoother and with a nice little hill...…

80 00 1A 00 0F D7

| 164 Comments
My dabbling with Bluetooth continues. Using WSASetService it's pretty easy to get your device to advertise a standard Bluetooth service on one of its sockets. Simply create your socket with the Bluetooth address family, bind and listen as normal and then call WSASetService to start advertising a service on this socket to other devices within range. Now call accept and wait... I chose the File Transfer Service as my hello world service. Get one of your other devices to discover your services and the new service should appear. Connect and your accept will return a connected socket. Issue a recv…

It's important who's driving

| 0 Comments
I'm a firm believer that software rots unless you're very careful; and like apples, once one piece starts to go bad the rest quickly follows. The Pragmatic Programmers talk about Software Entropy and The Broken Window Theory and, unfortunately, this week the refactoring project showed how true this is...…

Timezone...

| 0 Comments
Just realised that my MT setup was wrong and that all my stuff is being posted with a timestamp of an hour in the future. Just fixed it, I wonder what will happen now... Hmm, nothing, so I've edited the timestamps on today's entries and hopefully everything will be OK from now on...…

Analysing my analysis

| 0 Comments
In my usual "don't read the manual" style I crufted together a simple OBEX decoder, fudged a response to the connect message and watched my iPAQ send the first chunk of the file I'm using as my test. Now I'll throw away this crummy piece of code and write a proper OBEX protocol handler.…

Giving it away

| 0 Comments
I give a lot of source code away on the web. I have done for several years. Often when I tell people about this they try to convince me that I should be selling the code rather than giving it away. They don't need my code and are way more business savvy than me and they come up with all manner of clever ways that I could do this, but this is why they're all wrong...…

Analysing my blogging

| 0 Comments
I see a trend here... So, I blogged, I ate, I had a little wine. And started thinking...…

Switching to CVS

| 0 Comments
For my sins, I've used Source Safe for version control on quite a lot of my projects in the past few years. It's got its faults but, well, the price is right...…

Full bodied, or not?

| 0 Comments
So, I have the standard MT rss 1.0 syndication feed that I hacked to include the full body of each entry and I have the all new, funky, MT rss 2.0 feed that I have left as is and which doesn't include the full body of the article... And people argue over how this stuff should work and I have, like, 2 readers and, well, use whichever you want... The RSS 2.0 feed is the new default, but that's just because it's new and new is good, no? And next I'll have people telling me to cut the crap and…
So, we have currency based limits and they're in millions. Us: "Are they always going to be in millions for all ccys?" Them: "Yup." Coded, tested, delivered. Them: "can we have the JPY limits in billions?" Us: "US or European?" ;)…

OBEX and ISO8583

| 4 Comments
OBEX is a nice little protocol and reminds me a bit of a massively simplified version of ISO8583. It's a pity about the warts on Connect...…

Top tip

| 2 Comments
For those of us still working with VC 6... This page about all the clever things you can do in the debugger watch window is pretty cool. I knew all about s and su and hr but I didn't know about m, that one's way cool. Hmm, looks like all of these work in VS.Net 2003 too :)…

Wise words

| 1 Comment
"The most successful method of programming is to begin a program as simply as possible, test it, and then add to the program until it performs the required job." -- The PDP-8/e Small Computer Handbook (DEC, 1972) - Chapter 9, Page 9-64 Just what those agile guys are saying! from Joel.…

Pinging down NetMeeting data channels

| 7 Comments
Back in 1999 Darren came up with a cunning plan to make lots of money. The plan was 'device control over the internet'... In summary, we didn't.…

Changing the vinegar

| 0 Comments
A while ago I likened writing articles about code with pickling it to preserve it... It seems the last few days have been spent changing the vinegar...…
« May 2003 | June 2003 Archives | July 2003 »

About this Archive

This page is an archive of entries from June 2003 listed from newest to oldest.

May 2003 is the previous archive.

July 2003 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