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

Need an Efficient Writing Stack and Workflow for a Tech Newsletter or Blog? Voilà.

A white paragraph.



Symfony Station Logo

symfony logo




Illustration of storage room of a spaceship representative of a writing stack for technical newsletters and blogs.

We’re sure you will notice this piece is different from our usual content. It does not concern Symfony or PHP directly. However, it’s still related. We want to be your best source for news on the two topics. But, for that to happen, people other than us need to produce items worthy of coverage.

Giving Back

Our mission is not only to cover Symfony and PHP. We also serve their respective developer communities. One way to do that is to help more developers write about Symfony and PHP.

If you are reading this article, you are interested in technical topics. You might even publish a newsletter and/or articles covering them. If so, we created this resource for you. If you don’t, we hope you will start soon. It is a way to give back to the community that helped make you successful.

Our site and this article are ways we give back. Our recommendations could apply to any technically-oriented newsletter or blog. But, we’ll focus on our experience with Symfony Station’s efforts. Over the past year, we’ve experimented with a variety of tools. And more importantly, we’ve developed a stack that works.


Consistency is paramount for publishing. Quality writing takes hard work in addition to talent. So, you have to be committed.

It would help if you published weekly or monthly but not randomly. If you aren’t sure about your dedication or have limited time, begin with the monthly route. See if it works for you in the long run. Are you ambitious and passionate about your topic? Is your financial situation secure? Do you have free time? If so, then go for it each week.

Efficient Solutions

The solutions you select for your stack should have desktop and mobile apps. You’ll want to be able to work when inspiration strikes. And to do so from anywhere.

For example, I improved upon the title for this article while at a music festival. And then again when walking my dogter. 🐕

The format we’ll use for the following solutions is:

  • The recommended one(s)
  • Why you should use it/them
  • Other quality options

Curate ideas and items to write about with:


The highest quality of source materials comes from niche newsletters. It makes sense because their publishers are committed and take pride in their efforts. They are more likely to be professionally written and factual as well.

By the way, you can join ours at the bottom of any page on our site.

Screenshot of Medium's homepage.
Medium is the message


We’ve found that Medium is a fantastic source. And it’s perfect for tutorials. Investing in a membership is recommended as you can access everything you want to read. It’s worth the expense to boost your career. Non-members can access a limited number of articles per month.

And as you will see below, it has other advantages.

Invest in a membership here!

Our compensation from your joining via this link helps cover our expenses for producing the articles you enjoy on Medium. is another solid source that concentrates on programming. Like Medium, it too has other uses.


Hashnode is completely focused on developers.


Birdsite is more of a scattershot source. While it’s mainly a cage full of bird shit, you can find quality sources if you try hard enough.


Depending on the /r Reddit can be more civil than Twitter, or much worse. At least it is usually discussions. In our experience, there is not as much article sharing. And that’s what we need for curation.


We joined Mastodon recently and find it more civil and enjoyable. It’s not quite as useful as Twitter for curation. Yet.

It’s also more general-purpose and personal.

If you aren’t familiar with it, you should check it out. It’s a federated platform and has multiple instances. We recommend the PHPC instance. It’s an opportunity to create social media based on your values.


One of the best curation sources for us is Flipboard. The magazine-based platform provides content on a wide range of topics. It’s helpful for more than just curation, as you will see below.

Learn more about Flipboard.


Using sites you admire is a no-brainer. However, it is easier to curate from their newsletters and social media content.

A great one is Symfony Station. 😎

Google Alerts

You should set up Google Alerts for the main keywords of the topics you cover.

Learn how to set up Google Alerts.

Apple, Microsoft, Android News

Every once in a while, you can find valuable items on your devices’ news apps.



Slack may be helpful, depending on your topic. It doesn’t offer much for Symfony curation.

LinkedIn Groups

Ditto the Slack sentence.

Save to:

While curating for your upcoming issues or articles, you need a place to store source material.

Screen shot of Flipboard homepage
Curate with Flipboard


We use Flipboard for several reasons.

  1. Since it’s also a great source, you can kill two fascists with one bullet by creating a magazine and sharing the sources there. You can pull all your items from this central location when you are ready to write.
  2. You have the added advantage of using Flipboard for your branding.
  3. It’s fantastic for the distribution of your final products as well.
  4. You gain followers that can join your newsletter.

Learn more about creating Flipboard Magazines.


You can use Pocket similar to the way you would Flipboard.

Learn more about Pocket.


While the following tools aren’t as efficient, but if you already use them, have at it.

Since it’s part of Google Workplace, Google Sheets is suitable for a low-cost collaboration solution.

You can save items as cards in Trello.

