Mad Props!

Omniscience is just a Google-search away.


You're reading Mabsterama, the weblog of Matt Hamilton. Enjoy your stay.

Comicster CMX Merger

I’ve just published the first plug-in tool for Comicster 4. This will merge storylines and autographs from the CMX file you originally converted from the previous version of Comicster.

Note that it finds storylines and issues based on the internal IDs, so if you’ve removed an issue and added it back in since you opened the CMX file originally, this merge tool won’t find it.

Here’s a run through:

1. Run Comicster and make sure it updates to the very latest version.

2. Download the zip file from here and extract the two DLLs inside to your “Comicster” folder under “My Documents”. One of them (Comicster.Data.dll) is probably already in there, but it’s safe to overwrite.

3. Restart Comicster. You should see the new plug-in under the Tools menu. It won’t be enabled unless you have a collection file open:


4. Open your new CMXX file and click on the “Merge CMX File” menu item. It’ll ask you where your original collection file is. Select it, and let it do its thang. When it’s finished, you’ll see a message like this:


This is meant to be a temporary thing so I haven’t put any effort into a nice user interface for it. Give it a whirl and let me know how it goes. I’ll update the tool later when I introduce a “Printing” field for issues, and blog about it here.

Autographs in Comicster 4

A feature that was in the previous version that I’d forgotten about in v4 (thanks for the reminder, John) was the ability to record whether a creator has signed an issue. That’s now available in


Now, if you’ve already imported your old CMX file and you’re missing some features that I’ve added in the past few versions (like autographs or storylines), let me know in the comments on this post if you’d like to see a plug-in tool to import those from your original file.

Halfwit’s New Reply to All Behaviour

