Smarty considered harmful

Sunday, 16 April 2006, 10:06 | Category : Software Development
Tags :

This post by Mike Morgan “Scalable PHP with APC, memcached and LVS (Part 2)” includes the increasingly popular opinion that Smarty is a waste of time.
I’ve used Smarty successfully in the past and been pleased with the result, particularly on Geograph where we need to maintain reasonable code quality with potentially many developers of varying [...]

PHP and Eclipse

Saturday, 15 April 2006, 11:16 | Category : Software Development
Tags :

Lukas Smith recently wrote about the development processes surrounding Zend’s planned Eclipse-based IDE.
I never really understood why Zend have duplicated the existing PHPEclipse effort, but Lukas’s post shed a little light on it. It’s certainly a shame that they don’t appear to have fully embraced the community element of open source development, but in [...]

Geograph Guppy

Friday, 14 April 2006, 11:53 | Category : Software Development
Tags :

Geograph is taking a bit a hammering at the moment, which is frustrating for all those trying to submit new photos. A few months back I started working on a desktop application codenamed Guppy (”Geograph Uploader”) which would let you queue up your submissions quickly, which the application would then upload for you while you [...]

MogileFS+MAID and lwqueue

Wednesday, 12 April 2006, 9:31 | Category : Software Development
Tags :

A quick round up of recent blog posts of interest to me…

Using MogileFS and MAID is a short post about an interesting idea – using MogileFS as a replication layer on top of a redundant MAID units.
Next up, lwqueue, “a lightweight, language agnostic TCP based message queue system with Perl, Ruby, and Python client libraries”. [...]

Switching to Subversion

Tuesday, 11 April 2006, 9:31 | Category : Software Development
Tags :

I’ve finally begun the transition from CVS to Subversion. Yay!
Aside from Subversion just doing it better, I’m looking forward to better tool support, like using it with Trac and FishEye.
CVS has served me well for many years though, farewell my quirky old friend

Digg and LiveJournal Scalability and Performance

Monday, 10 April 2006, 21:38 | Category : Software Development
Tags :

Interesting article on Digg and PHP’s scalability and performance. The article mentions 8 slave database servers for just 3 webservers, which seemed an odd configuration.
I posted a question but the author didn’t elaborate much aside from linking to an interesting set of slides about LiveJournal. This walks through increasingly elaborate scaling scenarios. (Edit: these slides [...]

The Zen of CSS Design

Monday, 10 April 2006, 17:05 | Category : Geograph, Web Design
Tags :

The CSS Zen Garden site is a fantastic demonstration of what CSS can do. A few days ago I found myself with a few hours to kill while waiting for my car to be repaired, and while browsing a bookshop came across a book about the site – The Zen of CSS Design
The book takes [...]

Distributing the Geograph Archive with BitTorrent?

Sunday, 9 April 2006, 12:16 | Category : Geograph, Software Development
Tags :

Geograph attracts the occasional bit of unfriendly leeching, where someone mirrors the entire site at high speed. Considering we’ve got close to 250,000 pages, that can be quite a bandwidth hit for a non-profit entity.
We’ve policed this manually up until now, but we’ll certainly need to add some automated software protection to separate legitimate browsers [...]

Lazy wrapping with PHP5’s __call method

Saturday, 8 April 2006, 8:47 | Category : Software Development
Tags :

The overloading features in PHP5 allow you to intercept calls to unknown methods at runtime. I recently used this feature to rapidly develop a class wrapper for Xapian, and it’s interesting to see how the technique works and what it achieves.
In this article, I’ll explain how you can use __call to wrap a flat function-based [...]

memcached

Friday, 7 April 2006, 7:55 | Category : Software Development
Tags :

Enjoyed the PHP-London meeting last night – the main element was a talk on memcached using the PECL memcache extension. I don’t know how the distributed nature of memcached passed me by until now, but it looks like it would be very useful for Geograph when we scale it to more servers.
Just need to find [...]