When I was hired at dealnews.com in 1998, my primary focus was to get our message board (Phorum) up to speed. I had written the first version as a side project for the site. Message boards were a lot simpler back then. Matt's WWWBoard was the gold standard of the time. And really, the functionality has been only evolutionary since. We added attachments to Phorum in 2003 or something. That was a major new feature. In Phorum 5 we added a module system that was awesome. But, that was just about the admin...
I spend most of the last week or so over in Manchester for a combination of excellent PHP-related events: PHP Unconference Europe on Saturday and Sunday (with a rather excellent warm-up party on Friday night!), followed by the PHP Days training on Monday and Tuesday.
PHP Unconference Europe
A large crowd gathered very early on Saturday morning at the Pitcher and Piano, and got our briefing on how session voting works (everyone gets 4 stickers, you stick the stickers onto the sessions you want to see,...
These days, a lot of effort in...
Want a chance to win the PHP 5 Social Networking book from Packt Publishing? Three copies are up for grabs in after a 14 day contest.
How to Enter
All you have to do isAcomment on why you'd like a copy of the book in the comments. AYou can take a look at the book's page at Packt for inspiration and additional information.
During, this contest, we'll work with tokens. The more tokens you have, the greater your chance is of winning the a copy of the book.ALeaving the answer in the comment field will...
I often get asked by potential employees and clients, why we do PHP and mostly PHP only. A valid question, of course and my first answer usually is (besides the "historical reasons" one), that nowadays all those server side (scripting) languages are mainly the glue layer between the front-end (the browser part) and the back-end (your storage and "database" solution) and not the one and only defining factor if your project will be a success. Or not.
Python, Ruby, PHP, they all have their merits and...
Last night I gave a presentation on CouchDB at the New York PHP User Group. I talked about the basics of CouchDB, its JSON documents, its RESTful API, writing and querying MapReduce views, using CouchDB from within PHP, and scaling. The talk was broadcast and recorded on Ustream.
A big thanks to New York PHP (especially Hans Zaunere, Daniel Krook, Alan Seiden, and Isaac Foster) for having me as a guest! If you like what you see here then I hope you'll consider buying my book, Writing and Querying...
Today, my brain refused to recall details of mercurial commands and I moved GObject for PHP project to github.
I didn't mention this project on blog, but that is only because I wasn't blogging much lately.
It's been in the news, that PHP-GTK aois being split up into different projects, PECL/Cairo, GLib, GObject, etcao, but there were not many details on these changes. It's time to fill the gap.
I was working on aoGObjecta part from the list. Our idea is to get rid of legacy code, target php 5.3+ and...
On DZone.com's Web Builder Zone Giorgio Sironi has posted a few methods you can use to help get rid of getters and setters in your OOP PHP applications.Encapsulation is (not only, but also) about being capable of changing private fields. If you write getters and setters, you introduce a leaky abstraction over private fields, since the names and number of your public methods are influenced coupled to them. They aren't really private anymore:To show his alternatives, he uses a sample "User" class with a...
In a new post to his site, Najaf Ali has a tongue-in-cheek article about "why PHP is better than Ruby", a sarcastic look at the differences between the two languages with one winning out as a favorite.PHP is better than ruby. There, I said it. In this article I'm going to show you why, and probably upset some twenty-something, flip-flop clad, mac-using hippie fanboys in the process.He lists a few differences between the two languages - objects in Ruby, syntax and readability, object handling in PHP and...
Imagine PECL/mysqlnd_ms could keep certain reads on certain slaves in a MySQL master slave setup. You would have a good chance to profit from hot database caches. You would not only distribute read load, scale out horizonally and so forth due to using MySQL replication. You would also optimize ...
It's that time of year again, the Spring PHP conference season is upon us. Click on in I'll give you a run down of what is coming up and throw in a new podcast just for fun.
On the Zend Developer Zone Kevin Schroeder has published the latest episode of the ZendCon Sessions series of podcasts (as recorded at the 2010 Zend/PHP Conference). The episode is Sebastian Bergmann's talk on continuous inspection and integration in PHP projects.The ZendCon Sessions are live recordings of sessions that have been given at previous Zend Conferences. Combined with the slides, they can be the next best thing to having attended the conference itself. [...] This episode of The ZendCon...
New on the Ibuildings techPortal site, there's an article from Rupert Jones that walks you through the installation of Magento Enterprise on a linux-based platform (LAMP).Magento is an increasingly popular e-commerce platform due to its sheer flexibility, wide range of features and the facility to customise it relatively easily. In this post we will examine how to get Magento Enterprise set up and running. We assume a debian-based LAMP stack but these instructions could be adapted for any other platform...
The Voices of the ElePHPant podcast has posted a new community interview, this time with Anna Filina, an organizer of the ConFoo conference.It's a short interview (about seven minutes) where Cal asks her three questions:
where does she find inspiration for her talks?
what's the hardest thing about organizing a conference (like ConFoo)?
what do you look for in speakers and talks?
This is the second podcast in the series with the first being an interview with Jeremy Kendall. You can subscribe to get this...
Traditional content management systems are monolithic beasts. Just to make your website editable you need to accept the web framework imposed by the system, the templating engine used by the system, and the editing tools used by the system. Want to have a better user interface? Be prepared to rewrite your whole website, and to the pain of having to migrate content between different storage systems.
But none of this should be necessary. When web editing tools were more immature, it made sense for the same...
Yesterday I had my last day at $company and today is my first day in freedom. I'll write about my future plans in another blog post. Here I just want to express the joy I had yesterday afternoon when I did:
I've started using PHP in 2006 and used it almost exclusively until the end of 2009. I believe I've learned most of what one can learn about PHP in this time. In 2010 I started to work in Java and only started to understand how limited PHP is.
I know that java is far from...
A couple of weeks ago I got a request from Packt Publishing to review the book "CMS Design Using PHP and JQuery". I accepted the offer because we're using more and more JQuery in our applications these days and I thought this book would give me a better insight in how to best use JQuery.After receiving the book I started reading it. But right from the start the author displayed bad practices and mis-use of PHP. Reading the book from front to back, the author Kae Verens (@kae_verens) has confronted me...
So as you might or might not have noticed yet, PHPBenelux is organizing a new contest in collaboration with Microsoft: The PHP on Azure contest. The idea is simple: Build an application in PHP that runs on the Windows Azure platform. I think it's a great idea to participate, let me try to tell you why.
UL to PHP array
Horizontal Bar Chart
Very simple pie chart
RPC API Framework