A while back I saw the announcement of a PHP conference that would take place here in Stockholm where I live. I was very excited since it’s the only conference I’ve heard of focused only on PHP here in Sweden. Actually it’s focused on Symfony, but the components are such a major part of PHP nowadays. And then I came around thinking that perhaps I could contribute something to this conference. I had previously only given presentations at meetups and really enjoyed doing that. And since I’m writing a book on deploying PHP applications, I thought it would be great to at least try to get a talk accepted for that topic. So I submitted my talk proposal with the title “Deploying PHP applications” to Symfony November Camp, and waited.
About a month ago it happened. I got an e-mail from the organizers that said my talk was accepted and they wanted some more information from me. I was excited! I sent the organizers everything they needed. After a while the entire line up of speakers was announced and I looked it over. On this list were among others Mathias Verraes and Matthias Noback. Two veteran speakers I had seen on YouTube giving awesome presentations. I have also read Noback’s book Principles of Package Design which is a great read for developers. I was scared and extremely humbled to share the stage with them. Why? Because I have tremendous respect for them both as developers and speakers, they’ve been doing this for a long time. There were of course more speakers with talks that sounded really interesting but I hadn’t heard of them before (sorry guys, but your talks were awesome!).
I was preparing my presentation and my idea was to spread development process awareness. I didn’t want the presentation to get into too much technical detail about certain parts of the deployment process, and I don’t know if I could’ve in only 40 minutes. So I focused it on theory. Goals for a great deployment process and which steps can be taken to achieve it. Perhaps I could get some people to think about their own deployments, and how and why they can improve it.
Now I arrive at the important part. Do I consider myself an expert on this? No. And I do not want to consider myself an expert either. What I consider myself is someone who have had a lot of experience in a certain area to create my own opinions and ideas around it. I’ve been there, I’ve made many mistakes. My hope is that I can share those experiences and help others not make the same mistakes. I do not have the truth, I’m just a guy with a beard in a t-shirt, sneakers and some tattoos. I always try to get my opinions and ideas challenged, I think it’s a very important part in what we developers do. If no one challenges what I say, I get bored. Jeff Atwood, another great developer and blogger I highly respect, wrote an article about this a few years ago called Are You An Expert?. This is one of my favourite quotes from the article:
Of course, Mr. Bach is talking about testing here, but I believe his advice applies equally well to developing expertise in programming, or anything else you might do in a professional capacity. It starts with questioning everything, most of all yourself.
I try to question myself and create an environment where I get questioned by others. This is how I learn, how I improve, how I make it fun. Writing on twitter, writing this blog, writing a book and speaking at a conference is how I’m creating this sort of environment for me. Being a self-proclaimed expert that think you have all the answers just means you’re being an asshole.
Now I’m writing this blog post the day after the conference. I wasn’t able to attend the after party which really bummed me out, I think I would’ve gotten a lot of great feedback there. I also would’ve like to pick the brains of the great developers and speakers attending. I got some feedback during the course of the day and I have already gotten feedback on my talk at joind.in and I want to share some of it with you.
“I liked this talk to a certain degree. I think it’s good to talk about deployment on a higher (meta) level like you did. But without going into any technical details, practical suggestions, etc. I don’t feel “charged” for my next deployment assignment.” – Mathias Noback (speaker), 3/5 rating
“A bit theorethical but valid stuff! A capifony user..” – ANONYMOUS, 3/5 rating
“Best practices are important and I liked how you presented the topic, but I expected to get more into detail and maybe real life examples and concrete tools to help you to deploy and have a continuous integration system. Anyway, good job and good luck with your book!” – Raul Fraile (speaker), 4/5 rating
“I liked that you didn’t get into technical solutions but personally I didn’t learn that much new stuff. Good flow in your presentation and enjoyed listen to it!” – Jon Gotlin, 4/5 rating
I can’t really express how much I appreciate people taking their time to give this kind of feedback. I do not consider any of this to be negative, quite the opposite. Without the feedback, my presentation would only exist in some kind of vacuum where I couldn’t tell what I did good or bad. This was the first time I gave this presentation and the first time I spoke at a “real” conference. Looking at the feedback, it seems that people felt it was too theoretical and wanted some more details on the technical aspects. Jon being the exception, but he said he didn’t learn much new stuff.
If I’m given the opportunity to give this presentation again, I can hopefully improve it with the feedback. Could I perhaps change parts of it to cater more to people who want technical aspects or more advanced topics? Maybe. At least now I know what people thought. Invaluable information for me. And I hope to get even more feedback. I hope to get questioned.
The deployment progress by @niklasmodess #NovemberCamp pic.twitter.com/PEXpTlLdip — Symfony Sverige (@symfonyse) November 14, 2014
I guess autocomplete messed up, it’s supposed to be process and not progress :)
I want to thank everyone attending, the other speakers and the organizers for a great event! I hope to see you next year again.
Remember: Stay humble. Question everything. Don’t be an asshole.