October 22nd 2008

ZendCon08 in review

This article was originally posted by me to the MIH/SWAT Blog, at SWAT at ZendCon 2008.

This year SWAT marked its first year of presence at the Zend/PHP Conference, also known as ZendCon. Neil Broers and I were chosen for the mission of going to ZendCon and bringing back all we could learn.

Instead of going into a day-by-day testimonial of the conference, which only makes sense during the event, and which I have already done on my personal blog (www.rafaeldohms.com.br/en), I will turn this post into an analysis of the events, the trends set at the conference, and what it will mean for PHP in 2009.

This year’s ZendCon had a simple sub-title, or motto, “High Impact PHP”. It makes reference to PHP’s participation in the Enterprise market, not just the impact on small companies and freelance programmers, but the impact on the big, high volume companies. This goes hand in hand with last year’s Call for Action in the opening keynote of ZendCon’07: Take PHP to the Enterprise!

Big Players like Orange UK, Zero9 and Bell/Textron have rolled out PHP solutions to deal with their high demand systems – some replacing Java, some building on top of it. And that’s what PHP is here for: to enable web interfaces for corporate systems. You don’t have to do it all in PHP, you can integrate your PHP code with other solutions, and create flexible and high performance web interfaces.

More than ever before we are seeing a buzz around PHP. Companies like IBM, Microsoft, Oracle and Adobe are announcing partnerships with Zend, and are adding their contributions to the PHP Core. This indicates a big change – instead of trying to crush PHP, or ignoring it, companies are integrating it into their products. It is good news for all the developers out there, who can now count on more reliable and faster drivers for database solutions and communication protocols (such as AMF for Flex).

PHP has reached the enterprise, just as we saw happening with MySQL. As was stated by Harold Goldberg in his “Call to action”, let’s not ask “Why PHP?” anymore, let’s ask: “How PHP? When PHP? Where PHP? Go and Evangelize PHP Deeper into the Organization”.

Zend contributed greatly to this move to the enterprise. During the course of the last few years we have seen Zend step up and give back to PHP. The Zend Framework is fast on its way to becoming an industry standard, the Zend Studio IDE is rapidly improving and raising the levels of productivity for developers around the world. Zend has to continue evangelizing PHP and offering tools to Enterprise customers, tools such as those included in the current Zend Platform.

The conference sessions mostly focused on the trend to Enterprise, as well as a few other trends. Of course we had a few vendor sessions – it was a Zend Conference after all. But the community really stepped up with interesting sessions. Some recurring trends we could see by just looking at the schedule were: Performance, Testing, integration with other languages and components, and the Zend Framework.

Performance talks are inevitable with the current movement into the Enterprise world. High end users inevitably means high demand and traffic. Various panels suggested strategies that went beyond just PHP, as scaling must be done on the whole project, of which PHP forms just a piece of the big picture. Unfortunately one hour sessions are just not enough and we did not get into mogileFs and other OS level discussions which would have been very interesting. In general the Database seems to be everyone’s bottleneck, and Jay Pipes gave an interesting session and tutorial on SQL optimization, based on MySQL Databases. Most if not all sessions on Performance were based on Case Studies: Mozilla, Ning, Oracle, Bell Canada.

The maturing of svn and its increasing use in PHP projects, distributed development teams, never-ending beta cycles and the rise of frameworks  leads to Testing and Code Analysis being white hot topics in any conference. ZendCon was no exception, with many “test” centred sessions. Worthy of note were the sessions by the eZ Components crew on Test Driven Development and Continuous integration, where the the need for svn versioning and unit tests were highlighted.

As the old saying goes “If you can’t beat them, join them”. In many situations PHP just won’t do, that’s obvious to us, so instead of forcing its way into those areas and beating other languages and systems, PHP has learnt to adapt and integrate with other Technologies. Since we are so focused on the enterprise, it makes sense that more and more we see sessions describing the use of PHP for integrating larger systems or foreign applications on the web. This is one point where all the partnerships begin to make sense, such as those with IBM and the fact that PHP is currently being used to take green-screen applications to the web, hence the support for i5 and DB2. Microsoft wants in as well, with support for better MSSQL handling and interaction with ASP.NET. Lastly we should not ignore Adobe’s Flex and the AMF protocol increasingly being supported by the Zend Framework.

