Welcome to this week's Symfony Station Communiqué. It's your weekly review of the most essential news in the Symfony and PHP development communities. Take your time and enjoy the items most valuable for you.
Thanks to Javier Eguiluz and Symfony for sharing our last communiqué in their Week of Symfony.
Please note that links will open in a new browser window. My opinions, if I present any, will be in bold.
As always, we will start with the official news from Symfony.
Highlight -> "This week, the upcoming Symfony 6.1 version added context builders to simplify the creation of serialization contexts. In addition, SymfonyCon announced that it's coming back as a physical conference at Disneyland Paris later this year (November 15-18, 2022)."
A Week of Symfony #788 (31 January - 6 February 2022)
Currently, the Call for Papers for SymfonyWorld Online 2022 Summer Edition and SymfonyCon Disneyland Paris 2022 are both open. You can submit your talk and workshop proposals in English for both conferences. Those for the Summer Edition end on February 14th.
Call for Papers open for SymfonyWorld Online 2022 Summer Edition and SymfonyCon Disneyland Paris 2022
And they announced the first set of speakers and talks for SymfonyCon. (en francais)
First selected talks at SymfonyLive Paris 2022
MIT Tech Review notes “Something has changed for the tech giants. Even as they continue to hold tremendous influence in our daily lives, a growing accountability movement has begun to check their power. Led in large part by tech workers themselves, a movement seeking reform of how these companies do business, treat their employees, and conduct themselves as global citizens has taken on unprecedented momentum, particularly in the past year.”
Why the balance of power in tech is shifting toward workers
I know I just shared one of these last week, but this one has details, statistics, and illustrations.
Laravel vs Symfony: the Key Differences in 2022
Coding CEO writes “People use to say Laravel apps do not scale well, but after working with Laravel for some time are reviewing a lot of projects, I think is not totally Laravel's fault. Indeed, you can do great apps with Laravel the same as with Symfony, but is easier to succeed with Symfony than using Laravel. The problem? Laravel “magic”.”
Why Laravel apps don’t scale well (I)
Martin Schindler says, “During a project cycle, there are always situations that feel like deadlocks or circular dependencies… only seen on an organizational level.” He shares:
Decoupling frontend and backend development — The easy way!
Benjamin Ellis shows us how to generate a nice and human-readable changelog with API Platform (2.6).
Managing a changelog with API Platform & OpenAPI
Zumata has this for us” “As of version 6, the Symfony routing package supports Attributes. If there is one place where metadata is interesting to use, it is routing. In previous versions of PHP, this could be solved using comments (annotations). With attributes, the dependency on doctrine/annotations is not needed anymore.”
Symfony Routing with Attributes
Alen Pokos writes “If you either love AWS services already or are looking for a good option to use with your multiplatform products, AWS Cognito seems to be a good candidate to adopt into your technical stack.”
Fastest Symfony authentication - AWS Cognito integration
Yannic Chenot asks “PHP doesn’t have to be web-only — how about you start creating your own CLI tools?”
How to Build and Distribute Beautiful Command-Line Applications with Symfony, PHP, and Composer
Drupal revealed how they will handle PHP requirements for the upcoming Drupal 10 release.
Drupal 10 PHP requirements will be announced at least five months before Drupal 10.0.0
Devin Katz shares nine tasks awaiting you at the end of a Drupal migration.
9 Tasks at the End of Your Drupal Migration
We shared some Lando items last week and in this article Specbee looks at:
Getting Started with Lando and Drupal 9
Last week I shared a short tutorial from Lindevs. They have many of them. So, instead of selecting one each week, here they all are.
Lindev Symfony Content
In this post, Kinsta looks a WordPress-based WooCommerce and Symfony-based Magento.
Magento vs WooCommerce: Which One Is Better?
Speaking of Symfony-based e-commerce platforms, Aimeos announced “Since 2022.01 beta, the Aimeos core is using Upscheme for updating the database schema and migrating data between new releases. Upscheme is composer package for schema management based on Doctrine DBAL which offers an easy-to-use API. You can also integrate Upscheme it in your own application easily and this article explains the differences and how you can write migrations with only a few lines of code”
Aimeos 2022 news
And contrary to the title, here is a a quick overview of Prestashop.
Ultimate Guide to PrestaShop: Everything You Need To Know!
Suzanne Dergacheva writes “I believe any Drupal developer can use this advice: everyone who contributes to building a website also contributes to UX. When we all incorporate UX design thinking into our work, the quality of our output can only get better.
In this article, we'll discuss the goals of UX design, how users evaluate it, and, specifically, how developers can do their part to build a better user experience.”
Making Better UX Choices: Advice for Drupal Developers
Nathaniel Catchpole discusses long-term Drupal support and how it ties in with Symfony’s release cycle.
Long(er)-Term Support for Drupal 10
Somehow, I missed this one last week from Jolicode.
(Re)discover XPath selectors
We published our second sponsored article on Symfony Station exploring how code-driven monitoring helps you deliver successful Symfony products. Like all our articles it is now available via audio.
How code-driven monitoring helps you deliver successful Symfony products
All sponsored articles are for products we have vetted and stand behind. We either use them or would do so if they were applicable to the Symfony Station site.
Tomas Votruba presents “Software engineering principles, from Robert C. Martin's book Clean Code, adapted for PHP. This is not a style guide. It's a guide to producing readable, reusable, and refactorable software in PHP.
Not every principle herein has to be strictly followed, and even fewer will be universally agreed upon. These are guidelines and nothing more, but they are ones codified over many years of collective experience by the authors of Clean Code.
“Clean Code” concepts adapted for PHP
Backend Developer takes a look at:
SOLID Principles in PHP
Zvonimir Spajic writes “If you follow Michael Feathers’ definition of legacy code (every code not covered with tests) then the first line of business in dealing with some legacy code that needs updating is to put it in a test harness (write a test for it). But this is often easier said than done. It can be surprisingly hard just to instantiate a (legacy) class in a test, due to the way it handles its dependencies.”
Testing Legacy Troubles
The February edition of PHP Architect is out.
Matt Glaman “recently did a deep dive into command authoring with Drush, which is where I discovered two amazing new features: auto-discovery of commands via autoloading and the addition of attributes for defining your commands.
What are attributes? Attributes were added in PHP 8, and the overview on the PHP website is a great resource. So, if you are new to PHP 8 and have been living on PHP 7.4, still, or haven't tried out PHP 8's coolest feature, this blog will be a great introduction!”
Writing Drush commands with PHP attributes
PHP Monitor, the native Mac app for managing PHP, has released version 5.
Dariusz Gafka shows us how to:
Implement an Event Sourcing PHP Application in 15 minutes
William Donizetti writes (in Spanish) “If you deal with databases in your day-to-day life you may have already noticed how data is often exposed, in such a structured and easy-to-exploit way. However, this is not always interesting and through encryption we can minimize some of this data exposure and provide greater security for our applications.”
AES e PHP: criptografia de dados.
Let’s start this section with a good reminder piece.
What is the htaccess file?
Smashing Mag (a fantastic design resource) writes “Statoscope is an instrument that analyses your webpack-bundles. Created by Sergey Melukov, it started out as an experimental version in late 2016, which has now become a full-fledged toolkit for viewing, analyzing, and validating webpack-bundles.”
Statoscope: A Course Of Intensive Therapy For Your Webpack Bundle
Obviously, for Symfony this would be implemented with Turbo, Mercure, and Stimulus. And we are particularly excited about Viewi.
Speaking of the backend, Kinsta notes “Most applications and programs in the modern era need somewhere to store data. For web apps, a database is a crucial cog in the wheel. An open-source database is your best bet for many reasons.”
The Best in Open-Source Database Software: Top 10 Picks
Last week I shared some Web3 content. Here’s some more worth checking out if you haven’t made up your mind.
Fast Company writes “the Web3 wave has a long way to go before proving it can produce technology with the functionality, reliability, security, and scale needed to disrupt the internet we have now. O’Reilly is one of a handful of influencers who have begun to raise doubts about its chances of doing that. After all, he’s seen this movie before—twice.”
Tim O’Reilly helped bring us Web 1.0 and 2.0. Here’s why he’s a Web3 skeptic.
The global managing partner of Flourish Ventures, Tilman Ehrbeck, shares his perspective on a digital future that could expand economic opportunity—if innovators and society can harness its potential.
I’m an advocate for inclusive capitalism. Here’s why I’m intrigued by Web3
The Atlantic writes “Web3 is making some people very rich. It’s making other people very angry.”
The Crypto Backlash Is Booming
Docker says, “They’re excited to announce the release of Docker Desktop 4.5 which includes enhancements we’re excited for you to try out.”
New Docker Menu & Improved Release Highlights with Docker Desktop 4.5
Have you published or seen something related to Symfony or PHP that we missed? If so, please get in touch.
That's it for this week. Thanks for making it to the end of another extended edition. I look forward to sharing next week's Symfony and PHP news with you on Friday.
Please share this post. :) Be sure to join our newsletter list at the bottom of our site’s pages. Joining gets you each week's communiqué in your inbox (a day early). And follow us on Twitter at @symfonfystation.
Do you own or work for an organization that would be interested in our promotion opportunities? If so, please contact us. We’re in our infancy so it’s extra economical. ;)
Happy Coding Symfonistas!