harriyott.com

Wednesday, February 28, 2007

First Contract

I found out about a week ago that I've got my first contract. I'll be starting on 12th March, and I'm really looking forward to it. I'm in the process of setting up the limited company, and trying to work out the legal / tax issues of simply invoicing the company rather than having a contract up front.

I've also started collecting receipts for work-related things, like train journeys to geek dinners and things.

I've joined the PCG, and I've become a Microsoft Partner. I'm even thinking of joining the Uckfield Chamber of Commerce.

The first prototype of my first software product was used by my first trial customer at the weekend, and it works! They came back with some helpful suggestions and some improvements that they'd like, but I've got to keep the balance of what they want with the overall plan for the product. I'd love to be able to tell you what it is, but it's a secret at the moment, for "commercial reasons"!

Friday, February 16, 2007

Debugging Custom Actions in Visual Studio Installer

When writing an installer in Visual Studio 2005, you can't debug the custom actions by starting the debugger by pressing F5 in the usual way. One way is to start the installer and attach to the process when the files have been installed, but you may miss the earliest actions. The way to get the debugger to break at the beginning of the custom action code is to add a breakpoint into the code:

public override void Install(IDictionary stateSaver)
{
  Debugger.Break();
  ...


This will launch the following popup; choose Debug:

Debugger message

Then choose the debugger with your installer project loaded:

Debugger message

This will put Visual Studio in debug mode, at the breakpoint in your custom action code. You can step through it and see what it's doing.

Wednesday, February 14, 2007

And the winner is...

Thanks to everyone who suggested names in my recent competition; there were some good suggestions.

The name I have chosen is Pleasant Development, for no other reason that is hasn't been used before, the .com domain was available and it sort of rhymes. Nobody actually suggested Pleasant Development, but the (not very) Secret Geek suggested Particularly Pleasant Software, which is the nearest. So well done Leon, you win the £20 Amazon voucher. It's lucky that you can't keep a secret, or I wouldn't know where to send it.

Special mention to Scott Hanselman (or someone pretending to be him) who suggested two names, both containing swear words. He must have seen my code...

Monday, February 12, 2007

Job situation update

Well, I handed my notice in at the end of last week. Although I'm on two months' notice, I can leave after one month if I finish off my current work and successfully handover it over to the Bulgarian outsourcing company.

So, that means I should be available to start contracting on 12th March. If you know of any C# contracts in my area (Uckfield, Brighton, Haywards Heath, Crawley, Tunbridge Wells, Eastbourne), please let me know. If you're considering employing me for a contract, my CV is here.

Saturday, February 10, 2007

Because it's fun!

Would you still have sex if it wasn't fun? If it was as enjoyable as weeding the garden? It would become a chore, something that you'd put off until you couldn't avoid it any longer. Many people wouldn't bother at all, and some would even argue that it wasn't necessary at all. The fact is, that it is necessary to keep the human race going. If we stopped, we'd die out. That's why sex is fun, so we want to do it.

Would you still eat if it wasn't fun? If it was like going to the dentist? Would you put it off until your stomach hurt so much that you couldn't stand up straight? Eventually you'd eat just because you'd have to, and to stop your wife nagging about it. Again, eating is really important, and we'd die if we didn't eat. That's why it is fun. OK, so the preparing and clearing isn't much fun, which is why going out for a meal is such a treat: we get to do the fun part without the hard work. Some of my happiest memories involve meals.

When I want my children to do things, I try to make things fun. If I want them to tidy up, I make it into a race. I do it to myself too. If I've got a mundane, repetitive task to do, I'll liven it up by thinking of quicker ways to do it, or make patterns out of the whatevers, or trying different ways of doing it. If I make it fun, I'm less likely to duck out of it.

Fun is also how we measure things. If you think about your favourite teacher, it is likely that their lessons were fun. Some people hate their dull jobs sat in front of a computer every day, but go home and play on their XBox. It's still a computer, but it's fun.

So as a software developer, it would be a good idea to make the software I write fun. People would be less likely to avoid it if is nice to use. For example, as a programmer, I like solving the problem in hand with code. I don't like the monotonous stuff, so I use code generators. It's dull typing out mostly the same thing, but fun to write a generator script to spit it out automatically.

The same goes for the work environment. If is fun, then people would be more likely to stay. That's not to say that everyone should slack off playing volleycock all morning, but that the work, the environment and the atmosphere should be fun.

So, why do we want to do stuff? Because it's fun!

Wednesday, February 07, 2007

This is becoming more common round here...

Procrastination Cartoon

From here.

Sunday, February 04, 2007

WebDD

Yesterday's Web DD was a great day. Scott Guthrie was the star attraction, but once I realised that his sessions were being filmed, I started going to the other sessions. Scott's first session was a standard demo about building an ASP.NET site from scratch, using datasets, AJAX controls etc. He went ahead with showing us how to go ahead and use data-binding, and how to go ahead and put a grid control in an AJAX block. This allows you to go ahead and edit data in a grid without having to go ahead and refresh the whole page. Despite saying "go ahead', in every other sentence, it was a well presented session.

I went to the next session by Patrick Lauke on web standards. It turns out that I know an awful lot about this subject, as there were only one or two minor points that were new to me. Patrick spoke very well, and had excellent slides, which clearly showed the before and after alongside the browser examples.

Zhivko Dimitrov's usability testing session was good, but for my interest level was rather too detailed. Having said that, it would be hard to cut it down. The basic premise of doing remote usability testing rather than setting up a lab was good, and there was plenty of detail about setting the whole thing up.

Brandon Schauer's presentation was unlike all the others, and not the kind of thing I would normally go to, but I'd already seen Dave's Ruby on Rails one at the last DDD, and the AJAX one was being filmed, so I'll see it later. Brandon showed how the vague concept of "good design" mapped to business value. Although not a major point of the session, I learnt that the "bottom line" is made better by cutting costs and improving efficiency, and the "top line" is made better by bringing more money in (as in selling more stuff). Good design can improve the top line. I recorded the session on my laptop, as I was sitting at the front. I'm not sure if I was allowed to though.

The last session was Dave Verwer's session on unobtrusive Javascript was interesting. The idea is that websites should work even if Javascript is turned off in the browser. I'm sure I've seen a similar session before - possibly Jeremy Keith at SxSW? Anyway, Dave's slides were beautiful, and he explained everything clearly.

I met a few new people: Glenn Jones, the microformats presenter, agreed to speak at a future Sussex geek dinner. I met some northerners, one of whom seemed to be a squirrel.

After the conference finished, we headed to a bar for a couple of hours. I caught up with some friends from previous events before about 40 of us headed off to Pizza Excess for the geek dinner. Zi Makki organised it, and was the perfect host, making sure everyone had what they wanted - thanks Zi!

All-in-all, a slightly different feel to the DDDs, but just as good. Thanks to the team for organising a great day.

[Tags: ]