Posted on 09 November 2009 by Demian Turner
I’ve written about this before, but since the interactive mode of PHP (php -a) seems to be broken on OS X, I think it’s worth singing the praises of Jan Kneschke’s php shell project once again.
It’s a piece of cake to install the tool with the PEAR installer, and since I last used it 2 great new features are on offer:
- tab completion for all (or many) PHP functions and built-in classes and interfaces
- handling of fatal errors
What a relief to have this working again! I was ssh-ing onto my Fedora servers just to test out code but of course this became impractical pretty quickly. And did I mention it runs great on PHP 5.3?
And if you’re tempted to use the similarly named phpsh project from the Facebook open src stables, I can confirm this is not an option with the latest version of PHP.
Posted on 26 August 2009 by Demian Turner
I can’t believe Zend is publishing articles on OXID eShop, this is definitely some of the worst code I have seen in ages.
As “the PHP company” I think Zend ought to at least select projects that have some merit in terms of software design, as surely beginner PHP devs look to Zend for good examples and copy/emulate whatever they showcase.
PHPterror took a closer look at some of the OXID code, really jaw-dropping stuff.
Posted on 24 August 2009 by Demian Turner

A new look at how to create unit tests – using Photoshop! Sense of humour required …
Posted on 27 January 2009 by Demian Turner
A new version of the Seagull framework has been released, download it here.
This is mostly a bugfix release but with some important improvements:
- Improved preferences management
- Better handling when DB connection is down
- Updated FCKeditor to 2.6.3
- Added German utf-8 support
- Updated Horde_Routes lib
- Consolidated translation features (SGL_Translation, SGL_Translation2) into new SGL_Translation3 PHP5 only package
- Added media2 module which makes ajax uploads easier and provides media features to the CMS module
The Seagull framework release coincides with a new release of the CMS module, and an announcement of Doris, our new productivity app. You can read the announcement here if you’re not on the mailing list.
This will be the last release of the CMS module as a mainly developer-focused download. Version 2.0 of CMS will get its own website, improved developer and enduser documentation, and a Pay as You Go format for those who need the convenience of a hosted service. Read more about the improvements and try the preview here.

Posted on 01 October 2008 by Demian Turner
It feels like a friday when I receive emails like this from our friends in the recruitment profession:
MUST HAVES
PHP5 (php 4 isn’t relevant)
MVC experience (and/or Design Patterns in general)
SVN (we use Eclipse with Subclipse – experience with these things are preferred)
NICE TO HAVES
MemCache (pronounced “Mim-Cash”)
Experience with either JSON or SimpleXML (preferably both)
Posted on 27 September 2008 by Demian Turner

This is well-known stuff but funny nevertheless
Posted on 23 September 2008 by Demian Turner
I didn’t get a chance yet to blog about our last TechCrunching, but Kindo, the startup I co-founded in March 2007, today announced its sale to MyHeritage, the biggest player in the family tree space.
Kindo is a PHP social net app built on the Seagull framework and other open source software. At peak popularity our users were building 38k profiles/day and we acquired more than 1m profiles in our first 10 weeks. More details on my CV.
Hats off to the Kindo team and to the Kindo devs who don’t appear in the TC photo.
Posted on 27 August 2008 by Demian Turner
Been so busy lately I haven’t had much time to think about the wonderful new 3g iPhone, however reading the comments on Dave Troy’s blog got the ball rolling again
I’m quite happy with the latest iPhone, but it certainly has quite a few problems. Most of the complaints I’ve bumped into on the web has been overhyped, but what I would consider real issues are as follows:
- poor 3g reception
- inability to recognise that a trusted wifi network won’t authenticate, and the need to manually “forget the network” in order to connect
- instability of even core software: what’s up with address book, even after firmware update 2.0.2 it constantly freezes … am restarting the phone a lot to try and get around it
- what’s up with the New York Times? I love this app but it’s a frequent crasher and mostly can’t retrieve data, even on wifi I get endless spinning wheels
- inability to run programs in the background: if you can run music behind any program, why not any other program? I recently tried out http://www.instamapper.com and it’s great, but totally impractical as you can’t use the phone for anything else while it’s tracking ..
Two apps I’d love to see asap, not listed in aforementioned comments:
- ability to use the iPhone as a 3g wifi router: free wifi connectivity outside your home/office in the UK is absolutely horrendous and I often find myself stuck because either Starbucks data rates are unreasonable or more likely because Joe Bloggs wifi service is out of order
- verbose feedback for network activity: like the verbose output on an ssh connection. There’s so much wheel-spinning I think it would greatly relieve frustration to know what exact problem the iPhone is having connecting
- loopt: I wrote those guys to see when their app would be released in the UK, no answer …
So what’s your great iPhone idea? Any interesting experiences to relate using PHP as a backend?
Posted on 08 August 2008 by Demian Turner
I’m happy to announce 0.6.5 was released last week, the code is available in the usual place:
http://seagullproject.org/download/
According to Trac this release contains 13 enhancements and fixes for
26 defects, although there was also a lot of internal cleanup and small
features added.
The wysiwg library has been updated from tinyFCK to FCKeditor
following the security alert discussed here:
http://groups.google.com/group/seagull_general/browse_thread/thread/534ae6d5ccca995a?hl=en
I’ve had one developer contact me reporting a security compromise to
one of his servers following the publication of the tinyFCK exploit,
so please take care and upgrade to 0.6.5 or at least remove tinyfck to
be on the safe side. As mentioned before, being vulnerable to the
exploit depends on a number of conditions existing however you are
advised to update in all cases.
The main new features and improvements in this release are:
- Added ability to rebuild single modules
- New modules: comment2, emailqueue, simplesite, siteexporter
- New/improved libs: SGL_Emailer2, SGL_AjaxProvider2,
- Added ability to synchonise prefs for all members
- Improved preference handling
- CSS handling more flexible
Or for a detailed list see the changelog:
http://trac.seagullproject.org/browser/tags/0.6.5/CHANGELOG.txt
Work has also started on trunk again which is now 0.9, it will be a
greatly slimmed down version of 0.6.x with no modules required by
default, php5 only, and no libs bundled in the distro.
Thanks as always to everyone who sent in comments and helped us fix
problems with their patches and/or feedback.
Posted on 03 July 2008 by Demian Turner
Every time I need to reset the admin password in Open X it takes me ages to scan through all the tables, thinking “which bloody table would contain the admin password”, remembering from the last time it’s the one you least expect …
For future reference, it’s the preference table, record 0 and where the agency_id = 0. Imagine, who ever would have thought of a password as a preference. I suppose it’s getting better, in phpAdsNew it was in the config table!
This is where logical thinking can cause you to waste hours of time: an application has many users, each user has a password …