Lately we have seen the Ruby language repeatedly coming up for discussion, especially with the “insurrection” surrounding the Ruby on Rails framework, which has to make you think about how much a framework can affect a programming language’s environment and penetration. Of late the Zend Framework is on the way to becoming an industry standard, even though as with Rails the phrase “use with parsimony” comes to mind. Many different sessions showed best practices and examples of where ZF makes developers’ lifes easier and lowers obstacles to productivity.

The atmosphere at the event was electric, many different companies came to show their products, such as github and parallels, but a good many were there to show off their work, and actually look for new employees. Zend’s Team was constantly available for questions. One topic where I found myself actually giving answers was on the Brazilian Open Source movement. Seems these markets are getting more and more attention from Zend and other companies, so we might see some good news in this area.

The massive presence of key PHP developers was amazing, and added a lot to the trend setting described above, as well as being present in a roundtable discussion on PHP 5.3, which gave users a chance to get a sense of what the next version of PHP will hold.

So what can we take from this? Zend is stepping up, the community is right in the middle of its crosshairs, PHP has taken a huge step forward.

And the future? 2009 is going to be an interesting year. Right after ZendCon, iBuildings announced the creation of a PHP Center of Expertise in the Netherlands, driven by Cal Evans himself, the man behind DevZone. This is just more proof that next year will be awesome for PHP, we will continue to see it mature with version 5.3 just around the corner and break even further into the Enterprise world and the “web 2.0” world (where it is already a huge player).

Ladies and Gentleman, this is the time for the PHP Community to come forth and continue taking PHP to the next level, don’t just develop in PHP, get active in the community, find your local user group, publish articles, and always: think outside the box.

1 Star2 Stars3 Stars4 Stars5 Stars (Sem votos registrados)
Loading ... Loading ...

No Comments yet »

September 19th 2008

ZendCon 08: Day 4

That’s it, time running out and the sun comes out again for Day 4 of ZendCon.

This morning was diferent, more nervous, and that’s because the first session on the agenda, wasn’t a session.. it was an Exam. So i was a nervous wreck (as always before any test, its hardcoded in me) up until 9h when I sat down in the room, in front of the computer in the ZCE test room.

Almost 1 hour later, I sat there with a question on the screen “Clicking Yes will end this exam and give you a grade, do you wish to continue?”, well, i wasn’t sure, but i cliked yes anyway… and then… boom!

Grade: Pass

Yes, relief rushed all over me, and I was finally a Zend Certified Engineer.

From there i skipped to the PHP 5.3 session, having missed half of it, but was glad to find a panel discussion-like session discussing the features and opening the floor for questions, good to hear the new stuff from the guys who are actually doing it, so that was a plus. oh, and do note, “There is no goto”. Ok that’s an internal joke, but let’s say core developers added goto to PHP 5.3 .. but we should overlook it, just pretend its note there said Andi Gutmans.

Leaving that session i got more good news, Neil also passed the test, right after me. And off I was to “I need more servers” session by Maurice Kherlakian, who made a pass on many scaling strategies. Most were wll known, but an excelent comparison table for each step of the way.

And then off to the Hall… ZendCon was coming to an end. Closing keynote by the American Cancer Association who is also investing on PHP solutions and is reaching out to the community.

And that was it for ZendCon. The coolest event i have ever attended, good material for the office, certification, excelent business contacts, wonderful news for Brazil UGs, all in all this was an extremelly positive conference. Congratulations to all the Zend Team, and a special thanks to Cal Evans, for the elePHPant of course, but for giving me a few moments attention, also Zend’s CEO Harold and CMO Mark for the attention to the Brazilian market, 2009 will be a cool year!

See you all on the next ZendCon (i hope!). And wait for some more updates and details on each of the sessions!

1 Star2 Stars3 Stars4 Stars5 Stars (Sem votos registrados)
Loading ... Loading ...

No Comments yet »

September 19th 2008

ZendCon 08: Day 3

