Sorry, you need to enable JavaScript to visit this website.
Skip to main content

Symfony Station Communiqué - 18 March 2022

A white paragraph.

 


 

Symfony Station Logo

symfony logo

 

 


 

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.

This week, we again cover tech aspects of the war crimes going on in Ukraine and how you can help.

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 will be in bold.

 

Symfony

 

As always, we will start with the official news from Symfony.

Highlight -> “This week, Symfony development focused on fixing bugs and finishing new features for the upcoming Symfony 6.1 version. One of those new features is a button to copy requests as cURL commands in the Symfony Profiler. Meanwhile, the SymfonyLive Paris 2022 conference, which will take place in just 4 weeks, announced its complete workshop and talk schedule.

A Week of Symfony #793 (7-13 March 2022) (Symfony Blog)

 

Early bird registration for SymfonyCon Disneyland Paris 2022 ends on March 31st

 

Unsurprisingly after the recent merger they announced:

Symfony in the Cloud: Platform.sh becomes the official Symfony PaaS

 

Fabien Potencier asks “How can you get started with Symfony 6? What are the best resources to learn Symfony? How can I learn about the latest best practices? Those are legitimate questions I get from the community.”

Get started with Symfony 6

 

SymfonyCast has started a new course on Symfony 6!

This week on SymfonyCasts

 

Elise Hamimi reports “As the creator of Symfony, SensioLabs strengthens its relationship with its long-time partner in the US: Unleashed Technologies. This strategic partnership is the result of successful joint projects with Unleashed Technologies. In 2022, SensioLabs and Unleashed Technologies are speeding up to better serve American users of Symfony.

SensioLabs strengthens its partnership with Unleashed Technologies

She also has:

Learn how to migrate to the PHP framework Symfony

 

Featured Item

 

Featured Item Graphic

 

Forbes writes Ukraine’s IT pros are “ fixing internet in bombed-out buildings, finding rogue operators providing Russians with mobile connections and thwarting hackers. The telecom companies of Ukraine and their employees are being hailed as heroes in the war.”

Bombs And Hackers Are Battering Ukraine’s Internet Providers. ‘Hidden Heroes’ Risk Their Lives To Keep Their Country Online

 

If these heroes can do this, we can do more ourselves to stand with Ukraine and protect democratic values.

 

This Week

 

Sergii Demianchuk writes “welcome to the second article devoted to the theme:  “How to work with ElasticSearch using Symfony PHP framework”. Here we will prepare our local environment for further development. As you remember from Part 1 we have to create a web server, microservice application, and Elasticsearch as standalone docker containers.”

Symfony, Elasticsearch, and Docker environment

 

Michał Romańczuk notes “There are many tools for static PHP code analysis, but one of the most popular is PHPStan. It may be due to its ease of use, versatility and the possibility of using many extensions for example to Symfony, Doctrine, Elasticsearch, Monolog, Guzzle, etc.”

Using PHPStan with Symfony - static analysis for better PHP code quality

 

Fabien Lemoine show us “How to combine the power of the Symfony Mailer component with the features offered by an email provider.”

Envoyer des e-mails transactionnels avec un service tiers sous Symfony

 

Mchojrin takes a look at how to handle exceptions in Rest APIs with Symfony. It’s in Spanish.

Cómo manejar las excepciones en API Rest con Symfony

 

Webkul writes “PrestaShop employs various types of cache such as Smarty, assets (CSS/JS), XML cache, etc. It also provides ways to clear individual cache types from our module. So in this blog, we will discuss how we can clear PrestaShop cache in module code.”

Clear PrestaShop Cache in module

They also have:

Custom Events and Event Subscribers in Symfony

 

Sylius notes “Since the very beginning of Sylius’ existence, our philosophy was to focus on our domain and not reinvent the wheel. That’s why Sylius is entirely based on Symfony which gave us a solid foundation to build specific e-commerce bundles within the already existing and highly standardized framework.

Following the very same core idea, Sylius never intended to solve problems of other domains. There are wonderful tools in different categories, which allows us to focus on what we know best – the e-commerce domain.”

Why best-of-breed is the best thing that can happen to your mid-market e-commerce?

I agree that unless you have a small and simple application, best-of-breed is the way to go for your stack.

 

Joseph Ndedde Udonsak writes “Recently, I was working on a feature and needed to generate and mail a PDF document whenever a payment was made. I dispatched a Message and in the message handler, I used the KNP Snappy Bundle to generate a PDF from a twig template. It was pretty straightforward (or so I thought) until I saw the mayhem that had been let loose in my failed transport.

