Macbook Wheel (by the Onion)

The Onion on a new Mac

πŸ™‚

They got that Mac tradeshow look so perfectly too.

Posted in General | Leave a comment

SQLEditor 1.4.3b3

So, it’s coming up to the holidays, but there is time for another SQLEditor release.

1.4.3b3 (snappy numbering, yes?) is pretty much a bug fix release. I think that the index creation problems that were happening have now been fixed, plus better handling of when to create indexes. It should now correctly figure out if fields are indexed and shouldn’t now add duplicates (or worse attempt to add duplicates)

There is also the addition of the simulate mode for database export. This isn’t exactly new, because it’s been available in some development builds, but it has now appeared in a release version. Simulate mode runs the entire export as normal, except that instructions that alter the database aren’t actually sent to the database to be executed. The instructions are recorded though, so you can see what would have happened in the status window log view.

There is also a new feature which prevents fields and indexes being dropped (although it doesn’t prevent modification, use simulate if that’s what you want)

SQLEditor also now adds a line in the status window when an export fails complete with the instructions that were actually executed and the error that occurred. This information was always in the log, but it should be easier to see how SQLEditor has gone wrong (in the event that it does of course)

Finally some fixes for a few (hopefully unlikely) crashing bugs.

3.6MB dmg File

Change Log
Product Notes
Expires
21st January 2009

Posted in Company News, SQLEditor | Tagged | Leave a comment

iPhone Shuffle?

The iPhone Shuffle,
(Advert 1)

(Advert 2)

(Advert 3)

πŸ™‚

Plus the obligatory Wired.com article (a bit more serious though)

Posted in General | Leave a comment

Adam Savage, Dodos and the Maltese Falcon

I just happened to watch this amazing presentation by Adam Savage
(of Mythbusters)

Adam Savage on Obsession
(Fora.tv)

Posted in General | Tagged , | Leave a comment

MySQL before 4.1?

This graph appears to show that most people polled (97%) are using MySQL 4.1 or later

This second poll shows, again, that most people (89%) are using 4.1 or later.

The thread at the PunBB forum gives 95% of people polled using 4.1 or later.

The Mambo forum poll from 2006 gives 80% using versions after 4.1 (with 8.5% don’t know or other)

Admittedly not scientific surveys (self selection, etc) but somewhat convincing.

This has an obvious implication on how to handle MySQL support, in particular special casing to work around particular issues in early versions. This code adds complexity and in some unfortunate cases also bugs. The less there is, the better.

Posted in SQLEditor | Tagged , | Leave a comment

Zend Framework – run in a subdirectory

This article explains how to use Zend Framework MVC in a subdirectory (rather than in the DocumentRoot)

[Link]

Posted in General | Tagged , | Leave a comment

Zend framework Quickstart and SQLite

I was building the Zend Framework quick start tutorial example but I kept getting the following error:

Message: SQLSTATE[HY000]: General error: 14 unable to open database file

This was despite the fact that I had correct privileges on the database file.

However it turns out you seem to need write and execute privileges for Apache on the directory that contains your sqlite database (not just the database file itself).

I added them to the containing directory and everything seems to work now. πŸ™‚

[Link] (Nabble.com and the original source of this solution)

Posted in General | Tagged , | 7 Comments

Is there a pilot on board?

In movies like Airplane! the pilots have all been incapacitated and a desperate call goes around “is there a pilot on board?” To which some brave soul then stands up and says something like, “Yes I can fly the plane”.

What’s weird though is that something a little like this actually happened recently.

An Air Canada Boeing 767 (C-FMXC) on a flight between Toronto and London was midway across the Atlantic when the First Officer showed signs of being confused and unwell. The captain decided the first officer should be relieved of duty and he was removed from the flight deck.

At this point the passenger lists were inspected to see if there were any airline pilots on board, unfortunately there were not, however one of the flight attendants held a commercial pilots license and she was asked to assist the captain. (There is suggestion on one forum that this flight attendant was either former or reserve Canadian Airforce)

