PHP Interview With Stefan Koopmanschap Symfony Community Manager – Don’t Be Shy To Ask Others For Help

About This Interview

This is the #4th set of PHP Interview to help aspiring PHP developers and PHP fans alike to get inspired by listening from those PHPeople who are already highly involved into the PHP Ocean and *being there* taming the waves and surfing better than ever to make themselves an Awesome PHP Expert both in their own eyes (for self-accomplishment) and for the PHP Community.

On the other side, this is an opportunity for new PHPers to get to know their “PHP Elders. I hope you will derive as much fun to read my interviews as I’m having by interviewing those awesome PHP people.

A Small Intro..

Stefan Koopmanschap Symfony Community Manager

In this edition, I talked with Stefan Koopmanschap (@skoop) who was the co-founder of the Dutch PHP usergroup phpGG which merged with the PHPBelgium usergroup to form the PHPBenelux usergroup (Note that he is no more active @phpGG). Stefan is currently part of the events team of PFZ.nl, which is a PHP/web development usergroup in the Netherlands. He is also an official Sensio training partner for Benelux and Germany.

I have been particularly amazed by how Stefan has made PHP one of his main earning stream down the years considering he has no Computer Science background. This is INCREDIDBLE! Do you imagine the meaning of this? With no such background, this guy has been able to master the programming principles, design patterns and system architectures to be the SUCCESSFUL and WISE PHP programmer he is today! This is to be taken as inspiration and a great example of self-discipline, use of your brain to (get self-taught) learn and ‘rise and shine’.

Koopmanschap is much involved in the OpenSource world and is a very highly respected member in the PHP Community; he advocates sensible thoughts and never fails to make his point stand out in the best way he can. You can read more about him on his personal blog – LeftOnTheWeb. Skoop is also perceived to be insightful when it comes to PHP Standards and emphasis on QA projects; he is an active organizer of several TestFests. At the time of this writing, as per wefollow.com, he is ranked as the 3rd (out of 131) most influential person on Twitter for #symfony, as the 17th (out of 2,546) most influential person for #php and as the 37th (out of 1,623) most influential person for #opensource. You can find his presentations on slideshare – some of his talks include:

  • A Practical Look At Symfony2
  • Learning in Groups and Networks
  • Integrating symfony and Zend Framework

Lastly, I would like to say that Stefan has a lot of appreciation for ANY person that has a passion for PHP or for ANY people wanting to genuinely get a glimpse of PHP. I remember the first time I talked to him about my idea of such interviews, he immediately responded: “I like your idea of inspiring others”.

And Now The Interview…

1) Hi Stefan, please tell us a bit about yourself

Well, my name is Stefan Koopmanschap, I live in The Netherlands, in the small village of Woudenberg together with my family (my wife Marjolein and two kids, Tomas and Yara, 6 cats and a bunch of fish). I run my own company and do work as PHP developer, trainer and consultant. I’ve been working with PHP since either 97 or 98, I can’t remember exactly when I started, but it was in the time of PHP3.

2) How you started with PHP

Back when I was still in school, I did an internship. I was building static HTML websites in my spare time because I liked doing that. A colleague of mine at the internship told me I should check out PHP, because it made stuff so much easier when maintaining a website. So I bought a book, downloaded some scripts, and just started playing. That’s how I got into PHP.

3) How do you find PHP now as compared to when you first started

Wow, there is quite a big difference. Of course, we’ve advanced from PHP3 to PHP5.3 (5.4 soon!), but aside from syntax and of course the internals, the main difference is the mindset of the developers using PHP. Well, far from all of them, but you encounter quite a lot of serious developers, even developers from more “enterprise” languages like Java and .NET, moving to PHP because of the ability of PHP to just get stuff done. And I guess that hasn’t changed. Even in the PHP3 days it was quite easy to just “get stuff done”. Back then, that meant simple hacking some scripts together, these days that means doing some serious work and architecture. Of course, you can still do it without all that, and that’s a beautiful property of our language.

4) Based on your experience, what are the good and bad parts of PHP

Well, I think I already mentioned the good part of PHP: It gets shit done. And these days, you can either get shit done by simply hacking some scripts together, or you can choose to go all the way and create an “enterprise” architecture, use frameworks, etc. I think the freedom and choice a PHP developer has is something that a lot of people don’t realize they have.