Today I Learned — Twig and Services

He also has:

How to inject multiple instances of an interface in a service

 

The Drop Times has an interview with Drupal’s founder with some interesting takes on headless and low code.

Dries Buytaert: Low Code No Code Adoption Good for Drupal

 

And speaking of headless Drupal here’s an article and a solution taking a look.

Five basic things I’ve learned using GraphQL in Drupal

 

The future of Drupal is headless

Dries disagrees with the headless opinion and so do I. That applies to WordPress as well.

 

Ryan Szrama writes “We've long recommended Swift Mailer for formatting and sending HTML emails from Drupal Commerce. Symfony announced the project's deprecation late last year, recommending folks switch to using the 3-year-old Symfony Mailer instead after they brought it up to full feature parity with the Swift Mailer library.

Fortunately, there's a module for that!”

Replace Swift Mailer with Symfony Mailer for HTML email

 

Timeless

Inspector Logo

Sponsored Article

 

We published our third sponsored article on Symfony Station exploring how to Implement Code Execution Monitoring for your Symfony apps via Inspector. Like all our articles it is now available via audio.

 

How to Implement Code Execution Monitoring for your Symfony apps via Inspector

 

All sponsored articles are for products we have vetted and stand behind. We either use them or would do so if they applied to the Symfony Station site.

PHP logo

PHP

 

This week

 

Dariusz Gafka writes “We often need to schedule the execution of given business functionality in our applications. The timing depends on what we want to achieve. It may be monthly executed invoices or notifications sent after the user was registered on the website. And in this article, we will deep into different ways of scheduling execution in PHP.”

Scheduling Execution in PHP

 

PHPStan asks:

What's Up With @template-covariant?

They also look at:

Generics By Examples

 

Digital Ocean shows us:

How To Use Functions in PHP

 

Gaurav Makhecha says, “Thanks to the PSR-4 autoloading, we can define the namespaces prefix and their corresponding base directories.”

PHP Namespaces are not the same as the Directory Structure

 

Marcin Szydlowski writes “I have recently spotted an interesting vulnerability in a PHP application, which was in the scope of a private bug bounty program. This vulnerability has nothing to do with standard web app issues like SQLi, XSS, or IDOR, hence despite relatively small impact I decided to write about it.”

Insecure comparison in PHP — Business Logic Bypass vulnerability

 

Brent Roose & Freek Van der Herte are starting a series of posts with tips for writing clean PHP. They’re from a course the duo offers.

Code that breathes

 

Joshua Otwell says, “I'm sharing my 5 favorite Programming/Developer newsletters that I think you should read too.”

5 Developer/Programming Newsletters You Should Be Reading

There are good SQL and PHP choices on the list.

 

Meet Simseck states “I’d like to talk about Swoole in this article but it won’t be covering the cumbersome processes such as installing, configuring, using, and so on. I’d like to cover the philosophy behind it. Why do we need it in the PHP world? Which scenarios are the best to use this kind of external package/extension?”

Let’s Tackle PHP Swoole Solemnly

Code Logo

Other

 

Please visit our Support Ukraine page to learn how you can help kick Russia out of Ukraine (eventually).

 

The cyber response to Russia’s War Crimes

 

MarketWatch writes “One reason that some military analysts and Russia experts believe may have contributed to Putin miscalculating his chances of a quick victory, or his ability to outlast the Ukrainians, is that he underestimated the efficacy of Western sanctions in sapping Russia’s power to wage war, specifically by denying it access to critical technologies.”

Putin tried to create a homegrown tech industry. His failure could be key to a Russian defeat, experts say

 

The Hill notes “With the assistance of the West, Ukraine has become more resilient since the initial cyberattacks, especially given that it is uniquely vulnerable to Russian attacks since most of its infrastructure was built by Moscow during the Soviet era.”

US and EU cyber investments in Ukraine pay off amid war

 

Reface, a synthetic media app that’s developed out of Ukraine has added push notifications informing its ~200 million-strong global user-base about Russia’s invasion of the country — urging people to #StandWithUkraine, including by watermarking face-swapped videos created with the app.

Reface, a viral face-swap app from Ukraine adds anti-war push notifications

 

Wired writes, “Within three days of the first missiles falling on Kyiv, Mykhailo Fedorov and his staff launched a public campaign to pressure US tech giants to cut off Russia, began accepting cryptocurrency donations to support Ukraine’s military, secured access to Elon Musk’s Starlink satellite internet service, and began recruiting a volunteer “IT Army” to hack Russian targets. More recent projects include a chatbot for citizens to submit images or videos of Russian troop movements.”