The aircraft diverted to Shannon airport in Ireland where it landed safely. The captain later commented that the Flight attendant sitting in the second seat was “not out of place”.

The ill first officer was taken to a nearby hospital in Ireland and later flown back to Canada.

So that is an outline, but it raises so many interesting questions, many of which I may never know the answers too. The most important one of course being, how many cabin crew have piloting qualifications?

The accident report (by the Irish AAIB) is suitably detailed but, quite correctly, doesn’t include enough information to identify the people involved, so I may never know the complete story. Hopefully someone will make a documentary out of it. (But changing the names perhaps to keep the privacy of the ill pilot)

Irish AAIB Report

Guardian Article
(Mostly the same as the official report)

Posted in General | Leave a comment

SQLEditor updates

I’ve just released a new version of SQLEditor yesterday, mainly as a bug fix release, but it’s definitely recommended to upgrade.

The new beta is 1.4.3b1 which was released 14th November. It fixes a number of bugs, including MySQL comments and some odd bugs relating to selecting tables using the drag selection method.

Download 1.4.3b1 (3.6MB DMG)

The current stable version is 1.4.2 which came out at the end of October. It fixed several significant bugs that people reported and made a few minor improvements.

Download 1.4.2 (3.6MB DMG)

Posted in SQLEditor | Tagged | Leave a comment

Django Support

Several people have now asked for this, so it’s being really seriously looked at.

Plus I’m hopeful that it will be able to support the somewhat different but quite similar Google app engine model class format too

Having been working on this for the last few days, I can say that the Django plugin is moving towards a working state, the development version is now somewhat able to create and export a suitable python file.

Although this mustn’t be taken to mean that it’s near to release, because there are still several major things that are needed before it will be complete.

I think there will probably be two releases, the first will be export only, then a later release will add the import features.

And it should be a free upgrade for SQLEditor πŸ™‚

Posted in Company News, SQLEditor | Tagged , | Leave a comment

Loyalty Cards

I was looking at my wallet and I realized that I have a whole collection of loyalty cards.

Am I really loyal to all of them? I don’t think I can be, since some of them are for direct competitors.

Posted in General | Leave a comment

Cinema Audio

A Fascinating Video with Ioan Allen of Dolby Labs talking about different kinds of Film audio system.

Posted in General | Tagged , | Leave a comment

Is the iPhone NDA still in effect?

This post from yesterday on the cocoa-dev list seems to suggest that it is.

I wonder what is happening?

(Although it doesn’t affect me much because I’m still not doing iPhone development at all yet)

Posted in General | Leave a comment

XCode function popup

I love the XCode function popup, particularly in Objective C, because I can add #pragma mark comments to divide up the list.

Unfortunately languages that aren’t C derived don’t offer #pragma, so I missed these little dividers

Then I noticed that a comment that contained FIXME had appeared in the list too, looking just as if it were a #pragma mark entry

Looking at the XCode documentation reveals that XCode will also search code comments for a range of keywords and use them to control entries in the function popup. And it will do this for Java, Perl, Python, and Ruby (as well as the C based C, Objective-C and C++).

This means I can write in other interesting languages and still get my function popup dividers.

Just prefix the comment line with one of the following:

  • MARK:
  • TODO:
  • FIXME:
  • !!!:
  • ???

and the remainder of that line will appear in the list.

There is more in the Apple Xcode tools documentation