So, Day 3 begins, sorry for the delay, but day 3’s night was spent with ZCE studying and Yahoo partying, so here we go.

The day was supposed to start with a Keynote on The Age of Literate Machines, but unfortunately Zak could not make it, and we watched a demonstration by the Magento Team. I t was interesting, but not exactly what the croud was looking for, but hey, the IRC channel is always a cool place o hang out during these talks.

Afterwards I went to Matthew’s talk on Webservices, which was unfortunately marred by notebook problems, but was a very interesting overview of Zend Framework’s pro and cons relating to the various webservices.

For a little break after this i went to a UnCon Session, on Zend_View and Zend_Layout, which was really good and helped Neil get a new view on how we could do ZF integration with Smarty, one of our problems back in the office, also got more feedback from other guys who have been through this.

Along came lunch, another excelent lunch provided by Zend, and afterwards a much awaited Keynote, the State of Ajax with Dion almaer and Ben Galbraith, unfortunately Dion could not be here, but Ben did a wonderful job and painted a cool picture of where the web is going heading, I always have fun at this session.

Next up came Pharscapes by Marcus Boerger, tellling us about .phar, a new extension that will be inplemented in the core, and let’s us do, jar-like files in PHP. The topic is interesting and the presentantion gave a little insight into it, but no wow yet, I’m still not sol on this one yet.

Next up, one of the sessions I was most interested in, Continuos Integretion, by Sebastian Bergmann. This was almost complimentary to the Test Driven Development talk, especially because it refered to the same team, but was a wonderful introduction to the power of PHPUnit + phpUnderControl with CruiseControl in the background, also helped me and Neil get answers to some of our PHPUnit questions and get some notes on recipe’s for the SWAT Team, real good stuff!!

From then I attended a UnCon Discussion Panel on PHP User Groups, hosted by Keith and Ben Ramsey, representing all 19 UG’s in Brazil. This was really good, Zend was present and we should have great news in the next few months.

That wraps up the Con. But after this we had some more exhibit hall swag goodness and Me and Neil got some Mock ZCE Exams done, and headed out to the Yahoo sponsored party!

Power was running low with my sore throat, so i could not blog, but hey.. it worked out.

1 Star2 Stars3 Stars4 Stars5 Stars (Sem votos registrados)
Loading ... Loading ...

No Comments yet »

September 17th 2008

ZendCon ‘08: Day 02

Ok, here we go, end of day 2 and I got a horrible sore throat, and a headache.. but let me try to tell about my day.

First thing, at ZendCon when you pay for your registration, you get your money’s worth.. breakfast, lunch and dinner! Every conference should learn valuable lessons like ZendCon has.

The day kicked off with the Opening Keynote by Harold Goldberg, and I could not get the Steve Jobs at MacWorld image out of my head, but he was talking about PHP! So Zend’s CEO gave a great keynote showing PHP evolution to the Enterprise world, which was last year’s  Call for Action, so hey, hooray for us! So a few stats, clients, smart people dropping java, more jobs, and we started getting the Apple-style surprises like uncle Steve always does it.

First up, new Certifications! You can now be a Zend Framework Certified Engineer!, Second up Zend Studio 6.1 with ajax, dojo integration, eclipse 3.4 and visual query builder, IDE goodness! Third thing, Zend + Adobe! Yay!, here comes AMF support for Zend Framework and Zend Studio, Flex Builder merger!

Closing it up, this year’s Call for Action, let’s evangilize PHP, forget Why PHP, we know that, move on to When PHP? What PHP? How PHP? Where PHP?

After that i moved on to Jay Pipes Join-fu Session for some Karate style SQL queries. It was a cool insider’s view to MySQL’s internal optimizer, and i’ll blog some more about (and all talks) later on, no details today, sorry. But we did get a run down of good practices, tips and tricks and karate join-fu!

After that we were off to a trip in Ning-ville with David Sklar, who gave us an inside look at static and dynamic analysis they do over there. So this was an interesting session where you could learn some cool techniques to get info on your code, first off static analysis, which you do on your source code, with tokenizer, regular expressions and opcode dumping.