Ukraine’s Digital Ministry Is a Formidable War Machine

 

The Guardian reports “about 300,000 people have signed up to a group on the chat app Telegram called “IT Army of Ukraine”, through which participants are assigned tasks designed to take the fight to Vladimir Putin. In so doing, they are trying to level the playing field between one of the world’s (so-called) superpowers and Ukraine as it faces bombardment and invasion.

‘It’s the right thing to do’: the 300,000 volunteer hackers coming together to fight Russia

 

Anonymous continue their efforts.

Anonymous releases 364,000 files about Russia's censorship of invasion

 

They also hit the German subsidiary of Russian energy giant Rosneft with a cyberattackRosneft withal Office for Information Security (BSI) says.

Hackers target German branch of Russian oil giant Rosneft

 

Fast Company reports on how “A group of techies-turned-hackers called the Cyber Partisans are targeting railways carrying Russian troops and exposing a brutal Belarusian regime.”

How hackers in Belarus are complicating Putin’s Ukraine invasion

 

Rest of World asks:

In Ukraine’s cyber-war with Russia, who is a civilian, and what is a war crime?

 

The Wall Street Journal notes “People around the world are using a new website to circumvent the Kremlin’s propaganda machine by sending individual messages about the war in Ukraine to random people in Russia.”

Using a New Cyber Tool, Westerners Have Been Texting Russians About the War in Ukraine

 

The Guardian also notes “Experts say both sides may understand that large-scale cyber-attacks will result in ‘mutually assured destruction of systems’.”

‘Catastrophic’ cyberwar between Ukraine and Russia hasn’t happened (yet), experts say

 

Cybersecurity

 

I thought this would have been a no-brainer but:

Germany warns against using Kaspersky software citing 'considerable' cyber risk after Russia's invasion

 

VentureBeat reports “Cloudflare unveiled a new tool in its suite of security offerings, the Cloudflare API Gateway, which seeks to simplify the protection of increasingly prevalent application programming interfaces (APIs). The solution also aims to feature a significantly lower price point than many of the other API security products now on the market, which could go a long way toward “democratizing” API security for the market.

Cloudflare aims to boost API security with a new gateway

 

On the Public API Network, Postman gathers some of the best APIs to ramp up productivity including Notion (just released to GA!), Peruse Code, and Machine Learning Tools for Developer Professionals.

Build Software Faster with These Productivity APIs

 

This was from a while back but is worth another look. Via Github:

The Open Source Software Security Summit: securing the world’s code together

 

C.S. Rhymes says, “GitHub offers a dependabot service that can let you know of any potential security issues with your dependencies and automatically create a Pull Request for you. This works great without any configuration if you have a repo that contains npm, composer, or gem dependencies, but you may need additional configuration if your lock files aren’t in the root directory, or in separate directories in the case of a monorepo.”

Using GitHub Dependabot with a Monorepo

 

GitHub also has a video exploring “ some of the shortcomings of legacy application security solutions, and share a developer-first approach that can help your organization overcome challenges with an end-to-end security process and improved collaboration.”

Developer-first security: The next step for AppSec

 

If you are having trouble getting cybersecurity buy-in with your CEO or CFO, share this with them. Plus, it’s a good review for anyone.

Cybersecurity: What Every CEO and CFO Should Know

 

More

 

Core DNA writes “We take a close look at the evolution of the CMS platform, specifically, how the management of content has changed and how platforms have been designed to cater for the changing browsers, new channels, and client needs.”

Custom CMS & Backend Frameworks Be Damned

 

Postman asks us to “Explore the World of APIs. Browse the largest network of APIs, workspaces, and collections by developers across the planet.”

Postman API Network

 

Ben Gurney shares an effective way to approach improving the web accessibility of your apps.

My secret to better web accessibility

 

Chris Saxon notes “We all know that many modern apps rely on REST APIs to talk to other services, especially in the cloud. We all know those APIs usually send and receive data using a recent innovation: JavaScript Object Notation (JSON) documents. And we know there are a lot of methods for storing, managing and sharing these documents in your applications.

What many people don’t know is that the best way to manage JSON is with a seemingly ancient tool: the SQL language. Let’s look at why that is and five examples of how to do it.”

Why (and How) You Should Manage JSON with SQL

 

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. ;)

 

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!

 

 

Visit our Communiqué Library

You can find a vast array of curated evergreen content.

 

Author

Reuben Walker photo

 

Reuben Walker

