Gavin Bowman's blog

Squidoo: Enter the Lensmaster

So, Squidoo has moved from private to public beta and we're allowed to talk about it again. Does this mean anything to me? Is it any good? Is it important?

Bob Walsh clearly loves it, others aren't so sure. I logged in at the end of October, when the initial invitation came through, brimming with excitment. I clicked around a bit, tried building a lens, didn't really get it, got disappointed with the small number of modules on offer, and never went back.

This weekend I decided it was time for a second look.

.NET: CausesValidation, Validating and the Escape Key

I had a bug report recently which said that some of my dialog windows didn't close when the Escape key was pressed. As it was for a C# Windows Forms application, I figured I must have forgotten to set the CancelButton for the form; I was surprised I'd missed it, but it seemed like the most logical explanation.

In .NET forms, the CancelButton property can be set to a control which will be activated if the user presses the Escape key.

Dreamweaver 8 as a Ruby IDE

In last week's post, I talked about how I was trying to find a suitable IDE for Ruby on Rails development, and how my preferred solution would be a syntax highlighting plug-in or modification for Dreamweaver or Visual Studio.

I also provided a link to this tutorial from BDC Software, which implied that with a bit of tweaking, Dreamweaver could not only do the syntax highlighting, but even code hints too. I tried it, and it worked, so the rest of this post is a step by step process for both, which borrows an awful lot from that tutorial, and from this page from RubyGarden.

A Little More on Rails

Last week I started talking about giving Ruby on Rails a try, and I had planned to have plenty more to say for this post. I have a printed copy of the great looking Four Days on Rails guide sitting on my desk, and I’ve been looking forward to digging in.

Unfortunately, aside from a minor quest to figure out how to customize IDE syntax highlighting, the experiment took a bit of a backseat this week. So, I’m going to go back to what I learned the previous week and share something from the starter tutorials that really got me excited about working with the framework.

Riding the Rails

The first couple of times I didn’t really know what they were talking about, I’d seen the name before, but usually just as the title of a forum or blog post that I didn’t bother to read. Once I realized that they were talking about a web development framework, I felt like I knew where the loop was, but still couldn’t understand why so many people had so much to say about it.

I’m talking, of course, about Ruby on Rails, and all the extra work my tired desktop developer’s brain had to do to filter out all the Rails evangelism. Well, the time came; I had enough free time to give it a try, and I wanted to know what all the fuss was about.

A Productivity Lesson from The Shining

Joel on Software readers will be well aware of the private office idea. Joel believes developers should be given private, quiet working conditions, and I'm sure that anyone who's worked in a shared office will have no difficulty understanding why.

The basic concept is that knowledge workers produce their best work "in the zone", and that getting there is difficult and takes time. Each interruption, no matter how minor, will pull you out of the zone, and it will take you time to get back there afterwards.

Moving Forward

In the Micro ISV Mistake articles, I outlined the main areas where I went wrong when starting my business and developing my products. I wasn’t just wallowing, by writing about and exploring the problems, I was trying to identify and plan a way forward.

Obviously, I haven’t managed a complete turn around in just the last couple of months. I realised when writing the original articles that there were some things I was going to have to learn to live with, and that I would need to take a long term view on others. For example, there’s no way to get back time and momentum squandered during the early stages, and a product with too general a market can’t be tailored to a niche overnight.

But, I think enough time has passed, and I’ve made enough changes, to start writing those updates I promised.

Catching up with Macromedia

Just after I started out on my own, I had a very simple contract to produce an animated GIF for a website. It wasn’t the kind of work I would ever have put myself forward for, I’m not especially artistic, and it never feels right taking on things that I don’t have the appropriate skills or experience for. But the job came via a friend, the client needed something done, and I certainly wasn’t financially secure enough to refuse a solid offer of work.

The feedback from something I managed to bash together with a trial copy of Macromedia Fireworks was good, so it all went ahead. Surprisingly, the client was happy with the end result, and I used the proceeds to buy a full copy of Fireworks and Dreamweaver 4.

That would have been the end of the story, if I hadn’t recently decided to upgrade to Studio 8.

Take it or Leave it

Joel Spolsky’s Set Your Priorities article struck a bit of a chord with me this week. Not so much the part about how to prioritise on features for a software release, although I liked the system and I’m sure I’ll take something from it.

No, what really got me thinking was in the first section, the bit about the differences between consultingware and shrinkwrap software.

Excel Compatible HTML

For the last couple of weeks I’ve been talking about adding an Excel export feature to one of my C#-based products. If you missed the previous posts, you might want to read the introduction, and last week’s What I did; an account of the options I chose, combined with an honest assessment of the decision process.

The bulk of the export feature was eventually provided by a third party component, xPort Tools, but I also used Excel compatible HTML files for one of the exports. Today, I’m going to finish off the series by explaining how to use HTML to output formatted data to Microsoft Excel.