The bad part is the constant “war”. Whether it’s on the internals mailinglist, or one framework’s users flaming the other framework’s users, or a CMS community bringing down a conference over a company abandoning that CMS as their favorite tool, this is stuff that should not happen. But every year there’s a couple of wars being fought. Competition is a good thing, and I welcome multiple frameworks, CMSes, CRMs and whatever more in the PHP world. As long as we don’t all reinvent every wheel, it’s a good thing to keep each other to pay attention to what the rest of the world is doing. But the mudslinging, flaming and fighting is definitely a bad part of PHP.

5) What would be the Top advice to a PHP beginner

Start simple. PHP is easy to learn, but don’t expect you’ll be building the new Facebook in your first years of being a PHP developer. Grow into it. Start with a simple site, then move on to something bigger.

Also: Get to know other PHP developers. Be active on IRC, Twitter, Facebook but also in the real world at usergroup meetings and conferences. And don’t be shy to ask others for help. We all started where you are now, and a lot of us are eager to help you out, to help you improve your PHP skills.

6) To someone who wants to become a better PHP developer, what is your advice?

Actually, I could repeat the above: Be active on IRC, Twitter, Facebook and at usergroups and conferences. I have gained so much knowledge listening to other people talk about what they do and how they solve problems, by discussing with them what should be the right solution to a problem I encountered, by asking them questions on software I wanted to use.

7) The best PHP book you’ve read

This is a tough one. There is not one single best book, because there are so many good ones. I don’t dare to give you a single book.

8) A PHP blog or resource you highly recommend

PHPDeveloper.org and planet-php.org. Those two combined are the source of 90% of my online PHP reading experience.

9) The IDE that you use

PHPStorm, without a doubt.

10) How do you debug your PHP code, do you use something like xdebug or krumo..etc?

I used to use Xdebug, these days I have a setup on my laptop with Zend Server.

11) A CMS that you think is worthwhile

WordPress has the best user interface that I know of.

12) A PHP framework you use and would recommend

Given my involvement in the project: Symfony

13) One PHP person that you admire and what strikes you about him/her

Oh man, can I name only one? That is hard. OK, I will have to say Lorna Mitchell. Lorna is a close friend, we used to work together, we’ve done a talk together, we both share a strong passion for the community, and she is one of the most knowledgable PHP community members that I know.

14) One PHP project you really appreciate

I would want to say “all the usergroups“. It’s not a single project but it is what binds the people together. They educate all of us, enable us to meet, learn and have fun. They put so much effort in this without really expecting much in return. They rock.

15) One function that you like (or which you tend to use frequently)

After having started working with microframeworks (and Silex specifically), I’ve come to love the power of anonymous functions. While they should be used with care, they make PHP even more flexible and dynamic.

16) One PHP Community that you recommend

I’ll have to say PFZ.nl, the dutch usergroup that I’m involved with these days.

17) The never ending debates on PHP would be.. ?

Namespace seperators 😉

18) In the next 5 years, how do you foresee the PHP ecosystem

What I would like to see is more PHP developers becoming more serious about QA, but even more I would like to see managers becoming more aware of this. Still too often I come into a company to help them with their project to find no QA setup at all. No unit tests, no continuous integration, nothing. I am hoping that the joined efforts of the usergroups, of companies like Zend, Ibuildings, EZ, Qafoo, The PHP CC, In2it, Sensio, Ideato and all those others will convince more and more companies that QA is important, and that PHP is not just about hacking some scripts together. It’s still possible, but when you use PHP as a language for serious business applications, you need some form of quality control.

19) Recently Microsoft has also started actively to concentrate on PHP, any comments on that?

I applaud their efforts, although I remain wary. I’ve seen Microsoft do some really cool stuff, but I’ve also seen them kill great initiatives. I think it’s an enormous chance for PHP to enter the big Microsoft-using enterprises, and I think it’s a big opportunity for Microsoft to become a more valid choice for applications that would traditionally run on linux or unix.

20) If you had to go back in time, would you still choose PHP? What would you do different?

I think so. I don’t have any computer science background, and PHP is a language that’s very easy to learn. In the past years, I’ve gone and tried other languages, but I’ve always come back to PHP.

