Jun
10
2010
4

Per-environment fixtures in symfony

UPDATE:

I have now packaged this script into a symfony plugin called sfEnvironmentFixturesPlugin. Check it out and hit the ‘I use it’ link if you find it useful!

Symfony‘s fixtures are a great way to set up initial data and/or test data for a system. Whenever I create a new symfony project however, I always find myself wishing there was an easy way to specify which fixtures contain data required for production systems (the ‘initial’ data) and which contain data that I only need when developing (the ‘test’ data).

I recently started such a project and came across a reasonably elegant solution. With a simple YAML file placed in your fixtures directory, you too can have such a set up if so desired.

(more…)

Apr
29
2010
4

Why I avoid using Subversion externals

I’ve been using Subversion for a few years now and one of the tricks I’ve picked up on is avoiding the use of externals like the plague. I first stumbled upon this idea when including a large code base as an external in one of my own projects.

Subversion operations on the project in question were lightning fast. I could make a code change, and the commit operation would take only the blink of an eye. Likewise, updating other working copies with my changes was similarly instantaneous.

Then I included a large dependency as a Subversion external. From that point on, Subversion operations were very sluggish and it soon became a chore to update my working copies.

(more…)

Mar
17
2010
1

Creating web thumbnails with PHP Imagick

It may seem like a subject that has been done to death, but creating thumbnails from images can be a complex and frustrating task, especially when you’re faced with a wide variety of formats in your source images.

The script below uses PHP’s Imagick extension to create a thumbnail from pretty much any source image. It can handle RGB & CMYK images, TIFFs, PNGs, JPEGs, GIFs, BMPs and just about any other format in just about any size, and it can also handle images with embedded colour profiles (this is very helpful when converting images created in Adobe software).

(more…)

Dec
03
2009
30

Expanding forms with symfony 1.2 and Doctrine

I recently started learning how to use the forms system in symfony 1.2 and for the most part I was impressed with its simplicity and flexibility. Unfortunately I was thrown in the deep end somewhat when a project I was working on had a requirement for an “expanding” form – that is, one where a certain section of a form should be able to be repeated as many times as necessary to accommodate the user’s needs.

In the case of the project in question, the specific situation was an application form where the user could fill out any number of team members involved in their project. Each team member consisted of a name and a role, both free-form text fields. Team members were to be stored in the database, linked to the application in a one to many relationship.

Circumstances conspired that this must be achieved in a single form, so full of confidence in symfony’s design decisions regarding the forms system, a bit of light Googling revealed the answer – symfony’s embedded forms system. Great, so you just plonk in a few embedded forms and away you go, right? Wrong.

The good news is, I managed to find a solution that satisfied the requirements, eventually. The bad news is that it is not easy, elegant, or particularly reusable.

What follows is a loose guide to implementing such a system. Being a relative newcomer to symfony I cannot guarantee that this is the best way to do things, so tread with caution, and if you think of a better way to achieve the same outcome, please please let me know! Read on if you dare… (more…)

Sep
29
2009
5

Automatically signing .jar files in NetBeans

Just a quick article on something I struggled to find a good example for – configuring NetBeans to sign a .jar file after compilation is complete.

This is very handy, for example, when developing an applet that requires permission to access the file system. This requires the applet to be “signed” using the jarsigner utility, and this quickly becomes a tedious step when testing changes made in your applet in the browser itself.

(more…)

Aug
27
2009
1

Patent idea: Method and device for compression of caffeinated beverages

coffee_compression

By Jove, I’ve done it!

Yes my friends, after much trial and error, I’ve invented a method of compressing coffee into a smaller size, making it possible to carry around numerous coffees safely and easily.

(more…)

Jul
22
2009
0

Revisited: foreachif()

A while ago I blogged about my desire for a foreachif() construct in PHP. A recent comment from a reader made me re-think the concept and consider ways in which it could be implemented elegantly, without the need for changes to PHP‘s syntax.

(more…)

Written by Erin in: IT,PHP,Programming | Tags: , ,
Mar
07
2009
0

Monthly metal clip: Textures’ “Awake”

This month we are treated to a clip from Dutch band Textures. This is the official clip for the song “Awake” from their latest offering “Silhouettes“. Enjoy!

“Awake” from the 2008 album “Silhouettes”

Feb
02
2009
0

Monthly metal clip: The Acacia Strain’s “Skynet”

This month’s MMC comes from the heavy-as-fuck Massachusetts band The Acacia Strain off their new album “Continent“. This track is called “Skynet”, and the clip is pretty damn funny, but beware: YouTube has already pulled one version of the video, so get in fast before they do the same with this version!

“Skynet” from the 2008 Album “Continent”

Jan
27
2009
0

Monthly metal clip: Gojira’s “All the Tears”

I’m going to attempt to post a cool metal clip every month, so stay tuned for more of these. I’ll try to make them recent releases, but that may not always be possible as they don’t always come along that often.

I’ll start things off in fairly epic style with French metallers Gojira, and their clip for “All the Tears” off their new album “The Way of All Flesh“. Enjoy!

“All the Tears” from the 2008 album “The Way of All Flesh”