Founder
Symfony Station

 

 

 


 

Symfony Station Communique - 26 November 2021

A white paragraph.

 


 

Symfony Station Logo

symfony logo

 

 


 

Welcome to this week's Symfony Station Communique. It’s your weekly review of the most valuable and essential news in the Symfony and PHP development communities. This week it’s extensive again, so take your time and enjoy its most valuable items.

 

Thanks to Javier Eguiluz and Symfony for sharing our last communique in their Week of Symfony.

 

*Please note all links will open in a new browser window. My opinions, if I present any, will be in bold.

 

Symfony

 

This week

 

As always, we will start with the official news from Symfony.

 

Highlight -> “This week, Symfony 5.4.0 BETA3 and 6.0.0 BETA3 versions were published so you can test them on your applications before their final release at the end of the month. In addition, the Symfony Core Team added four new members to help grow the Symfony project in the next few years.”

 

A Week of Symfony #777 (15-21 November 2021)

 

Javier continues a series of posts on what’s new in Symfony 5.4.

 

 

Great deals are still available if you are looking for official certification. November 29th is the last day though!

 

Black Friday 2021 Offers from the Symfony Ecosystem

 

Symfony added to the official docs with information on Flex Private Recipe Repositories.

How To Configure and Use Flex Private Recipe Repositories

 

And this one is self-explanatory.

 

Symfony 6.0.0-RC1 released

 


 

Featured Item graphic

Featured Item

We continue to highlight a post of the week.
 

Please let us know what you think about this one.

 

It’s not the most important article of the week considering the news about PHP 8.1 and The PHP Foundation. However, it is the first original content created by Symfony Station so it gets the nod for our Featured Item. ;)

 

Twig - The Ultimate Guide to the Premier PHP Templating Language

 


 

Speaking of Twig, Prince Sinha shows us how to:

3 Ways to Reuse Twig Templates in Symfony

 

Via SymfonyCasts: “We've got some logged in users but we don't want them going anywhere they please around our app. The most precise way to protect your site is by denying access from each Symfony controller and we'll cover about 5 good ways to do that!” 

This week on SymfonyCasts

 

Here’s an interesting case study involving updating both PHP and Symfony.

Why did Alice's Garden need to set up a Business Intelligence tool?

 

Smaine Millani writes: “In this article, I’ll show how you can add validation on a Request content. (It’s more about a way to learn more about Request and event listener than a best practice.)”

What if we define validations rules in the routing configuration

 

Ahmed Khaled Mohamed shows us how to:

Deploy Sylius to Heroku

 

Alexandre Daubois tells you to “Brace yourself: autocompletion on options and arguments is finally here!”

Symfony 6 brings its CLI to the next level

 

Our friends at Jolicode show us how to:

Rate limit your Symfony APIs

 

Maks Rafalko demonstrates how to:

Improve Symfony Tests Performance

 

It seems like there is one of these every week. But, I find something useful in each one so we’re sharing.

Laravel vs Symfony – a comparison of the two most popular PHP frameworks

 

If you discovered this communique and are new to Symfony, this article is a good introduction.

What is PHP Framework Symfony? Explained for executives

 

In French UrbanLinker writes: “In order to help developers and CTOs in their migration to Symfony, SensioLabs has made available a comprehensive migration guide on this subject. From the PHP environment, to the advantages of Symfony via the legacy code, everything is explained to migrate smoothly.”

Migrating your legacy project to Symfony? SensioLabs explains everything

 

Hurray. An article on YAML was published and it’s a comparison with JSON and XML.

YAML Tutorial: Everything You Need to Know in 5 Min

 

Timeless

 

I ran across Akashic Seer’s blog earlier this month, which is loaded with Symfony-related posts. Here are a few more from his archive.

Symfony 5+ how to create a Maker

 

How to quickly create a complete Symfony 5+ app with login and password reset

 

PHP logo

PHP

 

This week
 

The PhpStorm blog made a big announcement you may have seen elsewhere. I made a contribution for #GivingTuesday and encourage you to do likewise.

The New Life of PHP – The PHP Foundation

 

Joe Watkins provides some very interesting details of how the foundation came about and what it requires.

Musings, ninja ones

 

In other big PHP news!

PHP 8.1 is released

 

And here’s the official announcement.

 

Finally, if you want to check it out via video, here’s one from JetBrainsTV.

What’s New in PHP 8.1: Enums, First-Class Callables, Fibers, Readonly Properties, and More

 

