The Elegant Chaos Blog

June 08, 2005

Recently I’ve been working on some odds and ends that I wanted to Open Source, so I had to ponder which license to release them under.

This is a surprisingly gnarly question, and I’m not sure if I’ve got the final answer but right now I’ve gone for the GPL, although I did have some concerns about it.

more...

Richard Buckle has posted some useful notes on Apple’s newly published Universal Binary Guidelines.

I’d add a couple of things:

Move On Up

Migrating to XCode/Mach-o is all very well, but my gut feeling is that the higher level language you are using, the less pain you are likely to suffer, so I would change the emphasis slightly.

If you are still using Carbon plus C/C++, consider moving to Cocoa plus Objective-C, Java or Python. This is only repeating what Apple have been saying for a while.

Let Someone Else Store Your Data

I concur completely that byte swapping will be the big deal. All of my decade of (often painful) experience working on cross platform projects and porting games tells me that most of the hard work comes in this area (alignment and other things may affect performance, but byte swapping will introduce most of the bugs).

The best way to minimize the pain is to move to some sort of structure storage library. I suspect that people using Core Data, or one of the object persistence APIs in java or python will win big here - always assuming that the maintainers of whatever they are using do a good job!

Short of that, write your own simple API for file operations, add an endian tag to your file formats, and make sure that you stream data in and out of your API in primitive sized chunks (ie pack/unpack structures rather than writing them directly), so that they can be auto-magically swapped later.

more...

Josh Portway pointed out a post on the FutureOfTheBook blog, talking about a BBC prototype for a system which performs Bayesian filtering on news feeds.

This is something I’ve been thinking about for ages, and funnily enough I started implementing it last week!

The BBC prototype uses email to deliver the news. I decided to write mine as a Python CGI which effectively acts as a filter, sitting between you and a list of feeds. It’s called Feed Me.

The idea is that Feed Me will download and categorise the news items according to your Bayesian “goodness” filter, and then present you with a sorted list. It also appends little voting links to each article allowing you to tweak the filter, telling it you want items more or less like that one.

At the moment the code is very rough, and only works on my Powerbook, but unlike the BBC one I have implemented the actual Bayesian filtering (using crm114), so it is actually quite close to being useful!

I’m going to spend some more time working on this thing, cleaning it up and getting it to a stage where I can use it myself. In the meantime, I’ve made a project page which I’ll try to update as I do things.

more...

I’ve been playing around with Bayesian filtering and Python.

One of the results is this little Python library which provides a very simple wrapper for the CRM114 Discriminator.

I’ve also written a few additional notes on how to build CRM114 for MacOS X.

more...

June 06, 2005

Richard Buckle and I moderate a mailing list for Mac, iPhone and iPad developers based in the UK and Europe.

The target audience is a technical one - Cocoa and Carbon programmers writing in Objective-C, C++, Python, Ruby, Java and so on. It isn’t intended as a help group for Mac or iPhone users - there are other resources for that.

Why Another List?

The list isn’t a replacement for Apple’s own lists - and as such it’s generally very low volume. If you have a specific question about Cocoa you’re probably best off posting to Apple’s Cocoa list. Sometimes, though, it’s nice to be able to ask a question of people who you actually know - and of course there are times when the question is specifically relevant to the UK or Europe. We encourage posts about recruitment and the sharing of work - as long as they are relevant and focussed.

How To Subscribe

For more information, to subscribe to the list via the web, or to read the messages without subscribing, go to http://yahoogroups.com/groups/uk-mac-dev/.

Membership to the list is moderated (in other words, we have to approve your membership). This is a mere formality to try to prevent spammers from joining - so please include a sensible comment when you apply for membership.

If you have any problems, please mail uk-mac-dev-owner@yahoogroups.com.

First Posts

The first post that any member makes to the list is subject to approval by the moderators.

Again, this is just to stop spammers from joining the list just to post spam. The down-side of this is that your first message may take a while to turn up, because we have to notice that it is awaiting approval! Once you’ve posted something that is clearly not spam, we’ll switch your address over to unmoderated and hopefully subsequent posts will be faster.

Job Postings

Job postings are fine as long as they are directly relevant and not repeated unreasonably often (in case of doubt, ask uk-mac-dev-owner@yahoogroups.com). If you don’t want to go to the hassle of joining the list just to post a job message, you are welcome to send it to uk-mac-dev-owner@yahoogroups.com and we will post it for you.

Monthly Meeting

We also have a regular monthly meeting in London, at a pub. This is an informal opportunity to gossip, talk shop about Macs and programming, and to drink beer - all without having our non-technical friends and partners sighing, tutting or leaving us in disgust! These days this meeting is officially a NSCoder night, and is organised via the @nscodernightlon twitter account. It’s also advertised on our mailing list and the Cocoa Heads mailing list, so effectively it’s also the London meeting for a number of groups.

History

We set up the list after meeting at an Apple Script kitchen given by Chris Espinosa in Stockley Park about ten years ago. We realised that we’re a relatively rare breed, we enjoyed meeting other like minded folks, and we really ought to try to keep in touch with each other.

Isn’t The UK In Europe By The Way?

Yes it is :)

I stupidly named the list “UK” at the beginning, despite half the people at the Apple Script kitchen being from mainland Europe. I realised my mistake quickly, but the mailing list name has stuck.

more...