(It looks like there has been some discussion of this already (1,2,3)

Posted in Writing Software | Tagged , | 2 Comments

SQLEditor releases

This is another quick update about SQLEditor releases in the near future.

1.4.2b1

Currently version 1.4.2b1 is in beta release, it offers a few specific improvements

  • Added support for editing MySQL character set and collation settings on fields and tables
  • Modified inspector on fields to use popup menu for selecting tabs
  • Fixed bug that prevented saving files after creating new foreign keys when referencing primary keys in tables with indexes under certain circumstances.

1.4.2b2

1.4.2b2 is due fairly soon. The following improvements should definitely appear

  • Modified MySQL exporter to use ENGINE instead of TYPE for better compatibility
  • Comments now attached to fields when exporting MySQL
    (i.e COMMENT ‘xyz’ style)
  • Connector inspector is now displayed automatically when a new connector is created
  • More padding added to line click detection to make it easier to click on connectors
  • Better parsing of comments attached to mysql field

There is also a bug relating to identifying objects in Postgresql when there is no schema when using some versions of that database system.This is currently planned to be included but hasn’t actually been finished yet. If the work on this bug gets completed this week it will appear in 1.4.2b2, otherwise it will get pushed to the next release.

I think that’s everything that’s coming in the near future, there are some other things that I’ve been working on, but they’re more long term (mainly for 1.5), so not much to say yet.

Posted in SQLEditor | Tagged | Leave a comment

National Lighthouse museum closed

I was sad to read that the National lighthouse museum in Penzance appears to have closed.

It was an interesting place to visit and it had lots of real exhibits including light house lamps, optics and models. It was also in a building which had been used to prepare stone work for the Wolf Rock lighthouse construction, so there was a sense of history about the place.

Hopefully the exhibits will get put on display somewhere else, but it’s still a shame.

Posted in General | Leave a comment

UCS-2 vs UTF-16

Since I got confused by this one the other day:

http://unicode.org/faq/basic_q.html#14

Q: What is the difference between UCS-2 and UTF-16?

A: UCS-2 is what a Unicode implementation was up to Unicode 1.1, before surrogate code points and UTF-16 were added as concepts to Version 2.0 of the standard. This term should be now be avoided.

When interpreting what people have meant by “UCS-2” in past usage, it is best thought of as not a data format, but as an indication that an implementation does not interpret any supplementary characters. In particular, for the purposes of data exchange, UCS-2 and UTF-16 are identical formats. Both are 16-bit, and have exactly the same code unit representation.

The effective difference between UCS-2 and UTF-16 lies at a different level, when one is interpreting a sequence code units as code points or as characters. In that case, a UCS-2 implementation would not handle processing like character properties, codepoint boundaries, collation, etc. for supplementary characters.

Posted in General | Leave a comment

Google Chrome Comic

The Google Chrome comic is a work of art, it’s both functional and artistic, and it manages to explain so many really important points in a way that is easy to understand.

If you haven’t read it, and you’re interested in browsers at all, you should go and read it. πŸ™‚

Posted in General | 1 Comment

Cappuccino Framework released

The people at 280 North have released the The Cappuccino framework as open source. The Cappuccino framework is the system that powers the 280 slides web app, which is sort of Keynote in a browser.

I’ve been playing around with the framework today a bit and it looks really great. The interesting thing is how many AppKit features have made it across. It wasn’t hard to modify the sample app to use a CPURLConnection object to fetch data asynchronously and then display it in a suitable text view.

My test app for this btw was an ajax clock. I built a simple php script that displays the output of the php date method and then used ajax calls to update the clock in the browser. It’s not exactly useful but it worked really quite nicely and the coding is relatively easy too.

I’m now wondering what else can be built using these tools, because it seems a really nice way of doing web apps (if you have a desktop software background)

I’m very impressed. πŸ™‚

Posted in General | Leave a comment

Automatically creating book cover designs

This is a remarkable article describing how Faber & Faber (the publishers) are using a series of graphical parts and some custom software to automatically generate book covers for their new series of out of print works.

It works by using a standard layout for things like the title and the barcode, but then using parameterized graphics it generates a unique cover graphic for each book.

The covers fit within the style that has been chosen of course, but each is unique.

It’s really clever.

Posted in books | Leave a comment