An article that Andy Longshaw and I wrote a couple of years ago on exception handling patterns has now been published by the ACCU in their Overload magazine, so the article is now available in a much more accessible form than before (first part here, second part here).
Exception Handling Article
Posted in SoftwareArchitecture, Writing
OOP 2010
OOP 2010 is an event where
I’ve been lucky enough to be asked to give a couple of talks for 2010 when the conference is Munich in January. I’ll be giving one talk on the Viewpoints and Perspectives approach to software architecture and a second on how architects can work with agile teams. I’ll post more details closer to the event. Thanks to Frances Paulisch for the invitation.
Posted in SoftwareArchitecture, Speaking, Uncategorized
Sadly Missing JAOO 2009
![]()
Unfortunately an immovable work commitment has just emerged that means I won’t be able to be at JAOO 2009, which is a real shame.
Posted in SoftwareArchitecture, Speaking
Speaking at SA2009
I’ve been fortunate enough to have a talk selected again this year for Bearpark Publishing’s excellent Software Architect 2009 conference. This year the conference is at the Royal College of Physicians in Regent’s Park, London and it’s running from 29th September to 1st October. I’ll be giving my talk on the “Top 10 Software Architecture Mistakes” on Wednesday 30th September in the afternoon. Hope to see you there!
Posted in SoftwareArchitecture, Speaking
WICSA 2009 Early Bird Registration Closes Soon
The WICSA 2009 early bird registration prices are only available until August 15th, so if you’re planning to come to the conference, now is a good time to register!
Hope to see you there.
Also we now have a great group of sponsors but if your organisation is interested in sponsoring the event and reaching a large group of top software architects then do get in touch.
Posted in SoftwareArchitecture, Speaking | Tags: Conferences, Software Architecture, WICSA
Mac Finance Packages
Recently I decided that I really should be tracking my finances using a dedicated package, as I’ve been using online banking and Excel to do this for quite a while and it seems like there must be a better way.
I use Macs at home for most jobs and so I decided to find a good personal finance package for everyday use. My needs are pretty simple (import transactions from my bank, set up a simple set of transaction types for classification, allow me to analyse past expenditure and predict future expenditure) so I wasn’t expecting this to be difficult. Well it just goes to show how wrong you can be!
Since I switched to Macs about 3 years ago, I’ve been consistently impressed by the quality of the software available for the platform, but whatever has resulted in this situation for most software seems to have passed most of the personal finance packages by. Let’s just say that I wasn’t terribly impressed overall.
The Test
I found 10 personal finance packages for OS/X (which was more than I was expecting in fact) and I downloaded them all for a quick test drive to see how they fared. I performed the same test with each package, which was quite simple, just being:
- Create a new account
- Remove all the supplied categories and add about 8 of my own
- Import two OFX files with about 120 transactions over 4 weeks
- Try to categorise the transactions and show a graph of expenditure by category
While this is pretty simple stuff, the different packages coped with these tasks very differently.
The Applications
Cha-Ching (2.0b96)
Looks promising because it’s simple and reliable and seems to work well but is also very basic, without any charting or analysis yet. Currently in beta (and free) so one to keep an eye on.
CheckBook (2.0.3) – $14.95 ($24.95 for Pro)
Simple transaction based tracking package that seems to be well written and offers the basics, but appears to have many of the same problems as others in the sense that simple things (like changing the category of a number of transactions at once) causes problems.
The “Pro” version adds reporting and searching and seems to nearly be there from my perspective, but still has some reliability problems (again updating categories for a group of transactions appeared to cause the same problems as in the basic version).
Fortura Fresh Finance (1.3.4) – $44.95
Quite a new package on Windows and Mac. Not all that visually attractive but works very reliably and offers a good set of basic core features (import rules, simple reporting and graphing, transaction import, simple forcasting). Nice import filters including a self-training feature based on existing transactions.
Strong set of keyboard shortcuts, some of which are Mac compliant and some aren’t (e.g. Cmd-i being to add an item rather than to show the Info Inspector).
Lacking the visual pizazz of iBank and the number of more sophisticated features that some of the other packages offer, but for my simple needs, it seems to be the best bet.
iBank (3.4.2) – $59.99
This is a package that appears to have fantastic potential but is let down by poor basic software engineering that results in reliability problems. It looks fantastic and is very Mac like, with nice usability, consistent OS/X conventions and so on.
Functionally, it seems powerful with the basics all covered and nice additional features like real time graphing, clicking through graphs to underlying data, smart accounts, budgets, … It also has good import rules, allowing multi match on one field or match across many fields.
However this package’s Achilles heel is its reliability. When setting transaction attributes (e.g. categories) it crashed repeatedly. This seemed to be related to multi-select and/or changing the categories of transactions, but it was so bad I managed to crash iBank every few minutes. However it’s not just me, reading the support forums on their site suggests that a lot of people crash this application a lot!
iCash (5.4.2) – €39.90
This package seems to have a somewhat complicated model of accounts, tied to categories. For my simple needs, this seemed like duplication (I had an account called “household” and also needed a category called “household”). All the same, it probably offers a level of sophistication that many people find useful.
The application is quite Mac like, but when you’ve used it for a while you realise that its usability is quite spotty. To delete accounts, it’s a one by one thing, each one being 3 clicks with no keyboard shortcuts being provided. Unfortunately categories use the same interface with the same limitations. Similarly changing a set of transactions means selecting them and then selecting “Edit” and confirming that you want to edit multiple txns and then finally making the update.
The most maddening usability thing I found was that the transaction viewing interface only allows calendar month based display rather than a display between any given set of dates (e.g. only 1st to 31st March is allowed rather than 22nd Feb to 21st March).
There are quite a number of good things about this application (for example the graphing is nice and the application was reliable throughout, which many of the others weren’t) but from a usability perspective, there are just too many awkward things about it for it to be an easy choice.
Liquid Ledger (2.3.3) – $49.99
Functionally Liquid Ledger doesn’t appear to be the top of the class, but it offers a good set of features and what is provided seems to work well. It imported transactions reliability, allowed categorisation and provides fairly good reporting and graphing (although the graphs don’t allow click through to see what’s behind them as iBank does). The reporting provided isn’t all that sophisticated though and can’t be customised, always reporting the current year, which is a bit annoying.
An interesting feature which the other packages didn’t have is MobileMe integration, providing backup of your data to your iDisk on demand, or when the application exits.
All this said, the software seems to be completely broken if you try to change the set of accounts and categories in the default set. You can delete one but then the delete button just fails to work. Deleting accounts seems to work for a while, but then you get a group called “0″ with an unnamed account in it. And it all goes down hill from there!
If you leave the default accounts and categories alone (and just rename them if needed) then the package appears to work pretty well. It’s not tremendously user friendly but it’s OK and better than a number I’ve tried as part of this exercise.
Money (3.3.1) – $39.00
This application looks like it has a lot of potential as it’s a real Mac app and does the basics fairly well.
It happily imported transactions, allowed new categories to be set up easily, has “smart” accounts (like smart playlists in iTunes) and provides good keyboard shortcuts allowing rapid categorisation of a transaction list.
Having started well though, I couldn’t get any graphs to display at all (although tabular reports were OK). It also didn’t offer any import rules, which meant that importing and classifying transactions is a pain. There were also a number of functional oddities (like Edit Graph working from the action menu, but not the context menu).
MoneyDance (2008r3) – $39.99
At first glance, this is definitely the package to go for because it is powerful, cross platform, written in Java, and allows you to write plugins for missing features.
The problem was that for the things I needed to do, it exhibited awful usability. For example, if you want to delete a number of categories, you have to delete the categories one by one rather than selecting a number and deleting as a group. The import model is also a bit odd, because transactions are imported into a “holding” area and need to be accepted one by one. There is no provision for automatic classification rules, so this results in a lot of individual steps. MoneyDance tries to be helpful and guess what the classification should be, but it appears to need a perfect match on a field like “payee” (so “TESCO 234″ and “TESCO 242″ are different).
Staying on the subject of importing transactions, I was suprised to find that once imported, you then can’t edit the transactions further! The other problem I had was that the auto matching feature automatically replaces the payee as well as setting the category which is annoying as this loses information
Minor gripes include the fact that graphs aren’t clickable to see what data is behind them, lots of lists won’t multi-select, no keyboard shortcuts are provided and there’s little of the Mac in the interface.
Money Well (1.4.8) – $49.99
This application seems to do what it promises and to do it rather well. It’s based on the simple idea of “buckets” for your money, so that at the start of the month you allocate your income to buckets based on your priorities and liabilies (buckets being for mortgage, utility bills, travel, household expenses and so on). It then tracks expenditure against these buckets to let you see how you’re doing against the plan.
The application seems to work pretty well implementing this model, importing transactions smoothly, providing a neat a “memorize” ability to auto classify transactions and allowing the creation of as many “buckets” as you want, with the application dealing with a large number without problems.
For me, the only problem was that this “track against bucket” model wasn’t quite what I was after and more importantly, the application has very limited historical reporting once you have the data in the application (which is what I really wanted).
Splash Money (4.09) – $19.95
This application looked very simple to set up and use, so I was quite hopefull about it, but it wouldn’t import HSBC OFX files, so that was that. I couldn’t get my data into it.
Conclusion
Many of these applications appear to have been developed by small software houses who have poured a lot of effort into them, but in many cases they seem to have been left with one or more rough edges or functional limitations which mean that I think I’d be happier to just keep on using a spreadsheet.
For my particular set of biases and needs I chose Fortora Fresh Finance for Mac, which has been working well so far. Transactions import smoothly, it’s learning all of my regular transactions for authomatic classification and the historical analysis is basic but reliable.
Posted in Technology | Tags: Mac, Technology
WICSA 2009 is Coming
After what seems like an age of planning and preparation, the WICSA 2009 conference is finally approaching. The event will be held in Cambridge (in the UK) in September, from Monday 14th to Thursday 17th, at Robinson College (which apparently is one of the new ones, so quite comfortable!)
WICSA is the only specialist software architecture conference that I know of which attracts leading practitioners and leading researchers to the same event. In order to make sure that both camps get the most out of it, whether they like it or not, the conference includes a series of working sessions where people present short papers and they get critiqued and discussed. Usually an interesting process for a researcher or a practitioner! Definitely not your normal research conference.
This year, I’ll be giving one of the keynote talks where I’ll be talking about design principles, and Nick Rozanski and I are also presenting a working session paper defining a new “Context Viewpoint” for our viewpoint set.
If you’re a software architect based in Western Europe (or beyond for that matter) you should consider coming. It’s a pretty unique event. Drop me a note if you’d like to know more.
(Oh and if you’re an organisation that might like to sponsor the conference, let me know too and we can have a different discussion about the very good value sponsorship packages available.)
Posted in SoftwareArchitecture, Speaking | Tags: Software Architecture, WICSA
Running a session at miniSPA 2009
Along with my co-presenters, Nick Rozanski and Andy Longshaw, I’ll be re-running a shortened version of our Design Principles – Mining Pattern DNA session at miniSPA this week on 15th July. The miniSPA conference is a one day “taster” event to let people see why the main SPA Conference is such a great event for attendees. It’s free, so if there are places left, sign up! Hope to see you there.
Posted in Speaking | Tags: Conferences
Speaking at SPA2009
It’s Spring so the BCS SPA Group’s annual conference must be approaching! The most stimulating conference I go to regularly, SPA is a great event with a long and successful history. For this year’s conference I’m running a workshop on mining design principles from patterns, with Nick Rozanski and Andy Longshaw. The conference is a little different this year and is staged at BCS HQ in London rather than at a residential centre, but it continues to run from Sunday 5th – Wednesday 8th April. Our session is on Tuesday morning so do come along if you can make it. For the first time this year, you can pay by the day if you can’t make the whole event.
Posted in Speaking | Tags: Conferences
Speaking at QCON London 2009

I’m very pleased to be able to announce that I’m speaking at QCON London 2009 in March, at the QE2 Conference Centre. My talk is on Thursday afternoon as part of the Architectures you Always Wondered About track, hosted by Floyd Marinescu.
Unusually for me, I’m talking about the Apex system that I’m the architect for at BGI, rather than more general software architecture topics. I’m really looking forward to it! Hope to see you there.
Posted in SoftwareArchitecture, Speaking | Tags: Conferences, JAOO, QCON, Software Architecture