Then the Dynamic analysis took us through Xdebug, functions traces, truss and dtrace, checking out what happens when php functions are called, lookig at all the syscalls what happens behind the scenes.

So of to lunch, again given to us by Zend and its sponsors, but first a stop at the Exhibit Hall, where I got stuff from a whole bunch of exhibitors, and i’ll talk more about them later on this week.

After lunch i made a bad call.. and got into a Zend Plataform session that was intended for “decision takers” so I skipped to Elizabeth’s PECL Picks session… unfortunatley she was into speeding and running red lights.. so i just got like, 10 minutes of the session, well.. free tome to check out the exhibitors.

Next up was Robert van der Linde with an awsome PHP Secure Apps Developement Life-Cycle, which gave us some insight into security measures for your apps, and your office. So testing, OWASP, best practices like whitelisting and FI/EO all came up during the talk, and then the real killer app was PHPIDS, a Intrusion Detection System written in PHP and for PHP, must say this was cool, and will definately look into it.

Another break and here we go with Zend Studio Secrets, — ok, skip that one, too many keyboard shortcuts in 1 minute of session, next room, RickRolling with Brian DeShong and WUFRL and associated techs. Intersting stuff, cool video clip, but nothing too new, but cool set of extensions to handle mobile browsers.

And then, finally (i was getting tired you know?) Derick Rethan’s session on Test Driven Development. I was really into this, so this was a reat talk, Derick also does great sessions , so it was best of both worlds. So why TDD? a great bunch of tools, like phpUnderControl, PHPUnit and a inside look into how ezComponents does actual TDD adapted for their reality. A great session, and I say, i’m should really get into TDD, and take the whole team with.

From there.. dinner, well booze, food and shirts! So cool, answer a Zend crossword puzzle, and there you go… cool shirt! That lasted some hours and my throat just could not take anymore, so here i am, blogging and drinking cough syrup.

Time for some shut-eye and Day 3 is upon us.!

1 Star2 Stars3 Stars4 Stars5 Stars (Sem votos registrados)
Loading ... Loading ...

No Comments yet »

September 16th 2008

ZendCon ‘08 – Day One

So its end of Day One here at ZendCon, let’s do a quick re-cap.

So i met up with my co-worker, another SWAT member Neil Broers, and we got going to the conference center across the street. We went through registration, got our cool ZendCon Bags and all the cool papers inside there. It was almost time for our first tutorial, Zend PHP 5 Certification Crash Course, so we headed up to the right room to get our seats.

This crash course was given by Christian Wenz, a german php developer, author of a great many books and a great contributor to the ZCE Exam, so he has really good info on all the details. This is a 18h course given by Zend, but it was compressed into just over 5 hours for the ZendCon atendees. So that cause a little rush in some topics, but overall it was a great talk.

What Wenz did for the session is to just go through all topics showing some of the trick questions we should expect in the exam as well as give us an overall view of the whole exam, and such. This was really great, during the morning we focused on some 4 of the 12 topics, especially the PHP Basics topic, and we could clearly see that the test was all about little missing pieces and details that changes the whole output, which is something i actually don’t like about the certification.

So during the coffee break I got into a quick conversation with Derick Rethans and Neil, and Derick was telling us about working with dBus, so that he could dialup his phone using PHP, yeah, that cool and insane at the same time, but hay… i got PHP to turno on my lights didn’t I?

Lunch was really good, cheers to Cal Evans for the great event organization, we had a choice of Turkey and Rosbeef sandwiches with brownies, ok, I’m off PHP, but hey, it was awesome! After lunch i introduced Neil some PHP celebs and met some of them myself.

We had a chance to meet Matthew Turland, which i had been chatting with already, who is author of Phergie a PHP IRC bot, Davey Shafik co-author of the ZCE Guide and Original creator of Phar, Elizabeth Smith, one of PHP Women’s key figures, Derick Rethans, all around core developer and Xdebug author, Cal Evans, Zend go to guy and indenti.ca’s creator, and Wez Furlong, well you know Wez right? Core developer and all around PHP Celeb. Oh and i also met Lorna Jane from IBuildings, but just briefly.

