Interview with Shiela Dixon
We ask Shiela Dixon about the applications she is building
A good while ago I stumbled upon a link checking application for Mac OSx called Integrity. I found the software very useful and enjoyed using it. Around the same time I had decided that whenever I enjoy using something online I am going to contact the creator and maybe try and set up a quick interview with them, and that is what I did!
I contacted Shiela and asked if I could fire her some questions and she very kindly agreed. So without further ado, here is the interview!
First of all, for people who don't know you - could you give us a little background info.
I'm based in the Midlands of Britain, been programming since the early days of home computing (sent a vic-20 pac man game coded in 6502 machine code to a magazine while at school... wasn't published...) Up until now it's always been a hobby although at one time I did have a couple of titles published by real software publishers. I'm making an effort now to polish Peacockmedia and develop some licensed applications so that I can spend at least part of my working week developing.
Could you give us a little bit of a background to Peacock media, when it started, why you started it - things like that.
I registered the name as an umbrella for several of my interests; crafts, news / communications and website and application development. I've tended to use the name in connection with application development.
One of the apps you created (and the reason I wanted to interview you) was Integrity, why did you decide to build your own broken link checker?
As with all of the software that I've made, it was to fill a personal need. Many of the apps that I've tried have shortcomings. The best I'd found is Xenu Link Sleuth (which is Windows software and I used it as part of a day job but I don't have a pc myself) I've not tried to copy that, but to make something that works equally as well and to be guided by my own needs (which I'm sure match other people's needs.)
How long did it take to build and did you hit any major stumbling blocks over the way?
That's impossible to answer as there's no real finishing point - it's always been in development with new features in the pipeline. I released the first version in 2007 when I had something useful working.
In the early days I had terrible problems with crashes related to the multi-thread nature of this app. This is the worst kind of bug because the crashes are random and not reproducible but thanks to information and feedback from users, and being prepared to look into problems as they're reported (and spend many, many hours staring at code and scratching my head), it now seems very robust and effective.
Another challenge has been that Integrity has to deal with user's own html (or to be fair, sometimes machine-generated html) which can certainly be unpredictable. I could have simply stated that code has to be well-formed, but again, I've tried to look into everything and try to make Integrity handle whatever it encounters.
Do you have any plans to develop it any further?
As I've said, I don't think any app is ever finished. Users have always been good at coming forward with ideas for great new features.
Many have gone beyond link checking, and I have learned from past experience that building in every new requested feature can be counterproductive because you lose simplicity and you lose sight of the app's original function.
In order to build some powerful but diverse features such as html / css validation, sitemap generation, and SEO checking, I've released a new product called Scrutiny which contains Integrity's link-checking functionality - and these other webmaster tools as well. This means that I have been able to stick to the principle of Integrity being a simple and effective - and free - link checker.
I certainly have a healthy enhancement list thanks to the users. Something I'm very excited about is the new 'visualisation' feature, jut released in 3.7.2
Speaking of your other apps, you can see them all on your website, do you have any other ones in the pipeline?
Here's an exclusive for you. I manage a mail-order business (inventory, customers, orders etc) using Organise, which I've made available for free. I also use a tool I've written myself to manage my e-commerce websites. This isn't available yet and needs more work before it can really be of use to anyone else, but in a push to increase my own efficiency (we're back to the fact that apps happen to fill a personal need) I've integrated the two so that the items and their quantities held in Organise feed into the websites and take away the need for manually managing these. It's a way off, but I plan to eventually be able to offer Organise and the website CMS as separate products, and the two together as an integrated 'web shop' solution.
What is your development environment like?
On a physical level, Peacockmedia HQ is just my living room, and a number of macs. I'm grateful to Apple for consistently providing a fantastic development environment, XCode / Interface Builder, along with a number of useful utilities. I made a decision to support older systems (going back to 10.4.11) and ppc macs, so for most development I'm using Snow Leopard and running XCode 3, which allows me to build a single universal binary app which will run on 10.4 ppc right up to the new Lion. I keep a newer machine for testing and for running certain apps such as Photoshop.
What online / offline resources do you use regularly to help you develop your apps?
For coding problems, Cocoabuilder has long been the first place I search. Recently, with the rise of iPhone / iPad development, other Objective C / cocoa forums have sprung up, so a Google search is often very effective.
How do you try and keep on top of current tech / development news?
I enjoy keeping an eye on sites such as Slashdot and The Register for geeky stuff generally, but I've never tried to be at the cutting edge and respond to new advances in the system before or when they're released. Even less so 'rumour' news (although friends are good at forwarding this kind of stuff!) In fact because of backward-compatibility and that commitment to older systems, I take the opposite approach and this can mean compromises on new OS features.
Apple's website is a useful resource, I particularly enjoyed watching Steve's keynote speeches, and these were often the way that I'd learn about forthcoming features. I'll miss him.
Do you have any plans to release your apps onto the App Store?
I've struggled with this one, and it would be great to hear any thoughts from your readers. I think it's a great feature of the OS and has brought easy downloading and use of third-party apps to mainstream users. I'm sure it would give much wider exposure to my apps, but there are some downsides - there's quite a heavy financial cost, there's also a development overhead in preparing an app for being distributed and sold on the App store. Distributing via the web as well as the App store leads to a very awkward situation when someone has paid for a licence key and wants to update via the store and vice versa.
I also feel uncomfortable with it being such a 'closed' system. With the handheld devices it's impossible to download and run an app from the web or which is not approved by Apple. It hasn't gone as far as this yet for the desktop OS but I'm worried that we might end up being under this level of control.
#End of interview
Thanks so much to Shiela for taking the time to answer my questions, and more importantly for developing some wicked awesome products. You can get in touch with Shiela on her website.