Mark Baker notes: “One of the many new features of PHP 8.1 is the ability to declare class constants as final, so that they can no longer be overridden in child classes. The same applies when constants are defined as final in an abstract classes, or interface; they can’t be overridden by classes extending that abstract or implementing that interface. So class and interface constants can now truly become constant.”

Constant Constants. Finally! (On the inconstancy of constants)

 

DerEuroMark wonders “if you use open-source software, you might wonder, why all those changes and why you should migrate up to the next major versions.”

Keeping up with framework upgrade

 

Wouter de Jong writes: “Every now and then, there seems to be a lot of fuss in the PHP community about deprecations. In these discussions, deprecations are often discussed as if they are fatal errors. I think that is very wrong. Let’s reduce our expectations of deprecations. It’ll make everyone’s lives much less stressful.”

Deprecations are not like E_ERROR, E_WARNING, and E_NOTICE

 

I ran across an impressive looking new book on PHP. If you have seen it before, this edition is updated for version 8.1.

Front Line PHP: Building modern applications with PHP 8.1.

 

Front Line PHP also has a PHP Cheat Sheet.

Modern PHP Cheat Sheet: A to-the-point summary of all awesome PHP features

 

We shared several posts from Samuel Fontebasso in the last communique. His series on PHP, Nginx, and Docker continues with this one.

PHP+Nginx with Docker in production - Part 3: Docker Compose for your local environment

 

Bulletproof PHP writes: “Rather than yet another generic overview of the language or a point-by-point refutation of the things people say is wrong with it, what I want this post to be more than anything else is kind of a comprehensive list of ✨good things about PHP.✨ “

Yes, PHP is Worth Learning/Using in $CURRENT_YEAR

 

Along those lines this article from Raft Labs has some great resources for learning PHP.

PHP in 2021? A Big Yes!

 

Behzad Fazelasl says: ”Writing tests is inseparable from programming. If you want to be sure about deploying your code without unexpected failure, writing tests is going to be of assistance. The more tests you write, the more test coverage you get on your code which leads to more confidence.

But there is a big problem. There should be a sort of measurement to make sure enough tests have been written.”

PHPUnit Test Coverage Report

 

Matthew Setter asks why deploy with Docker, especially when there are so many other deployment options?

Deploy PHP Apps with Docker - The Essentials

 

Peter Packet didn’t pick any peppers but he did author this interesting post.

Effectively using Facades and Hexagonal Architecture to separate bounded contexts

 

Here is an article about another PHP Templating language.

EasyTpl — Simple and fast template engine for PHP

 

 

Last Week

 

The Voices of the Elephant podcast spoke with Ben Ramsey, the Release Manager for PHP 8.1.

Interview with Ben Ramsey

Code logo

Other

 

The Guardian asks a simple but extremely important question.

Can big tech ever be reined in?

 

Toptal also has a question. One I’ve asked myself.

Agile, Scrum, and Kanban: What the Heck Do These Words Really Mean?

 

We have shared several posts from Mateusz Cholewka. He continues his series on Docker here.

Read this before you start using the multistage builds for your docker images

 

Here’s a useful tool for anyone who’s making code tutorials.

How to create long screen recordings using OBS Studio

 

Torque Mag has a post on helpful tools as well. Mobile Atom Code and Symfony Station use a variety of these and the list is legit.

28 Best Tools for Freelancers (2021): Keep Your Business on Track

 

I ran across this on freeCodeCamp and although it’s from February it’s a good resource for working with APIs.

API Cheat Sheet – What is an API, How it Works, and How to Choose the Right API Testing Tools

 

We have been sharing Wouter Carabain’s series on using Symfony and React together. Here’s the latest article.

Setting up React Native (Part 5)

 

ReadWrite wants to predict: 

What the Future of Programming Languages Looks Like

 

DeliciousBrains tells us how to:

Create Your Own SSL Certificate Authority for Local HTTPS Development

 

And CSS-Tricks shows us how to:

Create the perfect commit in git

 

Have you published or seen something related to Symfony or PHP that we missed? If so, please contact us.

 

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, so you get each week's communique directly in your inbox (a day early). And follow us on Twitter at @symfonfystation.

 

Happy coding Symfonistas!

 

Visit our Communiqué Library

You can find a vast array of curated evergreen content.

 

Author

Reuben Walker photo

 

Reuben Walker

Founder
Symfony Station

 

 

 


 

Subscribe to SensioLabs

 

 

Follow Symfony Station on Mastodon Mastodon Icon Twitter Twitter Icon Flipboard Flipboard Icon or Our Newsletter Newsletter Icon