If you are a team or a power user, try Notion. There is more on it below. is another option we’ve explored. Although, it’s a better option for writing books.

Write with:

Screenshot of Notion homepage
Write with Notion


Notion is booming and gets excellent reviews. It is a solid solution if you work in a team. It’s a bit of overkill for us, but we use it for several reasons. It even has a template for blogging.

  1. Blocks

Notion uses blocks, which we like because component-based design is better design.

Thus, it’s easy to copy/paste into other apps that use blocks. For us, that’s Mailchimp and Drupal with Gutenberg. Or it could be WordPress.

2. Export to Markdown

However, we mainly use Notion because it exports to Markdown. We need this format to publish to


A reasonable fallback that lets you collaborate easily with others is Google Docs.


The following two tools will help make your writing professional.


To be taken seriously, your content must be grammatically correct. We recommend using Grammarly. Check it out. The tool is handy if you are writing in a second language.

Plus, it is Ukrainian in origin. If you didn’t know, we support Ukraine.


To make your content readable, use the Hemingway App. Ernest was one of the first writers to recognize that writing simply is writing beautifully. And it’s much more effective.

While you should use these tools, note that it’s essential that you do not follow 100 percent of their recommendations. You still want your writing to reflect your unique voice and personality.

And everything else

The following link isn’t a tool, but it’s valuable writing advice for articles and newsletters.

Publish to:

Screenshot of Drupal homepage
Give Drupal a try


Unless you only want a newsletter, you need a home for your content and promoting your email list.

And it should be one you own. Preferably, you’ll choose an open-source one. So fuck Facebook, WIX, and their ilk.

If you are more of a developer, consider Drupal. It’s based on Symfony now, scalable, and fully customizable. You can use blocks, especially with the Gutenberg module.

<aside>Although, it is an incredible pain in the ass to update. 😕</aside>

For hosting, we recommend, Pantheon, or Acquia.

Here’s why we chose it.


If you are more of a content creator or designer, use WordPress. Its block-based approach is ten times easier to use.

Many people don’t know there are two options for the CMS.

  1. is for those who want to self-host.

And that means paying for hosting from solutions such as Siteground, WPEngine, or Kinsta. It means more admin work but gives you the freedom to do what you want.

2. is for non-technical users who want automated administration after setup. It can even be free.


Medium can function as home to your site if you don’t mind renting and having few customization options. And once you build a large enough audience, you can monetize it.

Again, you can invest in a membership here!

Distribute to:


This is half the topic of this article.

We prefer Mailchimp. It has a great UI and UX. And you own it. It’s also block-based on the design front. You can use the free version or upgrade for more functionality.

Substack is an option if you want to rent rather than own and want fewer administration headaches. It’s also easier to monetize your newsletter if you build a large audience.


If you don’t use Medium for your site, you should cross-post to it. This will increase your reach and drive users to your site and email list. It has a largely technical audience. And blocks paste well into its editor. screenshot

Ditto for the even more technically oriented users of Again, it uses markdown, so it’s not as user-friendly.


The same cross posting strategy works for the developer crowd on Hashnode. It also uses markdown. I told you Notion was useful.


For articles and interviews, audio is a solid option. We recommend Blogcast for creating audio articles and podcasts.

Check out Blogcast.

LinkedIn Articles

We did not get much traction publishing articles on LinkedIn, but it might work for your niche.

Share to:

It would help if you also shared on social. Again, it’s a way to increase your reach and drive traffic to your site. And the same applies to adding subscribers to your list. Plus, sharing is caring, according to some. I guess it depends on where and how you share. And whether you care or are an asshat.


As mentioned above, it’s an excellent place for readers to find content on particular topics. Thus, it’s a great place to share.

Social Media

We have success with Twitter even though it's a crap platform.

Screenshot of Mastodon
You should try Mastodon

As we’ve just started with Mastodon, we’ll see how it goes. Plus, it’s not a dumpster fire.

We did not get much traction with LinkedIn Groups, but it might work for you.

Reddit has a largely technical audience. However, you have to be active on it a while before they let you share links. We were banished right off the bat.

For social sharing on mainstream platforms, you can use tools like Buffer and/or CoSchedule. The smaller platforms may require manual posting.


Slack was not a source of much engagement for us. But, if you use it for other purposes, it can’t hurt sharing on it as well.

Summing it up

Screenshot of WordPress homepage
Meet WordPress

By using the stack of tools we recommend you can increase the efficiency of your newsletter and article writing process. It can save you hours on your time-intensive labor of love. Plus, it allows you to concentrate on the important part, writing.

