Symfony Station Communiqué — 03 February 2023. A look at Symfony, Drupal, PHP, and Cybersecurity News!
Tags: symfony, php, drupal, cybersecurity
Published: 2023-02-06 00:26:11

This communiqué [originally appeared on Symfony Station](https://www.symfonystation.com/Symfony-Station-Communique-03-February-2023), your source for cutting-edge Symfony, PHP, and Cybersecurity news.

Welcome to this week's Symfony Station Communiqué. It's your review of the essential news in the Symfony and PHP development communities. We also cover the cybersecurity world and other programming items. 

Please take your time and enjoy the items most relevant and valuable to you. While we have not expanded our curation, we have added a few sub-categories to improve scanability.

As always, thanks to Javier Eguiluz and Symfony for sharing [our latest communiqué](https://www.symfonystation.com/Symfony-Station-Communique-27-January-2023) in their [Week of Symfony](https://symfony.com/blog/a-week-of-symfony-839-23-29-january-2023).

**My opinions will be in bold.**

---

Many of the items we curate are on Medium. I recommend investing in a membership, as you can access everything you want to read. It’s a small investment in boosting your career. As you may have noticed, non-members can only access a limited number of articles per month.

**[Become a member here](https://medium.com/@mobileatom/membership)**! The compensation we receive from your use of this link helps pay for our weekly communiqué.

---

![Symfony logo](https://www.symfonystation.com/sites/default/files/inline-images/Symfony-2.png)

## Symfony

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

Highlight -> “This week, Symfony 5.4.19, 6.0.19, 6.1.11, and 6.2.5 maintenance versions were released. The 6.0 and 6.1 branches will no longer receive any updates, so consider updating your projects to Symfony 6.2. Meanwhile, the upcoming Symfony 6.3 version marked DSNs as sensitive parameters and removed them from exception messages, added support for Redis Relay in cache, and updated the VarDumper component to display all invisible characters.“

[A Week of Symfony #839 (23-29 January 2023)](https://symfony.com/blog/a-week-of-symfony-839-23-29-january-2023?utm_source=Symfony+Blog+Feed&utm_medium=feed)

Symfony announced:

[SymfonyLive Paris 2023 - Getting ready for Symfony certification - and beyond](https://symfony.com/blog/symfonylive-paris-2023-getting-ready-for-symfony-certification-and-beyond)

[SymfonyLive Paris 2023 - Announcement of all pre-conference workshops](https://symfony.com/blog/symfonylive-paris-2023-announcement-of-all-pre-conference-workshops?utm_source=Symfony+Blog+Feed&utm_medium=feed)

[SymfonyLive Paris 2023 - From social to tech - a plea for atypical profiles](https://symfony.com/blog/symfonylive-paris-2023-from-social-to-tech-a-plea-for-atypical-profiles)

[SymfonyLive Paris 2023 - Welcome to the wonderful world of distributed systems!](https://symfony.com/blog/symfonylive-paris-2023-welcome-to-the-wonderful-world-of-distributed-systems)

[SymfonyLive Paris 2023 - Announcement of all pre-conference workshops](https://symfony.com/blog/symfonylive-paris-2023-announcement-of-all-pre-conference-workshops)

[SymfonyLive Paris 2023 - Generics (in PHP)](https://symfony.com/blog/symfonylive-paris-2023-generics-in-php)

[SymfonyLive Paris 2023 - Reinventing the Symfony Console component](https://symfony.com/blog/symfonylive-paris-2023-reinventing-the-symfony-console-component)

[Sponsoring Program - Symfony 6.2 backers](https://symfony.com/blog/sponsoring-program-symfony-6-2-backers?utm_source=Symfony+Blog+Feed&utm_medium=feed)

[SymfonyLive Paris 2023 - Designing your API for the future](https://symfony.com/blog/symfonylive-paris-2023-designing-your-api-for-the-future?utm_source=Symfony+Blog+Feed&utm_medium=feed)

[SymfonyLive Paris 2023 - Once upon a time, the Workflow component](https://symfony.com/blog/symfonylive-paris-2023-once-upon-a-time-the-workflow-component?utm_source=Symfony+Blog+Feed&utm_medium=feed)

SymfonyCasts continued its course on the utterly excellent API Platform:

[This week on SymfonyCasts](https://5hy9x.r.ag.d.sendibm3.com/mk/mr/LRDmCKmMNSplbbstnjTGy1NVjF4fJP8_Q6Ktif-4VtVYhz9sRbH5RLTI3L0JQMdaiu8urQybO6csX-qpNqIOJAUJF3_6PFrIM8YY9Ai9whTFcGEVzPmCwuMpphIJpLTucI95AAkAA6w)

---

## Featured Item

![Featured image graphic](https://symfonystation.com/sites/default/files/inline-images/Featured-Item_1_0.png)

The Transnational Institute has an incredibly important interview with Cory Doctorow that's very relevant to us in the open-source community. It's also long, so here is a summary of its many points:

“So, our project needs to be not to snuff out technology but to figure out how to seize the means of computation, how to build a technological substrate that is responsive to people, that enables us to coordinate our will and our effort and our ethics to build a world that we want – including one with less carbon, and with less injustice, more labor rights and so on.”

### ****[Seizing the means of computation – how popular movements can topple Big Tech monopolies](https://www.tni.org/en/article/seizing-the-means-of-computation)****

---

### This Week

Mislav Jantoljak shares:

[Netgen Talk: Why We Love PHP for Building Next-Generation Websites](https://netgen.io/blog/netgen-talk-why-we-love-php-for-building-next-gen-websites)

**I am starting the SymfonyCast NetGen Layouts course, so I was happy to run across this.**

Although it’s an obvious point, Ozan says that a framework isn’t perfect for every project:

[Symfony is not the best framework.](https://akman.hashnode.dev/symfony-is-not-the-best-framework)

Nacho Colomina Torregrosa explores:

[Accessing Symfony security user on the background](https://dev.to/icolomina/accessing-symfony-security-user-on-the-background-2l92)

### eCommerce

Prestashop announces:

[PrestaShop 8.1 is now in feature freeze](https://build.prestashop-project.org/news/2023/prestashop-8-1-feature-freeze/)

Henguelbert Loyo shows us:

[How to Create a Magento 2 Admin Config & Access to it](https://medium.com/@henguel19/how-to-create-a-magento-2-admin-config-access-to-it-b9383ccf7a0b)

### CMSs

Drupal Partners asks:

[What is the future scope of Drupal as a CMS technology in 2023 and beyond?](https://www.drupalpartners.com/blog/what-future-scope-drupal-cms-technology-2023-and-beyond)

In addition to a look at the future, this is mostly a history of Drupal with some interesting graphs.

Agaric Coop shows us:

[How to filter a view by content that references the current node in modern Drupal](https://agaric.coop/blog/how-filter-view-content-references-current-node-modern-drupal)

Matt Glaman looks at the following:

[The trinary states of Drupal access control: allowed, forbidden, neutral.](https://mglaman.dev/blog/trinary-states-drupal-access-control-allowed-forbidden-neutral)

!#Code explores:

[Drupal 10: Programmatically Injecting Context Into Blocks](https://www.hashbangcode.com/article/drupal-10-programatically-injecting-context-blocks)

The Drop Times reports:

[Drupal Best Integrates WebGIS into a CMS](https://www.thedroptimes.com/27895/drupal-best-integrates-webgis-cms-italo-mairo)

Martin Ricken shows us:

[How to create a Views bulk operation](https://medium.com/@lorique/how-to-create-a-views-bulk-operation-db4a9c3f8d5f)

And the Aten Design Group shows us the following:

[How to Use Cypress for Testing Drupal](https://atendesigngroup.com/articles/how-use-cypress-testing-drupal)

Mike Herchel shares a case study.

[Best Lawn Care Website on the Internet (built with Drupal)](https://herchel.com/articles/best-lawn-care-website-internet-built-drupal)

**I love case studies. Especially from Titans of Drupal like Mike.**

Evolving Web shows us how to:

[How To Install Drupal WxT 4 for Canadian Government Websites](https://evolvingweb.com/blog/how-install-drupal-wxt-4-canadian-government-websites)

**I am going to check the theme out.**

### Platforms

WP Tavern takes:

[A Look Under the Hood at Engine Awesome, a Laravel-based SaaS App Using Gutenberg](https://wptavern.com/a-look-under-the-hood-at-engine-awesome-a-laravel-based-saas-app-using-gutenberg)

### Previous Weeks

CivicUK shows us how to:

[Build a grid section creating a new Drupal Media type](https://www.civicuk.com/blog-item/build-grid-section-creating-new-drupal-media-type)

Nick Schäferhoff shares the:

[8 Best Gutenberg Blocks (And How to Use Them)](https://torquemag.io/2023/01/best-wordpress-gutenberg-blocks/)

Kinsta shows us:

[How To Add Meta Boxes and Custom Fields To Posts in Gutenberg](https://kinsta.com/blog/wordpress-add-meta-box-to-post/)

Colorfield examines:

[The state of GraphQL with Drupal 10 (part 1)](https://colorfield.be/blog/state-of-graphql-with-drupal-10)

Sabatino Masala looks at:

[Implementing an aggressive Redis caching strategy](https://www.sabatino.dev/implementing-an-aggressive-redis-caching-strategy/)

![PHP logo](https://symfonystation.com/sites/default/files/inline-images/php-logo_4.png)

## PHP

### This Week

Ollie recommends:

[Start Programming in PHP OOP Now to Harness its Power](https://medium.com/@ohermans1/start-programming-in-php-oop-now-to-harness-its-power-c9655f78ceb9)

Andrei Birta explores:

[Understanding the Single Responsibility Principle](https://medium.com/@andreibirta95/understanding-the-single-responsibility-principle-2cd01ee2e8ce)

[Functional Flexibility with PHP Callbacks](https://medium.com/@andreibirta95/functional-flexibility-with-php-callbacks-d22abb01755)

JetBrains announces:

[PhpStorm 2022.3.2 is now available](https://blog.jetbrains.com/phpstorm/2023/01/phpstorm-2022-3-2-is-now-available/)

The PHP Foundation has:

[PHP Core Roundup #9](https://opencollective.com/phpfoundation/updates/php-core-roundup-9)

Stitcher shares:

[My top-10 favorite functions in PHP](https://stitcher.io/blog/my-10-favourite-php-functions)

Matus Stafura looks at:

[PHP Array Reduce function](https://dev.to/matusstafura/php-array-reduce-function-47om)

php[architect] explores:

[Creating a PHP Library With Packagist](https://www.phparch.com/2023/02/creating-a-php-library-with-packagist/)

Geni Jaho examines:

[Development Driven Testing](https://blog.genijaho.dev/development-driven-testing)

Marcus Brune asks:

[What are TDD and BDD, and why do we need to know about them?](https://medium.com/@marcusssbrune/what-is-tdd-and-bdd-and-why-need-know-about-it-7dcb436b887)

William P continues his testing series:

[30 Days of Automated Testing：Using PHPUnit【D14】](https://medium.com/@woeichern/30-days-of-automated-testing-using-phpunit-d14-5a6e71d2feff)

[30 Days of Automated Testing：Using PHPUnit【D15】](https://medium.com/@woeichern/30-days-of-automated-testing-using-phpunit-d15-e545c4f1d42d)

Claudio Ribeiro has the a:

[Quick Tip: How to Manage Timezones in PHP](https://www.sitepoint.com/php-manage-timezones/?utm_source=rss)

Nikola Stojiljkovic explores:

[Mock nested PHP default functions in PHPUnit tests](https://dev.to/nikolastojilj12/mock-nested-php-default-functions-in-phpunit-tests-5c9k)

[[PHP Guidelines series] Final classes as a warning sign](https://nikola-stojiljkovic.medium.com/php-guidelines-series-final-classes-as-a-warning-sign-e1c4f041e91c)

Nacho Colomina Torregrosa looks at:

[Using PHP attributes easily](https://dev.to/icolomina/using-php-attributes-easily-2fpo)

David Senate examines:

[CSRF Prevention for PHP and jQuery](https://blog.mailixa.io/strong-cross-site-request-forgery-prevention-csrf-for-php-and-jquery)

Tomas Votruba says:

[Good Bye, Monorepo](https://tomasvotruba.com/blog/good-bye-monorepo/)

**I will agree with him but only for 5-10% of the websites on the internet. It's overkill for the other 90%.**

Ayesh Karunaratne shares:

[How to extend lifetime of legacy PHP applications](https://php.watch/articles/extend-lifetime-legacy-php)

Mahdad Kiyani has some:

[Some Tips for Optimizing PHP Code to Improve Performance](https://mahdad84.medium.com/some-tips-for-optimizing-php-code-to-improve-performance-by-mahdad-kiyani-dcdfa04dd189)

Michael Etokakpan demonstrates:

[Configuring PHP for debugging using Xdebug and VScode](https://blog.michaeltech.xyz/configuring-php-for-debugging-using-xdebug-and-vscode)

Mr. Tuto asks:

[Comment installer plusieurs version de PHP avec Homebrew ?](https://zonetuto.fr/php/comment-installer-plusieurs-ancienne-version-php-sur-macos-homebrew/)

### Previous Weeks

Ramiz Kongulov explores:

[Mastering the Strategy Design Pattern in PHP](https://kongulov.dev/blog/mastering-the-strategy-design-pattern-in-php)

Viktor Progger shares:

[An example of setting up xDebug in Docker](https://viktorprogger.name/posts/xdebug-docker-config-example.html)

Mitul Patel lists:

[11 Horrible Mistakes You’re Making With PHP Website Development](https://medium.com/@digital_39945/11-horrible-mistakes-youre-making-with-php-website-development-4bd7b1dc7717)

![Code logo](https://symfonystation.com/sites/default/files/inline-images/code-logo_3.jpeg)

## Other

[Please visit our Support Ukraine page](https://www.symfonystation.com/Support-Ukraine) to learn how you can help kick Russia out of Ukraine (eventually).

### The cyber response to Russia’s War Crimes and other douchebaggery

The Hill reports:

[Russia-Ukraine war has improved US cyber cooperation, says key official](https://thehill.com/policy/cybersecurity/3841444-russia-ukraine-war-has-improved-us-cyber-cooperation-says-key-official/)

The Register reports:

[Uncle Sam slaps $10m bounty on Hive while Russia ban-hammers FBI, CIA](https://www.theregister.com/2023/01/27/10m_hive_reward_russia/)

The Lawfare blog reports:

[Project Texas: The Details of TikTok’s Plan to Remain Operational in the United States](https://www.lawfareblog.com/project-texas-details-tiktoks-plan-remain-operational-united-states)

The Markup reports:

[Members of Congress Call for IRS to Investigate Tax Companies Sharing Data with Facebook](https://themarkup.org/pixel-hunt/2023/02/02/members-of-congress-call-for-irs-to-investigate-tax-companies-sharing-data-with-facebook)

### The Evil Empire Strikes Back

The New York Times reports:

[Bias Played Part in F.B.I.’s Jan. 6 Failure, Documents Suggest](https://www.nytimes.com/2023/02/01/us/politics/trump-jan-6-fbi.html)

**This is no surprise as the FBI has been more of a threat to democracy than a help from day one.**

Delaware Online reports:

[ChristianaCare website down, as pro-Russia 'hacktivist' group takes credit on social media](https://www.delawareonline.com/story/news/2023/01/31/christianacare-website-down-pro-russian-cyber-attack-killnet-virus-hack/69860474007/)

The Hacker News reports:

[Ukraine Hit with New Golang-based 'SwiftSlicer' Wiper Malware in Latest Cyber Attack](https://thehackernews.com/2023/01/ukraine-hit-with-new-golang-based.html)

[New Russian-Backed Gamaredon's Spyware Variants Targeting Ukrainian Authorities](https://thehackernews.com/2023/02/new-russian-backed-gamaredons-spyware.html)

[North Korean Hackers Exploit Unpatched Zimbra Devices in 'No Pineapple' Campaign](https://thehackernews.com/2023/02/north-korean-hackers-exploit-unpatched.html)

Microsoft reports:

[Iran responsible for Charlie Hebdo attacks](https://blogs.microsoft.com/on-the-issues/2023/02/03/dtac-charlie-hebdo-hack-iran-neptunium/)

PC Gamer reports:

[Belarusian KGB adds World of Tanks stand udio boss to terrorist list](https://www.pcgamer.com/belarusian-kgb-adds-world-of-tanks-studio-boss-to-terrorist-list/)

**Fortunately, the company had enough sense to leave Putin’s puppet state when the war crimes kicked off in Ukraine.**

Cyberscoop reports:

[Chinese influence operations may lack critical element: influence](https://cyberscoop.com/chinese-influence-operations-dragonbridge/)

**How surprising, authoritarian states are incompetent at everything except oppression and cybercrime.**

### Cybersecurity/Privacy

The Markup reports:

[The FTC Is Taking on Telehealth’s Data Sharing Problem—Starting with GoodRx](https://themarkup.org/pixel-hunt/2023/02/01/the-ftc-is-taking-on-telehealths-data-sharing-problem-starting-with-goodrx)

CSO Online reports on:

[How passkeys are changing authentication](https://www.csoonline.com/article/3685933/how-passkeys-are-changing-authentication.html)

Decipher reports:

[GitHub Says Attacker Stole Encrypted Code-Signing Certificates for Desktop, Atom](https://apple.news/Af7kQ1e8UQu6qr8NlEbWNRQ)

Cyberscoop asks:

[Reality check: Is ChatGPT really the next big cybersecurity threat?](https://cyberscoop.com/chatgpt-malware-openai/)

And reports:

[Cybercrime groups offer six-figure salaries, bonuses, paid time off to attract talent on the dark web](https://cyberscoop.com/cybercrime-groups-jobs-talent-dark-web/)

The Hacker News reports:

[Experts Uncover the Identity of Mastermind Behind Golden Chickens Malware Service](https://thehackernews.com/2023/01/experts-uncover-identity-of-mastermind.html)

[New Threat: Stealthy HeadCrab Malware Compromised Over 1,200 Redis Servers](https://thehackernews.com/2023/02/new-threat-stealthy-headcrab-malware.html)

[Atlassian's Jira Software Found Vulnerable to Critical Authentication Vulnerability](https://thehackernews.com/2023/02/atlassians-jira-software-found.html)

In great news for SEO practitioners everywhere, Ars Technica reports:

[Massive Yandex code leak reveals Russian search engine’s ranking factors](https://arstechnica.com/information-technology/2023/01/massive-yandex-code-leak-reveals-russian-search-engines-ranking-factors/)

## More

MIT announces:

[World Wide Web Consortium is now a public-interest nonprofit organization](https://news.mit.edu/2023/world-wide-web-consortium-is-now-public-interest-nonprofit-organization-0202)

The Harvard business review looks at:

[Cultivating the Four Kinds of Creativity](https://hbr.org/2023/01/cultivating-the-four-kinds-of-creativity)

**I am definitely in the *figure-ground reversal* camp.**

The Los Angeles Times opines:

[The real aim of big tech’s layoffs: bringing workers to heel](https://www.latimes.com/business/technology/story/2023-01-30/column-how-big-tech-is-using-mass-layoffs-to-bring-workers-to-heel)

**Unfortunately, it’s the goddamned truth and not an opinion.**

Isaac Lyman asks:

[Is software getting worse?](https://stackoverflow.blog/2023/01/30/is-software-getting-worse/)

**Yes.**

TechCrunch reports:

[Big changes coming for GDPR enforcement on Big Tech in Europe?](https://techcrunch.com/2023/01/31/gdpr-enforcement-reform-dpa-oversight/)

**Better late than never.**

The Verge reports:

[White House goes after app store ‘gatekeepers’ Apple and Google](https://www.theverge.com/2023/2/1/23581527/apple-google-app-store-white-house-epic-games-fortnite)

**Unfortunately, this is about ten years overdue and likely to result in nothing.**

Mozilla looks at the efforts for browser interoperability:

[Interop 2022: Outcomes](https://hacks.mozilla.org/2023/01/interop-2022-outcomes/)

Addy Osmani shares:

[Debugging Tactics](https://addyosmani.com/blog/debugging-tactics/)

Norio Okawa looks at:

[The 4 Essential Skills of the Software Developers](https://dev.to/noriookawa/the-4-essential-skills-of-the-software-developers-43p3)

Ahmad Shadeed provides an excellent:

[Guide To Responsive Design In 2023 and Beyond -](https://ishadeed.com/article/responsive-design/) 

My kindred spirtit, Jason Knight explores:

[Understanding CSS Position: Sticky](https://medium.com/codex/understanding-css-position-sticky-6d2b24c0af87)

[HTML Empty / Void / “Self Closing” Tags. We’re All Idiots.](https://medium.com/codex/html-empty-void-self-closing-tags-were-all-idiots-b859d8508d47)

Noble Okafor shows us:

[How to Use CSS Variables Like a Pro](https://www.makeuseof.com/css-variables-how-use-pro/)

Chris Coyier says that, like ReactJS:

[Hex Colors Aren't Great At Anything Except Being Popular](https://chriscoyier.net/2023/02/01/hex-colors-arent-great-at-anything-except-being-popular/)

Shinichi Okada shares:

[Two Easy Ways to Put a Svelte Project on GitHub Pages](https://medium.com/mkdir-awesome/two-easy-ways-to-publish-your-svelte-project-on-github-pages-c8eaca2b6225)

### The Fediverse

Glenn Fleishman asks:

[Is Your Future Distributed? Welcome to the Fediverse!](https://tidbits.com/2023/01/27/is-your-future-distributed-welcome-to-the-fediverse/)

Hilda Bastian examines:

[Social Media Regeneration and Divisiveness](https://hildabastian.substack.com/p/social-media-regeneration-and-divisiveness)

Kev Quirk explores:

[An Algorithm vs. Time](https://kevquirk.com/algorithm-vs-time/)

Buffer announces:

[Make Your Mark in the Fediverse with Buffer’s Mastodon Scheduler](https://buffer.com/mastodon)

**I am thrilled with this announcement.**

Engadget reports:

[Like users, app developers are fleeing Twitter for Mastodon](https://www.engadget.com/twitter-client-developers-fleeing-twitter-mastodon-130031551.html)

Lifewire opines:

[Twitter May Soon Be Irrelevant, Thanks to a Mastodon Version of Tweetbot](https://www.lifewire.com/twitter-may-soon-be-irrelevant-thanks-to-a-mastodon-version-of-tweetbot-7099574)

**If only. 
Unfortunately, only Space Karen driving Twitter into bankruptcy has a chance at this.**

Speaking of which, TechCrunch reports:

[Twitter to end free access to its API in Elon Musk’s latest monetization push](https://techcrunch.com/2023/02/01/twitter-to-end-free-access-to-its-api/)

**So Shitter’s CuntEO makes this move several weeks after fucking over the businesses most likely to pay for this. A very stable genius.**

**And here’s what really boils my piss about it. Movetodon is/was a service that lets you find your Twitter followers who are also on Mastodon so you can follow them there.**

[Matthew Sheffield (@mattsheffield@mastodon.social)](https://mastodon.social/@mattsheffield/109801812635232693)

[Elon Musk Is Running Scared From Mastodon; Cuts Off The Best Tool For Finding Your Twitter Followers There](https://www.techdirt.com/2023/02/03/elon-musk-is-running-scared-from-mastodon-cuts-off-the-best-tool-for-finding-your-twitter-followers-there/)

**Take login by Twitter off your apps peeps unless you want to pay through the nose. And if you make Twitter apps or bots, I hope you have diversified.**

## CTAs (aka Show Us Some Free Love)

- That’s it for this week. Please share this communiqué.
- Also, be sure to [join our newsletter list at the bottom of our site’s pages](https://www.symfonystation.com/contact). Joining gets you each week's communiqué in your inbox (a day early).
- Follow us [on Flipboard](https://flipboard.com/@mobileatom/symfony-for-the-devil-allupr6jz) or at [@symfonystation@phpc.social](https://phpc.social/web/@symfonystation) on Mastodon for daily coverage. Consider joining the [@phpc.social](https://phpc.social/web/home) instance. If this communique is a little overwhelming, you can get a condensed, weekly news highlight post on [Friendica](https://friendica.me/profile/friendofsymfony).
- [Visit our Communiqué Library](https://www.symfonystation.com/Communiqu%C3%A9s). You can find a vast array of curated evergreen content.

Do you own or work for an organization that would be interested in our promotion opportunities? Or supporting our journalistic efforts? If so, please get in touch with 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 offer free promotion on [our Support Ukraine page](https://www.symfonystation.com/Support-Ukraine). Or, if you know of one, get in touch.

Keep coding Symfonistas!

## Author

![Reuben Walker headshot](https://miro.medium.com/max/1200/1*B3RcgIbAiytfjynP-oiOMg.jpeg)

###Reuben Walker

Founder
Symfony Station