<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[What Happened Last Week]]></title><description><![CDATA[Discover the latest tips and tricks for web development every week with my newsletter]]></description><link>https://newsletter.maciekpalmowski.dev</link><image><url>https://substackcdn.com/image/fetch/$s_!SHza!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1adf7197-7991-470a-a140-03411db6aa89_980x980.png</url><title>What Happened Last Week</title><link>https://newsletter.maciekpalmowski.dev</link></image><generator>Substack</generator><lastBuildDate>Sun, 05 Apr 2026 03:32:08 GMT</lastBuildDate><atom:link href="https://newsletter.maciekpalmowski.dev/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Maciek Palmowski]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[palmiakfp@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[palmiakfp@substack.com]]></itunes:email><itunes:name><![CDATA[Maciek Palmowski]]></itunes:name></itunes:owner><itunes:author><![CDATA[Maciek Palmowski]]></itunes:author><googleplay:owner><![CDATA[palmiakfp@substack.com]]></googleplay:owner><googleplay:email><![CDATA[palmiakfp@substack.com]]></googleplay:email><googleplay:author><![CDATA[Maciek Palmowski]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[What happened last week - issue #114]]></title><description><![CDATA[This week: Astro, WordPress, CMS and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-114</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-114</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Tue, 22 Jul 2025 04:32:04 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/742bb2a7-6e05-41ce-be3e-66c3a323cca4_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>Long time, no see. A lot has happened in my life, and I needed a bit of a break from stuff that wasn&#8217;t the absolute priority. But, I feel it&#8217;s time to go back to writing this newsletter, because it&#8217;s something I always enjoy. </p><p>So what happened in the last month? I spoke in Prague at the <strong>WebExpo</strong> (soon, you&#8217;ll be able to read an article about it) and at WordCamp Krak&#243;w. I also had the pleasure of speaking with Robert Abela about <a href="https://www.youtube.com/watch?v=VH9FwrzItS4">Vulnerability Disclosure Programs</a>.</p><p>I also had my 40th birthday. I thought it would be worse. I don&#8217;t see any big difference. But I heard that some surprising knee pains might appear around 1-2 months after.</p><p>But the thing I&#8217;m focusing on the most lately is WordCamp Gdynia and finding amazing speakers for it. I&#8217;m already looking at the list of submissions, and I&#8217;m more than happy. But it can still be better. That said, I would like to invite you to<a href="https://gdynia.wordcamp.org/2025/en/become-a-speaker/"> become a speaker at WordCamp Gdynia</a>. You have time until 31st August.</p><p>And last, but not least. I decided to cycle more stylishly. I discovered that gravel shirts are a thing (you can check gruzo.cc)</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dqDd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dqDd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg 424w, https://substackcdn.com/image/fetch/$s_!dqDd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg 848w, https://substackcdn.com/image/fetch/$s_!dqDd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!dqDd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dqDd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg" width="1456" height="1092" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1034300,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://newsletter.maciekpalmowski.dev/i/168896108?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dqDd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg 424w, https://substackcdn.com/image/fetch/$s_!dqDd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg 848w, https://substackcdn.com/image/fetch/$s_!dqDd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!dqDd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef117fce-f537-4fd9-aff3-afc7c7b18c59_4608x3456.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/i-was-at-cyberwisecon-in-vilnius/">I was at CyberWiseCon in Vilnius</a> &#8212; Maciek Palmowski</strong></p><p>Finally, I described my visit to CyberWiseCon in Vilnius. It was really an amazing conference and I can&#8217;t wait for next year's edition. I met a lot of great people there, and I was surprised by the city itself.</p><p></p><p><strong><a href="https://statamic.com/blog/statamic-6-sneak-peek">Statamic 6 Sneak Peek</a> &#8212; Jack McDade</strong></p><p>To say that I can&#8217;t wait for the next Statamic release is to say nothing. There are so many amazing things coming. Apart from the new looks, I&#8217;m excited about the Kitt Design System and the addons setting pages.</p><div><hr></div><p>If you find this newsletter or my blog valuable enough that I deserve a coffee, you can buy me one - I created an account on <a href="https://buymeacoffee.com/0bluzmsot">BuyMeCoffee</a>, and you can keep me caffeinated &#9749; Thank you for all the coffee &#128571;</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/0bluzmsot&quot;,&quot;text&quot;:&quot;Buy Me Coffee &#9749;&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/0bluzmsot"><span>Buy Me Coffee &#9749;</span></a></p><div><hr></div><p><strong><a href="https://websmith.studio/blog/astro-is-a-developers-dream/">Astro is a developers f***ing dream</a> &#8212; Ben Smith</strong></p><p>You know what? Ben is right. Astro is truly a developer&#8217;s dream. You all know that I&#8217;m a huge fan of Astro, but I&#8217;m constantly discovering how easy it can be. Currently, I&#8217;m watching my wife build a website using Astro, and it&#8217;s progressing smoothly. </p><p></p><p><strong><a href="https://blog.logrocket.com/ux-design/wcag-3-vs-2-ux/">Why I don&#8217;t trust WCAG 2.2 and what I&#8217;m hoping from 3.0</a> &#8212; Daniel Schwarz</strong></p><p>Daniel touches on some fascinating problems that WCAG has. I didn&#8217;t know that the contrast algorithm is so bad. He also points out other problems that 2.2 has.</p><p></p><p><strong><a href="https://zed.dev/blog/dialing-back-my-llm-usage-with-alberto-fortin">Why I'm Dialing Back My LLM Usage</a> &#8212; Alberto Fortin</strong></p><p>Alberto shares a lot of interesting opinions about using LLMs. I do agree with his more rational approach towards using AI. In the long run, maintaining all the AI-generated code is a true nightmare. </p><p></p><p><strong><a href="https://deliciousbrains.com/debunking-wordpress-security-myths-what-developers-often-miss/">Debunking WordPress Security Myths: What Developers Often Miss</a> &#8212; Mike Davey</strong></p><p>Mike listed almost every WP security myth there is. Really worth reading.</p><p></p><p><strong><a href="https://payloadcms.com/posts/blog/payload-is-joining-figma">Payload is joining Figma!</a></strong></p><p>This is a very interesting merge. Figma, which recently released more features for developers, decided to buy a headless CMS. For sure, we can expect better and tighter integration between those two. I&#8217;m just not sure if those two fit together. Payload isn&#8217;t the simplest CMS to configure. On the other hand, maybe thanks to Figma, it will change.</p><p></p><p><strong><a href="https://www.jonoalderson.com/conjecture/javascript-broke-the-web-and-called-it-progress/">JavaScript broke the web (and called it progress)</a> &#8212; Jono Alderson</strong></p><p>Let me start with &#8220;I don&#8217;t entirely agree with Jono here&#8221;. I mean, he&#8217;s 90-95% right - JS developers decided to reinvent the wheel here and there, often bloat the code etc. </p><p>But inside the JS community, there was also a movement that saw those problems. That&#8217;s why Astro or Eleventy got created. And they are doing a remarkable job in making JS great for building websites (not apps).</p><p></p><p><strong><a href="https://lou.gg/blog/astro-integrations-explained">Astro Integrations Explained</a> &#8212; Louis Escher</strong></p><p>An amazing article explaining in-depth how Astro integrations work. Really powerful stuff.</p><p></p><p><strong><a href="https://www.joshwcomeau.com/animation/partial-keyframes/">Partial Keyframes</a> &#8212; Josh W Comeau</strong></p><p>Josh wrote another amazing tutorial. This time he focused on Partial Keyframes.</p><p></p><p><strong><a href="https://css-tricks.com/using-pages-cms-for-static-site-content-management/">Using Pages CMS for Static Site Content Management</a> &#8212; Ryan Trimble</strong> </p><p>A great tutorial by Ryan, showing how to use Pages CMS. Pages CMS is quite similar to Keystatic, so if we enjoy this type of CMS, you should enjoy this one.</p><p></p><p></p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #113]]></title><description><![CDATA[This week: Astro, WordPress, security and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-113</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-113</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Mon, 26 May 2025 09:00:33 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/5397c33a-bc82-48f0-932e-118956694dd0_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>I spent the last week in Vilnius at the <strong>CyberWiseCon</strong>. I was there to:</p><ul><li><p>Speak about how WordPress handles the security of the ecosystem</p></li><li><p>Be a panelist - we had a great discussion about AI and security</p></li><li><p>Host a track about DevOps (because why not)</p></li></ul><p>I can totally recommend this event, as it was amazing and I learned a lot from different talks.</p><p>Also, I spent the most amazing time with my friend <strong>Darius,</strong> who is an amazing city guide, and he showed me a lot of amazing places. Including a great coffee place called <strong>Taste Map.</strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F6eQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F6eQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!F6eQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!F6eQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!F6eQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F6eQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg" width="1456" height="1092" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:318438,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://newsletter.maciekpalmowski.dev/i/164463259?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!F6eQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!F6eQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!F6eQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!F6eQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffafa1b67-8a5d-4bb1-bf89-470562cb1c95_4032x3024.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>As I write this, I&#8217;m on my way to Prague for the <strong>WebExpo</strong>. I&#8217;m really excited about this event. I will also speak there about WordPress security. If you&#8217;re going there too, ping me and we&#8217;ll grab a coffee.</p><p>Also, since last week, I&#8217;m no longer the Community Security Manager - my new role is <strong>mVDP Growth Manager</strong> (in the links below you&#8217;ll find the answer what is mVDP).</p><p>I&#8217;m also very happy to see the progress we&#8217;re making with WordCamp Gdynia - the first ever bilingual WordCamp in Poland:</p><ul><li><p>Almost 50 tickets sold already</p></li><li><p>It seems that sponsors will be OK too, but if you would like to become one, check the <a href="https://gdynia.wordcamp.org/2025/en/sponsorship-offer/">sponsorship offer</a></p></li><li><p>The Call For Papers is up - if you would like to be a speaker, just fill out this <a href="https://wordcampgdynia.confreg.pl/my-events/54-wordcamp-gdynia-2025">form</a></p></li></ul><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/what-the-hell-is-an-mvdp/">What the hell is an mVDP?</a> &#8212; Maciek Palmowski</strong></p><p>Lately, I've been asked a lot of times what that mVDP is in my new role name. I decided it&#8217;s time to describe what it is, how it works, and why, if you&#8217;re a plugin developer, you should participate in one.</p><p></p><p><strong><a href="https://patchstack.com/articles/wordpress-hosting-performance-security-wes-tatters-rapydcloud/">WordPress Hosting Performance Promises and Security Realities</a> &#8212; Wes Tatters</strong></p><p>We sat down with Wes and talked about many different hosting promises regarding speed an security and how Rapyd Cloud manages to make those promises reality.</p><p></p><div><hr></div><p>If you find this newsletter or my blog valuable enough that I deserve a coffee, you can buy me one - I created an account on <a href="https://buymeacoffee.com/0bluzmsot">BuyMeCoffee</a>, and you can keep me caffeinated &#9749; Thank you for all the coffee &#128571;</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/0bluzmsot&quot;,&quot;text&quot;:&quot;Buy Me Coffee &#9749;&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/0bluzmsot"><span>Buy Me Coffee &#9749;</span></a></p><div><hr></div><p><strong><a href="https://robertdevore.com/wordpress-plugin-security-is-a-joke-and-youre-the-punchline/">WordPress Plugin Security Is a Joke, and You&#8217;re the Punchline</a> &#8212; Robert DeVore</strong></p><p>It&#8217;s hard not to agree with Robert here - most plugins in the official WordPress repository never went through a code audit, and in general, the quality of code in many plugins is quite poor. There is a reason why at Patchstack we managed to close 1000 plugins during one month.</p><p>On the other hand, I&#8217;m a bit sad that Robert didn&#8217;t list a few positive examples. For example Elementor. They are doing a great job in terms of security.</p><p></p><p><strong><a href="https://www.jonoalderson.com/conjecture/contentless-marketing/">Contentless marketing</a> &#8212; Jono Anderson</strong></p><p>Jono wrote a great article in which he explains why it&#8217;s time to change your content strategy. Not much to add, just read and learn.</p><p></p><p><strong><a href="https://emailmarkup.org/en/reports/accessibility/2025/">Email Accessibility Report 2025</a></strong></p><p>I was able to imagine that email accessibility would be poor, but reading that 99.89% of HTML emails tested contain accessibility issues categorized as &#8220;Serious&#8221; or &#8220;Critical&#8221; was mindblowing. </p><p>I understand why it&#8217;s happening - creating email-friendly HTML code is a nightmare, so we&#8217;re using all those WYSIWYG tool sto help us. Sadly, they suck at accessibility. </p><p></p><p><strong><a href="https://pixicstudio.medium.com/why-linkedin-is-just-a-cringe-fest-for-wannabe-thought-leaders-7fdf53ad9f5e">Why LinkedIn Is Just a Cringe Fest for Wannabe Thought Leaders</a> &#8212; Muhammad Usman</strong></p><p>Just a fun article that describes LinkedIn well :)</p><p></p><p><strong><a href="https://www.joshwcomeau.com/css/height-enigma/">The Height Enigma</a> &#8212; Josh W Comeau</strong></p><p>Another amazing article by Josh. This time, he unravels all the percentage-based height secrets.</p><p></p><p><strong><a href="https://www.therepository.email/the-media-corps-is-dead-what-now-for-wordpress-marketing">The Media Corps Is Dead. What Now for WordPress Marketing?</a> &#8212; Rae Morey</strong></p><p>WordPress Media Corps is no more. Which is, in my opinion, a very sad day. One of the things that other CMSs are doing much better than WordPress is marketing in general. Still most of WP marketing happens thanks to the community or companies.</p><p></p><p><strong><a href="https://www.youtube.com/watch?v=rVKnCv--33c">OpenSourceDay2025 - Recap</a></strong></p><p>A great video summing up the OpenSourceDay - it was magical.</p><p></p><p><strong><a href="https://alexop.dev/posts/semantic-related-posts-astro-transformersjs/">No Server, No Database: Smarter Related Posts in Astro with `transformers.js`</a> &#8212; Alexander Opalic</strong></p><p>A truly magnificent article by Alex showing how to create smart related posts in Astro using a sprinkle of AI and JS. </p><p></p><p><strong><a href="https://www.luckymedia.dev/blog/how-to-integrate-multiple-external-data-sources-in-laravel-with-dtos">How to Integrate multiple external data sources in Laravel with DTOs</a> &#8212; Lokman Musliu</strong></p><p>Cool article by Lokman, explaining the practical use of DTOs when you need to integrate data from multiple sources.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #112]]></title><description><![CDATA[This week: Astro, WordPress, security and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-112</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-112</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Mon, 12 May 2025 06:14:22 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/d5414e4c-fe1d-44b3-9cca-332ce3e7962d_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>Last week, I was in Vienna&#8212;apart from the weather, it was totally amazing. I had a lot of fun, spent hours chatting with friends (old and new), and had the weirdest coffee ever&#8212;a watermelon coffee &#129327; If you don&#8217;t believe me, you can order it <a href="https://coffeepirates.at/products/colombia-watermelon-sugar">here</a>.</p><p>Next week, I&#8217;m starting my biggest conference marathon, which will include CyberWiseCon, WebExpo, WordCamp Europe, WordCamp Krak&#243;w, and something I can&#8217;t share yet.</p><p>Also, I have some coupon codes if you would like to join me at some of those:</p><ul><li><p><strong>WebExpo</strong> in Prague - MACIEK25 for 15% off</p></li><li><p><strong>CyberWiseCon</strong> in Vilnius - SPEAKERS20 for 20% off</p></li></ul><p>Soon, I will reveal something cool regarding my job. Because I will have one announcement, but sadly, you have to wait a moment.  </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!p8yd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!p8yd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg 424w, https://substackcdn.com/image/fetch/$s_!p8yd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg 848w, https://substackcdn.com/image/fetch/$s_!p8yd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!p8yd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!p8yd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg" width="1456" height="1092" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:632928,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://newsletter.maciekpalmowski.dev/i/163355272?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!p8yd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg 424w, https://substackcdn.com/image/fetch/$s_!p8yd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg 848w, https://substackcdn.com/image/fetch/$s_!p8yd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!p8yd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f8bba42-92b6-4a4e-aa79-609a66e0ff62_2628x1971.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Me and Sander at WordCamp Vienna</figcaption></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/content-layer-api-in-astro-how-to-create-a-cms-agnostic-website/">Content Layer API in Astro - how to create a CMS-agnostic website</a> &#8212; Maciek Palmowski</strong></p><p>Creating a CMS-agnostic website isn&#8217;t as simple as you might think. Luckily, Astro introduced the Content Layer API some time ago. Thanks to Content Layer API, you can change your CMS in a matter of minutes.</p><p></p><p><strong><a href="https://patchstack.com/articles/critical-suretriggers-plugin-vulnerability-exploited-within-4-hours/">Critical SureTriggers Plugin Vulnerability Exploited within 4 hours</a> &#8212; Patchstack</strong></p><p>Did you ever think about how much time it takes until a vulnerability is exploited? It&#8217;s a matter of hours. This is a great example showing that just updating plugins might not be enough.</p><p></p><div><hr></div><p>If you find this newsletter or my blog valuable enough that I deserve a coffee, you can buy me one - I created an account on <a href="https://buymeacoffee.com/0bluzmsot">BuyMeCoffee</a>, and you can keep me caffeinated &#9749; Thank you for all the coffee &#128571;</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/0bluzmsot&quot;,&quot;text&quot;:&quot;Buy Me Coffee &#9749;&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/0bluzmsot"><span>Buy Me Coffee &#9749;</span></a></p><div><hr></div><p><strong><a href="https://www.smashingmagazine.com/2025/05/smashing-animations-part-1-classic-cartoons-inspire-css/">Smashing Animations Part 1: How Classic Cartoons Inspire Modern CSS</a> &#8212; Andy Clarke</strong></p><p>Amazing article by Andy showing how you implement tricks used in classical cartoons using modern CSS. </p><p></p><p><strong><a href="https://www.conroyp.com/articles/stripe-dns-provider-metadata-bad-ideas-meet-good-apis">Stripe Is My DNS Provider Now: When Good APIs Meet Bad Ideas</a> &#8212; Paul Conroy</strong></p><p>This is one of those &#8220;don&#8217;t do this at home&#8221; articles. Paul decided to use Stripe&#8217;s metadata as a DNS server. It&#8217;s a horrible idea, you should never do this, but it&#8217;s still so fascinating that someone even tried doing something like this. </p><p></p><p><strong><a href="https://www.viget.com/articles/integrating-vite-and-ddev-into-wordpress/">Integrating Vite and DDEV into WordPress</a> &#8212; Nathan Schmidt</strong></p><p>Nathan explains how to set up Vite and DDEV with WordPress. Both technologies are industry standards, and if you are working not only with WP, learning both is a great idea.</p><p></p><p><strong><a href="https://alan.norbauer.com/articles/astro-vs-nextjs-page-size/">From Next.js to Astro: A Page Size Comparison</a> &#8212; Alan Norbauer</strong></p><p>Alan rewrote his website from Next.js to Astro, and afterwards decided to compare the page size. It&#8217;s not a surprise that the Astro version is much smaller. </p><p></p><p><strong><a href="https://adrianroselli.com/2025/05/do-not-publish-your-designs-on-the-web-with-figma-sites.html">Do Not Publish Your Designs on the Web with Figma Sites&#8230;</a> &#8212; Adrian Roselli</strong></p><p>Lately, Figma added a few new features, including Figma Sites, which allow you to build websites. While on the first glance it looks cool, it seems that the code generated by it is horrible and inaccessible.</p><p></p><p><strong><a href="https://newsletter.posthog.com/p/what-nobody-tells-developers-about">What nobody tells developers about documentation</a> &#8212; Ian Vanagas</strong> </p><p>Great article about creating great documentation. Ian shows some examples of how you can improve yours.</p><p></p><p><strong><a href="https://remicorson.com/articles/2025/04/wordpress-speculative-loading-api">Warp&#8209;Speed WordPress: Speculative Loading Arrived in Core 6.8 </a>&#8212; R&#233;mi Corson</strong></p><p>R&#233;mi explains everything you should know about Speculative Loading in WordPress.</p><p></p><p><strong><a href="https://www.youtube.com/watch?v=-8PYD6naGus">Figma Assets</a> &#8212; Mario Hamann</strong></p><p>Figma Assets is a great addon for Statamic that allows you to sync Statamic and Figma together. Watch the video the understand the concept better.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #111]]></title><description><![CDATA[This week: Astro, headless, security and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-111</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-111</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Fri, 25 Apr 2025 07:26:08 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/901fceb4-9140-4d01-bb8a-63d13217a176_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>When you read this, I will probably be landing in Vienna to attend a WordCamp there. I really can&#8217;t wait for it. There are a lot of amazing talks, a lot of old friends (and I hope a few new ones, too), and I will spend some time with my friend Sander from Patchstack.</p><p>I will be speaking there about Headless WordPress. While I have already delivered this talk a few times, after some minor updates, it&#8217;s still up-to-date. </p><p>Also, I have some coupon codes if you would like to join me at:</p><ul><li><p><strong>WebExpo</strong> in Prague - MACIEK25 for 15% off</p></li><li><p><strong>CyberWiseCon</strong> in Vilnius - SPEAKERS20 for 20% off</p></li></ul><p>Last, but not least, we have a date for <strong>WordCamp Gdynia</strong> - <strong>26th-28th September</strong>. This will be the first Polish WordCamp with an English-speaking track. This way, we hope that WordCamp will attract more people, which will lead to more amazing conversations. Soon, we&#8217;ll start selling early bird tickets - if you don&#8217;t want to miss those, subscribe to the newsletter available <a href="https://gdynia.wordcamp.org/2025/">here</a>. </p><p>Oh, and one more thing - if you find this newsletter or my blog valuable enough that I deserve a coffee, you can buy me one - I created an account on <a href="https://buymeacoffee.com/0bluzmsot">BuyMeCoffee</a>, and you can keep me caffeinated &#9749; Thank you for all the coffee &#128571;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://buymeacoffee.com/0bluzmsot" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!v4rK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png 424w, https://substackcdn.com/image/fetch/$s_!v4rK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png 848w, https://substackcdn.com/image/fetch/$s_!v4rK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png 1272w, https://substackcdn.com/image/fetch/$s_!v4rK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!v4rK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png" width="1104" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:1104,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:656055,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://buymeacoffee.com/0bluzmsot&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://newsletter.maciekpalmowski.dev/i/162080064?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!v4rK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png 424w, https://substackcdn.com/image/fetch/$s_!v4rK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png 848w, https://substackcdn.com/image/fetch/$s_!v4rK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png 1272w, https://substackcdn.com/image/fetch/$s_!v4rK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3c71dc-b554-4304-8eb5-810c0002e0e9_1104x600.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/keystatic-x-astro/">Keystatic x Astro</a> &#8212; Maciek Palmowski</strong></p><p>My second article about how easy it is to connect headless CMSs with Astro. This time, I took Keystatic for a spin. And you know what? I have fallen in love with Keystatic&#8217;s mix of simplicity and power.</p><p></p><p><strong><a href="https://www.youtube.com/watch?v=wfLPY_-h7vs">A Real Hacker's Perspective on WordPress Security with Mat Rollings</a> &#8212; Mat Rollings and Maciek Palmowski</strong></p><p>I had the pleasure of talking with Mat Rollings about his perspective on WordPress security. And believe me, Mat knows a thing or two about this - he submitted almost 300 reports to Patchstack. </p><p>Apart from the serious stuff, we also touched on a very important topic of hacker apparel.</p><p></p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-111?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-111?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-111?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://joost.blog/unintended-consequences-seo-for-everyone/">The unintended consequences of making SEO &#8220;for everyone&#8221;</a> &#8212; Joost de Valk</strong></p><p><strong>Joost de Valk,</strong> a person who created the most popular SEO plugin for WordPress, wrote this amazing article about some of the missteps they made while trying to democratize SEO for WP. </p><p></p><p><strong><a href="https://astro.build/blog/astro-agency-partners/">Astro Agency Partner Program</a> &#8212; Matt Kane</strong></p><p>Astro announced an Agency Partner Program. In short, Astro helps to promote great agencies that are working with Astro, while on the other hand, those agencies help grow Astro in return. IMO, it&#8217;s worth observing how this program will grow.</p><p></p><p><strong><a href="https://apievangelist.com/2025/04/09/adopting-mcp-is-a-bad-idea/">Adopting MCP is a Bad Idea </a>&#8212; Kin Lane</strong></p><p>I&#8217;m not sure if I agree with Kin 100%, but I have to agree he has a point. MCPs can be useful, but as Kin mentions, most of this stuff can be done using APIs. </p><p></p><p><strong><a href="https://www.eliostruyf.com/turn-presentations-playgrounds-demo-time/">Turn your presentations into playgrounds with Demo Time</a> &#8212; Elio Struyf</strong></p><p>I mentioned DemoTime last week, but this time, Elio wrote an introduction explaining how and why you should start using it.</p><p></p><p><strong><a href="https://philiplaine.com/posts/getting-forked-by-microsoft/">Getting Forked by Microsoft</a> &#8212; Philip Laine</strong></p><p>In short, Microsoft being Microsoft. It&#8217;s just sad to see that a company that invested so much in Open Source over the last few years is behaving like this. I hope that Philip will manage to keep his project afloat.</p><p></p><p> <strong><a href="https://css-tricks.com/so-you-want-to-give-up-css-pre-and-post-processors/">So, You Want to Give Up CSS Pre- and Post-Processors&#8230;</a> &#8212; Zell Liew</strong></p><p>Zell decided to check if we can drop all the Pre- and Post- CSS processors. He touches on many important aspects of the current state of both native CSS and Pre- and Post- processors. Worth reading and trying to figure out if your CSS tooling doesn&#8217;t need an upgrade. </p><p></p><p><strong><a href="https://www.a11y-collective.com/blog/how-to-check-web-accessibility/">Website Accessibility Testing Methods That Work</a> &#8212; Caitlin de Rooij</strong></p><p>Great article that explains how you should test the accessibility of your website. </p><p></p><p><strong><a href="https://cosmicthemes.com/blog/astro-eslint-prettier-setup/">How to set up ESLint and Prettier in your Astro projects</a> &#8212; Web Reaper</strong></p><p>If you're struggling with setting up ESLint and Prettier together with Astro, this article should solve your problems.</p><p></p><p><strong><a href="https://hypertext.tv/">Hypertext TV</a> - Eva Decker</strong></p><p>Imagine the WWW working like a TV - with the scanlines, and having your favorite website aired just once a week for 30 minutes. That&#8217;s Hypertext TV - an amazing experiment. </p><p>PS - you can watch my website every Monday at noon :D </p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #110]]></title><description><![CDATA[This week: AI, Astro and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-110</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-110</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Tue, 15 Apr 2025 09:33:38 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/ed0cc095-7d69-460d-bf39-438dac05b584_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>The last two weeks were hectic, to say the least. I visited <strong>WordUp Gdynia</strong>, where I lost my voice and was sick for a whole week afterward. </p><p>Still, I delivered my talk about closing 1000 plugins from the official repo. I think it was one of the most challenging talks I ever did.</p><p>During the last week, at Patchstack, we had a bit of fun building another Astro website - this time for our <strong>Alliance Community</strong>. You can check it out <a href="https://alliance.patchstack.com/">here</a>.</p><p>What&#8217;s next? In April I will be speaking at <strong>WordCamp Vienna</strong>, so if you want to grab a coffee just ping me and we&#8217;ll arrange something.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!L_HU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!L_HU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg 424w, https://substackcdn.com/image/fetch/$s_!L_HU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg 848w, https://substackcdn.com/image/fetch/$s_!L_HU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!L_HU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!L_HU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg" width="1456" height="655" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:655,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1142895,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://newsletter.maciekpalmowski.dev/i/161366326?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!L_HU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg 424w, https://substackcdn.com/image/fetch/$s_!L_HU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg 848w, https://substackcdn.com/image/fetch/$s_!L_HU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!L_HU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8988ce80-0ea2-417c-926f-d08613c6f5d2_3828x1722.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p> </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/flotiq-cms-astro/">Flotiq CMS x Astro</a> &#8212; Maciek Palmowski</strong></p><p>I decided to start a series showing how to connect Astro with different CMSs. In the first article, I decided to connect Astro with Flotiq. If never heard about Flotiq, you should definitely give it a try.</p><p></p><p><strong><a href="https://nmn.gl/blog/vibe-coding-fantasy">Vibe Coding is a Dangerous Fantasy </a>&#8212; Namanyay Goel</strong></p><p>This great article explains the dangers of vibe coding. I love this quote &#8220;The vibe coder&#8217;s dream turns into a nightmare not when the code doesn&#8217;t work, <strong>but when it works just well enough to be dangerous.&#8221;</strong></p><p></p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-110?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-110?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-110?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://blog.gitbutler.com/20-years-of-git/">20 years of Git. Still weird, still wonderful</a> &#8212; Scott Chacon</strong></p><p>Git is already 20 years old and I can&#8217;t imagine working without it. It&#8217;s amazing for both managing code and content. I&#8217;m not sure if Linus imagined git will become such a standard for every developer.</p><p></p><p><strong><a href="https://www.thomasledoux.be/blog/first-astro-integration-algolia">Writing my first Astro Integration for Algolia indexing</a> &#8212; Thomas Ledoux</strong></p><p>Thomas shows how he built an Astro integration for Algolia. This article is really useful not only because it shows how to integrate Algolia, but also how to create your own integrations.</p><p></p><p><strong><a href="https://it-notes.dragas.net/2025/04/07/launching-bssg-my-journey-from-dynamic-cms-to-bash-static-site-generator/">Launching BSSG - My Journey from Dynamic CMS to Bash Static Site Generator</a> &#8212; Stefano Marinelli</strong></p><p>Bash Static Site Generator because why not? I love stories like this. Also, the Amiga 500 theme looks amazing :D </p><p></p><p><strong><a href="https://demotime.elio.dev/">Demo Time - Presentations from VS Code</a> &#8212; Elio Struyf</strong></p><p>What started as a simple demo runner, is now a full-blown presentation stack inside of your Visual Studio Code. Elio already proved that VSC can be a CMS (with Frontmatter CMS), now that it can be better than PowerPoint. I wonder what next he&#8217;ll transfer into VSC.</p><p></p><p><strong><a href="https://lucianonooijen.com/blog/why-i-stopped-using-ai-code-editors/">Why I stopped using AI code editors</a> &#8212; Luciano Nooijen</strong></p><p>I totally agree with Luciano&#8217;s take here - editors like Cursor are amazing, but we slowly forget our craft. I&#8217;m also following the route of using AI in a more manual manner, to have at least some control over what is happening in my code.</p><p></p><p><strong><a href="https://css-tricks.com/worlds-collide-keyframe-collision-detection-using-style-queries/">Worlds Collide: Keyframe Collision Detection Using Style Queries</a> &#8212; Lee Meyer</strong> </p><p>I won&#8217;t lie - I&#8217;m far behind in what you can achieve thanks to CSS. For example, I would never even though about detecting collisions using CSS. </p><p></p><p><strong><a href="https://www.8bitcn.com/">Build your retro component library</a></strong></p><p>A nice retro component library - not if you need one, but who knows? Have fun using it :D </p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #109]]></title><description><![CDATA[This week: Open Source Day, Astro and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-109</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-109</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Mon, 31 Mar 2025 06:01:55 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/0352b9a7-6555-4de6-94f9-f30b4701c579_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>A crazy week behind and a crazy one in front of me. </p><p>Last week, I visited Florence because I was a speaker at the <strong>Open Source Day</strong>. To put it short - it was amazing. Everything there worked perfectly, the talks were amazing and it was a great chance to hug a lot of my friends. The only downside is that I must wait a year for another edition. In the links below you&#8217;ll find a longer article about it.</p><p>Next week is filled with a gazillion planning calls and podcast recordings. It will be intense and it will end with me speaking at <strong>WordUp Gdynia</strong>. Also, we&#8217;ll be publishing another website on Astro, which makes me happy.</p><p>In the middle of this craziness, I found some time for cycling. I needed this to clear my head.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Fnci!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Fnci!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Fnci!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Fnci!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Fnci!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Fnci!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg" width="1456" height="1458" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1458,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1489902,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://newsletter.maciekpalmowski.dev/i/160209726?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Fnci!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Fnci!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Fnci!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Fnci!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad2dd3e4-301e-4d7f-99cd-48eeb65c8cc7_1968x1971.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/i-was-at-open-source-day-2025-in-florence/">I was at Open Source Day 2025 in Florence</a> &#8212; Maciek Palmowski</strong></p><p>It&#8217;s funny that until 2024, I never visited Italy. Now I looking for excuses to do so. And Open Source Day is a great excuse. Amazing conference, with great talks, and a lot of hugs. Learn more about why you should visit this conference next year.</p><p></p><p><strong><a href="https://thelibre.news/foss-infrastructure-is-under-attack-by-ai-companies/">FOSS infrastructure is under attack by AI companies</a> &#8212; Niccol&#242; Venerandi</strong></p><p>One of the things I never liked about LLMs was how they gathered data. Very often it was stealing in a more or less legal way. Right now we&#8217;re in the middle of LLM scrapers putting down FOSS infrastructure. </p><p>I&#8217;m not a fan of the EU regulation-first approach, but looking at what is happening, maybe this should be a moment for some people to realize that a lack of them will hurt us even more in the upcoming years.</p><p></p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-109?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-109?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-109?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://patchstack.com/articles/cloudfest-hackathon-2025-sbominator-to-secure-the-oss-supply-chain/">Cloudfest Hackathon 2025: SBOMinator to Secure the OSS Supply Chain</a> &#8212; Mart Virkus</strong></p><p>While I was eating Italian food in Florence, most of the Patchstack team was in Rust at Cloudfest. During the hackathon, we were working on an SBOMinatior for open-source software (including WP, Typo3, and Laravel). It&#8217;s an amazing and important project and I hope that it will grow over time.</p><p></p><p><strong><a href="https://deliciousbrains.com/why-agencies-use-low-code-tools/">Why Agencies Use Low-Code Tools</a> &#8212; Mike Davey</strong></p><p>This cool article by Mike explains why Low-Code tools are so popular. While they probably won&#8217;t always create the best possible solution, maybe we&#8217;ll have to bend our needs, but they get the job done. Good enough and on time. </p><p></p><p><strong><a href="https://zeropath.com/blog/nextjs-middleware-cve-2025-29927-auth-bypass">Next.js Middleware Exploit: CVE-2025-29927 Authorization Bypass</a></strong></p><p>As you can see, even the greatest make mistakes. On the other hand - two weeks from disclosure to patch is not a perfect result. Especially since I saw that Vercal didn&#8217;t share the info with other providers and while they blocked it on Vercel other hosting companies weren&#8217;t informed. That said - please update your Next.js apps.</p><p></p><p><strong><a href="https://www.eliostruyf.com/migration-story-hugo-astro/">My migration story from Hugo to Astro</a> &#8212; Elio Struyf</strong></p><p><strong>Elio </strong>migrated his blog from Hugo to Astro. He took us step by step through what he had to do, and what were the biggest pain points of the process. </p><p></p><p><strong><a href="https://css-tricks.com/powering-search-with-astro-actions-and-fuse-js/">Powering Search With Astro Actions and Fuse.js</a> &#8212; Bryan Robinson</strong></p><p>Bryan wrote a great tutorial explaining how to use Astro Actions and Fuse.js to create a nice fuzzy search for your Astro website.</p><p></p><p><strong><a href="https://www.youtube.com/watch?v=WUNGv0uJPBQ">Starwind UI: shadcn/ui for Astro</a> &#8212; Chris Pennington</strong></p><p>Chris did a great intro for Starwind UI - a component set designed for Astro.</p><p></p><p><strong><a href="https://aboutmonica.com/blog/organizing-astro-content-with-schemas/">Organizing Content with Astro Content Schemas</a> &#8212; Monica Powell</strong></p><p>Monica wrote an amazing introduction to content schemas in Astro. If, for some reason, you&#8217;re not using them yet you should. Monica goes from basic examples to more fancy ones.</p><p></p><p><strong><a href="https://www.luckymedia.dev/blog/how-we-maintain-enterprise-statamic-sites">How we maintain enterprise Statamic sites</a> &#8212; Lokman Musliu</strong></p><p>Lokman explains how the maintenance of the Statamic website looks, especially for enterprise clients.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #108]]></title><description><![CDATA[This week: Regression testing, CMS and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-108</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-108</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Mon, 17 Mar 2025 11:53:31 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/41225fee-1f03-47a3-ad23-5411354dee21_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>A lot of things are happening lately. First of all my speaker calendar is growing quite quickly:</p><ul><li><p><strong>Cloudfest Security Bootcamp</strong> - 19.03</p></li><li><p><strong>Open Source Day 25</strong> - 21.03</p></li><li><p><strong>Warsaw IT Days Online</strong> - 04.04</p></li><li><p><strong>WordUp Gdynia</strong> - 05.04</p></li><li><p><strong>WordCamp Vienna</strong> - 25.04</p></li></ul><p>At <strong>Patchstack</strong>, we&#8217;re prepping a lot of cool stuff. There will be more webinars, cool special events, and more.</p><p>I&#8217;m also learning how to use AI more and more for writing code. It really can help a lot if you understand the limitations and some hidden traps. </p><p>Also, we had a few days of sun in Poland, so I started my cycling season. Sadly rain and low temperatures are back :/ But those first kilometers in the sun were amazing</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NTqH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NTqH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!NTqH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!NTqH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!NTqH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NTqH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg" width="1456" height="1092" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3903851,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://newsletter.maciekpalmowski.dev/i/159056954?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!NTqH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!NTqH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!NTqH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!NTqH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f833ec-31bb-4f4c-b8f8-1a3376059e36_4000x3000.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://www.youtube.com/watch?v=8XcgyQ_MyPQ">Your agency can be a startup within enterprises </a>&#8212; Karim Marucchi &amp; Maciek Palmowski</strong></p><p>I had the pleasure to talk with Karim about how to build a successful agency. He shared a lot of valuable insights about Open Source, the importance of maintenance, and a lot of other interesting things. You definitely should listen to this.</p><p></p><p><strong><a href="https://patchstack.com/whitepaper/state-of-wordpress-security-in-2025/">State of WordPress Security In 2025</a></strong> </p><p>At Patchstack we just released the State of WordPress Security report. IMO it&#8217;s the best security-related document about WordPress. Some numbers:</p><ul><li><p>7,966 vulnerabilities discovered </p></li><li><p>43% of all vulnerabilities uncovered in 2024 required no authentication</p></li><li><p>John Blackbourn received the highest bounty - $16,400</p></li></ul><p>Give it a read - it&#8217;s fun.</p><p></p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-108?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-108?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-108?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://progressplanner.com/why-wordpress-is-a-tough-sell-for-marketing-students/">Why WordPress is a tough sell for marketing students</a> &#8212; Marieke van de Rakt</strong></p><p>Marieke started teaching at the local university. At some point, she wanted to show marketing students how to build a simple website. And you know what? WordPress is pretty difficult to start with, compared with WIX. Marieke lists some initial barriers that people new to WP might stumble upon.</p><p></p><p><strong><a href="https://www.smashingmagazine.com/2025/03/case-minimal-wordpress-setups-contrarian-view-theme-frameworks/?ref=dailydev#comments-case-minimal-wordpress-setups-contrarian-view-theme-frameworks">The Case For Minimal WordPress Setups: A Contrarian View On Theme Frameworks</a> &#8212; Kevin Leary</strong></p><p>I have mixed feelings about this article. I do agree with the author that simplicity often is much better. On the other hand, as a person using a more complicated framework (not Sage - but inspired), it&#8217;s all about the final result. In the long run - using such a standardized framework helped me a lot. Still - love this article as it&#8217;s great food for thoughts. </p><p></p><p><strong><a href="https://tighten.com/insights/10-efficient-and-fun-ways-to-seed-your-database/">10 Efficient (and Fun) Ways to Seed Your Database</a> &#8212; Nico Devs</strong></p><p>This great article shows how to seed your database with data. Also, while this article is mainly about Laravel, it can be a great inspiration for how to seed your DB on other frameworks.</p><p></p><p><strong><a href="https://www.matuzo.at/blog/2025/invalid-custom-properties-in-shorthands">Maybe don't use custom properties in shorthand properties</a> &#8212; Manuel Matuzovi&#263;</strong></p><p>I never thought about what would happen if you used not-existing custom properties in your CSS. I learned a lot from this.</p><p></p><p><strong><a href="https://18f.org/">Alt 18F</a></strong></p><p>Musk recently destroyed 18F (I think destroyed is a good word for this). But some of the ex-employees decided it&#8217;s not over yet and, quote, &#8220;But we came to the government to fix things. And we&#8217;re not done with this work yet.&#8221;.</p><p></p><p><strong><a href="https://localghost.dev/blog/this-page-is-under-construction/">This page is under construction</a> &#8212; Sophie Koonin</strong> </p><p>Sophie wrote this great love letter to personal pages. I totally agree with all the points she made in the article. </p><p></p><p><strong><a href="https://dev.to/anmolbaranwal/how-i-went-from-0-to-1m-views-on-devto-10-tips-and-lessons-3o0b">How I went from 0 to 1M views on Devto: 10 tips and lessons!</a> &#8212; Anmol Baranwal</strong> </p><p>Great tips by Anmol on how to get better at writing. I love his rational approach - no AI, no clickbait, just honest content.</p><p></p><p><strong><a href="https://robertdevore.com/introducing-slop-stopper-a-free-content-checker-for-wordpress/">Introducing Slop Stopper: A free content checker for WordPress</a> &#8212; Robert DeVore</strong></p><p>Robert created a very interesting plugin, especially if you are using a multi-author blog, that helps to flag AI-generated content. </p><p></p><p><strong><a href="https://pruvious.com/">Pruvious, A reliable CMS for your Nuxt site</a></strong></p><p>An interesting CMS for Nuxt. I must give it a try, but it looks interesting.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #107]]></title><description><![CDATA[This week: Regression testing, CMS and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-107</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-107</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Mon, 03 Mar 2025 10:35:04 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/558f8298-6dd9-475a-8fd4-f0700f44a6c0_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>I felt that lately, I had a minor writing block. I had two articles in progress and I couldn&#8217;t finish them. During the weekend I finally did it &#128170; And there are a few more ideas in the back of my head, so I think it will only get better and better.</p><p>Also, I spent a while experimenting with <strong>Claude</strong> - I&#8217;m impressed by how much this model knows. It&#8217;s not perfect and it still needs your help, but together we were able to build a working prototype for a link paste/replace in Statamic in a matter of hours versus many months of me thinking about how to even start.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;6687f833-4648-4ea7-b7bb-9c6a053418c8&quot;,&quot;duration&quot;:null}"></div><p>My list of conferences at which I will be speaking is growing - I will also be a speaker at <strong>WordUp Gdynia</strong> in April. So this year I&#8217;m already sure about speaking at 6 conferences &#129327; and another 6 are still in progress. </p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/how-we-removed-almost-1000-plugins-from-the-official-wordpress-repository/">How we removed (almost) 1000 plugins from the official WordPress repository</a> &#8212; Maciek Palmowski</strong></p><p>Finally, I wrote about the October bug bounty that resulted in closing around 1000 plugins in the official repository. It was quite an event and being a part of it was something truly amazing. </p><p></p><p><strong><a href="https://maciekpalmowski.dev/blog/the-last-step-in-updating-to-tailwind-css-4/">The last step in updating to Tailwind CSS 4</a> &#8212; Maciek Palmowski</strong></p><p>When I migrated my blog from TW v3 to TW v4, of course, I didn&#8217;t test it thoroughly. So, learn from my mistakes and add regression testing to your flow. In my article, I show you how to create the simplest test that will help you.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-107?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-107?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-107?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://webmasters.fm/exploring-cms-options-beyond-wordpress-ft-maciek-palmowski/">Exploring CMS Options Beyond WordPress ft. Maciek Palmowski </a>&#8212; Brian Coords &amp; Maciek Palmowski</strong></p><p>I had the pleasure of talking with Brian about other CMSs because WordPress is not the only way and it&#8217;s not a perfect tool for every job. Sometimes using other tools might be a better choice. Also, don&#8217;t forget to subscribe to <a href="https://webmasters.fm/">Brian&#8217;s podcast</a> - it&#8217;s amazing.</p><p></p><p><strong><a href="https://www.joshwcomeau.com/blog/whimsical-animations/">A Million Little Secrets</a> &#8212; Josh W Comeau</strong></p><p>Josh created a landing page lately and it&#8217;s amazing. There are so many cool animations and secrets hidden there. I don&#8217;t remember if I ever had so much fun playing with a landing page. In this article, he shows us how those animations were made.</p><p></p><p><strong><a href="https://deliciousbrains.com/creating-a-wordpress-plugin-with-cursor/">Creating a WordPress Plugin With Cursor</a> &#8212; Mike Davey</strong></p><p>Mike shares how using AI can help when creating WordPress plugins. He also mentions when human intervention is highly recommended. My experience is very similar to Mike&#8217;s - AI is amazing for creating 98% of the code, you just need to focus on a few critical parts.</p><p></p><p><strong><a href="https://talkingstatamic.com/episodes/talking-with-jack-mcdade">Talking with Jack McDade</a> &#8212; Jack McDade &amp; Michael LaRoy</strong></p><p>Great interview with Jack. Just listen to it - I won&#8217;t spoil anything :)</p><p></p><p><strong><a href="https://bejamas.com/blog/why-california-state-avoided-wordpress">Why California State Avoided WordPress for Emergency Websites</a> &#8212; Darren Kolakovic &amp; Mojtaba Seyedi</strong></p><p>A great case study explaining why WordPress (and most dynamic CMSs) might not be the best choice for Emergency Websites. We saw it during COVID - static sites were better at handling the traffic websites got at the beginning of the pandemic.</p><p></p><p><strong><a href="https://blog.iabhinavj.com/blog/astro-google-sheets-cms/">How to Build a Serverless Astro.js + Google Sheets = Auto-Updating CMS!</a> &#8212; Abhinav Jain</strong></p><p>This great guide shows how to use Google Sheets as a CMS together with Astro. The coolest part is how to use triggers in Sheets to automatically update the website, but only if we stopped editing the content.</p><p></p><p><strong><a href="https://simplystatic.com/tutorials/simply-static-studio-for-agencies/">Simply Static Studio for Agencies</a> &#8212; Patrick Posner</strong></p><p>I&#8217;m a huge fan of Patrick&#8217;s plugin, but <strong>Simply Static Studio</strong> might me love his plugin even more. Simply Static Studio will be a center for agencies to manage multiple websites from one place. It looks amazing and I can&#8217;t wait to get an invite to start testing this.</p><p></p><p><strong><a href="https://ethanmarcotte.com/wrote/leaving-18f/">Moving on from 18F</a> &#8212; Ethan Marcotte</strong></p><p>For those who don&#8217;t know 18F is/was a digital services agency within the <strong>U.S. General Services Administration</strong> that helps federal agencies improve their technology and digital services. It got butchered lately and Ethan shares how it looked from the inside.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #106]]></title><description><![CDATA[This week: Astro, WordPress and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-106</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-106</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Sun, 23 Feb 2025 21:58:44 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/c8124257-ad08-4cdb-809e-c8f9bad1fd7c_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>It was another busy week. I had a chance to record two more interviews (I can&#8217;t spoil the details yet, but I think you&#8217;ll like them). </p><p>I spent a lot of time dealing with our <strong>Capture The Flag</strong> event which was quite a success - more than 200 people registered and everything went smoothly. We already have to start thinking what&#8217;s our next step here, but we definitely need to have more special events.</p><p>I&#8217;m also quite close to finishing an article for my blog. I hope that next week you&#8217;ll see it online. Instead of focusing on the article, I migrated my blog from <strong>TailwindCSS</strong> 3 to version 4. The migration script is top-notch &#128170;</p><p>And slowly I have to start preparing for the <strong>Open Source Day</strong>. I even ordered some amazing SWAG.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dAsM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dAsM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png 424w, https://substackcdn.com/image/fetch/$s_!dAsM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png 848w, https://substackcdn.com/image/fetch/$s_!dAsM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png 1272w, https://substackcdn.com/image/fetch/$s_!dAsM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dAsM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png" width="1200" height="820" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:820,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dAsM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png 424w, https://substackcdn.com/image/fetch/$s_!dAsM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png 848w, https://substackcdn.com/image/fetch/$s_!dAsM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png 1272w, https://substackcdn.com/image/fetch/$s_!dAsM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F655d0968-dc94-48ac-a630-f1ae7234d60d_1200x820.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://wpshout.com/official-wordpress-in-2025-report/">I Read the &#8220;Official&#8221; WordPress in 2025 Report &#8211; It&#8217;s Just a Piece of Enterprise PR</a></strong> <strong>&#8212; Karol Kr&#243;l</strong> </p><p>Just like Karol, I was disappointed in this &#8220;official&#8221; report. I had exactly the same thoughts - it&#8217;s PR, it skips many things that happened in 2025. </p><p></p><p><strong><a href="https://www.smashingmagazine.com/2025/02/human-centered-design-ai-assisted-usability-testing/">Human-Centered Design Through AI-Assisted Usability Testing: Reality Or Fiction?</a> &#8212; Dr. Eduard Kuric</strong></p><p>A really interesting article about using AI in usability testing. It explores how GPT-4-generated follow-up questions can enhance feedback collection but often fall short due to repetition, lack of context, and user frustration. I wonder how this will look next year.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-106?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-106?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-106?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://astro.build/blog/starlight-032/">Starlight 0.32</a> &#8212; Chris Swithinbank</strong></p><p>Another version of my favorite documentation theme for Astro. This release includes New i18n APIs for plugins. </p><p></p><p><strong><a href="https://aftermath.site/website-musk-twitter-facebook-internet">For The Love of God, Make Your Own Website</a> &#8212; Gita Jackson</strong></p><p>Gita is right - the internet kind of sucks lately with all social media and their algorithms. That&#8217;s why it&#8217;s better to have your website. Let me quote this part from Gita &#8220;To me, having my own website [&#8230;] gives me a degree of freedom&#8221;.</p><p></p><p><strong><a href="https://swizec.com/blog/code-yourself-out-of-the-job-2/">Code yourself out of the job</a> &#8212; Swizec Teller</strong></p><p>I like what Swizec proposes - instead of being a critical part of a team AKA bottleneck of every project, try to empower the rest of the team, create systems others can follow on their own etc. Amazing advice.</p><p></p><p><strong><a href="https://www.youtube.com/watch?v=6fAQ_y-1SxI">Only Watch if My Thumbnail Has Reached 100%</a> &#8212; Hyperplexed</strong></p><p>Very interesting use of YouTube API and building interactive Thumbnails. If you are a more creative person, I can imagine you could use this in a very interesting way.</p><p></p><p><strong><a href="https://dev.to/itamartati/why-i-hate-wordpress-but-why-its-still-great-and-necessary-1lbg">Why I Hate WordPress&#8212;But Why It&#8217;s Still Great and Necessary</a> &#8212; Itamar Tati</strong></p><p><strong>Itamar</strong> is right - a lot of developers hate WordPress, but they are still using it because it has a lot of pros, it&#8217;s familiar to users and it lets you release a project quickly. </p><p></p><p><strong><a href="https://tigerabrodi.blog/tailwind-v4-features-im-excited-about">Tailwind v4 features I'm excited about</a> &#8212; Tiger Abrod</strong></p><p>Tailwind CSS 4 is amazing and I agree with all features Tiger mentioned. Personally, I love moving the configuration to CSS and the Dynamic Utility Values(it makes it much simpler). Also, the speed improvement is something amazing.</p><p></p><p><strong><a href="https://itsthatlady.dev/blog/migrate-from-wordpress-to-astro/">How I Migrated from WordPress to Astro </a>&#8212; Kedasha Kerr</strong></p><p>An interesting article from Kedasha explaining how she migrated her blog from WP to Astro. As you see - it was pretty simple, so if you don&#8217;t want to pay for your blog - moving to Astro might be a wise decision.</p><p></p><p><strong><a href="https://talkingstatamic.com/">Talking Statamic</a> &#8212; Michael LaRoy</strong></p><p>Michael started a new podcast about Statamic. You can already watch the trailer of the first episode with <strong>Jack McDade</strong>. Can&#8217;t wait to watch the full episodes.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #105]]></title><description><![CDATA[This week: Astro, Open Source and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-105</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-105</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Sun, 16 Feb 2025 16:22:13 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/98109459-2909-4569-adff-2472153c9fa5_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>It was a very eventful week. At Patchstack we worked on two amazing projects:</p><ul><li><p>We&#8217;re starting a webinar series - the first episode is about <strong>Drupal </strong>and it will be <a href="https://www.youtube.com/watch?v=u3tlQrgt-mM">premiered</a> on 21st Feb, in the meantime you can watch a <a href="https://www.youtube.com/watch?v=9p8sPB2uE9Q">teaser</a>. <strong>Steve</strong> from Pantheon was great and shared a lot of cool information about Drupal.</p></li><li><p>We&#8217;re doing a <strong>Capture The Flag</strong> event at WordCamp Asia. It&#8217;s online, so you don&#8217;t have to travel to Manilla to take part. All you have to do is register at <a href="http://ctf.patchstack.com">ctf.patchstack.com </a>- there are some neat prizes, and it&#8217;s also a cool opportunity to learn something new.</p></li></ul><p>Apart from this, I&#8217;m enjoying Kingdom Come Deliverance 2. What an amazing game it is. It&#8217;s like KCD 1 but without most of the problems it had. I was wondering if should I go with KCD, Civilization 7, or Avowed, and based on the reviews I picked the best game.</p><p>Also, the planning of WordCamp Gdynia is in full swing. This year we&#8217;ll have an amazing surprise for you :)</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ULdg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ULdg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ULdg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ULdg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ULdg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ULdg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg" width="800" height="800" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:800,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:74639,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ULdg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ULdg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ULdg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ULdg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74192062-8ad1-47a0-a2a9-ce76301d40fc_800x800.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://leapcell.io/blog/why-editorconfig-still-matters">Why .editorconfig Still Matters in the Age of Prettier</a> &#8212; Grace Collins</strong></p><p>Currently, there are so many tools that will make your code look good with just one click. Prettier is just one of many. Some might ask &#8220;Why should we even still use .editorconfig&#8221;. The answer is simple - they serve a bit different purpose but also work great together.</p><p></p><p><strong><a href="https://spatie.be/blog/what-to-expect-from-open-source">What to expect from open source</a> &#8212; Niels Vanpachtenbeke</strong></p><p>Great article by Niels explaining what we as users should expect from Open Source projects and maintainers. He also explains, what we can do to make the maintainer life easier.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-105?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-105?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-105?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://spilled.online/posts/astro-dark-theme-toggle/">Build a Perfect Dark Theme Toggle with Astro </a>&#8212; Karen Sarkisyan</strong></p><p>Karen explains how to build a perfect dark theme toggle in Astro. While it sounds simple there are a lot of tiny details that make it much more difficult than you can expect. </p><p></p><p><strong><a href="https://creston.blog/wasm-will-replace-containers/">WASM will replace containers</a> &#8212; Creston</strong></p><p>I think that Creston&#8217;s prediction may come true. We&#8217;re already seeing how WordPress benefits from using WASM (in WordPress Playground). So, if a CMS, can benefit from this, I can imagine the unlimited possibilities coming from all other projects.</p><p></p><p><strong><a href="https://astro.build/blog/astro-530/">Astro 5.3</a> &#8212; Matt Kane</strong></p><p>Yet another Astro release. But this time they managed to speed up SSR around 2x and SSG around 15%. That&#8217;s really a lot.</p><p></p><p><strong><a href="https://zumerlab.github.io/orbit-docs/">Orbit</a> &#8212; tinchox5</strong></p><p>This is something pretty unique. A CSS framework for radial designs. While, sadly, I don&#8217;t have the fantasy to use it, I&#8217;m sure some of you will find a way.</p><p></p><p><strong><a href="https://coditive.com/blog/nuxt-2-to-nuxt-3-migration-why-now-and-how-to-succeed/">Nuxt 2 to Nuxt 3 Migration &#8211; Why Now and How to Succeed</a> &#8212; Pawe&#322; Madeja</strong></p><p>Pawe&#322; shares how the migration from Nuxt 2 to Nuxt 3 looked like at Coditive. If you&#8217;re facing a similar task, you should learn how others did it.</p><p></p><p><strong><a href="https://www.youtube.com/watch?v=sa3XHjG1Kgs">I built a way to write PHP alongside your frontend</a> &#8212; Aaron Francis</strong></p><p>In this video, Aaron presents how <strong>Fusion</strong> works. It&#8217;s a bridge between PHP and JS. I won&#8217;t lie - it looks pretty darn interesting.</p><p></p><p><strong><a href="https://accesto.com/blog/php-foundation-interview/">Insights from the PHP Foundation Executive Director </a>&#8212; Micha&#322; Kurzeja</strong></p><p>Great interview with <strong>Roman Pronskiy </strong>about how the PHP Foundation is doing.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #104]]></title><description><![CDATA[This week: Astro, Open Source and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-104</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-104</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Fri, 07 Feb 2025 10:10:38 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/31f472e1-5f23-41ef-87c7-9660ab78a1a1_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>I spent the last week working on a side project. This project made me realize one thing - I can&#8217;t imagine being a developer full-time again. I mean, it was cool to build it, I&#8217;m proud of some solutions I introduced, but doing this full-time? Nope, never again. It&#8217;s both too stressful and a bit boring.</p><p>On the bright side - I got selected for <strong>Open Source Day</strong> in Florence - thank you. If you don&#8217;t have any plans for March, visiting Italy might be a great idea.</p><p>I also spent some time playing with <strong>OpenAI </strong>for filtering great content that would fit my newsletter. I will share how it works soon.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Eey9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Eey9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Eey9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Eey9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Eey9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Eey9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg" width="960" height="1280" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1280,&quot;width&quot;:960,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:128555,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Eey9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Eey9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Eey9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Eey9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bbe827e-cda4-4276-aea2-f826ffe9773f_960x1280.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://angelika.me/2025/02/01/astro-component-unit-tests/">How to set up unit tests for Astro components</a> &#8212; Angelika Cathor</strong></p><p><strong>Angelika</strong> wrote an amazing piece about testing Astro components. While there are some limitations, it&#8217;s a great way to make sure that your components are working properly.</p><p></p><p><strong><a href="https://www.smashingmagazine.com/2025/01/navigating-challenges-modern-open-source-authoring/">Navigating The Challenges Of Modern Open-Source Authoring: Lessons Learned</a> &#8212; Alvaro Saburido</strong></p><p>Alvaro shares his perspective on Open-Source authoring. He has quite a lot of experience here. On one hand, he&#8217;s responsible for the TresJS library, on the other he works at Storyblok. Both cases are totally different - one is community-driven, second is company-driven.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-104?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-104?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-104?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://roe.dev/blog/zero-sum-games/">Zero-sum games</a> &#8212; Daniel Roe</strong></p><p>I love Daniel&#8217;s take on Open Source. Especially the part about &#8220;Success is contagious&#8221;. That was also the WordPress approach for so many years. Build a successful product, more people will, more business around will be created, more contributors will show up.</p><p></p><p><strong><a href="https://tailwindcss.com/blog/tailwindcss-v4">Tailwind CSS v4.0</a> &#8212; Adam Wathan</strong></p><p><strong>Tailwind CSS 4.0</strong> is out. I&#8217;m really happy with all the changes that happened in this version. Moving to CSS variables, faster engine, container queries and so many more. I will probably try to move my blog from v3 to v4 to see how it goes.</p><p></p><p><strong><a href="https://www.joshwcomeau.com/css/container-queries-unleashed/">Container Queries Unleashed </a>&#8212; Josh W Comeau</strong></p><p>Again, I&#8217;m impressed with Josh&#8217;s skills in explaining CSS to me. I really feel I need to start using containers.</p><p></p><p><strong><a href="https://martech.org/hubspots-seo-collapse-what-went-wrong-and-why/">HubSpot&#8217;s SEO collapse: What went wrong and why?</a> &#8212; Danny Goodwin </strong></p><p>HubSpot blog traffic collapsed lately - that&#8217;s a fact. Many people are trying to understand what happened. But what&#8217;s more interesting <a href="https://sparktoro.com/blog/traffic-is-down-revenue-is-up/">HubSpot revenue is up</a>. Overall this is an interesting case when we focused too much on the specifics (blog traffic) vs looking at the big picture (revenue).</p><p></p><p><strong><a href="https://www.danmaby.com/posts/2025/01/writing-with-the-wordpress-block-editor/">Writing with the WordPress Block Editor</a> &#8212; Dan Maby</strong></p><p>Instead of sharing my thoughts, let me quote the most important part of this article:</p><blockquote><p>Matt proclaimed we should "learn JavaScript deeply," I'm glad I did and continue to do so. It's opened up ways for me to build that I never had before.</p></blockquote><p></p><p><strong><a href="https://astro.build/blog/astro-520/">Astro 5.2</a></strong></p><p><strong>Astro 5.2</strong> is out. Including Tailwind 4 support, trailing slash redirects, and many more. </p><p></p><p><strong><a href="https://briangardner.com/open-letter/wordpress-theme-designers/">An open letter to WordPress theme designers</a> &#8212; Brian Gardner</strong></p><p>Brian is right - make sure that the color contrast on your themes is good. It&#8217;s a small change and usually easy to add. There is no excuse for you not to have proper contrasts.</p><p></p><p><strong><a href="https://hydephp.com/">HydePHP</a> &#8212; Caen De Silva</strong></p><p>If you would like a Static Site Generator and you love PHP, then HydePHP is the perfect solution for you. </p><p></p><p><strong><a href="https://alvaromontoro.com/sansjs/demos/batman-comic-css/">Batman-Comic.CSS</a> &#8212; &#193;lvaro Montoro</strong></p><p>I love this so, much - a CSS framework ready to create Batman and Robin comic stripes. I&#8217;m always amazed by people unlimited imagination.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #103]]></title><description><![CDATA[This week: Drupal, Astro and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-103</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-103</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Mon, 20 Jan 2025 15:57:04 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/5fbfe3cb-c223-488b-9283-91d4a11db8d5_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>My talk &#8220;<strong>How we closed almost 1000 plugins in a month - a story of the biggest WordPress bug bounty hunt&#8221; </strong>got selected for community voting. If it ends in the top 8, I will be a speaker at <strong>Open Source Day in Florence</strong>. To achieve this, I need your help:</p><ol><li><p>visit <a href="https://github.com/Schroedinger-Hat/osday/issues/577">GitHub</a></p></li><li><p>leave a &#128077;reaction under the description</p></li><li><p>(optional) you can share info about it on social media</p></li></ol><p>Thank you for all the support. </p><p>Apart from this, I tried out the new <strong>Drupal CMS 1.0</strong> (<strong>Drupal CMS</strong> is not the same as <strong>Drupal Core</strong>). While it&#8217;s not perfect, I think it has a lot of potential and it looks like the best Drupal ever. You&#8217;ll find my first look at it in the links below.</p><p>And we had some snow and fog in Poland - as you can see below, it was really full of color.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0DKC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0DKC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg 424w, https://substackcdn.com/image/fetch/$s_!0DKC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg 848w, https://substackcdn.com/image/fetch/$s_!0DKC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!0DKC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0DKC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg" width="1280" height="1249" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1249,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:221678,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!0DKC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg 424w, https://substackcdn.com/image/fetch/$s_!0DKC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg 848w, https://substackcdn.com/image/fetch/$s_!0DKC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!0DKC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09a37cce-873f-426d-ae4f-670fb32f96ad_1280x1249.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/trying-out-drupal-cms-10/">Trying out the brand new Drupal CMS 1.0</a> &#8212; Maciek Palmowski</strong></p><p>As I mentioned in the intro - I decided to give Drupal CMS a try. Drupal CMS is an opinionated version of Drupal Core, that is easier for people that just want to start building websites. </p><p></p><p><strong><a href="https://maciekpalmowski.dev/blog/what-was-my-2024/">What was my 2024</a> &#8212; Maciek Palmowski</strong></p><p>2024 was full of ups and downs. But in general, it was a good year. </p><p></p><p><strong><a href="https://www.youtube.com/watch?v=WuH5QYCdh6w">Start Your Escape from WordPress Using 11ty (in 3 minutes!)</a> &#8212; Zach Leatherman</strong></p><p>All CMS&#8217; and frameworks are trying to use the WordPress situation in their favor. During the last 2 months, many of them introduced great importing tooling. 11ty is one of them - their importer is top-notch.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-103?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-103?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-103?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://rombo.co/">Rombo</a></strong></p><p><strong>Rombo</strong> is a great toolkit that allows you to easily add animations to your user interface. What I like the most about it are both Figma and Tailwind CSS integrations.</p><p></p><p><strong><a href="https://astro.build/blog/year-in-review-2024/">Astro 2024 year in review</a> &#8212; Shinya Fujino</strong></p><p>2024 was a huge year for <strong>Astro</strong>. They introduced a lot of new features and got more developers using it. Shinya summed it all up in one post. </p><p></p><p><strong><a href="https://www.gamedeveloper.com/production/i-designed-economies-for-150m-games-here-s-my-ultimate-handbook">I designed economies for $150M games: here's my ultimate handbook</a> &#8212; Alex Wiserax</strong></p><p>Amazing article in which Alex explains how to create a working and balanced game economy. While I&#8217;m not a fan(not to use stronger words) of many practices used in F2P games, it&#8217;s always interesting to get into the head of a person who designed it.</p><p></p><p><strong><a href="https://piccalil.li/blog/technologies-and-frameworks-we-use-in-our-design-studio/">Technologies and frameworks we use in our design studio</a> &#8212; Andy Bell</strong></p><p>Andy shares which technologies they are using(and why) at <strong>Set Studio</strong>. Cool to see Astro on that list.</p><p></p><p><strong><a href="https://www.hyperui.dev/">HyperUI</a></strong></p><p>HyperUI is a big collection of Tailwind components. It&#8217;s great, especially when you don&#8217;t have any skills in design. Using those you can achieve that will look OK.</p><p></p><p><strong><a href="https://www.briancoords.com/pull-wordpress-from-prod-to-local-with-wp-cli-bash-script/">Pull WordPress from Prod to Local with WP-CLI Bash Script</a> &#8212; Brian Coords</strong></p><p>Brian shared a really useful script for pulling data from production to your localhost. </p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #102]]></title><description><![CDATA[This week: WPDramas, Open Source and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-102</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-102</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Mon, 13 Jan 2025 12:00:43 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/66284150-9b4a-40a0-9c3d-919c06c5da91_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>Happy New Year &#127878; I would really prefer that 2025 would start in a bit calmer matter but it was a shitstorm.</p><p>This week, we were not accepted as sponsors at WordCamp Europe because we didn&#8217;t contribute enough (<a href="https://x.com/OliverSild/status/1876916364994019526">learn more</a>). A few hours ago, Automattic decided to lower the amount of work they are sponsoring to just 40 hours per week. </p><p>Apart from that, we (me and my family) started this year with a virus. So currently I&#8217;m not so happy with how this year is going.</p><p>On the bright side - I added a confetti effect to my blog &#127882;You can see it &#128071;</p><div class="bluesky-wrap outer" style="height: auto; display: flex; margin-bottom: 24px;" data-attrs="{&quot;postId&quot;:&quot;3lfc4yefd4s2n&quot;,&quot;authorDid&quot;:&quot;did:plc:g22gipxgxopkahjauwaa3cse&quot;,&quot;authorName&quot;:&quot;Maciek Palmowski &quot;,&quot;authorHandle&quot;:&quot;maciekpalmowski.dev&quot;,&quot;authorAvatarUrl&quot;:&quot;https://cdn.bsky.app/img/avatar/plain/did:plc:g22gipxgxopkahjauwaa3cse/bafkreiesi24n5ujlhf26zpgle57y2t3aa225xxy7avfeijt2lqsa53dnzq@jpeg&quot;,&quot;text&quot;:&quot;I decided to add this little effect for everyone who finishes reading an article on my blog &#127882; \n\nI know it's stupid, but I love it :D&quot;,&quot;createdAt&quot;:&quot;2025-01-09T07:15:03.043Z&quot;,&quot;uri&quot;:&quot;at://did:plc:g22gipxgxopkahjauwaa3cse/app.bsky.feed.post/3lfc4yefd4s2n&quot;,&quot;imageUrls&quot;:[&quot;https://video.bsky.app/watch/did%3Aplc%3Ag22gipxgxopkahjauwaa3cse/bafkreibiovsls4nzxmficq4vjboqmub2fiqb4a3byvuo7tuqqunhk7fasu/thumbnail.jpg&quot;]}" data-component-name="BlueskyCreateBlueskyEmbed"><iframe id="bluesky-3lfc4yefd4s2n" data-bluesky-id="6909941208607735" src="https://embed.bsky.app/embed/did:plc:g22gipxgxopkahjauwaa3cse/app.bsky.feed.post/3lfc4yefd4s2n?id=6909941208607735" width="100%" style="display: block; flex-grow: 1;" frameborder="0" scrolling="no"></iframe></div><p>Oh, and I will be a speaker at <strong>CyberWiseCon</strong> &#128170;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://cyberwisecon.eu/" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!g5df!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png 424w, https://substackcdn.com/image/fetch/$s_!g5df!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png 848w, https://substackcdn.com/image/fetch/$s_!g5df!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png 1272w, https://substackcdn.com/image/fetch/$s_!g5df!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!g5df!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:905553,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://cyberwisecon.eu/&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!g5df!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png 424w, https://substackcdn.com/image/fetch/$s_!g5df!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png 848w, https://substackcdn.com/image/fetch/$s_!g5df!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png 1272w, https://substackcdn.com/image/fetch/$s_!g5df!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd622f36c-5d66-488f-a8a2-70973a73d8f0_3000x1688.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/my-wordpress-wishlist-for-2025/">My WordPress Wishlist for 2025</a> &#8212; Maciek Palmowski</strong></p><p>At the end of the year, I published a wishlist for WP. I had high hopes that 2025 would be better. It&#8217;s not going that well at the moment. Especially the &#8220;<strong>2025 to be a year of peace&#8221; </strong>part.</p><p></p><p><strong><a href="https://automattic.com/2025/01/09/aligning-automattics-sponsored-contributions-to-wordpress/">Aligning Automattic&#8217;s Sponsored Contributions to WordPress</a></strong></p><p>This and <a href="https://wordpress.org/news/2025/01/jkpress/">today&#8217;s</a> actions are another step in showing how you can destroy a community in a few months. When Matt gave his infamous talk during WCUS, I could say that &#8220;he was right on many points, but the form of the presentation was poor.&#8221; His presentation, if done right, should have started a bigger discussion and changes in the ecosystem to make it better. Today, I&#8217;m afraid that his further actions may destroy the community and WordPress itself. </p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-102?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-102?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-102?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://manifest.build/">Manifest - The 1-file micro-backend for your frontend</a></strong></p><p>Manifest looks like an amazing solution if you need to build a micro-site and need a very simple backend for it. The configuration looks amazingly simple.</p><p></p><p><strong><a href="https://adamadam.blog/2025/01/08/wordpress-as-a-git-repo/">WordPress as a git repo</a> &#8212; Adam Zieli&#324;ski</strong></p><p>Adam during Christmas decided to build a thing - a Git Filesystem for WordPress. It looks pretty cool and I can&#8217;t wait until his a bit chaotic Pull Request becomes a feature in a future release of WP.</p><p></p><p><strong><a href="https://blog.cloudflare.com/open-source-all-the-way-down-upgrading-our-developer-documentation/">Open source all the way down: Upgrading our developer documentation</a> &#8212; Kim Jeske, Kian Newman-Hazel and Kody Jackson</strong> </p><p>Cloudflare explains why and how they migrated their documentation to Astro Starlight. Because it&#8217;s all open source, you can view its<a href="https://github.com/cloudflare/cloudflare-docs/tree/production"> code</a> and learn a lot from it.</p><p></p><p><strong><a href="https://www.youtube.com/watch?v=vc4yL3YTwWk">Exposing the Honey Influencer Scam</a> &#8212; MegaLag</strong></p><p>Honey is like a dictionary definition of greed. I understand that free products aren&#8217;t entirely free and there is always a catch, but Honey decided to go all-in and steal from almost every possible side. </p><p>Also, it&#8217;s another example showing that we shouldn&#8217;t trust influencers that much.</p><p></p><p><strong><a href="https://www.smashingmagazine.com/2025/01/tight-mode-why-browsers-produce-different-performance-results/">Tight Mode: Why Browsers Produce Different Performance Results</a> &#8212; Geoff Graham</strong> </p><p>I had never heard of the term "Tight Mode" before, but it seems to be a strategy for loading websites and deciding which resources should be loaded with which priority. Geoff did a great article explaining it.</p><p></p><p><strong><a href="https://tighten.com/insights/filament-crash-course-create-a-customizable-admin-panel-in-minutes/">Filament Crash-Course: Create a Customizable Admin Panel in Minutes</a> &#8212; Nico Devs</strong></p><p>I love all the tutorials Tighten makes. They are really informative and you always learn something new. This one here shows how to start using <strong>Filament</strong>.</p><p></p><p><strong><a href="https://github.com/ryanhellyer/stale-cache">StaleCache</a> &#8212; Ryan Hellyer</strong></p><p>Ryan wrote a cool library that takes care of stale cache. So, if you need something like this - just give it a try.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #101 🎆]]></title><description><![CDATA[This week: Statamic, WordPress, CSS and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-101</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-101</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Mon, 30 Dec 2024 09:01:44 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/f01714e7-1941-4f4e-b615-7f1b3d99fd23_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>I hope you all had a chance to rest during the Christmas break and that you found some amazing gifts under the Christmas tree.</p><p>I didn&#8217;t do too much creative stuff this time apart from playing with <strong>Gravitrax, which is really fascinating. I&#8217;m afraid we have</strong> a new family hobby. And together with Lego, it can be another costly one.</p><p>Apart from this, I&#8217;m getting more and more tired of the whole WordPress debacle. Both sides are right at some points and those points should be used to start a discussion to end this war. Instead, it&#8217;s getting worse. I hope that at some point both sides will find some common ground.</p><p>So, see you next year &#128579; I hope the next year will be better.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Sse7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Sse7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Sse7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Sse7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Sse7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Sse7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg" width="1456" height="1941" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1941,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2867968,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Sse7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Sse7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Sse7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Sse7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd988f4b-814a-4f73-a5b4-9b28b7e94ef8_3000x4000.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/finding-public-speaking-opportunities-my-framework/">A Practical Guide to Finding Speaking Opportunities</a> &#8212; Maciek Palmowski</strong></p><p>I wrote a guide that should help you find public speaking opportunities. It also covers how to organize all your submissions and how to prepare everything.</p><p></p><p><strong><a href="https://maciekpalmowski.dev/blog/field-actions-in-statamic-are-amazing/">Field Actions in Statamic are Amazing</a> &#8212; Maciek Palmowski</strong></p><p>Field Actions are one of the coolest features that <strong>Statamic </strong>introduced<strong> </strong>lately. It allows you to convert or generate content for a given field. This is something that enables you to extend Statmic&#8217;s admin panel in so many ways.</p><p></p><p><strong><a href="https://jacksleight.dev/posts/adding-actions-to-specific-statamic-fields">Adding actions to specific Statamic fields</a> &#8212; Jack Sleight</strong> </p><p>While talking about Field Actions - you should check this article by Jack. It shows how to enable Field Actions for specific fields. Another big step for improving flexibility.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-101?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-101?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-101?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://joost.blog/wordpress-leadership/">Breaking the Status Quo</a> &#8212; Joost De Valk</strong></p><p><strong>Joost</strong> published a proposal on how to break the status quo in WordPress. I do agree with most of the points he mentioned (especially that the current situation is unbearable), but I think that first, we need to bridge the gap that happened because of Matt vs WP Engine.</p><p></p><p><strong><a href="https://www.therepository.email/judge-grants-wp-engine-injunction-orders-mullenweg-to-reinstate-wordpress-org-access">Judge Grants WP Engine Injunction, Orders Mullenweg to Reinstate WordPress.org Access</a> &#8212; Rae Morey</strong></p><p>Speaking of the Matt vs WP Engine case. We can say the WP Engine won the first round. The horrible checkbox is gone (although it was replaced with another one that really hurt the whole Italian WP community), ACF is back in the repo and the team got their access back.</p><p></p><p><strong><a href="https://patchstack.com/articles/announcing-patchstack-developer-api-for-endless-automations/">Announcing Patchstack API for Endless Automations</a> &#8212; Oliver Sild</strong></p><p>At Patchstack, we finally released an API that allows you to automate a lot of things without having to log in to your Patchstack dashboard. </p><p></p><p><strong><a href="https://piccalil.li//blog/making-content-aware-components-using-css-has-grid-and-quantity-queries">Making content-aware components using CSS :has(), grid, and quantity queries</a> &#8212; Eric Bailey</strong></p><p>Eric wrote an amazing article showing the power of :has in CSS. Before this, I would probably use PHP or JS to parse the data and add a class if needed. Now we can just add a bit of CSS &#129327;</p><p></p><p><strong><a href="https://2024.stateofjs.com/en-US">State of JS 2024</a></strong></p><p>The results of the State of JS 2024 are in. I&#8217;m really happy seeing how Astro is getting more and more popular.</p><p></p><p><strong><a href="https://toddle.dev/blog/open-source-more-than-just-readable-code">Open-Source: More than just readable code</a> &#8212; Andreas M&#248;ller</strong></p><p>Very often we forget how important is owning your data until the moment we learn that the SaaS we are using is shutting down. Great article reminding about this.</p><p></p><p><strong><a href="https://bjornlu.com/blog/trailing-slash-for-frameworks">Trailing Slash for Frameworks</a> &#8212; Bjorn Lu</strong></p><p>This great article by Bjorn shows the difference in how frameworks treat the slash at the end of the URL.</p><p></p><p><strong><a href="https://nmn.sh/blog/2024-11-30-thoughts-on-tailwind-4">Thoughts on Tailwind 4</a> &#8212; Naman Goel</strong></p><p>Naman shares his thoughts about Tailwind 4. In general, he&#8217;s very happy about the changes happening in the fourth version, but there are some things that could have been done in a better way.</p><p></p><p><strong><a href="https://nerdy.dev/css-wishlist-2025">CSS Wishlist 2025</a> &#8212; Adam Argyle</strong></p><p>Adam shares his wishlist for new CSS features in 2025. Personally, I would love to see gesture-driven animations and a CSS carousel would be amazing.</p><p></p><p><strong><a href="https://www.smashingmagazine.com/2024/12/introduction-css-scroll-driven-animations/">An Introduction To CSS Scroll-Driven Animations: Scroll And View Progress Timelines </a>&#8212; Mariana Beldi</strong></p><p>Mariana shows a few amazing examples of using CSS Scroll-Driven animations. It&#8217;s really amazing what we can achieve using CSS.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #100 🎂]]></title><description><![CDATA[This week: Statamic, WordPress, UX and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-100</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-100</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Tue, 10 Dec 2024 09:01:10 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/6a3dfdcd-8d64-4451-9970-c92c5249a2ef_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>Hurray - 100th issue &#127874; It took me longer than it should, but I made it before the end of the year. But it&#8217;s a nice number and I&#8217;m happy about it. </p><p>Last weeks were pretty hectic on many fronts. The good news is - most heavy lifting this year is done already and soon I will start my time off. I won&#8217;t lie - I&#8217;m a bit tired of this year and I need some time off, so I can recharge before next year.</p><p>For example, last week I visited the <strong>4Developers</strong> conference and I shared my knowledge about Astro. It was cool, but I felt that December wasn&#8217;t the best month for organizing conferences.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oUfU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oUfU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oUfU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oUfU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oUfU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oUfU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg" width="1456" height="970" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:970,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:361328,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oUfU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oUfU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oUfU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oUfU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffef1b784-7e42-4343-a123-b7eb419773bc_2048x1365.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Soon, I will share some more news because I have another confirmation for 2025 and I will co-organize something too. So, the next year will be exciting too.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/unicon-the-easiest-way-to-use-icons-in-laravel-and-statamic/">Unicon - the easiest way to use icons in Laravel and Statamic</a> &#8212; Maciek Palmowski</strong></p><p>Last time, I wrote a bit about Unicon already, but I decided to create an article about how it works and how to integrate it with Statamic.</p><p></p><p><strong><a href="https://www.joanwestenberg.com/modern-work-fucking-sucks/">Modern Work Fucking Sucks</a> &#8212; Joan Westenberg</strong></p><p>This amazing article describes perfectly the modern workflow. We are spending most of our time either coping data from one place to another or automating these things. The thing that we often are doing, is the work itself. </p><p>I&#8217;m really happy that I&#8217;m working in a bit more chaos-driven company.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-100?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-100?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-100?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://adamsilver.io/blog/sliders-degrade-ux-so-do-this-instead/">Sliders degrade UX (so do this instead)</a> &#8212; Adam Silver</strong></p><p>A great article explaining some problems with sliders (not image carousels) and reasons why it&#8217;s better to use a checkbox or two inputs instead.</p><p></p><p><strong><a href="https://icreatorstudio.com/blog/php-84-is-here-top-features-youll-love-and-why-they-matter">PHP 8.4 Is Here: Top Features You&#8217;ll Love and Why They Matter</a> &#8212; James Carter</strong></p><p>James explains all the most meaningful changes in PHP 8.4. I really love features like array_find or property hooks.</p><p></p><p><strong><a href="https://www.datocms.com/blog/why-we-switched-to-astro">Why we switched to Astro (and why it might interest you)</a> &#8212; Stefano Verna</strong></p><p>Stefano from <strong>DatoCMS </strong>explains why they switched to Astro. I found the reasons for the switch very interesting - React became much more complicated + they wanted to make development simpler (and fun). It turns out that Astro is great for this. I also enjoyed how they managed the caching to make the website both dynamic and as quick as possible.</p><p></p><p><strong><a href="https://kentcdodds.com/blog/ai-is-taking-your-job">AI is taking your job</a> &#8212; Kent C. Dodds</strong></p><p>&#8220;AI is taking your job&#8221; - when I saw it, my initial thought was &#8220;here we go again&#8221;, but then I saw who is the author. So, Kent did an amazing job looking at this from a totally different perspective - AI-powered filtering of CVs, etc. Just read it - it&#8217;s a great eye-opener.</p><p></p><p><strong><a href="https://css-tricks.com/wordpress-multi-multisite-a-case-study/">WordPress Multi-Multisite: A Case Study</a> &#8212; Scott Fennell</strong> </p><p>A great case study showing what you can achieve with JS and WordPress API. It&#8217;s a long one, but it&#8217;s definitely worth reading. Also, cool that CSS Tricks is publishing cool stuff again.</p><p></p><p><strong><a href="https://jacksleight.dev/posts/refactoring-statamic-content-with-distill">Refactoring Statamic content with Distill </a>&#8212; Jack Sleight</strong></p><p><strong>Distill</strong> is a great addon for Statamic that lets you modify the data in a very straightforward way. And it&#8217;s damn easy to use too.</p><p></p><p><strong><a href="https://www.joshwcomeau.com/css/backdrop-filter">Next-level frosted glass with backdrop-filter</a> &#8212; Josh W Comeau</strong></p><p>Josh always reminds me of three things:</p><ul><li><p>how small details matter</p></li><li><p>how dumb I am when it comes to CSS</p></li><li><p>what an amazing educator he is</p></li></ul><p>This tutorial solves the problem I never even thought of and the final result is amazing.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #99]]></title><description><![CDATA[This week: Laravel, WordPress, Bluesky and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-99</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-99</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Thu, 21 Nov 2024 12:21:59 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/f55a6288-d9df-441e-a19f-20651bc7d827_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>I spent last week preparing for <strong>WordCamp Wroc&#322;aw</strong>. While I already did this talk in Gdynia, I decided to change a thing or two to make it a bit better.</p><p>Also, I&#8217;m diving more and more into Bluesky and I feel that it might replace Twitter. It&#8217;s already a much better source for new links and resources than Twitter has been for the last few months. If you still haven&#8217;t tried it, you should give Bluesky a try.</p><p>Oh, and I can already announce that I will be a speaker at <strong>WebExpo in Prague</strong> next year &#128640; Check it out <a href="https://webexpo.net/prague2025/sessions/how-the-wordpress-ecosystem-handles-security-and-what-you-can-learn-from-it/">here</a>. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!53Fz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!53Fz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg 424w, https://substackcdn.com/image/fetch/$s_!53Fz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg 848w, https://substackcdn.com/image/fetch/$s_!53Fz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!53Fz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!53Fz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg" width="1200" height="630" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:630,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:203482,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!53Fz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg 424w, https://substackcdn.com/image/fetch/$s_!53Fz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg 848w, https://substackcdn.com/image/fetch/$s_!53Fz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!53Fz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf1a4574-7a77-4b30-8d81-5bb75ff8ad3c_1200x630.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://unicon.rocks/introduction">Unicon</a> &#8212; Nicolas Hedger</strong></p><p>Unicon is an amazing Laravel library that simplifies adding SVG icons to your app. Just use a helper function or a blade component and that&#8217;s it.</p><p>Also, I created a simple <a href="https://github.com/palmiak/unicon-for-statamic">add-on for Statamic</a>, so you can use it inside of Antlers files.</p><p></p><p><strong><a href="https://www.therepository.email/core-contributors-voice-concerns-over-mullenwegs-control-and-culture-of-fear-in-wordpress-community">Core Contributors Voice Concerns Over Mullenweg&#8217;s Control and &#8220;Culture of Fear&#8221; in WordPress Community</a> &#8212; Rae Morey</strong></p><p>Rae sums up how Matt&#8217;s decisions are affecting WordPress's core contributors. I often say that I came for the code, but stayed because of the community. Without the community and their hard work, WordPress wouldn&#8217;t be where it is today. So fighting against them seems like a bad idea.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-99?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-99?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-99?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://blog.dwac.dev/posts/html-whitespace/">HTML Whitespace is Broken</a> &#8212; Doug Parker</strong></p><p>Have you ever thought a bit more about how whitespaces work in HTML? The last time I did, I discovered HTML for the first time, just to understand that 2+ spaces are converted to one and that I will have to live with this. Luckily, there are people like Doug. He decided to dive deep into this topic.</p><p></p><p><strong><a href="https://astro-embed.netlify.app/">Astro Embed</a> &#8212; Chris Swithinbank<br></strong>Astro Embed is an amazing component that makes handing embeds inside of Astro a breeze. </p><p></p><p><strong><a href="https://medienbaecker.com/articles/focus-outlines">Beautiful focus outlines</a> &#8212; Thomas G&#252;nther</strong></p><p>Thomas wrote an amazing article that shows how to make beautiful focus outlines. A lot of cool examples inside.</p><p></p><p><strong><a href="https://github.com/benholmen/defrag">Defragment your PHPUnit tests</a> &#8212; Ben Holmen</strong></p><p>If you think that PHPUnit needs an MSDos defrag-style output, then I have great news for you - Ben just made something that will satisfy your needs.</p><p></p><p><strong><a href="https://developer.vonage.com/en/blog/php-is-legacy-in-2024">PHP is Legacy, in 2024</a> &#8212; James Seconde</strong></p><p>James does a great job debunking a lot of myths about PHP. Sadly, PHP&#8217;s reputation is as it is, but maybe thanks to such articles people will manage to see that PHP5 and modern PHP are different and it&#8217;s time to stop making fun of PHP.</p><p></p><p><strong><a href="https://joshuakgoldberg-dot-com-git-x-to-bsky-josh-goldbergs-projects.vercel.app/blog/why-im-migrating-from-x-to-bluesky">Why I'm Migrating from X to Bluesky </a>&#8212; Josh Goldberg</strong></p><p>Josh perfectly explains my feelings about X and Blusky. Twitter was a big part of my developer and DevRel career. I have so many friends there, but for some time I felt that something was off. Missing notifications, not finding interesting links there, etc. Also, X started promoting more and more local trending content, which often resulted in me learning about different Polish pato streamers swearing at other pato streamers. So, overall I felt that X isn&#8217;t for me anymore. I hope Bluesky, won&#8217;t make the same mistakes.</p><p></p><p><strong><a href="https://www.ilovewp.com/wpengine-automattic-data-leak-matt-mullenweg/">Matt Mullenweg Leaked 729K WP Engine Websites&#8212;Here&#8217;s What I Discovered</a> &#8212; Dumitru Brinzan</strong></p><p>Dumitru decided to check all the pages that got involved in the Matt vs WPE war. And there is some interesting data. For example, Divi is the most popular theme, Yoast is the most popular plugin, and 10% of websites were set to no-index, so probably their authors didn&#8217;t want those URLs to become public.</p><p></p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #98]]></title><description><![CDATA[This week: WordPress, Security, Statamic and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-98</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-98</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Fri, 15 Nov 2024 10:02:12 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/e0cf4f80-42b9-4036-92a9-0d9e1b9dce58_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>Funny story - the number of conferences drained me a bit and I promised myself that WordCamp Gdynia will be the last one this year. During WordCamp Gdynia, I got &#8220;forced&#8221; (not that I protested too much) to submit for WordCamp Wroc&#322;aw and I planned that Wroc&#322;aw was really the last one. </p><p>But&#8230; I forgot that I submitted at some point for <strong>4Developers &#321;&#243;d&#378;</strong>, where I will be a speaker on 4th December :D But this is the last one this year - I promise.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EGDX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EGDX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!EGDX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!EGDX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!EGDX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EGDX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg" width="1080" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:77028,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!EGDX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!EGDX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!EGDX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!EGDX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41a9b6e3-5d66-4b33-9f76-4a72d4a2b343_1080x1080.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Also, I got accepted for one conference in 2025. It&#8217;s huge, and I&#8217;m excited about it. Soon, I will post more information about it.</p><p>I&#8217;m giving <strong>Bluesky &#129419; </strong>a try. I don&#8217;t want to judge it too hastily, but it seems really good. It's much more polished than Mastodon - if you want to follow me there, just click <strong><a href="https://bsky.app/profile/maciekpalmowski.dev">here</a></strong>. It seems like good old Twitter.</p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/migrating-gutenberg-blocks-using-the-statamic-importer/">Migrating Gutenberg blocks using the Statamic Importer</a> &#8212; Maciek Palmowski</strong></p><p>I released an updated version of my article explaining how to migrate your posts from WordPress to Statamic using the Importer Addon. </p><p></p><p><strong><a href="https://patchstack.com/articles/nearly-1000-plugins-closed-during-wordpress-security-cleanup/">Nearly 1000 Plugins Closed During WordPress Security Cleanup</a> &#8212; Maciek Palmowski</strong></p><p>It turns out you need one month and 37 ethical hackers to remove 977 plugins from the official repository because they were vulnerable. It was a crazy month for us - you should read exactly how Patchstack is making WordPress repo a safer place.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-98?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-98?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-98?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://github.com/explainers-by-googlers/companion-windows?tab=readme-ov-file">Companion windows (explainer)</a></strong><a href="https://github.com/explainers-by-googlers/companion-windows?tab=readme-ov-file"> </a></p><p>Chrome has an amazing idea of how to make popups great again. I love this idea for all Picture in Picture cases or similar. Also, it seems it would work with MPAs.</p><p></p><p><strong><a href="https://nightwatch.laravel.com/">Laravel Nightwatch</a></strong></p><p>Laravel announced Nightwatch during the <strong>Laracon AU</strong>. It&#8217;s a monitoring app designed for Laravel. It&#8217;s really nice to see how Laravel is pushing forward.</p><p></p><p><strong><a href="https://fabian-kaegy.com/wordpress-extensibility-and-how-it-used-to-drive-development-in-core/">WordPress Extensibility and how it used to drive development in core</a> &#8212; Fabian K&#228;gy</strong></p><p>Great article by Fabian about how Gutenberg affected Core&#8217;s extensibility. I totally agree with him on this topic. In the pre-Gutenberg era, extending the core was simple thanks to hooks and filters. It came with a cost, but it pushed WP forward. Now you either just don&#8217;t do it or use some weird hacks to make some stuff work.</p><p>Also, let&#8217;s not forget that wp-admin will get a redesign which might make it even worse.</p><p></p><p><strong><a href="https://craftcms.com/blog/migrating-from-wordpress">CraftCMS - Migrating from WordPress</a></strong></p><p>Not only Statamic has created a WordPress importer. CraftCMS did this too. Their wp-importer tool looks really neat. Also, they added a <a href="https://craftcms.com/knowledge-base/for-wordpress-devs">guide</a> explaining in-depth how what Craft is, but WP developers.</p><p></p><p><strong><a href="https://stitcher.io/blog/unfair-advantage">Unfair Advantage</a> &#8212; Brent Roose</strong></p><p>Brent is working on Tempest, a brand-new PHP framework. In this article, he explains what is the main advantage of Tempest:</p><p>&#8220;<strong>It is the ability to start from scratch and the courage to question and rethink the things we have gotten used to</strong>.&#8221;.</p><p>And, he&#8217;s right. When you have a market share, you can&#8217;t change something that easily. When you are starting from scratch you can experiment and break things.</p><p></p><p><strong><a href="https://phpstan.org/blog/phpstan-2-0-released-level-10-elephpants">PHPStan 2.0 Released With Level 10 and Elephpants!</a> &#8212; Ondrej Mirtes</strong></p><p>Congrats are in order. PHPStan just got released with many cool features including Level 10 and many performance changes.</p><p><strong><br><a href="https://almanac.httparchive.org/en/2024/jamstack">Web Almanac - Jamstack</a> &#8212; Mike Neumegen</strong></p><p>You can find a lot of interesting data here regarding Jamstack and static websites. I found it very interesting to see how strong Hugo still is and that Astro is becoming more and more popular in this space too. Also, it&#8217;s interesting to see the growth in adoption of static and hybrid websites.<strong><br></strong></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #97]]></title><description><![CDATA[This week: WordPress, SQLite, Statamic and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-97</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-97</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Fri, 08 Nov 2024 10:01:20 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/7947076d-c09a-4cce-8181-bc39c58bf290_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>October surprised me work-wise. October is Cyber Security Month, so we launched a small extra event for our bounty program, allowing others to submit vulnerabilities for small and old plugins. We suspected 500-600 reports tops. It turned out that overall 1569 reports were submitted. Based on this, over 600 plugins are already closed in the official WordPress repository. In short, I think this is something called &#8220;making history&#8221; and being a part of this makes me proud.</p><p>Also, later this month I will be a speaker at <strong><a href="https://wroclaw.wordcamp.org/2024/">WordCamp Wroc&#322;aw</a></strong>, and again I will share a bit of my knowledge related to security. I&#8217;m both excited and happy that this is the last conference of the year. I&#8217;m in the middle of filling different CFPs for the next year and I have high hopes, especially for one conference &#129310;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QCQw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QCQw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg 424w, https://substackcdn.com/image/fetch/$s_!QCQw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg 848w, https://substackcdn.com/image/fetch/$s_!QCQw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!QCQw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QCQw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg" width="1081" height="1351" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1351,&quot;width&quot;:1081,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:371380,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QCQw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg 424w, https://substackcdn.com/image/fetch/$s_!QCQw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg 848w, https://substackcdn.com/image/fetch/$s_!QCQw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!QCQw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb35baae5-3964-4ad6-b185-a701b85ce647_1081x1351.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Oh, and one more thing before you go further - please vote for Patchstack in the <strong><a href="https://www.templatemonster.com/awards/category/security-wordpress-plugins/">TemplateMonster Awards</a></strong>. Thanks :)</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://github.com/WordPress/wporg-experiments-plugin">Plugin Closures in WordPress</a></strong></p><p>We waited 14 years for this to get into the WP core. It&#8217;s still not there and probably we&#8217;ll spend a year discussing the messaging, but it&#8217;s a huge step forward, and finally, users will be able to see information about closed plugins inside of their WP Admin. Kudos to Dion Hulse for pushing this.</p><p></p><p><strong><a href="https://kinsta.com/blog/wordpress-6-7/">What&#8217;s new in WordPress 6.7: Zoom Out mode, Meta boxes, Block Pattern API, and much more</a> &#8212; Carlo Daniele</strong></p><p><strong>Carlo</strong> is the best source of information about street food in Italy (Lampredotto &#10084;&#65039;) and about what changes in new releases of WordPress. This article is no other - WP 6.7 adds a lot of interesting changes and Carlo describes all the changes very thoroughly. </p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-97?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-97?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-97?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://htmx.org/essays/you-cant/">You Can't Build Interactive Web Apps Except as Single Page Applications... And Other Myths</a> &#8212; Tony Alaribe</strong></p><p>Tony wrote an amazing article debunking a lot of myths about MPAs. A lot of great examples. But what I liked the most, is the fact that this article also shows how browsers changed over the years and how much we can achieve.</p><p></p><p><strong><a href="https://statamic.com/addons/statamic/importer">Statamic Importer</a></strong></p><p>Statamic released a new importer lately and it&#8217;s amazing. I love its support for Gutenberg. It&#8217;s very easy to convert blocks to Bard sets. Soon, I will release an updated tutorial on this.</p><p></p><p><strong><a href="https://wafris.org/blog/rearchitecting-for-sqlite">Rearchitecting: Redis to SQLite</a> &#8212; Michael Buckbee</strong></p><p>This amazing article explains why Wafris switched from Redis to SQLite. I love that their key reason was the simplicity to install by users and speed was just a nice side effect. </p><p></p><p><strong><a href="https://thefragens.com/wordpress-on-hiatus/">WordPress on Hiatus </a>&#8212; Andy Fragen</strong></p><p>Andy is one of the most amazing WordPress contributors out there. He also has this amazing plugin called <strong>Git Updater</strong>. Sadly, with all the commotion in the WP ecosystem, he decided to pause some of his contributions. And I fully understand his point of view. Also, we really just can&#8217;t lose people like Andy.</p><p></p><p><strong><a href="https://expressionstatement.com/html-form-validation-is-heavily-underused">HTML Form Validation is heavily underused</a> &#8212; Expression Statement</strong></p><p>I hope that you&#8217;ll learn as much from this article as I did. I didn&#8217;t know about the setCustomValidity method and it looks powerful. </p><p></p><p><strong><a href="https://coditive.com/blog/is-wordpress-the-right-tool-for-building-mvp-a-comprehensive-guide/">Is WordPress the Right Tool for Building MVP? A Comprehensive Guide</a> &#8212; Pawe&#322; Madeja</strong></p><p>Pawe&#322; makes a great point explaining why WordPress is so perfect for MVPs. While not perfect, it gives a great balance of stability, ease of use, and features. </p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #96]]></title><description><![CDATA[This week: WordPress, Astro and Statamic more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-96</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-96</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Thu, 24 Oct 2024 15:22:34 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/89beff12-eabf-4bc7-83a7-db9477e7feb9_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>So, the Matt vs WPngine war continues, and looking at the casualties all around it&#8217;s getting worse and worse. Many contributors are backing off from contributing. I really hope that this will stop sooner rather than later.</p><p>Also, I just realized that about a year ago, Kinsta decided to lay off quite a lot of people. I still remember it as a horrible experience. On the other hand, now I&#8217;m at Patchstack and I feel that it&#8217;s a really good place to be. We have so many plans, I just wait to share them with you.</p><p>Also, I finally have to write about how amazing <strong>Come to Code</strong> was. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cfW8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cfW8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg 424w, https://substackcdn.com/image/fetch/$s_!cfW8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg 848w, https://substackcdn.com/image/fetch/$s_!cfW8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!cfW8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cfW8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:250968,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cfW8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg 424w, https://substackcdn.com/image/fetch/$s_!cfW8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg 848w, https://substackcdn.com/image/fetch/$s_!cfW8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!cfW8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a5fbebd-37e1-4e9a-9642-6dcc36fc9e5d_1881x1254.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/i-was-at-wordcamp-gdynia-2024/">I was at WordCamp Gdynia 2024</a> &#8212; Maciek Palmowski</strong></p><p>Finally, I summed up what happened at WordCamp Gdynia. In short - it was amazing like always. </p><p></p><p><strong><a href="https://x.com/aarondfrancis/status/1810396569814053336?t=ugigHp6Lf64GII-uBjjFKQ&amp;s=09">We shipped dark and light mode for videos</a> &#8212; Aaron Francis</strong></p><p>It&#8217;s impossible to change light/dark mode in videos, right? RIGHT? Check this thread to learn that you are wrong (kind of).</p><p>Seriously though - this is one of those useless features that everyone just loves.</p><p></p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-96?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-96?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-96?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://pento.net/2024/10/17/howto-fork-wordpress/">HOWTO: Fork WordPress</a> &#8212; Gary Pendergast</strong></p><p>Gary wrote an amazing post about forking software. While it&#8217;s technically very simple - you just go to GitHub and press &#8220;fork&#8221;, a lot is happening behind it. I love the part explaining why it&#8217;s important not to have just the angry mob behind you.</p><p></p><p><strong><a href="https://patchstack.com/articles/security-implications-of-wordpress-repository-access-restrictions-and-plugin-closures/">Security implications of WordPress repository access restrictions and plugin closures</a> &#8212; Oliver Sild</strong></p><p>Oliver explains the security-related consequences of what is happening right now in the WP ecosystem.</p><p></p><p><strong><a href="https://astro.build/blog/content-layer-deep-dive/">Content Layer: A Deep Dive</a> &#8212; Matt Kane</strong></p><p>Matt explains how the Content Layer works in Astro. He shows both a simple and a more advanced example. I already tried it with WP and both the DX and speed of the Content Layer are amazing.</p><p></p><p><strong><a href="https://statamic.dev/from-wordpress-to-statamic">Switching From WordPress to Statamic</a></strong> </p><p>Statamic published a great article comparing and explaining the differences between CMSs. If you are thinking about switching, you should take a look.</p><p></p><p><strong><a href="https://commandui.com/">CommandUI</a> - Calvin Alkan</strong></p><p>If you use WordPress, like command bars - CommandUI is definitely a tool for you. I&#8217;m using the beta version and it&#8217;s really slick :D Amazing job Calvin. </p><p></p><p><strong><a href="https://fetch-php.thavarshan.com/">Fetch PHP</a> &#8212; Jerome Thayananthajothy</strong></p><p>Fetch PHP is an amazing library for that makes the syntax more similar to the JS one. I really like the developer experience here. Also, it uses Guzzle underneath, which is amazing.</p><p></p><p><strong><a href="https://nuxt.studio/changelog/frontmatter-form">Visual front-matter edition</a> &#8212; Baptiste Leproux</strong></p><p>I love how Nuxt Studio is getting better and better. I&#8217;m also a bit jealous that Nuxt Studio is just for Nuxt. </p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What happened last week - issue #95]]></title><description><![CDATA[This week: PHP, WordPress, Astro and more]]></description><link>https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-95</link><guid isPermaLink="false">https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-95</guid><dc:creator><![CDATA[Maciek Palmowski]]></dc:creator><pubDate>Thu, 10 Oct 2024 13:04:13 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/94f538ca-daea-4d93-a18d-1f70e793ed42_1104x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What happened last week</h2><p>Yesterday, I finally finished my conference marathon for this month. Speaking at <strong>WordCamp Gdynia</strong> and <strong>WarsawJS</strong> was an amazing adventure, and I&#8217;m also really happy with how I've improved over the years. I remember my first talk - it was a disaster. But now? I feel great on stage. I think I even learned to use a normal microphone.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fblj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fblj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg 424w, https://substackcdn.com/image/fetch/$s_!fblj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg 848w, https://substackcdn.com/image/fetch/$s_!fblj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!fblj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fblj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg" width="1456" height="1941" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1941,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:352284,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fblj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg 424w, https://substackcdn.com/image/fetch/$s_!fblj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg 848w, https://substackcdn.com/image/fetch/$s_!fblj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!fblj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f380cfe-ae06-4e9d-9b06-85f2b9c03169_1536x2048.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>But the year isn&#8217;t over yet and probably you&#8217;ll see me at one more conference. More info soon.</p><p>Apart from the conferences - the <strong>Automattic vs WP Engine</strong> war took all the headlines. I try not to be involved and not share my views publicly, because it&#8217;s a rather complicated case and both sides have their rights and wrongs. On the other hand - how it&#8217;s handled with disclosing a vulnerability publicly, mass blocking or the checkbox - that&#8217;s just horrible and hurts not only both sides but also the whole community.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Interesting links</h2><p><strong><a href="https://maciekpalmowski.dev/blog/wordpress-security-is-it-really-that-bad/">WordPress Security - is it really that bad?</a> &#8212; Maciek Palmowski</strong></p><p>In Gdynia, I talked about WordPress security, but as always, I converted it into an article. You can learn a bit about how WP security improved over the years and what are still its biggest pain points. </p><p></p><p><strong><a href="https://htmx.org/essays/why-gumroad-didnt-choose-htmx/">Why Gumroad Didn't Choose htmx</a> &#8212; Sahil Lavingia</strong></p><p>I love htmx for memes and stupid jokes but also for transparency in explaining that it&#8217;s not a tool for every project. Here we can learn why Gumroad decided not to use htmx - based on their needs, it was a great decision. </p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-95?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thank you for reading this issue of my newsletter. If you like it, don&#8217;t forget to share it with others.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-95?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.maciekpalmowski.dev/p/what-happened-last-week-issue-95?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p><strong><a href="https://statamic.com/blog/dynamic-asset-folders">Introducing &#8212; Dynamic Asset Folders!</a> &#8212; Joshua Blum</strong></p><p>Finally - that was one of those features that I missed in Statamic, but now you can finally have asset folders created automatically. Just pure love for this update.</p><p></p><p><strong><a href="https://github.com/withastro/storefront/">Astro Storefront</a></strong></p><p>So, Astro just released a storefront solution. It uses Stripe and looks pretty amazing. At this moment - it has a lot less features than WooCommerce or Shopify, but this solution seems perfect for smaller stores.</p><p></p><p><strong><a href="https://www.wpgraphql.com/2024/10/07/wpgraphql-becomes-a-canonical-plugin-my-move-to-automattic">WPGraphQL Becomes a Canonical Plugin: My Move to Automattic</a> &#8212; Jason Bahl</strong></p><p>With everything that&#8217;s happening around A8C vs WPE, this seems like an unsuspected move. But yeah - Jason and WPGraphQL move to A8C, where this plugin will be developed further. Who knows - maybe at some point it will become part of the core. We&#8217;ll see :) </p><p></p><p><strong><a href="https://dri.es/solving-the-maker-taker-problem">Solving the Maker-Taker problem</a> &#8212; Dries Buytaert</strong></p><p>A very interesting take on how Drupal solved the Maker-Taker problem. Dries also shares a few tips on how WP could try this too. I like how more active companies get a better place on Drupal Marketplace etc. In short - by contributing you gain something more than just a warm feeling in your heart. </p><p></p><p><strong><a href="https://stattic.site/">Stattic - Decentralized Publishing</a> &#8212; Robert DeVore</strong></p><p>Robert decided it was a great moment to build another static site generator. But not just any SSG, one that plays nice WordPress and allows you to migrate your data quickly. Give it a try.</p><p></p><p>And how was your week? Did you learn something interesting? Don&#8217;t hesitate to press the&nbsp;<strong>reply&nbsp;</strong>button or share your thoughts in the comment section.</p><p>Cheers,</p><p>Maciek</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.maciekpalmowski.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading What Happened Last Week! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item></channel></rss>