Some distribution and sharing platforms might be different based on your industry.


  • Find items to cover in/on other newsletters, Flipboard, Medium, and social media
  • Save your items to a Flipboard magazine until you are ready to write
  • Write your content with Notion
  • Publish it to Drupal or WordPress
  • Distribute via your newsletter, Medium,, and/or LinkedIn
  • Share to Flipboard, Slack, and/or social media
  • Repeat daily

So, check the tools out. We hope you will experiment with them and integrate them into your workflow. Doing so will breathe new life into your publishing efforts!

Thanks for reading, and happy writing Symfonistas!

More to explore


Visit our Communiqué Library

You can find a vast array of curated evergreen content.



Reuben Walker photo


Reuben Walker

Symfony Station





Symfony Station Communiqué - 28 January 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. 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 was a very intense week for Symfony: first we introduced the new Symfony 6 certification exam, then we announced a new and better way to start Symfony projects and finally, we updated Symfony Flex to provide fast, smart Flex recipe upgrades which will simplify a lot upgrading to newer Symfony versions."

A Week of Symfony #786 (17-23 January 2022)


Ever wondered which Symfony components make Laravel work?

Here they are.


Featured Item graphic




It’s safe to say almost every one of us uses Composer and owes a debt of thanks to it.

In this article Yanick Witschi says “I’ve been working on making Composer faster and more memory-efficient for years and without this blog post, somehow this journey would not have felt like it was complete.”


The long journey of making PHP’s Composer memory-efficient and fast


This Week


This discovery almost made our Featured Item. I was very excited to find Viewi this week, especially after a frustrating bout with Gatsby.

It’s a powerful tool for creating reactive applications using only PHP and HTML. In essence, it’s a server-side template engine + frontend framework. You describe all components and logic in PHP and then the tool transpiles them into native JS.

The project website details the mechanism of operation and has code examples. And it’s quite fast.

You can also follow a step-by-step tutorial and check out the Symfony integration. Great stuff.


Anka Bajurin Stiskalov writes “You can create console command-line commands using the Symfony Console component. I needed one for a WordPress plugin skeleton to build a WordPress plugin maker for my team.” She shows us how to:

Use Symfony Components to Build a WordPress Plugin Maker for CLI - Part 1


Abid Ahmad writes “Today I’ll explain how I found multiple vulnerabilities on a web application that used the Symfony Web Framework where Symfony profiler/debug mode was enabled.” Tip → only use profiler in dev environments.

How I was able to find multiple vulnerabilities of a Symfony Web Framework web application


Merlin Carter and Zoltan Kincses write “Just over a year ago, we published a tutorial titled “ Serializing data in PHP: A simple primer on the JMS Serializer and FoS Rest”. We heard from a few people who found it helpful, so we decided to publish a follow-up.”

Serializing data in PHP II: A simple primer on database interactions


Yegor Shytikov shows us how to set up Magento eCommerce Multi-Region AWS infrastructure with auto-scaling using AWS Cloud, Terraform, and Terragrunt.

Magento Global Reference Architecture Terraform Infrastructure as Code (IaC) on AWS Cloud


There is lots of Drupal news this week, including its being a digital experience platform rather than just a CMS. In fact, this is one reason we use it for Symfony Station.


We begin with this self-explanatory post.

Drupal 10 was updated to Symfony 5.4 as a stepping stone to Symfony 6


I’ve shared content from Vishwa Chikate before and this is another good one. He says “In this article we will cover how to integrate Drupal 8/9 website with Auth0 Single Sign-On (SSO) platform.”

Integrating Drupal with auth0


Stavros Kounis shows us how to:

Apply Drupal 9 patches with Composer


Webwash notes “The Webform Mailchimp module allows you to send Webform submissions to your Mailchimp list whilst also allowing you to map the Drupal webform fields to MailChimp form fields.”

Send Webform Submissions to Mailchimp in Drupal


Last Week


As mentioned above:

More Than a CMS: Drupal in the Age of Digital Experience Platforms



Inspector logo

Sponsored Article

We published our first sponsored article on Symfony Station exploring how Code Execution Monitoring helps you identify bugs and bottlenecks in your Symfony app before your customers do. Like all our articles it is now available via audio.

Why You Should Use Code Execution Monitoring with Symfony

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.


PHP logo



This Week


Mauro Chojrin reviews modern tools for PHP developers.

Modern Tools for PHP Developers


Alexandre Daubois demystifies one of the most powerful PHP tools you’ll encounter. I learned a lot from this one.

Master PHP Iterators


This is a fantastic article on PHP fibers from Robert Landers.

Thoughts On PHP Fibers


Here’s a yearly review from the team behind FrameworkX and ReactPHP.

2021 – A Year In Review


