On the Laravel News site, they have a post sharing a video from a presentation by Rasmus Lerdorf (creator of PHP) looking forward at PHP in 2018.

PHP in 2018 is a talk by PHP creator Rasmus Lerdorf, which focuses on new features in PHP 7.2 and 7.3. We have some exciting low-level performance wins coming to PHP 7.3, which should be out late 2018. It’s highly encouraging that PHP’s focus is mainly on performance in the PHP 7.x releases.

For many in the PHP community, 2016 and 2017 was all about getting onto PHP 7. The drastic performance improvements and overall efficiency have resulted in PHP 7 adoption rates well beyond past PHP versions. If you are not on PHP 7 yet, you will learn why you should be, but the talk will focus more on new features in PHP 7.2 and 7.3 along with optimization and static analysis.

In the post, they give a brief summary of the talk and one of their favorite parts ("crappy code runs really really well"). The video of the talk is embedded in the page but you can also watch it on YouTube directly. The slides are here.

For those that weren't able to make it to this year's Laracon US conference (just wrapped up in Louisville, Kentucky) the Laravel News site has you covered. They've posted a wrapup of the event today with a bit of coverage for each day of the event and some overall thoughts and feelings.

Hundreds of developers fought the airline industry to arrive in downtown Louisville for the annual Laravel conference. This year’s event was a sell-out with around 550 developers and had people attending from all over the world. At last count, twenty-four different countries were represented.

The conference location was a mirror of last year and held at the Kentucky Center for the Performing Arts. Even though it was the same location every part of the event was bigger than ever.

The post talks about the variety of speakers at this year's event and the inclusion of a live stream of the sessions being presented. Each session was recorded so getting into the details of each wouldn't be as useful. Instead he goes through each day and talks briefly about what happened, announcements and highlights from certain speakers. The post ends with some links to a few of the slide decks of presentations given at the event (with more to follow I assume).

Yesterday I gave a short talk at GPUG about a topic I've dubbed "metatesting". Borrowing the phrase from a children's card game I wanted to talk about the state of testing and associated tools.

You can watch the presentation through the in-page video player including both the slides and Chris' presentation of them. In it he talks about mature testing tools (and extending them rather than creating new ones), open source projects and their tests or lack thereof, how testing reduces the cost of bugfixing and much more. Check out the full presentation for some great tips and updates on where software (and PHP) testing is today.

Rasmus Lerdorf likes to joke that he’s the most famous programmer from Greenland that we’re likely to meet this month. Truth is, the creator of PHP is one of the great legends of open source. The software he created is one of the most widely used technologies for server-side web programming. We were fortunate to catch up with Rasmus at the WePay office, listen to his talk on the present and future of PHP.

In the software industry, the life expectancy of ideas, methodologies, and technologies, is extremely short. And yet, after ten years, Domain-Driven Design is still growing bigger. [...] In this session, we’ll discuss what DDD is: from design patterns and modelling techniques, to the more philosophical ideas about how we deal with complexity. We explore why it has made such a profound impact, and how to decide whether it’s right for your project. We’ll have lots of room for open discussion, to make sure all your questions are answered.

It was presented at Akamon in Barcelona, Spain and the post includes his full set of slides from Speakerdeck.

On the Facebook HHVM blog today there's a post about the Hack Developer Day they recently held in Menlo Park. The event brought in developers for a day of presentations from the Hack/HHVM engineers.

150+ Members of the PHP and developer community came to Facebook headquarters and joined over 2000 people online for presentations by the engineers of Hack and HHVM. Afterwards we held a five hour hackathon, where the attendees worked with those engineers to write Hack code, either by converting current codebases or writing new code from scratch.

For those that weren't able to attend or are interested in catching up on what was presented, they've posted videos of all of the sessions in a YouTube playlist as well as PDFs of all the slides. If you want the short version of what was presented, there's a quick list in the post or you can read a recap on the Facebook Engineering blog.

On the [php]architect site today, they mention an introduction to PHP to the DCWebWomen group. They've shared the slides as well, and it's a good high level look at the language.

Last night, Sandy and I presented a short introduction to PHP for DCWebWomen. Our presentation covered the growth of the language over the last decade and introduced the audience to basic language concepts like variable types, arrays, and control structures. The audience had excellent questions and feedback throughout the talk. We were pleased to share some of what we’ve learned.

You can find the slides here - Intro to PHP (it's a PDF) and it covers both concepts a beginning developer needs to know and actual code examples of how they work.

William Durand has a new post to his site sharing not only the slides from his recent presentation on SOLID vs STUPID code but the same content written out. It provides a great overview of the two concepts and some examples of what to avoid. There's also a recording of the session you can listen to via the in-page player.

Last week I gave a talk about Object-Oriented Programming at Michelin, the company I am working for. I talked about writing better code, from STUPID to SOLID code! STUPID as well as SOLID are two acronyms, and have been covered quite a lot for a long time. However, these mnemonics are not always well-known, so it is worth spreading the word.

In the following, I will introduce both STUPID and SOLID principles. Keep in mind that these are principles, not laws. However, considering them as laws would be good for those who want to improve themselves.

He starts with the STUPID concepts first - Singleton, Tight Coupling, Untestability, Premature Optimization, Indescriptive Naming and Duplication. He goes through each of these and explains why they're bad things to have in your code. He then gets into the SOLID ideals - Single Responsibility Principle, Open/Closed Principle, Liskov Substitution Principle, Interface Segregation Principle and Dependency Inversion Principle. These are a bit more complex to understand but he does a good job (complete with code snippets) of each. The slides for his presentation are also included but they're just a high level look at the same concepts from the article.

Matthew Weier O'Phinny has a new post to his site today sharing the video and slides from his "Beautiful Code" talk from this year's ZendCon conference.

Unusually for me, I did not speak on a Zend Framework topic, and had only one regular slot (I also co-presented a Design Patterns tutorial with my team). That slot, however, became one of my favorite talks I've delivered: "Designing Beautiful Software". I've given this talk a couple times before, but I completely rewrote it for this conference in order to better convey my core message: beautiful software is maintainable and extensible; writing software is a craft.

If you weren't able to attend this year's ZendCon conference and wanted to see Bradley Holt's talk about entity relationships and document databases, you're in luck - he's posted both the video and slides to his site. Here's his summary of the session:

Unlike relational databases, document databases like CouchDB and MongoDB do not directly support entity relationships. This talk will explore patterns of modeling one-to-many and many-to-many entity relationships in a document database. These patterns include using an embedded JSON array, relating documents using identifiers, using a list of keys, and using relationship documents. This talk will explore how these entity relationship patterns equate to how entities are joined in a relational database. We'll take a look at the relevant differences between document databases and relational databases. For example, document databases do not have tables, each document can have its own schema, there is no built-in concept of relationships between documents, views/indexes are queried directly instead of being used to optimize more generalized queries, a column within a result set can contain a mix of logical data types, and there is typically no support for transactions across document boundaries.