21) Any other things you would like to add and which you feel will be helpful to my readers?

Look beyond PHP. This may sound different, but there’s a whole array of tools that are not written in PHP, but can be of huge asset to your project. Think of Solr or ElasticSearch, of Memcache and Redis, of RabbitMQ and Gearman. All stuff that is there to be used, easy to understand and will improve the architecture of your application (when used well).

22) How many hours you spend coding on average per day?

Hah, I guess this depends a bit, but on average I’ll probably be coding 8-12 hours a day.

23) You are involved as a trainer, as a consultant, as a high valued member in enterprise communities as well as in php groups and you also take time to blog, etc.. How do you time manage all that – how do you coordinate everything and balancing all that with your personal life?

I have a huge list of things I want or need to do. Whenever I can, I sit down at my laptop to start coding, writing, e-mailing, whatever. But I take time “off” on a regular basis, to do fun stuff with the family, watch a movie with my wife, go to a concert, etc. I’ve never really focussed on finding the right balance, it just found itself with a bit of trial and error.

24) The day you realised “You’ve made it to the A-List PHP arena” ?

If you look objectively at me and what I’ve done, I guess you could say I’ve made it to the A-list PHP arena, but I don’t feel I stand out more than any other PHP developer that also does some blogging, chatting on IRC etc. I still ask questions on a regular basis just like anyone else does. But yes, I do feel privileged for being able to visit so many conferences, meet so many people. But because I’ve never felt like I stand out, I could’ve give you a “day I realized this.

25) Why you are successful and why others are not?

Wow, define “successful”. I think the most important thing is to be willing to help others. This will lead to people knowing you do that, making them more willing to help you. Don’t expect anything in return, and it will come soon enough.

26) You have been part of the phpBB team, the Zend framework team and now in the Symfony team. Are these entities different from each other (with respect to how they use and apply PHP); if yes how?

It is very hard to really compare this. I’ve been part of the phpBB team years and years ago, in a time where phpBB was one of the more popular PHP applications out there, yet it was not really using any framework because at that time, there were no frameworks to speak of. I’ve been a contributor of Zend Framework for only a reasonably short time in the early days, when they were still inventing Zend Framework. I’ve been in the Symfony team for quite a while now. I guess the main difference is in the organization. In phpBB, there was a small team of developers that was working on the actual software, and then there were other teams working on different other aspects like support, documentation, etc. With Zend Framework, there’s a huge community that all have their say in the direction of the framework. With Symfony, there’s a relatively small group of active developers and contributors, with many people contributing third party code (bundles).

27) Good things you have experienced while working for those 3 teams mentioned above and would like to share with us?

The passion. It doesn’t matter which of the groups you take, but they all have a passion for PHP and for creating the most awesome product that they can make. I love that.

28) You were also the co-founder of a Dutch PHP usergroup. How does involvement in a PHP group differs from what you do for enterprise groups like Zend or Symfony?

The only real difference is the amount of times people physically meet. With a local usergroup it is obviously a lot easier to organize an actual meeting, because people can travel easily to wherever the meeting is, whereas a group like Zend Framework or Symfony is spread out all over the world. So those people usually only meet at conferences.

29) Can you please tell us what it takes to create a php user group, the challenges, the responsibilities and maintaining the group, etc..

The most important thing is to have a couple of people willing to organize stuff, and a location. Get some people from local companies to talk about their projects, the technology they use, etc. Usually they’ll gladly do this for the exposure their company gets (especially when they are recruiting). With a bit of luck, those companies will also sponsor a couple of rounds of beers. The biggest challenge so far I’ve encountered is to have enough people willing to organize stuff. It’s quite hard to get people to spend quite a bit of their time on organizing things like this.

30) Also, you’ve had your column in the recent php|architect december 2011 edition, a word on that? 🙂

Hm, what to say. I guess: Thank you for organizing this series of interviews, for doing your part in helping people improve themselves.

Now Do Your Part!

1) Help diffuse this interview to the PHP ecosystem – Share, tweet and spread the word to your audience ==> That would be a FREE way to thank me 😉

2) Make a comment below using the comment form – I’m sure you can at least say 1 word about this interview

{I’m thankful to your response(s)!}


2 Comment(s)



Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.