thePHP.cc at IPC:SE 2010

Sebastian Bergmann » 26 May 2010 » in Events » 2 Comments

thePHP.cc - The PHP Consulting Company

thePHP.cc - The PHP Consulting Company will present the following workshops and sessions at this year's International PHP Conference: Spring Edition in Berlin:

Continuous Inspection and Integration of PHP Projects

Sebastian Bergmann, 30.05.2010, 09:15 - 13:00, Room: Salon 4

Continuous Integration with automated code analysis and test execution has seen broad adoption in recent years. The ideas behind this have changed how companies look at Build Management, Release Management, Deployment Automation, and Test Orchestration. This session presents the best practices and available tools that provide an insight into the development progress and code quality.

The Cake is a Lie

Sebastian Bergmann, 31.05.2010, 09:15 - 10:15, Room: Salon 6

Even if you have not played the game "Portal" you might have come across the phrase "The cake is a lie". According to the Urban Dictionary, it roughly translates to "your promised reward is merely a fictitious motivator". Scaffolding, the meta-programming method of building software applications, promises easier development and a faster time-to-market. But the "code generation bliss" can lead to problems later on, for instance with regard to maintainability and scalability. This session takes a sceptical look at frameworks such as CakePHP and Symfony.

Building a PHP Preprocessor with Plain PHP

Arne Blankerts, 31.05.2010, 15:15 - 16:15, Room: Salon 6

Ever wished to have a preprocessor for PHP? Now you can! In this session we will implement a simple yet powerful preprocessor using the streamwrapper technology that works out of the box on any PHP installation. This opens up a whole new world of possibilities like annotation parsing, AOP, or dependency resolution in PHP development - all transparently done in the background.

Continuous Integration and Unit Testing in Agile Environments

Sebastian Bergmann, 01.06.2010, 16:00 - 17:00, Room: Salon 7

As part of the Agile Day, this session will shine a light on the roles that Continuous Integration and Unit Testing play in agile environments.

Diapers: When They Smell, Change Them

Stefan Priebsch, 30.05.2010 - 02.06.2010, Room: $HOME

Stefan Priebsch can not join us this year for the International PHP Conference: Spring Edition in Berlin. Earlier this month he became the proud father of two beautiful twins, Lara and Patrick. We hope that he will be at the International PHP Conference this fall in Mainz.

Arne and I are looking forward to see you in Berlin next week!

Defined tags for this entry: ,

CodeWorks 2009

Sebastian Bergmann » 09 October 2009 » in Events » 0 Comments

I have to agree with Stefan: CodeWorks 2009 was a great experience. Thanks to everyone, especially Arbi, Keith and Matthew who herded the A-Team.

I would especially like to thank everybody who took the time and has provided me with their feedback on my "Quality Assurance in PHP Projects" workshop. Here are some excerpts:

"Was very happy with this workshop. I had been using custom build-once manual evaluation testing scripts in the past, but am convinced PHPUnit is the way to go.

Installed PHPUnit today and will start transitioning my current projects to start using these testing scripts now. [...]

These two tutorial workshops (this and the code review) were much more valuable to me than the several shorter ones from the main conference day."

Errol Sayre
"This was a good one. Good examples and even better talk. Introduction of new tools was perfect. Wanted to leave the conference to go home and start working them into our development cycle."
John Nunez
"In the week or so since I have caught this presentation, I have implemented every tool into the web2project development process, some for ongoing analysis, some for general metrics."
D. Keith Casey, Jr.

Arne, Stefan, and I also got some good feedback for our joint "PHP Code Review" workshop:

"I liked this one a lot. The best part was when they went over peoples code from the audience."
Lee Thornton
"I learned so much out of this session! Wish I could have had a recording of it because I know there was so much more I probably didn't pick up on as well."
Dorea Hardy
"The presentation was great, and I enjoyed the interaction with the group. Being able to review local developers code was also great."
Jake Smith

"I am kind of biased on this one as they reviewed my project, web2project.

This was excellent from top to bottom and a useful outside perspective on how to clean things up and make them better.

To date, I have completely reworked one of the modules based on the feedback and simplified the controllers, made the model better, and even improved the corresponding unit tests."

D. Keith Casey, Jr.
Defined tags for this entry: , , ,

Speaking at Dutch PHP Conference 2009

Sebastian Bergmann » 09 April 2009 » in Events » 3 Comments

I will present the following session at this year's Dutch PHP Conference:

PHP Compiler Internals

In this presentation we introduce a new language construct to demonstrate how one might go about modifying the PHP interpreter. The internals of which follow a pattern common to many language implementations, with lexical analysis, parsing, code generation, and execution phases.

By the end of the presentation, it is hoped the audience will see that contributing to the PHP language core is not necessarily as difficult as it might seem.

The idea for this presentation came to me at last year's Open Source Developers Conference (OSDC) in Sydney where Thomas Lee gave a presentation titled "Python Compiler Internals". In this presentation, Thomas not only explained how Python's compiler works, but also how to extend it.

In my presentation at the Dutch PHP Conference I want to do the same, only for PHP. While Sara's "Extending and Embedding PHP" is the reference work on extending PHP through extensions, it does not cover the PHP interpreter's compiler phase. With this presentation I hope to provide at least a starting point for interested developers that are looking to extend PHP's compiler.

Defined tags for this entry: , , ,

Speaking at php|tek 2009

Sebastian Bergmann » 09 January 2009 » in Events » 0 Comments

I will present a session at the php|tek 2009 conference:

Untestable Code

How do you write untestable code and anger an ancient goddess?

These and other questions will guide us while we discuss testability, an often forgotten attribute of software design and quality.

Starting from untestable code fragments, the audience will learn why the code is untestable and how it can be refactored for testability.

Together with my partners Arne Blankerts and Stefan Priebsch, I will co-present the following workshop:

PHP Code Review

In this workshop, three PHP experts with different software engineering focuses (testing, architecture, and security) will perform an interactive code review together with the audience.

Attendees of this lab will learn how experts look at code what good code and bad code looks like, and how to avoid the most common gotchas. They are invited to bring their own code for an anonymous code review for an increased benefit from the workshop.

See you in Chicago in May!

Defined tags for this entry: ,

Speaking at PHP UK Conference 2009

Sebastian Bergmann » 09 January 2009 » in Events » 0 Comments

I will present a session at the PHP UK Conference 2009:

Of Lambda Functions, Closures and Traits

Lambda Functions and Closures allow the quick definition of throw-away functions (for use with array_map(), for instance) that are not used elsewhere.

Traits reduce some limitations of single inheritance by enabling the reuse method sets freely in several independent classes.

This session introduces the audience to the implementation of lambda functions, closures, and functors (which are new in PHP 5.3) as well as traits (which will be added in PHP 6).

See you in London in February!

Defined tags for this entry: ,