JonBlog
Thoughts on symfony, PHP and other tech topics, plus going car-free
Categories: PHP, Symfony | Add a Comment

I’m still using symfony 1.3 for pet projects, even though I should find the time (maybe first quarter of 2014!) to look at Symfony 2. However as can happen with any framework, today I came across a head-scratcher that took more coffee than expected to fix. Today’s hiccup was with the Propel 1.6 plugin – [...]

Based on an estimated 40 miles per/week – probably a conservative estimate – my 18 months of electric bike ownership has seen me clock up over 3,000 (mainly commuting) miles. As per my earlier review, I ride a Juicy Sport – the design for which has changed twice since my 2010 model. I’m at the [...]

Categories: Tech misc | Add a Comment

I’ve been working with the Fotolia Business API recently to integrate stock image purchasing into a web application, and by-and-large it does what it says on the tin. However I’ve found the documentation to be somewhat lacking, and it’s not made any easier given that new messages to the (rather quiet) discussion group must wait [...]

Categories: PHP, Technical | 2 Comments

I recently fixed a WordPress site that was having trouble sending mail from the popular contact form system, Contact Form 7. The site was running on a Fasthosts web server. Incidentally, I don’t recommend this hosting service; from what I can tell, they disable all the system() PHP calls, making it impossible to run backup [...]

Categories: Technical | Add a Comment

One sometimes neglected issue connected with Internet security and privacy is the degree to which unencrypted URLs should be used to carry personal information. I’ve seen it frequently in unsubscribe links on email circulars: rather than having a unique user identifier, the user’s email address appears in the clear. This is okay if you’re at [...]

Categories: Life | Add a Comment

I imagined when I started this blog that I’d be writing about, well, the bits of technology that I know something about. I’d have guessed I’d be scribbling on web development, useful titbits in PHP and confounding buglets in JavaScript, plus maybe a pet software project or two. But the thing about writing is that, [...]

Categories: Technical | Add a Comment

Some code I’m working on requires that a table is locked against any reads or writes for a short duration, and I’ve found that, with MySQL 5.1.x, any other tables that are accessed within the same lock period need also to be locked. So, I was doing something like this: This fails on the select [...]

Categories: Meshing, Projects | Add a Comment

Introduction One of the challenges in Meshing is to determine how to store previous data in a database. How many reads and writes need to be carried out is important, as this will have a direct impact upon performance. I’ll document some of my ideas here, mainly to solidify my understanding of it – and [...]

Categories: PHP, XML | Add a Comment

Today I had a requirement to match an XML path where a part of the path must have a specified attribute that does not have a specified suffix. Additionally, the solution must be in SimpleXML, and so cannot use the XPath function fn:ends-with, since that is part of XPath 2.0 and hence isn’t supported. Phew! [...]

Categories: Meshing, Projects | Add a Comment
Peering illustration

To help illustrate my P2P database proposal, this article looks at three use cases in some detail: a recruitment agency network, a no-agencies jobs network, and building a large dataset of public transport routes.

Categories: Meshing, Projects | Add a Comment

This article sets out some technical concepts for my peer-to-peer database proposal, and suggests that PHP plus a decent ORM (such as Propel) would be a good, easy-to-deploy platform, with modest hosting requirements. I briefly look at peer trust, data transfer, versioning and how to keep the network balanced.

Categories: Meshing, Projects | 2 Comments

I present a proposal for an open source software package that permits individuals to create and maintain cheap, distributed, de-centralised, crowd-sourced, scalable, relational databases. I explain why I think this would be useful, and briefly explore some possible use cases.

Categories: PHP, Symfony | Add a Comment

I was recently in the process of moving some sites to a new server, and found that a particular format of URI was not working on the new server: http://myserver/frontend_dev.php/criteria/analyse Normally in a symfony application, the default .htaccess file ensures that anything after the controller (i.e. frontend_dev.php) is simply passed to that controller, rather than [...]

Categories: Mac, Technical | 34 Comments

Whilst I am warming to the “Mac way” of doing things, I do like making use of F/OSS where I can. A case in point is processing photos, for which – of course – all free software fans should be using Gimp. Whilst it’s probably not quite Photoshop, it is well featured, powerful, and (as [...]

Categories: Projects, Technical | 6 Comments

Introduction Some years back I downloaded an amateur documentary from the ‘net, around 800MB, and wondered at the time how such a thing could be offered to more people without costing the distributor a potential fortune in bandwidth. A few solutions exist already, of course: one can create a torrent, and wait for torrent users [...]