A white paragraph.
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.
Again, we cover the tech aspects of the war crimes going on in Ukraine and how you can help.
Take your time and enjoy the items most valuable to 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 will be in bold.
As always, we will start with the official news from Symfony.
Highlight -> “This week, Symfony celebrated the SymfonyLive Paris 2022 conference, one of the first official non-virtual Symfony conferences since the COVID-19 pandemic started. The next opportunity to meet the community in person will be the SymfonyCon Disneyland Paris 2022 conference on November 17-18, 2022. Meanwhile, we started publishing the New in Symfony 6.1 blog posts in preparation for its upcoming release.”
A Week of Symfony #797 (4-10 April 2022)
Javier Eguiluz previews upcoming features of the 6.1 update.
New in Symfony 6.1: Improved ExpressionLanguage Syntax
New in Symfony 6.1: Locale Switcher
This is self-explanatory.
They also announced:
First selected speakers announced at SymfonyWorld Online 2022 Summer Edition
SymfonyCasts continues their free look at Symfony 6 and Easy Admin paid courses.
Platform. sh announced:
Platform.sh Renews Partnership with Adobe to Power the Future of Commerce
Our featured article this week proves we aren’t always serious. But we are usually mad.
Please reply with a link to this article every time you see a “PHP is dying” post from some idiot.
PHP Is Not “Dying” You Clickbait Wankers!
We have a new article here at Symfony Station. Check out:
Exploring the 7 PHP Frameworks using Symfony Components
JoliCode has a review of SymfonyLive Paris 2022.
SymfonyLive Paris 2022 – En chair et en os
Demianchuk Sergii writes, “welcome to the 3rd article devoted to the theme: “How to work with ElasticSearch using Symfony PHP framework”. Previous article (Part 2: Symfony ElasticSearch and docker environment) is located here. Here we will start to investigate the Symfony skeleton project. But at first it would be great to refresh in our mind the architecture scheme from the Part 1: Symfony ElasticSearch.
Symfony ElasticSearch, Front Controller, API documentation
Eelco Verbrugge is back to review.
Prestashop features a key member of their team in this article.
Merchant, freelance developer, and top contributor: Daniel Hlaváček’s experience with the PrestaShop project
Zoya Scoot has this Magento writeup.
Magento Open Source 2.4.4: Release Notes (Everything You Need to Know)
Kévin Dunglas says, “At SymfonyLive Paris, I introduced a new PHP library to build Solid applications: Solid Client PHP. In this presentation, I review the Solid protocol and how it could give back the control of personal data to end-users.”
Building Decentralized Web Apps with Solid and PHP
Matt Glaman advises:
loadByProperties to load Drupal entities
Altudo opines, “The competitive advantage that Drupal has over other Content Management Systems is being an open-source CMS. It is economical to implement, easy to maintain and secure to use. It is a platform that excels in delivering the right content to the right people at the right time.”
Drupal - The Best Open Source CMS With Significant Features
J Rockowitz writes, “Every few years, organizations have to rework their digital strategy starting with establishing a web presence, adopting a CMS, sharing content, building a responsive mobile website, creating personalized user experiences, and authoring voice-friendly content. This list won’t stop there. Headless CMSs are not a trend - they are a major shift in how organizations create and manage their content to make it easier to future-proof an organization's digital strategy for their next digital challenge.”
The future of our Drupal CMS and Schema.org: APIs, UI, and UX
Wooter Carabain helps us write clean code.
Clean code in PHP: 5 tips to help you!
Security Lit Limited notes, “In this blog article we shall be covering vulnerabilities that you could experience while dealing with PHP applications. Some vulnerabilities are particular to PHP, whereas the others are universal.”
Vulnerabilities in PHP Based Applications
Kpicaza writes, “As promised in our previous post about Async PHP, we already have the project running in production for some sections of our applications. The search middleware has good enough performance using Symfony MicroKernel + Road Runner as a server.
This time, we want to explain how to manage a strict development continuous integration pipeline in PHP. That means respecting the best practices and standards of the PHP language.”
Grant Horwood notes, “there's not a tremendous amount of documentation on writing command line scripts in PHP, and if you're looking to build an interactive script that leverages your existing code, the process can be frustrating. This series of posts is designed to cover the basic constructs we will need to write effective interactive scripts in PHP.”
Writing command line scripts in PHP: part 3; interactive input
Doeke Norg says, “Sometimes it can be useful to use a callback function or other
callable to prevent a bunch of code duplication.
Let's say you have an event subscriber that encrypts and decrypts data in the life cycle of an entity. When the entity is stored, some data will be encrypted; and when the entity is loaded, the data will be decrypted.”
Quick tip: Using callbacks to prevent code duplication
genie-oh writes, “in this article, we use Closure (same to Anonymous Function) to reduce the overhead of debug logging with contextual data. Anonymous Function is useful in various cases and languages.”
[PHP] try to reduce overhead of debug logging using Closure(same to anonymous function)
Jordi Bassaganas says:
Lucas Pereyra has:
A quick performance optimization example using PHP generators
He also notes, “A couple of days ago, ... I started to struggle with a docker compose build problem when attempting to install my PHP dependencies using Composer, inside of the Dockerfile’s container building steps (these are the steps executed when you run a dockercompose build).
I decided to share with you this issue and a couple of workarounds you can apply when facing it, with a simple yet practical example.”
Docker Compose, PHP & Composer: the missing “vendors” folder issue
Lena Charles shows us how to:
How to Hire the Best PHP Developers
And Antonello Zanini show us how to build a PHP script to validate and verify emails.
Email Syntax Validation and Existence Verification in PHP
Laravel News shares the details on a newly free PHP book.
BaseCode: A Field Guide to Writing More Readable Code
A new version of the PhpStorm IDE is out.
PHP Sandbox reached their 10,000th user.
Shawn McCool says, “When we create a class, we give it a name. What does this name represent?
Classes are boundaries. On the outside is the rest of the entire world. On the inside is some combination of data and behavior.
What goes inside a class and what stays outside? In order to determine what is contained within a class, we reference its design paradigm.”
Adding Real Capabilities To Systems Through Naming
PHP Delusions writes, “During a decade of active participation on Stack Overflow I was able to determine a set of reasons that lead to the most frequent questions on Q&A sites. It turned out that most questions are caused by not following a rather limited set of basic principles.
These principles, although being universal, are almost as universally ignored or even violated in virtually every PHP tutorial out there. And I would say it's one of the biggest problems of PHP community.”
The most important basic principles of web programming
Please visit our Support Ukraine page to learn how you can help kick Russia out of Ukraine (eventually).
The Atlantic opines, “Americans need to cure what ails our democracy, ridding ourselves of our incipient Russification. ... I worry that we’ll soon forget about Ukraine. It’s far away, and Americans have famously short attention spans.”
I Worry We’ll Soon Forget About Ukraine
We sure as fuck won’t forget Ukraine.
The cyber response to Russia’s War Crimes
How Russia's Invasion Triggered a US Crackdown on Its Hackers
They also have:
Russia Is Leaking Data Like a Sieve
Microsoft seizes domains used by Russian spies to target Ukraine
Bleeping Computer writes, “A hacking group used the Conti's leaked ransomware source code to create their own ransomware to use in cyberattacks against Russian organizations.
While it is common to hear of ransomware attacks targeting companies and encrypting data, we rarely hear about Russian organizations getting attacked similarly.
Hackers use Conti's leaked ransomware to attack Russian companies
The Evil Empire Strikes Back
MIT Technology Review reports:
Russian hackers tried to bring down Ukraine’s power grid to help the invasion
TechCrunch also reports that “U.S. government agencies are warning that state-backed hackers have developed custom malware that enables them to compromise and hijack commonly used industrial control system (ICS) devices.”
US warns of state-backed malware designed to hijack critical infrastructure systems
TechCrunch also says:
This should apply to any democracy.
ZD Net reports that “Microsoft takes control of ZLoader's botnet infrastructure, which is used to spread malware and ransomware.”
Microsoft: We've just disrupted this ransomware-spreading botnet
Did you know if you’re a paid member of Medium you have access to these resources?
Directory of Books from The Pragmatic Programmers on Medium
Khalil Stemmler asks:
Laravel News reports on a:
Style Guide Generator for Tailwind CSS
ZDNet also writes:
Sorry, developers: Microsoft's new tool fixes the bugs in software code written by AI
And to the applause of JS Geeks everywhere,
Microsoft launches TypeScript 4.7 Beta
Kinsta asks and answers:
Joshua Otwell has this helpful article.
Multi-level Aggregation Using MySQL GROUP BY WITH ROLLUP
That's it for this week. Thanks for making it to the end of another edition. I look forward to sharing next week's Symfony and PHP news with you on Friday.
Please share this post. :) Also, 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. ;)
More importantly, if you are a Ukrainian company with coding-related products, we can provide you with free promotion on our Support Ukraine page. Or if you know of one, get in touch.
Keep going Symfonistas!
You can find a vast array of curated evergreen content.