DrupalCon Prague 2013

Pasado, presente y futuro de PHPUnit

Sebastian Bergmann  · 


Extracto de la transcripción automática del vídeo realizada por YouTube.

so hi everyone my name is Cameron and on the track chair for coding and development for Rubicon province my pleasure to introduce one of our featured speakers best in movement who as I'm sure you know is the author of PHP unit has over 12 years of experience

writing in testing PHP code so Sebastian please Thank You Cameron I should probably start with a disclaimer that I have almost no knowledge at all about Drupal yet I have known that it exists for quite some time but I've never actually got my hands on

it which is not that true anymore because while preparing this session today I looked a little bit a trooper late but I get into some specifics there in a bit so usually presentations at conferences start with the or the presenter introducing themselves but

I wanted to do it with a little bit of a twist and wanted to start with you guys so this is you this is a Drupal community a community of at least as far as I could research by googling around the interwebs about 30,000 developers at last count like 29,000

and something people with an account that work on the Drupal core and tens of thousands of add-ons around Drupal that is probably one of the biggest open source projects out there at least as far as a number of developers are concerned and people using a product

and as far as I can tell the external quality of triple is really good it's really easy to get started really easy to download and install and get a good system running and just some configuring and theming and tweaking from there and in most cases you're

all set but if you have to dive deeper and do that's also possible of course now the Drupal community is not alone out there in the world and it's part of a much larger community the PHP community I think there's a session at this Rubicon has the

title from not invented here to proudly found elsewhere and this title really catches what is currently going on in the Drupal world at least as far as I can tell from a real outside perspective what well I don't know a long time ago I first came across

a Drupal and back then I was looking at various frameworks and CMS systems that were written in PHP and we're open source and I wanted to look at the code and learn a bit about code and how PHP is used out there what kind of mistakes developers run into

and that was my first exposure to Drupal and then I didn't look at it for for quite a while and then a while ago I heard that the Drupal community is looking at symfony2 to replace some low-level parts of the soft the software with components that were

invented somewhere else so that is also something that I've seen a lot in both open source systems and especially in commercial systems over the last couple of years when comes to modernizing legacy systems for instance looking at bits and pieces at components

at parts of the software and realizing okay this solves a very specific problem but there's a component out there that almost salsas or most likely exactly solve this problem and that has been developed using state-of-the-art design patterns or best practices

and is well tested and well documented and it's open source so I can just take my code that served its purpose for five years ten years whatever and replace it with something that I don't really have to care about anymore so that is all really a good

way of modernizing a code base and getting into testing so is that set the Drupal world seems to be changing a lot more more symphony influences and other influences from the PHP ecosystem things that have happened in the PHP world and a lot over the last

couple of years are finding their way into the Drupal world so with the adoption of symphony components for instance SD foundation of Drupal 8 Drupal now interoperates with at least one major player in the PHP ecosystem which makes it for both sides are really

interesting drupal developer suddenly have lots of resources available to use in their custom development based on top of triple they can reuse code that has been originally written for symphony for instance and it also works the other way around of course

and there's not just the symphony world out there there's many other communities outside like the zend framework community or a type of Sri community which has their own framework now called throw 3 and lots and lots of libraries that are really interesting

and solving really hard problems in really good ways like doctrine for instance so Who am I why am i standing here at the front at the podium why should you listen to me you probably or maybe don't know who I am so Cameron already introduced me a bit and

well if you download Drupal 8 from get and run its test suite dettol that might be the first time that you read my name I promise you or oh not really a promise I have no idea why I actually put my name in there back when I've wrote the first version of

PHP unit just seemed like a good idea at a time and energy ama and Kent back we're doing exactly the same thing in the very first version of j unit so i thought what the heck why shouldn't i do this when I do this for PHP so this might be for exposure

to my name for a lot of people it is so every time you run your test suite you see my name sorry about that blame me lots and lots of people on the interwebs blame me for my tools telling them that the code is broken by now there's not much that I can

do about that sure it would be a one-line fix to remove that but it's a tradition now for over 12 years now so in his session at drupalcon Portland Anthony Ferrara and already warned him about the next slide he had a photo of me in his slides and talked

a little bit about me and that's him he also talked here yesterday I think and he said that I have done more for PHP quality than any single other person I'm not entirely sure about that but that's me for over a decade now I've been working

on tools that I hope and to some extent believe makes the make the lives of PHP developers easier less painful better I like building tools that help developers make the job easier yeah and for me it was a really slippery slope from starting to use PHP into

working on PHP and tools around it I really like the community and still like the community yes it's sometimes painful to work on the core lots of lots of discussions that can get nasty and painful and tedious at times on the mailing list but at the end

of the day I've got to know a lot of these people personally and in real life most of them are much nicer than they appear in the mailing list so that's what I do for a living from the consulting company but I'm not here to do any marketing just

one sentence maybe every day I try to help PHP developers or developers make better use of the PHP platform make their lives easier for instance by helping them efficiently implement PHP it into their workflow so Anthony also think that I am awesome I don't

know about that but he thinks that I'm awesome because he had an idea that came to him during his session at drupalcon Portland he tweeted about that I picked that up time zone difference about nine hours when I woke up local time Germany in the hotel

really early in the morning because there was a garbage truck outside my window at five m6m in the morning I saw his tweet like the idea and implemented it before breakfast and it's now a feature in PHP LLC one of the tools that I have implemented that

gives a really quick look into the structure and the size and the quality metrics of a php-based project so what Anthony is not saying however is that that I only get to be awesome if I am awesome at all I don't know because the PHP community as a whole

is awesome there's been lots of maturing going on both on the personal level on the PHP level at the s decor and in the many many projects that have been built in PHP and around PHP in the last two decades since PHP came out and yes most of the tools that

deal with quality assurance things in the PHP world have been built either by me or by other guys from Germany and I have no idea why so Anthony's theory was that gems have a thing for quality whatever that might be be that as it may I can only speak for

my personal reason why I started working on tools such as phpunit and I guess you can call that pain driven development I don't know when I started to work with PHP there were no such tools and at that time I was in a really lucky position because i was

attending university in bond and had a professor who sort of was friends with energy ama and came back and had a really early version of j unit and was so excited about that and was immediately teaching that to us showing it to us and said here here this is

really awesome we should all be developing like this and he knew that i was doing lots of things with PHP and he said well now you can come to the java site because you don't have these tools and we do and now you get series and learn a real programming

language or whatever i don't know i said no i like this idea but i want tools like these in PHP because i love to hpl of the community around it and yes we miss these tools but somebody will eventually write them i waited for a couple of months nobody

was writing them so that happened it was not subversion back then at some point the CVS repository that was hosted at CVS at php.net was migrated to subversion and then less than a year after that migrated to get yes it took the PHP community a really long

time to migrate from CVS to subversion only then to realize hey subversion is really painful as well in some ways even more so and then we were really late in the dahp thing gets but eventually we did and at least according to a version control I started working

[ ... ]

Nota: se han omitido las otras 4.822 palabras de la transcripción completa para cumplir con las normas de «uso razonable» de YouTube.