With the latest release of Halfwit (version I’ve changed the way the “Reply” and “Reply to All” actions work.

In previous versions, clicking the “Reply” button (or pressing Ctrl+R on your keyboard) would start a reply tweet and automatically insert the name of the user you’re replying to, like this:


If you wanted to reply to everybody, you’d have to hold Shift down while you clicked the “Reply” button, or press Ctrl+Shift+R on your keyboard. That would insert everybody’s name (except your own), like this:


Having two different behaviours depending on the shift key (no pun intended, Brendan) was a bit weird, so I’ve rolled the two up in what I hope is an intuitive combination.

Now when you press Ctrl+R or click the “Reply” button, I’ll insert everybody’s name, but automatically highlight the people you’re not replying directly to, like this:


That means you can just start typing if you only want to reply to the original tweeter, and the other usernames will get replaced. If you want to reply to all, you can press Home or End on your keyboard to deselect the text and then type your reply.

I think this is a nicer balance between “Reply” and “Reply to All”. It’ll take some getting used to though. Let me know what you think.

Storyline Support in Comicster 4

This weekend I’ve added support for storylines (or crossovers, as we used to call them in the previous version) to Comicster 4. Here’s a screenshot:

Storylines in Comicster 4

The idea is simple: Any issue can be part of a broader storyline that spans multiple titles. So when you bring up the properties of an issue, you can specify which storyline it belongs to:

Issue Properties

You can easily add a new storyline by simply typing its name into that field – it’ll get created and show up in the list alongside all the others in your collection.

Just like in the previous version I’m deliberately limiting it to one storyline per issue. I don’t think that’ll be too severe a limitation – certainly it has never bothered me.

For those of you with lots of crossover events in your old .CMX file, you’ll find an updated CMX file plug-in on for download on the Bitbucket site.

Vancouver, Seattle and the 2011 MVP Summit

One reason both Mad Props and Matt Hamilton.NET have been a bit quiet lately is that Sal and I have been in the US and Canada so that I could attend the 2011 MVP Global Summit at Microsoft.

We spent six nights in Vancouver before the summit, which aptly demonstrated why that city is often voted the “most liveable city” in the world. In fact, it received the award for 2011 while we were there. Despite unseasonably cold weather (one day only managed to get as high as -2°C) we thoroughly enjoyed our stay. Vancouver served up some of the most amazing meals I’ve ever had, including a five-course monster at Tojo’s, the restaurant owned and run by the inventor of the “California Roll”. No Japanese food is going to taste the same after that.

Once our stay in Vancouver was over, we took a coach to Seattle and then a bus out to Bellevue where we’d be staying for the next five nights during the summit. Bellevue is home to a large shopping mall called Bellevue Square, which is where Sal would find herself for the next four days while I visited Microsoft campus.

The summit itself was somewhat mind-blowing. The point of the summit, as I understand it, is to give MVPs a chance to meet with the product teams and influence the next version of the products in which they specialise. My MVP area of expertise is “client application development” so I got to meet the WPF team and sit in a day and a half of sessions focusing on WPF. It was fascinating to sit in a room full of people who are truly experts in WPF, whose complaints and criticisms stem from a deep understanding of the framework and from trying to do some really advanced things. For this little line-of-business application developer, it was quite humbling.

Better than the content, though, was the “networking” that came along with so many passionate geeks being in the same place at the same time. Half a world away from home, I met a whole bunch of fellow Aussie developers whom I had only conversed with online until now. On top of that, I got to meet some of my idols from Microsoft – people like Glenn Block, Jon Galloway, Scott Hanselman, Pete Brown, Rob Relyea, Phil Haack, Damian Edwards and the red-polo himself, Scott Guthrie. Then there were the other MVPs who I interact with via Twitter that I finally got to meet in person – Laurent Bugnion, Rob Eisenberg, Richard Campbell, John Sheehan – the list goes on and on (and if I’ve left you out, it wasn’t deliberate – I apologise)!

Following the summit, Sal and I shifted to Seattle proper where we spent five nights at Inn at the Market, right in the heart of the city. Unfortunately I’d picked up a rather nasty chest infection (as did several other summit attendees, apparently) so we didn’t get to do as many touristy things in Seattle as we would have liked. It was still a fun week, though, with lots of good food and shopping to be had.

Edit: Ooh! I forgot to mention that we got to go to Emerald City Comicon while we were in Seattle! We went to a Guild discussion panel with Felicia Day, Will Wheaton and Amy Okuda, and I got a personally-signed comic from Kurt Busiek! We had no idea that ECCC was on while we were there – just a lucky accident.

Overall the 2.5 weeks we were away made for what might have been our best vacation yet. If I’m re-awarded as an MVP again this year, I can’t wait to go back next year and reconnect with everybody!

Some Small Comicster UI Tweaks

Last night I decided to try something in Comicster that ended up working really well, and will make it to the next release.

You remember that we have a couple of extra ways to add credits and appearances to an issue: you can insert characters from a group, and copy credits and appearances from another issue in the same title. Both of these features opened a modal dialog box in which you checked the stuff you wanted to add, then clicked OK. Here are some screenshots:


Taking a cue from the way online catalog searches work, I’ve removed these modal dialogs and am now using a panel that appears just above your issue details:


This new approach lets you add from multiple groups, or copy from multiple issues, without having to go in and out of a dialog box. It’s a lot slicker and feels much more “tightly integrated” with the rest of the interface.

Look for this in the next release of Comicster. The next major feature will be the addition of “storylines” which can be defined centrally and shared across issues (great for major events or crossovers). Don’t know how long that one will take (especially since I’ll be overseas for three weeks) but I’m looking forward to having a crack at it!

Copy Credits and Appearances in Comicster 4

I’ve just published Comicster, which adds the ability to copy the credits and appearances from another issue in the same title. Here’s a screenshot!


Comicster 1.x had this feature too, but it was a two step process – you had to copy the credits and appearances separately. I’ve combined the two into one handy dialog in this new version!

Add From Group in Comicster 4

I’ve just published version of Comicster, which adds the final piece of the “group” puzzle: the ability to add appearances to an issue from a previously defined group. Here’s a screenshot! You know the drill.


Comicster 4 is still very much a work in progress, but it’s at least as feature-rich as the old version now – just a few finishing touches and I’ll be happy to call it “out of beta”.

As always, if you can think of things you’d like to see, or things that need fixing, log an issue over on BitBucket.

Group Support in Comicster 4

Comicster is now available, with limited support for groups/teams. Comicster will automatically update when you next launch it.

The idea is that you can define your own groups and add characters to them, and then eventually it’ll be easy to add appearances to an issue by choosing a group and then selecting which members of that group appeared.

Right now we don’t yet have the “add appearances from group” functionality, but you can define and manage groups. Here’s a screenshot – click for a full-size view:


Pro-tip: Double-clicking on a character in this view (in the middle column) will jump you straight to that character’s entry in the “characters” view, so you can view the issues they appeared in etc.

The Comicster.IO.Cmx plug-in, which allows you to open your Comicster 1.x collection, has been updated and will now pull your existing groups in. Grab the latest version of the plug-in and install it by following the instructions in the previous post.

Onwards and upwards!

Open CMX Files in Comicster 4

Ok, there’s a bit of demand out there for this plug-in, so I’ve made it available via BitBucket until such time as I can get an “official” plug-in page up on the Comicster web site.

The Comicster.IO.Cmx plug-in allows Comicster 4 to open Comicster 1.x (I guess technically it’s 2.x, but whatever) files. It doesn’t support saving, so you’ll need to save your files in Comicster 4’s new .cmxx file format.

Installation Instructions

“Installing” a Comicster plug-in is dead simple:

  1. Open your “My Documents” folder
  2. Create a new folder and call it “Comicster”
  3. Extract the DLLs from the plug-in zip file into your new “Comicster” folder
  4. Restart Comicster

That’s it! Comicster will look for plug-ins in a folder called “Comicster” under your “My Documents” folder. The Comicster.IO.Cmx plug-in contains two files – one is the plug-in itself, and the other is a “helper” file that tells the plug-in how to load .cmx files.

You’ll know if the plug-in is correctly installed because when you click “Open an existing collection” you’ll see “Comicster 1.x Files” in the “File Types” combo box. Here’s a screenshot:


In a future version I think I’ll probably make Comicster look in a special “Comicster\Extensions” subfolder rather than just “Comicster” (since you’ll probably want to keep your collection files in there and we don’t want that folder getting too full), so keep an eye out for that change. I’ll make sure I announce it here.