Anders Björkland writes “Being me, I like to explore new subjects and see how far I can go with my current proficiency. I come from a background where all I've ever done has almost exclusively been "object-oriented", but now being left without Doctrine (a popular PHP ORM) I saw an opportunity to build similar (but way more simplistic) functionality on my own.”

How I stumbled onto the Reflection API


Erik the Coder continues his Modern PHP Crash Course with conditionals, loops, and functions.

PHP crash course : Conditionals, Loops and Functions


Hugo Demont says “During different searches on the internet, I found that little information is on the subject of reading information from a JSON file.”

Data management with JSON files and PHP


Andrew Schmelyun writes "If you've worked in a PHP project, chances are you've dealt with the Composer package manager. As a full-stack developer, I think it's one of the better ones that I use on a regular basis, consistently improving while remaining relatively simple.

One of the more difficult things to do with it though is adding a local package for use in a larger PHP project. Whether you've downloaded a private source, or are developing a package locally, this method will work to get your package into Composer.”

Installing a Local Composer Package in Your PHP Project


This one is self-explanatory.

VSCode PHP Debug Release January 2022


Open Swoole v4.10.0 is a major release with new Coroutine Selector API co::select(), HTTP2 SSE and bug fixes, sleep/usleep data type fixes, and enhancements.

Open Swoole 4.10.0 Released


Jordi Bassaganas notes “Sometimes when working in a team of multiple web developers on a brand-new PHP project, each of them using a different OS, you may come across a problem when running composer install.” He shows us how to fix it.

Installing Multiple Alternative Versions of PHP on Ubuntu


And Anton Röhm shows us how to:

Deploy your PHP Codebase with Ansible and GitHub Actions


This Month


Doctrine ORM released an update.

Doctrine 2.11

Code logo



If you know a plugin developer, give them a shoutout.

Today is Plugin Developers Appreciation Day.


GitHub’s ReadMe project takes a look at:

The good, the bad, and the ugly of making decisions in open-source


Postman says “A well-defined API lifecycle is essential for taking full advantage of operating on an API platform and being able to effectively govern hundreds or thousands of APIs across many different teams. Having a shared understanding of what the API lifecycle is across your org, and possessing a common vocabulary for describing it, will help your teams get on the same page when developing APIs with greater productivity, quality, and governance needed to drive your enterprise into the future.”

The 8-Point API Lifecycle Blueprint


If you would like to review API endpoints, Kinsta has this for you.

What Is an API Endpoint?


Stephen Turner writes “One of the topics users of Docker Desktop often ask us about is file sharing. How do I see my source code inside my container? What’s the difference between a volume and a bind mount? Why is file sharing slower than on Linux, and how can I speed it up? In this blog post, I’ll cover the options you have, some tips and tricks, and finish with a sneak preview of what we’re currently working on.”

File Sharing with Docker Desktop


David Scott notes “Modern applications make extensive use of networks. At build time it’s common to apt-get/dnf/yum/apk install a package from a Linux distribution’s package repository. At runtime an application may wish to connect() to an internal postgres or mysql database to persist some state, while also calling listen() and accept() to expose APIs and UIs over TCP and UDP ports. Meanwhile developers need to be able to work from anywhere, whether in an office or at home or on mobile or on a VPN. Docker Desktop is designed to ensure that networking “just works” for all of these use-cases in all of these scenarios. This post describes the tools and techniques we use to make this happen, starting with everyone’s favorite protocol suite: TCP/IP.”

How Docker Desktop Networking Works Under the Hood


I ran across an interesting tool this week, Spin. they say “Stop wasting time fixing production issues you've already solved. Spin is a bash utility that improves the user experience for teams using Docker. Replicate any environment on any machine, regardless of whether they are running macOS, Windows, or Linux. Centralize your infrastructure from a single configuration file using Docker.”



Git 2.35 was released.

Highlights from Git 2.35


Daniel Diaz tells us “As a web developer, it’s extremely important to know how to use Git for web development properly. We’re not just talking about “git add”, “git commit”, and “git push”. You should know the whole workflow of creating a web project with Git.”

Git for Web Development


We’ll end with a MySQL tip. Joshua Otwell reminds us “If we aren’t mindful, NULLs have the potential to wreck our query results. Learning how to correctly filter for NULL in the WHERE clause using either IS NULL or IS NOT NULL according to the business logic context at hand, is but one part of learning to handle NULLs.”

Transform NULL values with the MySQL COALESCE function


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!


Visit our Communiqué Library

You can find a vast array of curated evergreen content.



Reuben Walker photo


Reuben Walker

Symfony Station





Subscribe to Mailchimp



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