So we had a great chat before sessions started up again, and it was actually good that at some point we got off PHP and started geek-chatting, that was really fun.

The afternoon was part 2 of the crash course and followed the same line. and afterwards I got a big surprise! I’m the newest ElePHPant Herder in SF. I got my elePHPant plush toy, from … yeah I think I can’t say who gave me it until after the conf.. or he’ll have no life at all. But he knows who he is, THANKS DUDE!

But talking about the session, let me share of the topics we heard there.

Zend PHP 5 Certification Crash Course

Wenz gave us some starting tips, and i wrote down some extra stuff in each section, so let’s get at it.

First of all, you need to have some knowledge of rare attributes and edge cases for the main functions, that helps alot. Your answers should be lowercase with the “()” at the end, well, its just the best policy.

PHP Basics. Watch out for indentation trick questions with HereDoc and always, always pay attention to number representations, like

$x = 013 //this is an OCTAL NUMBER, so 1*8 + 3 = 11 not 13

We chatted quite a bit over string to int, to float and other conversions and we test has a whole bunch of trick questions here. Something else to note is the boolean conversion and the 4 exceptions that result in false (”0″, 0, “” and NULL).

Words like always and never need to be closely looked at and are probably wrong, but this is no just PHP exams, right? We also did some questions on bitwise operators, which you don’t need to be an expert at, but should know about. As well as knowing the on the ASCII Table, that uppercase letters have lower values then lowercase, since that will matter in string comparison questions.

Functions. watch out for argument handling, and writing functions with dynamic parameters, using the get parameter functions, also, and I had never actually realized this, but this code works:

$somevar = "my";
function yell(){
$GLOBALS['somevar'] .= " God!";
}

yell();
echo $somevar;

OOP. Yeah.. not much here… I mean, if you develop PHP in OO you are well versed for this, but do take a look at SPL and its various aspects.

Strings. Functions, functions and functions… check them out, learn about case sensitive and insentive and try to get the names right.

RegExp. Don’t need to be a wiz, but be sure to know the basics and be able to break down the PCRE patterns, and identify them in questions

That’s about it, we had more topics but the follow the same line and I actually didn’t note anything new that i can popup here.

So, here we go, time to sleep and get ready for Day 2, see you all tomorrow.

1 Star2 Stars3 Stars4 Stars5 Stars (Sem votos registrados)
Loading ... Loading ...

No Comments yet »

September 11th 2008

#Zendcon: Start your engines!

Less then 5 days to go to ZendCon.

This year, I’ll be there to check out some of the best PHP Talks out there, from the “bigshots” of PHP. Its the first international conference I’ll be attending, and I’m really looking forward to it.

So of course, if you are going to ZendCon, by now you have already reserved your hotel, bought your plane tickets (if you need them), but what else? Whatelse should you to while the conference doesn’t start? Let me suggest some things:

  1. Make your schedule: The ZendCon site has a neat feature, allowing you to flag the sessions you want to watch. So my suggestion is. go there.. go through all and flag everything you find interesting. Then, on a separate day go back and check which choices clash, or will happen at the same time. Choose between them, or at least reduce your choices, got 3? drop one.. and so on until conference day, when you got a solid list.
  2. Make a list: Not just any list, a people list. A conference usually offers on thing more valuable than any other, networking. So make a list of the people who will be there, who they are, how they contribute to PHP, which sessions they will speak at. When you meet them at the conference, you will be ready to identify and chat with them.
  3. Make business cards! Yeah… they are a must, mine are late, its a shame, let’s hope i have them by flight time.
  4. Join us in #zendcon on irc.freenode.net. Another great thing to do is chat with some of the attendees at the IRC channel, so you can check when everyone is getting there, who’s at you hotel, and just get to know everyone.
  5. Check out the Wiki! The ZendCon Wiki has some interesting pages, put you name on the list of attendees, or check out the meetups list.

That’s a small list of things you should be doing before the Conference. I’m already there, you can find me in IRC or Twitter, just look for rdohms.

See you all at ZendCon.

1 Star2 Stars3 Stars4 Stars5 Stars (Sem votos registrados)
Loading ... Loading ...

2 Comments »