Blog Archive
Symfony2: Implementing ACL rules in your Data Fixtures
Date: 04 Jul 2012Tags: [ doctrine ] [ PHP ] [ proxy ] [ symfony2 ]
Doctrine’s DataFixtures are a great way to add test data to your application. It’s fairly easy to get this going: Create a fixureLoader that extends Doctrine\Common\DataFixtures\AbstractFixture, had a load() method and off you go. However, sometimes you want your data also to be protected by Symfony 2’s ACL layer. Since there isn’t a common way to do this, here is one way on how I implemented this
Using vagrant and puppet to setup your symfony2 environment
Date: 29 Jun 2012Tags: [ puppet ] [ symfony2 ] [ vagrant ]
As you may now by now, I’m a big fan of using Puppet for configuration management. Since the rise of virtualization,
these applications are becoming one of the more dominant tools in a developers tool chain. Together with other tools,
setting up a complete development environment with just a single command is not only reality, but it’s becoming for a
lot of developers a daily practice. But even for open source projects like
DPC speaker's dummy guide into arduino
Date: 23 Jun 2012Tags:
This year the DPC (and DMC) bought all speakers one of the coolest gifts I’ve ever got (or seen) for speakers: an Arduino. During the speaker dinner, a lot of people were a bit confused on how it was and works. So this post is for all of those, plus everybody else who wants to get involved in Arduino, programming and some electronics. It really is fun!
Using augeas (in PHP)
Date: 04 Jun 2012Tags:
Even though I really like using sed and awk, sometimes its hard to change or add parameters in configuration files. Big sed statements that may or may not work, double checking if everything has been done correctly etc. Augeas is a really cool tool that lets you view / add / modify and delete all kind of data from configuration files. If you are using Puppet, you are probably aware of this tool, but I notice that a lot of PHP developers have never heard of it.. Let’s explore..
301 vs 303
Date: 02 May 2012Tags: [ http ] [ rest ] [ see other ]
During a presentation I gave yesterday about REST, there was a discussion about redirection (more detailed, a redirection from a queue to the actual resource during asynchronous operations). During this presentation (and blog-post), I’m using a 303 HTTP status code to indicate that the operation has been completed and that the created resource can be found at another URI. So in essence, it makes sense to use a 303. At least to me, and quite possibly the rest of the world too.. But this triggered a side-discussion on which HTTP status code to use, and the more I think about it, the more complex it believe this problem actually is.
Conference retrospect
Date: 25 Apr 2012Tags: [ conference season ]
So even in the middle of conference season, I’d like to update you with some of the awesome things I’ve seen and experienced over the last few weeks.
Bloom filters
Date: 09 Apr 2012Tags:
In a span of two months or so, I’ve noticed a peak in implementation of bloom filters. Maybe the “if you got a hammer, everything looks like a nail” applies here, but statistically I’m doing a larger number of bloom filter implementation as usual. Yet, most of my co-workers never really heard of bloom filters, and I’m continuously need to explain what they are, what their purpose is and why it’s a better solution than other ones. So let’s do an introduction on bloom filters.
PHPShout : a shoutcast streamer in PHP: Part 1
Date: 24 Mar 2012Tags: [ C ] [ extension ] [ icecast ] [ PHP ] [ streaming ]
To continue our journey in pointless, but nevertheless fun things to create, I’ve created a simple PHP extension that allows you stream music data to an IceCast server in pure PHP. For this I’m using the libshout3 library which can stream both MP3 or OGG/Vorbis data to multiple stream servers (including IceCast, ShoutCast etc). In this blog-post I will try to explain how I’ve created this extension, and off course, how you can use it.
PHP has moved to git!
Date: 19 Mar 2012Tags:
Good news everybody! PHP has (finally) moved their version control from subversion to git and placed their repository on github. Meaning it just got easier to maintain PHP but also it makes it easier for external contributors (without any write-access) to create patches and for contributors to merge them. Hopefully this will mean the end of waiting weeks or months before somebody gets around looking at your patch.
Ideas of march
Date: 15 Mar 2012Tags:
Yes, I’m a lemming. If a see a group of people jumping off a cliff, I will follow blindly. If somebody calls for more blogposts in the world, I happily write a blogpost for it. But, being the subordinate lemming I like to pretend I am, I don’t completely see myself in the situation that Chris is in. Basically what he says is that due to the many social media outlets available to us, blogging is taking a backseat when it comes to spreading information. And even though this might be the case for many out there, I don’t think I’m falling in this category.
Why putting SSH on another port than 22 is bad idea
Date: 12 Mar 2012Tags: [ ssh ]
The basic argument I've tried to make: don't do security-through-obscurity. You may use it, but don't solely use it. Use other - better - defences to increase your security (like pubkey authentication for instance).
I see a lot of companies and users moving their SSH port to a non-privileged port like 2222 or even 36797. People like to move this port away in order to lower the number of attacks on the SSH port.
Freelancing: episode 1
Date: 04 Mar 2012Tags: [ freelance ]
A few months ago, I decided to quit my current job and start with freelancing. Or actually, only the “quit my job” part I knew for sure, on the freelancing part I was still wondering if I should make that step. However, a few month later, I decided to share with Google^WInternet on how I’m currently doing, what things you might face and how I do things. Hopefully, I can convince one or two readers that are still not sure to go for the freelancing gig as well :)
Setting up a development environment
Date: 04 Feb 2012Tags:
Doing development on multiple projects can be a burden from time to time. One project would be running on PHP 5.3, while another still needs 5.1. Sometimes you need a MySQL server, while on other occasions, you need a NoSQL solution like couchDB or MongoDB together with all kind of gearman functionality. This article shows you how I’ve setup such a development platform that allows you to quickly create new projects, and still maintain flexibility when you need it.
Pragmatic investment plan 2011-2012 : The update
Date: 02 Feb 2012Tags:
A little bit less than one year ago (actually, 9 months ago), I’ve created a blogpost about creating a Pragmatic Investment Plan. Even though the year is not finished for me yet, I still like to share my experiences with such a plan and what actually has come from it.
LaTeX: also useful for writing your documentation
Date: 22 Jan 2012Tags:
Sometimes you hear about programs but you never really know how awesome they are until you actually use them. Unfortunately, at this point in life I wished I’ve discovered LaTeX around 15 years ago, when I first heard of it. That would have made the way I would have written documentation the last years massively different. So hopefully I will get you hooked on LaTeX with this post.
Apache's fallbackresource: your new .htaccess command
Date: 21 Jan 2012Tags: [ apache ] [ rewrite ]
So probably you are aware I’m currently exploring the deeps on the Apache source internals. One of the discoveries I’ve made was a (for me unknown) command in mod_dir that will make your life a little bit easier: fallbackresource.
Why I don't accept PayPal anymore for payments
Date: 05 Jan 2012Tags:
I think everyone has heard at least 5 five horror-stories when it comes to PayPal. And every time people will be upset, will tweet about it but then go on with their lives. I get it, I do the same thing. But just a few days ago I came acros the gazillionth message about PayPal. Short story: guy sells violin for 2500$, buyer says it’s fake, PayPal orders buyer to destroy the violin in order to get money back. In the end: seller looses violin AND 2500$, without ever being able to defend his claim. As LeoMcGarry could have said: The last straw has just been placed on the camel’s back.. and then PayPal drove over it with a tank..