PHP has changed a lot in the last few years. It is a faster and better language. With the improvement of the language, almost all the major frameworks also improved, including Symfony. In this article, I write about the changes and improvements included in Symfony 4. Symfony 4 introduces a much better developer experience with a new way of building web applications. It can be a good fit for small micro-apps or services, but it can also be a good fit for huge monolithic applications.
According to PHP Framework Trends from Packagist, there were over 1,258 million downloads of open-source PHP frameworks in the last 12 months. That’s a huge number! But how many of them are on the latest version? How many of them are stuck on version 0 or 1, that’s not even on Packagist? Also, how many of you have a custom PHP framework that you hate? What if I tell you there is a way you all could use the latest version of your favorite framework and PHP 7.4 by the end of 2019?
The general opinion on legacy code is developers don’t like it. This article presents a few ways to deal with legacy code, so it’s an opportunity rather than a source of dread. I hope you’ll change your point of view after reading it.
In my first year of co-organizing the Chicago PHP User Group, I have learned a lot and met many wonderful people. Combining insights from the community with some of my own, I wanted to pass on some of the things I’ve learned about building and maintaining a thriving technical community. Whether you’re an organizer or attendee, I hope this gives you some insight into what goes on behind the scenes of running a user group.
It seems like programmers love their acronyms almost as much as the military does. When someone is just getting started in programming, they can be bombarded with an endless list of acronyms that people throw out as best practices and things to follow. Too often, this advice comes with little direction on why or what they are. Why should we follow SOLID principles if someone does not tell us what they are?
Despite the promise of a “paperless” office, we still need to create documents that print and render nearly-identically across devices and operating systems. PDFs have filled this niche nicely for end-users, but if you need to generate PDFs with PHP programmatically, the options are overwhelming. How do you choose? In this series, we’ll investigate the solutions at our disposal and the pros and cons of each.
This month we study the Singleton Design Pattern, but with a twist. We start with a correct implementation but get it wrong by refactoring. We’ll examine the PHP generated code, each step of the way, to understand what went wrong. We’ll observe at least two reasons the Singleton Design Pattern is now considered an anti-pattern. We’re preparing to learn useful variations next month by seeing precisely how it works under the hood.
The first step to protecting your system is to understand the actions, behaviors, and motivations of those who would potentially breach and damage that system. Learning to think like an attacker is excellent. Mastering the tools attackers are likely to use on your platform is even better. The question isn’t that they’ll get in, it’s what exactly they’ll do once they’ve breached your system.
In tech, we have a term that I despise. “Soft Skills” refers to skills that aren’t specific to hardware or software; they are skills that involve communication, social situations, and interacting with people. People usually think of soft skills as supplementary to our primary job of writing code. I’ve read and heard a lot of nonsense where they are secondary or complementary skills to the essential knowledge of design patterns or proficiency in unit testing.
PHP was released in the fall of 1994, making 2019 the 25th anniversary of PHP! We’ve certainly come a long way from the early days of the web. I’m not sure how many people reading this were around back then, but I was. Things were not pretty back then.
Leave a comment
Use the form below to leave a comment: