<?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[Segfault]]></title><description><![CDATA[A weekly curation of practical tips, resources, and ideas to help you become a PRO software developer. Laravel, PHP, and Web Development 🚀]]></description><link>https://newsletter.phpfour.com</link><image><url>https://substackcdn.com/image/fetch/$s_!XgIv!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99f3dba-b14a-4d9d-8c7c-99a8afc49a70_1181x1181.png</url><title>Segfault</title><link>https://newsletter.phpfour.com</link></image><generator>Substack</generator><lastBuildDate>Fri, 10 Apr 2026 20:24:25 GMT</lastBuildDate><atom:link href="https://newsletter.phpfour.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Mohammad Emran]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[phpfour@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[phpfour@substack.com]]></itunes:email><itunes:name><![CDATA[Mohammad Emran Hasan]]></itunes:name></itunes:owner><itunes:author><![CDATA[Mohammad Emran Hasan]]></itunes:author><googleplay:owner><![CDATA[phpfour@substack.com]]></googleplay:owner><googleplay:email><![CDATA[phpfour@substack.com]]></googleplay:email><googleplay:author><![CDATA[Mohammad Emran Hasan]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Speaking at Laracon, Product Validation, Gifts for you 🎉]]></title><description><![CDATA[My Laracon IN experience. How my product got validated. 3 awesome articles. 3 great PHP/Laravel packages. Specials discounts & coupons.]]></description><link>https://newsletter.phpfour.com/p/segfault-6-speaking-at-laracon-product</link><guid isPermaLink="false">https://newsletter.phpfour.com/p/segfault-6-speaking-at-laracon-product</guid><pubDate>Tue, 31 Oct 2023 04:15:07 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!kCnL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kCnL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kCnL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg 424w, https://substackcdn.com/image/fetch/$s_!kCnL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg 848w, https://substackcdn.com/image/fetch/$s_!kCnL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!kCnL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kCnL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.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;:776054,&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_!kCnL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg 424w, https://substackcdn.com/image/fetch/$s_!kCnL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg 848w, https://substackcdn.com/image/fetch/$s_!kCnL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!kCnL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e99eaeb-7212-4b99-affd-255aae9d4a47_4800x3200.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">Speaking at <strong>Laracon IN 2023</strong></figcaption></figure></div><p>Hello Friends &#128075;&#127995;</p><p>Welcome to the sixth edition of the <strong>Segfault</strong> newsletter.</p><p>It&#8217;s good to be back after so many months on the hiatus &#8212; I had to go through some soul-crushing experiences in my personal life and some of those have fundamentally altered the way I think about life. BTW, I just <strong>turned 40</strong> this September, yay! &#127881;</p><p>Amidst the chaos, one thing stands out as a professional achievement: being able to speak at <strong>Laracon IN 2023</strong>. It was such a fun event, thanks to the amazing team behind it. I got to meet the Laravel core team and make some friends. </p><p>I delivered a fast-paced talk on <strong>Creating a Reporting Builder for Laravel</strong>. I showed a proof-of-concept on how easily one can build reports without sweat and tears. I also showed them a glimpse of the (unreleased) landing page of a Report Builder product I am working on. </p><p>The topic resonated well with quite a few people from the audience and they came up to me after the session to share their interest. I was overwhelmed with joy listening to their feedback. It also gave me some kind of validation about my product idea &#128524; </p><p><em>PS. Interested to hear more about the reporting product? Hit that reply button!</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.phpfour.com/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 Segfault! 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><div><hr></div><h3><strong>&#128083; Recommended Readings</strong></h3><p>I read quite a few great articles over the last few months, so it&#8217;s difficult to pick only 3 from them. Nevertheless, here are my top 3 picks for you:</p><ol><li><p><strong><a href="https://blog.samaltman.com/how-to-be-successful">How To Be Successful</a></strong> &#8211; In this 5-year-old blog post, <strong>Sam Altman</strong>, the CEO of OpenAI, has shared 13 impeccable traits that would set someone up for above-average success. We all know some of the traits (&#8220;focus&#8221;, &#8220;work hard&#8221;, etc.) but there are some good ones that are not get brought up every day. It is a good piece worth coming back to every couple of months.</p></li></ol><ol start="2"><li><p><strong><a href="https://aschmelyun.com/blog/the-crippling-problem-of-being-able-to-build-whatever-you-want/">The crippling problem of being able to build whatever you want</a></strong> &#8211; In this thought-provoking article by <strong>Andrew Schmelyun</strong>, the author has tried to shed some light on why we developers have so many unfinished projects. He does this nicely by comparing the work we do with others with similar creative passion. He also shares his own strategies on how he tackles this. A great read.</p></li></ol><ol start="3"><li><p><strong><a href="https://martinjoo.dev/devops-with-laravel-dockerizing-a-laravel-application">DevOps With Laravel: Dockerizing a Laravel application</a></strong> &#8211; In this long-form article, author <strong>Martin Joo</strong> has gone in-depth on how you can practically dockerize your Laravel application. It is hands-down the most detailed write-up I&#8217;ve seen on this topic. He showed how you can dockerize a standard Laravel application, along with Vue support and even the scheduler/worker.</p></li></ol><p>If you have come across a great write-up and want me to share it with others, feel free to reply to this and/or write in a comment.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.phpfour.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Segfault&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.phpfour.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Segfault</span></a></p><div><hr></div><h3>&#128230; Great PHP/Laravel Packages</h3><p>I came across some nice packages over the last few months that I&#8217;ve bookmarked myself and would recommend to others. Here are 3 of them:</p><ol><li><p><strong><a href="https://github.com/owen-it/laravel-auditing">Laravel Auditing</a></strong> &#8212; This package will help you understand changes in your Eloquent models, by providing information about possible discrepancies and anomalies that could indicate business concerns or suspect activities. This becomes essential when working with any enterprise-level application.</p></li><li><p><strong><a href="https://github.com/loupe-php/loupe">Loupe</a></strong> &#8212; A rather remarkable package that provides a full-text search engine with tokenization, stemming, typo tolerance, filters, and geo support based on only PHP and SQLite. It&#8217;s the easiest way to replace the good old SQL <code>LIKE %...%</code> queries with a way better search experience but without all the hassle of an additional service to manage.</p></li><li><p><strong><a href="https://github.com/MohsenAbrishami/stethoscope">Stethoscope</a></strong> &#8212; This Laravel package allows you to monitor the infra your application is running on. With this package, you can check the server&#8217;s health at any time: monitoring the CPU, memory, hard disk, web server, and network. They&#8217;ve thrown in a nice UI with historical trends of the metric, too. </p></li></ol><div><hr></div><h3>&#128038; <strong>Tweetworthy</strong></h3><p>This tweet thread is over three years old but has some real golden nuggets within it on how to improve your pricing strategies as a freelancer.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://twitter.com/tom_hirst/status/1277933730078785537" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!J5VP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png 424w, https://substackcdn.com/image/fetch/$s_!J5VP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png 848w, https://substackcdn.com/image/fetch/$s_!J5VP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png 1272w, https://substackcdn.com/image/fetch/$s_!J5VP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!J5VP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png" width="526" height="343" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:343,&quot;width&quot;:526,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:28307,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://twitter.com/tom_hirst/status/1277933730078785537&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!J5VP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png 424w, https://substackcdn.com/image/fetch/$s_!J5VP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png 848w, https://substackcdn.com/image/fetch/$s_!J5VP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png 1272w, https://substackcdn.com/image/fetch/$s_!J5VP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51404062-0f17-464e-bef8-8ca8dae329b5_526x343.png 1456w" sizes="100vw" loading="lazy"></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>Tom goes at length in explaining the pros and cons of the various pricing strategies that you can apply, based on your project&#8217;s requirements: </p><ul><li><p>Hourly billing</p></li><li><p>Daily billing</p></li><li><p>Retainers</p></li><li><p>Fixed-pricing</p></li><li><p>Value-based pricing</p></li></ul><p>He also added some nice strategies that look so obvious when you read them, but we forget to apply them when we come across the chance (ex: <em>When a hard deadline is introduced to a fixed-price project, add 20% to the price</em>). </p><p>Overall, it's a great thread to keep handy whenever you&#8217;re pricing your next freelancing project.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.phpfour.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Segfault&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.phpfour.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Segfault</span></a></p><div><hr></div><h3>&#127881; Gifts for You!</h3><p>I couldn&#8217;t be more excited to share some gifts with you IRL but nevertheless digital we go. A few amazing founders and writers have shared some nice discounts for you guys!</p><h4><a href="https://devops-with-laravel.io/">1. DevOps with Laravel</a></h4><p>This is an amazing resource from <strong>Martin Joo</strong>, one of the most well-known members of the Laravel community for his in-depth technical articles. It&#8217;s a massive <strong>465-page</strong> guide that teaches you how to be better at infrastructure and architecture. </p><p>In the book, he takes a typical Laravel app with the following components: API, Vue SPA, MySQL database, Redis queue, multiple worker processes, and scheduler. Then prepare it for production and deploy it using different techniques. Starting with simple shell scripts and then moving on to Docker and containers all the way to Kubernetes and serverless solutions.</p><p>Martin has generously offered a <strong>30% discount</strong> for you guys only. Use the coupon code &#8220;<strong>040A3EB7&#8221;</strong> at checkout to avail this &#127873;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://devops-with-laravel.io/" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bDOa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png 424w, https://substackcdn.com/image/fetch/$s_!bDOa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png 848w, https://substackcdn.com/image/fetch/$s_!bDOa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png 1272w, https://substackcdn.com/image/fetch/$s_!bDOa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bDOa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png" width="590" height="444.5260989010989" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1097,&quot;width&quot;:1456,&quot;resizeWidth&quot;:590,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://devops-with-laravel.io/&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!bDOa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png 424w, https://substackcdn.com/image/fetch/$s_!bDOa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png 848w, https://substackcdn.com/image/fetch/$s_!bDOa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png 1272w, https://substackcdn.com/image/fetch/$s_!bDOa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88aea14e-9241-4d0c-9dca-b43f35690a05_2100x1582.png 1456w" sizes="100vw" loading="lazy"></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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://devops-with-laravel.io/&quot;,&quot;text&quot;:&quot;Grab the Book!&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://devops-with-laravel.io/"><span>Grab the Book!</span></a></p><p></p><h4><a href="https://sqlfordevs.com/ebooks/indexing">2. Indexing Beyond the Basics</a></h4><p>There is a scarcity of quality content on the practical Database optimization and performance tuning. <strong>Tobias Petry</strong> (<em>the Database Guy</em>) is one of the few developers who has invested a lot of time into sharing valuable tips and guides with the community regarding this.</p><p>In his latest book, <strong>Indexing Beyond the Basics</strong>, he has gone in-depth on indexing and query optimization like never seen before &#8212; filled with deep analysis, great graphics, and practical use cases. He also added a few videos to help illustrate the concepts visually. If I were you, I&#8217;d grab this book instantly. </p><p>Tobias shared a generous <strong>20% discount</strong> for you. Use the code &#8220;<strong>SEGFAULT20&#8221;</strong> during checkout.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://sqlfordevs.com/ebooks/indexing" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6cNJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png 424w, https://substackcdn.com/image/fetch/$s_!6cNJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png 848w, https://substackcdn.com/image/fetch/$s_!6cNJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png 1272w, https://substackcdn.com/image/fetch/$s_!6cNJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6cNJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png" width="1456" height="764" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:764,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://sqlfordevs.com/ebooks/indexing&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!6cNJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png 424w, https://substackcdn.com/image/fetch/$s_!6cNJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png 848w, https://substackcdn.com/image/fetch/$s_!6cNJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png 1272w, https://substackcdn.com/image/fetch/$s_!6cNJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb11c05f-fd3a-473b-9494-eea6dc9f72f2_2400x1260.png 1456w" sizes="100vw" loading="lazy"></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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://sqlfordevs.com/ebooks/indexing&quot;,&quot;text&quot;:&quot;Grab the Book!&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://sqlfordevs.com/ebooks/indexing"><span>Grab the Book!</span></a></p><p></p><h4><a href="https://releem.com/">3. Releem: </a><strong><a href="https://releem.com/">MySQL Performance Tuning Tool</a></strong></h4><p>Keeping your database performance up to an acceptable and efficient level is of paramount importance for any serious application. We, the developers, sometimes struggle here trying to get into the pesky details of figuring out the nitty-gritty of server and database tuning.</p><p>To rescue us all, <strong>Roman Agabekov</strong>, the founder &amp; CEO of <strong>Releem</strong>, has come up with a really handy service that does the performance tuning of your MySQL database automatically. It works seamlessly and also provides you with a monitoring dashboard to check the health and performance trends over time.</p><p>Roman was generous enough to provide a <strong>10% discount</strong> for you all. Use the coupon code <strong>&#8220;E28E7C96&#8221;</strong> during checkout to get this applied to your invoices.  </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://releem.com/" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VMYi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png 424w, https://substackcdn.com/image/fetch/$s_!VMYi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png 848w, https://substackcdn.com/image/fetch/$s_!VMYi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png 1272w, https://substackcdn.com/image/fetch/$s_!VMYi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VMYi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png" width="1394" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1394,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:321321,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://releem.com/&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!VMYi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png 424w, https://substackcdn.com/image/fetch/$s_!VMYi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png 848w, https://substackcdn.com/image/fetch/$s_!VMYi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png 1272w, https://substackcdn.com/image/fetch/$s_!VMYi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22f14a33-01c4-4395-b9b5-74e66449262d_1394x971.png 1456w" sizes="100vw" loading="lazy"></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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://releem.com/&quot;,&quot;text&quot;:&quot;Get the Service!&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://releem.com/"><span>Get the Service!</span></a></p><p></p><h4><a href="https://userdoc.fyi/">4. Userdoc: Software Requirements powered by AI</a></h4><p>Most software projects fail due to poor requirements. Unless a team spends time to properly communicate, analyze, document, and approve the business requirements &#8212; it bites them back in the future and risks the success of the project.</p><p>To solve this problem, founder <strong>Chris Rickard</strong> has built <strong>Userdoc</strong>. It empowers product and/or development teams with sophisticated AI that ensures their project has the best chance of success. It has a very intuitive user experience, with collaboration tools, versioning support, sharing abilities, etc. among other features.</p><p>Chris has shared a <strong>10% discount for 3 months </strong>for us all. Use the coupon code &#8220;<strong>10OFF3MTH</strong>&#8221; during checkout to grab this generous offer.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://userdoc.fyi/" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BlLM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png 424w, https://substackcdn.com/image/fetch/$s_!BlLM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png 848w, https://substackcdn.com/image/fetch/$s_!BlLM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png 1272w, https://substackcdn.com/image/fetch/$s_!BlLM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BlLM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png" width="680" height="383" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:383,&quot;width&quot;:680,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://userdoc.fyi/&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!BlLM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png 424w, https://substackcdn.com/image/fetch/$s_!BlLM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png 848w, https://substackcdn.com/image/fetch/$s_!BlLM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png 1272w, https://substackcdn.com/image/fetch/$s_!BlLM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfccffd1-9f4c-4a58-9807-f30693c992ff_680x383.png 1456w" sizes="100vw" loading="lazy"></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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://userdoc.fyi/&quot;,&quot;text&quot;:&quot;Get the Service!&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://userdoc.fyi/"><span>Get the Service!</span></a></p><p></p><h4><a href="https://dub.sh/backpack-phpfour">5. Backpack for Laravel </a></h4><p>Backpack is a collection of free and paid Laravel packages that help you <strong>build custom administration panels</strong> for your web applications. It was founded by <strong>Cristian T&#259;b&#259;citu</strong> almost 7 years ago and has a strong loyal user base that is growing rapidly every month.</p><p>Unlike the other Administration panel builders, Backpack is <strong>super flexible</strong> and doesn&#8217;t have any additional requirements beyond the standard Laravel setup. You can <strong>customize</strong> every aspect of it thanks to the intuitive template loading functionality.</p><p>It has over <strong>25+ columns</strong> to be used in the CRUD, <strong>50+ fields</strong> for use in the forms, built-in support for bulk operations, exporting, user permissions, widgets, and so much more. </p><p>You can even generate a fully functional CRUD panel in <em>less than 5 minutes</em> using the <strong>DevTool</strong>. It will create the migration, factory, seeder, model, controllers, and views for you. Check out the <a href="https://dub.sh/backpack-phpfour">intro video</a> to get a feel of what&#8217;s possible &#128526;</p><p>Here is a <strong>20% discount</strong> code from yours truly to get you started. Use the coupon code &#8220;<strong>SUPER-Q04Z4</strong>&#8221; during checkout to join the party!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://dub.sh/backpack-phpfour" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F-yj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png 424w, https://substackcdn.com/image/fetch/$s_!F-yj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png 848w, https://substackcdn.com/image/fetch/$s_!F-yj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png 1272w, https://substackcdn.com/image/fetch/$s_!F-yj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F-yj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png" width="1339" height="849" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:849,&quot;width&quot;:1339,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:428126,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://dub.sh/backpack-phpfour&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!F-yj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png 424w, https://substackcdn.com/image/fetch/$s_!F-yj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png 848w, https://substackcdn.com/image/fetch/$s_!F-yj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png 1272w, https://substackcdn.com/image/fetch/$s_!F-yj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80f11618-7ce1-423c-a0db-bf147c7dc8b1_1339x849.png 1456w" sizes="100vw" loading="lazy"></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 class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dub.sh/backpack-phpfour&quot;,&quot;text&quot;:&quot;Grab the Packages!&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://dub.sh/backpack-phpfour"><span>Grab the Packages!</span></a></p><div><hr></div><p>That&#8217;s all for today. Feel free to hit that reply button if you want to share something interesting with me. Or write a comment for everybody to see!</p><p>Follow me on <a href="https://twitter.com/phpfour">Twitter</a> to get the other stuff I am sharing that won&#8217;t be included in this newsletter &#128521;</p><p>Thank you for subscribing. </p><p><strong>Mohammad Emran</strong>&nbsp;&nbsp;</p><div class="pullquote"><p><em>PS. If you enjoyed my writing above or found the resources I shared helpful, it would be of great help if you let your friends know about this newsletter by sharing it &#129308; &#129307;</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Segfault&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Segfault</span></a></p></div>]]></content:encoded></item><item><title><![CDATA[Level up with Laravel 10 🎉]]></title><description><![CDATA[Welcome to the fifth edition of the Segfault newsletter. It has a new section with a bit of fun. Also included: 3 articles, 3 PHP packages, and 1 tweet!]]></description><link>https://newsletter.phpfour.com/p/segfault-5-level-up-with-laravel</link><guid isPermaLink="false">https://newsletter.phpfour.com/p/segfault-5-level-up-with-laravel</guid><pubDate>Tue, 14 Feb 2023 20:40:04 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!DsDL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DsDL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DsDL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg 424w, https://substackcdn.com/image/fetch/$s_!DsDL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg 848w, https://substackcdn.com/image/fetch/$s_!DsDL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!DsDL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DsDL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg" width="1456" height="728" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:728,&quot;width&quot;:1456,&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_!DsDL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg 424w, https://substackcdn.com/image/fetch/$s_!DsDL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg 848w, https://substackcdn.com/image/fetch/$s_!DsDL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!DsDL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f9b8d2b-50a4-4dd8-ad7c-ce38969615b7_2200x1100.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">Photo by <a href="https://laravel-news.com/">Laravel News</a></figcaption></figure></div><p>Hello Friends &#128075;&#127995;</p><p>Welcome to the fifth edition of the <strong>Segfault</strong> newsletter.</p><p>After a long wait, <strong>Laravel 10</strong>, the latest version of the most favorite PHP framework has been released today! The core team worked relentlessly to bring this feature-packaged release to the community.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://twitter.com/taylorotwell/status/1625523834236420159&quot;,&quot;full_text&quot;:&quot;&#127881; We are proud to announce the release of Laravel 10! \n\nLaravel 10 is packed with new and improved features, including:\n\n&#10004;&#65039; Types for the application skeleton and starter kits.\n&#10004;&#65039; The Process facade &#8212; process management with wonderful DX.\n&#10004;&#65039; Laravel <a class=\&quot;tweet-url\&quot; href=\&quot;https://blog.laravel.com/laravel-v10-released\&quot;>blog.laravel.com/laravel-v10-re&#8230;</a>&#8230; https://t.co/3piquFG5wT&quot;,&quot;username&quot;:&quot;taylorotwell&quot;,&quot;name&quot;:&quot;Taylor Otwell &#129680;&quot;,&quot;profile_image_url&quot;:&quot;&quot;,&quot;date&quot;:&quot;Tue Feb 14 15:54:17 +0000 2023&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:0,&quot;retweet_count&quot;:419,&quot;like_count&quot;:1436,&quot;impression_count&quot;:0,&quot;expanded_url&quot;:{},&quot;video_url&quot;:null,&quot;belowTheFold&quot;:false}" data-component-name="Twitter2ToDOM"></div><p>A very high-level list of changes coming to this version:</p><ul><li><p>The minimum version is <strong>PHP</strong> <strong>8.1</strong> now, dropping <strong>PHP 8.0</strong> support</p></li><li><p><strong>Argument and return types</strong> were added to all method signatures in the application skeleton and all stubs.</p></li><li><p><strong>Laravel Pennant</strong>, a new first-party package, will offer a lightweight, streamlined approach to managing the application's feature flags.</p></li><li><p>A beautiful abstraction layer for starting and interacting with external processes via a <strong>new </strong><code>Process</code><strong> facade</strong> has been added.</p></li><li><p>The Artisan <code>test</code> command has received a <strong>new </strong><code>--profile</code><strong> option</strong> that allows to easily identify the slowest tests in the application.</p></li><li><p><strong>The built-in </strong><code>make</code><strong> commands</strong> no longer require any input. If the commands are invoked without input, users will be prompted for the required arguments.</p></li></ul><p>Head over to these blog posts to know the above changes in detail:</p><ul><li><p><a href="https://laravel-news.com/laravel-10">A Look at What's Coming to Laravel 10</a> by Laravel News</p></li><li><p><a href="https://benjamincrozat.com/laravel-10">Laravel 10: release date and new features</a> by Benjamin Crozat</p></li><li><p><a href="https://laravel.com/docs/10.x/releases">Release notes of Laravel 10</a> in Laravel Documentation</p></li></ul><p>PS. I made a <a href="https://laravel.com/docs/10.x/pennant#adding-custom-pennant-drivers">tiny contribution</a> to the Laravel Pennant documentation &#128515;</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.phpfour.com/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 Segfault! 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><div><hr></div><h3><strong>&#128083; Recommended Readings</strong></h3><p>I read a few great articles over the week, so here are my top 3 picks for you.</p><ol><li><p><strong><a href="https://shawnmc.cool/2023-02-13_active-record-how-we-got-persistence-perfectly-wrong">Active Record: How We Got Persistence Perfectly Wrong</a></strong> &#8211; In this blog post, the author Shawn McCool presented a very detailed look at some of the pitfalls of using Active Record in a large application. Some of his points resonated well with me and I am going to put extra effort to avoid the scenarios he alerted here.</p></li></ol><ol start="2"><li><p><strong><a href="https://world.hey.com/dhh/how-it-started-how-it-s-going-baefaf09">How it started / how it's going</a></strong> &#8211; The legend David Heinemeier Hansson (DHH) compared his recently viral office space with a rare photo of his original office space where he created Ruby on Rails. He made a great point that real satisfaction should come from doing creative work, not from second-degree things. A great read.</p></li></ol><ol start="3"><li><p><strong><a href="https://open.substack.com/pub/pragmaticengineer/p/real-world-eng-8?r=74yzf&amp;utm_campaign=post&amp;utm_medium=web">Real-world Engineering Challenges #8: Breaking up a Monolith</a></strong> &#8211; In this long-form article, author <strong>Gergely Orosz</strong> illustrated how Khan Academy took a 1 million-line Python monolith and split it into ~40 Go services in a more than 3 year-long project. Migrations are always hard. I love learning the pesky details of massive migration like this &#8212; gives you a lot of new perspectives.</p></li></ol><p>If you have come across a great write-up and want me to share it with others, feel free to reply to this and/or write in a comment.</p><div><hr></div><h3>&#128230; Great PHP Packages</h3><p>A couple of notable packages I&#8217;ve come across that I&#8217;ve bookmarked myself and would recommend to others.</p><ol><li><p><strong><a href="https://github.com/Sammyjo20/Saloon">Saloon</a></strong> &#8212; Saloon is a fluent, object-oriented wrapper to build API integration or PHP SDK. It makes sharing API requests throughout a Laravel application a breeze.</p></li><li><p><strong><a href="https://github.com/5balloons/laravel-smart-ads">Ad Manager for Laravel</a></strong> &#8212; This package provides a simple Ad, Banner, and Callouts Manager for Laravel. It comes with an ad manager dashboard where you can define the ads and then later can embed them in the views. A neat package. </p></li><li><p><strong><a href="https://github.com/laravel-workflow/laravel-workflow">Laravel Workflow</a></strong> &#8212; A package that provides tools for defining and managing workflows and activities. It can be used to automate and manage complex processes, such as financial transactions, data analysis, data pipelines, and other business processes. You can break down large, complex processes into smaller, modular units that can be easily maintained and updated. </p></li></ol><div><hr></div><h3>&#128038; <strong>Tweetworthy</strong></h3><p>One tweet on goal setting gave me a new perspective and forced me to rethink my goals for 2023 &#129327;</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://twitter.com/nathanbarry/status/1624069922031833088&quot;,&quot;full_text&quot;:&quot;Most people suck at setting goals.\n\nThe reason is they optimize for the destination, not the journey. \n\nHere&#8217;s what to do instead:&quot;,&quot;username&quot;:&quot;nathanbarry&quot;,&quot;name&quot;:&quot;Nathan Barry&quot;,&quot;profile_image_url&quot;:&quot;&quot;,&quot;date&quot;:&quot;Fri Feb 10 15:36:57 +0000 2023&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:0,&quot;retweet_count&quot;:51,&quot;like_count&quot;:381,&quot;impression_count&quot;:0,&quot;expanded_url&quot;:{},&quot;video_url&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>Nathan proposed that many of us see goal setting from the wrong perspective and focus only on the outcome &#8212; leaving the journey neglected. Whereas the journey should also be a part of the goal and should be carefully reviewed to see if we want to go through it. He uses the famous Mexican fisherman's story to illustrate the point. A good thread that should be saved and revisited every now &amp; then.</p><div><hr></div><h3>&#127881; Laugh-a-little</h3><p>Enjoy a little fun in this new section of the newsletter &#128584;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kqaw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kqaw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png 424w, https://substackcdn.com/image/fetch/$s_!kqaw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png 848w, https://substackcdn.com/image/fetch/$s_!kqaw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png 1272w, https://substackcdn.com/image/fetch/$s_!kqaw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kqaw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&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;:true,&quot;topImage&quot;:false,&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_!kqaw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png 424w, https://substackcdn.com/image/fetch/$s_!kqaw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png 848w, https://substackcdn.com/image/fetch/$s_!kqaw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png 1272w, https://substackcdn.com/image/fetch/$s_!kqaw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd132b12b-933c-4b2a-ad28-62db291af706_4800x4800.png 1456w" sizes="100vw" loading="lazy"></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">Comic by <a href="https://workchronicles.com/">Work Chronicles</a></figcaption></figure></div><div><hr></div><p>That&#8217;s all for this week. Feel free to hit that reply button if you have a question or if you would like to open a discussion.</p><p>Follow me on <a href="https://twitter.com/phpfour">Twitter</a> to get the other stuff I am sharing that won&#8217;t be included in this newsletter &#128521;</p><p>Thank you for subscribing. </p><p>&#8211; <strong>Mohammad Emran</strong>&nbsp;&nbsp;</p><div class="pullquote"><p><em>PS. If you enjoyed my writing above or found the resources I shared helpful, it would be of great help if you let your friends know about this newsletter by sharing it &#129308; &#129307;</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Segfault&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Segfault</span></a></p></div>]]></content:encoded></item><item><title><![CDATA[An empty week!]]></title><description><![CDATA[Welcome to the fourth edition of the Segfault newsletter. It has a new section called Book Alert. Also included: 3 articles, 3 PHP packages, and 1 tweet!]]></description><link>https://newsletter.phpfour.com/p/segfault-4-an-empty-week</link><guid isPermaLink="false">https://newsletter.phpfour.com/p/segfault-4-an-empty-week</guid><pubDate>Wed, 01 Feb 2023 03:20:54 GMT</pubDate><enclosure url="https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1456w" sizes="100vw"><img src="https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" width="1080" height="720" data-attrs="{&quot;src&quot;:&quot;https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;An open empty notebook on a white desk next to an iPhone and a MacBook&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpg&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="An open empty notebook on a white desk next to an iPhone and a MacBook" title="An open empty notebook on a white desk next to an iPhone and a MacBook" srcset="https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1488998427799-e3362cec87c3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTB8fHN0cmVzc3xlbnwwfHx8fDE2NzUyMTU3NzM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 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">Photo by <a href="https://unsplash.com/@jeshoots">JESHOOTS.COM</a> on <a href="https://unsplash.com">Unsplash</a></figcaption></figure></div><p>Hello Friends &#128075;&#127995;</p><p>Welcome to the fourth edition of the <strong>Segfault</strong> newsletter. </p><p>An entire week has passed by since the last time I wrote to you guys and since then, I did almost nothing productive in terms of tangible work. Now,  this is no surprise to me &#8212; for the last several years, I have experienced mental blocks like this 2-3 times a year when I am unable to get anything done for days, sometimes weeks. I wonder if this is burnout. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JztQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JztQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png 424w, https://substackcdn.com/image/fetch/$s_!JztQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png 848w, https://substackcdn.com/image/fetch/$s_!JztQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png 1272w, https://substackcdn.com/image/fetch/$s_!JztQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JztQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png" width="1000" height="320" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:320,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7355,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&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_!JztQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png 424w, https://substackcdn.com/image/fetch/$s_!JztQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png 848w, https://substackcdn.com/image/fetch/$s_!JztQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png 1272w, https://substackcdn.com/image/fetch/$s_!JztQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fd6afb9-c683-4eb4-ac58-8d915352ea7d_1000x320.png 1456w" sizes="100vw"></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">Almost no coding activity over a week</figcaption></figure></div><p>This kind of mental block is very disturbing for someone who really loves what they do and considers work as their fuel for life. Whenever I am hit with such a lag, I try to assess what may have caused it. Sometimes I have a few clues, sometimes I have nothing. The current one is one of those where I have no clue.</p><p>Fortunately, I brought this up in a discussion with an industry colleague yesterday and he suggested one actionable tip that worked for him in similar situations: <strong><a href="https://stronglifts.com/5x5/">StrongLifts 5&#215;5</a>. </strong>It&#8217;s a simple, no-brainer workout program that requires going to the gym 3 times a week and only doing a handful of exercises. I am going to start that ASAP.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.phpfour.com/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 Segfault! 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><div><hr></div><h3><strong>&#128083; Recommended Readings</strong></h3><p>I read a few great articles over the week, so here are my top 3 picks for you.</p><ol><li><p><strong><a href="https://ashallendesign.co.uk/blog/top-youtube-channels-for-laravel-and-php-developers">Top 30 YouTube Channels for Laravel and PHP Developers</a></strong> &#8211; In this blog post, the author <strong>Ashley Allen</strong> compiled a list of the top 30 YouTube channels that he thinks every Laravel and PHP developer should consider subscribing to. I was already following some of the channels but discovered a few great ones through this compilation.</p></li></ol><ol start="2"><li><p><strong><a href="https://tomasvotruba.com/blog/keep-cognitive-complexity-low-with-phpstan/">Keep Cognitive Complexity Low&nbsp;with&nbsp;PHPStan</a></strong> &#8211; What is cognitive complexity? It's the amount of information we have to hold in our heads simultaneously to understand the code. In this short little post, author <strong>Tomas Votruba</strong> shows how to use PHPStan to help identify and reduce this complexity.</p></li></ol><ol start="3"><li><p><strong><a href="https://wendelladriel.com/blog/laravel-aaas-actions-as-a-service/">Laravel AaaS - Actions as a Service</a></strong> &#8211; In this long-form article, author <strong>Wendell Adriel</strong> explains why he thinks Invokable Controllers are a bad pattern and how one can use Action classes to achieve the same results. Personally, I think both strategies have their merits and one should pick the one they are most comfortable in.</p></li></ol><p>If you have come across a great write-up and want me to share it with others, feel free to reply to this and/or write in a comment.</p><div><hr></div><h3>&#128230; Great PHP Packages</h3><p>A couple of notable packages I&#8217;ve come across that I&#8217;ve bookmarked myself and would recommend to others.</p><ol><li><p><strong><a href="https://github.com/cerbero90/enum">Enum</a></strong> &#8212; It&#8217;s a zero-dependencies PHP library to supercharge enum functionalities. It has a handful number of helper functions to reduce repetitive work with enums. I like the approach and will be using it in my next projects.</p><p></p></li><li><p><strong><a href="https://github.com/spatie/laravel-query-builder">Laravel Query Builder</a></strong> &#8212; This package allows filtering, sorting, and including eloquent relations based on an API request. The <code>QueryBuilder</code> used in this package extends Laravel's default Eloquent builder so all the existing functionalities are available. A very handy one if you&#8217;re working with APIs.</p><p></p></li><li><p><strong><a href="https://github.com/nadrad/h-m-m">Hackers Mind Map</a></strong> &#8212; A very interesting tool for developers who love to work on their terminals. It&#8217;s a simple, fast, keyboard-centric terminal-based tool for working with mind maps. The UX is extremely well done and the keyboard shortcuts are very easy to pick. </p></li></ol><div><hr></div><h3>&#128038; <strong>Tweetworthy</strong></h3><p>One tweet on productivity that I am going to implement this month:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://twitter.com/thecolbykultgen/status/1619304146095439872&quot;,&quot;full_text&quot;:&quot;How to achieve your biggest goals.\n\nThe 90/90/1 Rule:&quot;,&quot;username&quot;:&quot;thecolbykultgen&quot;,&quot;name&quot;:&quot;Colby Kultgen&quot;,&quot;profile_image_url&quot;:&quot;&quot;,&quot;date&quot;:&quot;Sat Jan 28 11:59:28 +0000 2023&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:0,&quot;retweet_count&quot;:227,&quot;like_count&quot;:1083,&quot;impression_count&quot;:0,&quot;expanded_url&quot;:{},&quot;video_url&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>It doesn&#8217;t have any mumbo jumbo and is very simple to understand. I can immediately see why this is going to work and thus I am really pumped to implement it right away. </p><div><hr></div><h3>&#128214; Book Alert</h3><p>If you&#8217;re using Inertia.js in your applications, then I have good news for you. <strong>Boris Lepikhin</strong> has just recently launched a brand new book called &#8220;Advanced Inertia&#8221; to supercharge your Laravel applications that use it. You can learn advanced concepts and make apps with Laravel and Inertia.js a breeze to build and maintain. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://advanced-inertia.com?ref=segfault" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!O6gZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png 424w, https://substackcdn.com/image/fetch/$s_!O6gZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png 848w, https://substackcdn.com/image/fetch/$s_!O6gZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png 1272w, https://substackcdn.com/image/fetch/$s_!O6gZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!O6gZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png" width="1200" height="405" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:405,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:161746,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://advanced-inertia.com?ref=segfault&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&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_!O6gZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png 424w, https://substackcdn.com/image/fetch/$s_!O6gZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png 848w, https://substackcdn.com/image/fetch/$s_!O6gZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png 1272w, https://substackcdn.com/image/fetch/$s_!O6gZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f7c119a-fe7c-445e-ac4c-0c60c957bfd3_1200x405.png 1456w" sizes="100vw" loading="lazy"></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><hr></div><p>That&#8217;s all for this week. Feel free to hit that reply button if you have a question or if you would like to open a discussion.</p><p>Follow me on <a href="https://twitter.com/phpfour">Twitter</a> to get the other stuff I am sharing that won&#8217;t be included in this newsletter &#128521;</p><p>Thank you for subscribing. </p><p>&#8211; <strong>Mohammad Emran</strong>&nbsp;&nbsp;</p><div class="pullquote"><p><em>PS. If you enjoyed my writing above or found the resources I shared helpful, it would be of great help if you let your friends know about this newsletter by sharing it &#129308; &#129307;</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Segfault&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Segfault</span></a></p></div>]]></content:encoded></item><item><title><![CDATA[Speaking at LaraconIN 2023]]></title><description><![CDATA[Welcome to the third edition of the Segfault newsletter. I am sharing a personal news that I am super pumped about. Also included inside: 3 articles, 3 PHP packages, and 1 tweet!]]></description><link>https://newsletter.phpfour.com/p/segfault-3-speaking-at-laraconin</link><guid isPermaLink="false">https://newsletter.phpfour.com/p/segfault-3-speaking-at-laraconin</guid><pubDate>Tue, 24 Jan 2023 18:00:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!wuoU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wuoU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wuoU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg 424w, https://substackcdn.com/image/fetch/$s_!wuoU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg 848w, https://substackcdn.com/image/fetch/$s_!wuoU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!wuoU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wuoU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg" width="1200" height="675" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:675,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:75667,&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_!wuoU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg 424w, https://substackcdn.com/image/fetch/$s_!wuoU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg 848w, https://substackcdn.com/image/fetch/$s_!wuoU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!wuoU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d9433dd-e569-4cfa-a41f-b0c1351d339a_1200x675.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>Hello Friends &#128075;&#127995;</p><p>Welcome to the third edition of the <strong>Segfault</strong> newsletter.</p><p>I have big news to share with you &#8212; to my surprise, my talk proposal has been accepted in the upcoming <strong>Laracon IN 2023</strong> and thus I will be speaking there in February! This is the first Laracon I&#8217;ll be attending so I could not have asked for anything more. I am planning to show how a Report Builder can ease the reporting need for your Laravel application. </p><p>I have not finalized the talk content yet, so I&#8217;d really love to hear from you if you have any suggestions or ideas on what would be beneficial to share on this topic. Pretty much every serious application requires reports so I am hoping this would be useful to a broad spectrum of people. Let me know your views through comments or by replying to this email.</p><p>I had previously spoken at a few local conferences and have also arranged some of them myself. Their size and audience would be no match to Laracon though where more than a thousand people would participate. Also it has been quite a few years since I last did public speaking &#8212; all in all, I am both excited and a bit scared.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.phpfour.com/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 Segfault! 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><div><hr></div><h3><strong>&#128083; Recommended Readings</strong></h3><p>I read a few great articles over the week, so here are my top 3 picks for you.</p><ol><li><p><strong><a href="https://www.youtube.com/watch?v=csWx7RcNh5U">Laravel DB Optimization: From 1.5k to 26 Queries</a></strong> &#8211; in this short video, author <strong>Povilas Korop</strong> demonstrated how to practically optimize a series of DB queries in a Laravel package called Laravel Translations.</p></li></ol><ol start="2"><li><p><strong><a href="https://www.kalzumeus.com/2012/01/23/salary-negotiation/">Salary Negotiation: Make More Money, Be More Valued</a></strong> &#8211; we programmers sometimes want to avoid negotiations and thus can be stuck with a poor salary for years. In this ~7000-word essay, author <strong>Patrick McKenzie</strong> goes into explaining the rationale of negotiation and how to approach it. I have personally had success applying some of the techniques so I vow for it highly. </p></li></ol><ol start="3"><li><p><strong><a href="https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/">Things You Should Never Do, Part I</a></strong> &#8211; in this internet classic, industry legend <strong>Joel Spolsky</strong> points out why a full rewrite in the software industry is almost always a bad idea. Do you know why you&#8217;d always want to rewrite a codebase if given the choice? Read on to know more.</p></li></ol><p>If you have come across a great write-up and want me to share it with others, feel free to reply to this and/or write in a comment.</p><div><hr></div><h3>&#128230; Great PHP Packages</h3><p>A couple of notable packages I&#8217;ve come across that I&#8217;ve bookmarked myself and would recommend to others.</p><ol><li><p><strong><a href="https://github.com/opcodesio/log-viewer">Log Viewer</a></strong> &#8212; this package is a perfect companion for your Laravel application as it will allow you to quickly and clearly see individual log entries, search, filter, and make sense of your Laravel logs fast. No more reading the raw Laravel log files trying to find what you're looking for.</p><p></p></li><li><p><strong><a href="https://github.com/glhd/aire">Aire</a></strong> &#8212; this package is a modern Laravel form builder with a focus on the same expressive and beautiful code you expect from the Laravel ecosystem. It allows you to build forms using expressive helper methods or through Blade components. </p><p></p></li><li><p><strong><a href="https://github.com/thecodingmachine/safe">Safe PHP</a></strong> &#8212; this is quite an unusual package. It consists of a set of core PHP functions rewritten to throw exceptions instead of returning <code>false</code> when an error is encountered. It has built-in support of <strong>PHPStan</strong> and <strong>Rector</strong> to help with finding the functions and automatically refactoring them.</p></li></ol><div><hr></div><h3>&#128038; <strong>Tweetworthy</strong></h3><p>One tweet to share with you:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://twitter.com/scarletinked/status/1601232454215692288&quot;,&quot;full_text&quot;:&quot;Moving from software engineer to senior software engineer is a big step.\n\nMost engineers get hung up on assuming that their technical depth is the key to growing their position. But is that really what's holding them back?\n\n&#129525;&quot;,&quot;username&quot;:&quot;scarletinked&quot;,&quot;name&quot;:&quot;Dave Anderson&quot;,&quot;profile_image_url&quot;:&quot;&quot;,&quot;date&quot;:&quot;Fri Dec 09 15:09:01 +0000 2022&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:0,&quot;retweet_count&quot;:124,&quot;like_count&quot;:774,&quot;impression_count&quot;:0,&quot;expanded_url&quot;:{},&quot;video_url&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>My key takeaways from it:</p><ul><li><p>It&#8217;s easy to find lacking in technical skills and fill them up. It&#8217;s a lot harder to find the behavioral ones, work to get them improved, and see the results they bring. </p><p></p></li><li><p>A senior engineer will have a lot more empathy toward customer problems than a junior one. Juniors are looking to solve the core technical issue while seniors want to understand why the problem is occurring in the first place and then provide solutions.</p><p></p></li><li><p>A winning combination for getting consistent promotion depends on if someone can be relied upon, who takes responsibility of their work, communicates with their peers, has practical sense, and understands tradeoffs. </p></li></ul><div><hr></div><p>That&#8217;s all for this week. Feel free to hit that reply button if you have a question or if you would like to open a discussion.</p><p>Follow me on <a href="https://twitter.com/phpfour">Twitter</a> to get the other stuff I am sharing that won&#8217;t be included in this newsletter &#128521;</p><p>Thank you for subscribing. </p><p>&#8211; <strong>Mohammad Emran</strong>&nbsp;&nbsp;</p><div class="pullquote"><p><em>PS. If you enjoyed my writing above or found the resources I shared helpful, it would be of great help if you let your friends know about this newsletter by sharing it &#129308; &#129307;</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Segfault&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Segfault</span></a></p></div>]]></content:encoded></item><item><title><![CDATA[The Beginner's Mind]]></title><description><![CDATA[Welcome to the second edition of the Segfault newsletter. I am sharing a mindset that helped me a lot in learning new things. Also Included inside: 3 articles, 3 PHP packages, 1 tweet!]]></description><link>https://newsletter.phpfour.com/p/segfault-2-the-beginners-mind</link><guid isPermaLink="false">https://newsletter.phpfour.com/p/segfault-2-the-beginners-mind</guid><dc:creator><![CDATA[Mohammad Emran Hasan]]></dc:creator><pubDate>Tue, 17 Jan 2023 16:37:10 GMT</pubDate><enclosure url="https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1456w" sizes="100vw"><img src="https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" width="1080" height="720" data-attrs="{&quot;src&quot;:&quot;https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpg&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://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1556010656-e60700d4c0d5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwyfHx6ZW58ZW58MHx8fHwxNjczOTE3MTkw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 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">Photo by <a href="https://unsplash.com/@xcrap">C&#233;sar Couto</a> on <a href="https://unsplash.com">Unsplash</a></figcaption></figure></div><p>Hello Friends &#128075;&#127995;</p><p>Welcome to the second edition of the <strong>Segfault</strong> newsletter.</p><p>First of all, I want to genuinely thank you all who read the first edition. Some of you have also replied in email and some reached out through Twitter &#8212; this meant the world to me and I was so happy that I could at least benefit some people in a small way.</p><p>In the process of writing this newsletter and also while trying to be more engaged on Twitter, I got introduced to many new skills. I didn&#8217;t know some of these can be considered a skill due to my lack of understanding/exposure. When approaching a new skill, I try to keep a <strong>&#8220;beginner&#8217;s mind&#8221;</strong> &#8212; this helps me ground myself and motivates me to do the initial grinding that&#8217;s necessary to build the skill.</p><p>This &#8220;beginner&#8217;s mind&#8221; mindset is to have an attitude of openness, eagerness, and lack of preconceptions when studying, even at an advanced level, just as a beginner would. The term is especially used in the study of Zen Buddhism and Japanese martial arts, but it applies pretty smoothly within our technological space. More so because we are exposed to new things to learn every other day and only through practice we can keep ourselves relevant in the world around us.</p><p>Leo Babauta from ZenHabits has written a good, short primer on the concept &#8212; I&#8217;d encourage you to read it: <a href="https://zenhabits.net/beginner/">Approaching Life with Beginner&#8217;s Mind</a>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://newsletter.phpfour.com/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 Segfault! 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><div><hr></div><h3><strong>&#128083; Recommended Readings</strong></h3><p>I read a few great articles over the week, so here are my top 3 picks for you.</p><ol><li><p><a href="https://tighten.com/insights/building-a-calendar-with-carbon/">Building a Calendar with Carbon</a> &#8211; in this detailed article by Tighten, author <strong>Nathan Morgan</strong> demonstrated how to build a custom calendar within a Laravel application. I liked the way he used <code>CarbonImmutable</code> instead of <code>Carbon</code> for preventing accidental date changes. Also, the use of <strong>Blade Components</strong> shows how to keep things manageable.</p></li></ol><ol start="2"><li><p><a href="https://laravel-news.com/configuring-laravel-pint">Configuring Laravel Pint</a> &#8211; when it first came out, I immediately tried <strong>Laravel Pint</strong> and loved its simplicity. In this short article, <strong>Steve McDougall</strong> shows how to add some more rules on top of the default laravel standard to ensure best practices in your code base. He has also shared his full <code>pint.json</code> file to take inspiration from.</p></li></ol><ol start="3"><li><p><a href="https://github.com/readme/stories/aaron-francis">Sometimes they say yes</a> &#8211; this is a real inspirational story from <strong>Aaron Francis</strong> that resonated very well with me. He shared how he believed in himself, let go of his limiting fears, and took the necessary risks to move ahead with his dreams. There is a lot to learn from him and I have taken notes. </p></li></ol><p>If you have come across a great write-up and want me to share it with others, feel free to reply to this and/or write in a comment.</p><div><hr></div><h3>&#128230; Great PHP Packages</h3><p>A couple of notable packages I&#8217;ve come across that I&#8217;ve bookmarked myself and would recommend to others.</p><ol><li><p><a href="https://github.com/maize-tech/laravel-markable">Laravel Markable</a> &#8212; this package allows you to easily add the markable feature to your application, for example likes, bookmarks, favorites, and anything custom. I have used this in the <strong><a href="https://laravel-courses.com?ref=segfault-ep2">Laravel Courses</a></strong> site to allow users to &#8220;Like&#8221; or &#8220;Recommend&#8221; courses/books.  </p><p></p></li><li><p><a href="https://github.com/enlightn/enlightn">Enlightn</a> &#8212; think of this package as your performance and security consultant. It will "review" your code and server configurations, and give you actionable recommendations on improving performance, security, and reliability! There are free and paid options but I&#8217;ve found the free one to be pretty good to start with.</p><p></p></li><li><p><a href="https://github.com/openspout/openspout">OpenSpout</a> &#8212; OpenSpout is a community-driven fork of, a PHP library to read and write spreadsheet files (CSV, XLSX, and ODS), in a fast and scalable way. Unlike other file readers or writers, it is capable of processing very large files, while keeping the memory usage really low (less than 3MB). </p></li></ol><div><hr></div><h3>&#128038; <strong>Tweetworthy</strong></h3><p>Here is one tweet I remembered and then dug up to share with you:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://twitter.com/SimonHoiberg/status/1603729134844264448&quot;,&quot;full_text&quot;:&quot;I'm an average developer...\nI'm not a professional marketer...\nI don't have a degree in anything...\n\nI'm a self-learned generalist.\n\nYet...\n\n&#8594; A became a $300K/year consultant!\n&#8594; I run a $400K/year SaaS startup!\n&#8594; I fully control my own time!\n\nBeing an expert is overrated...&quot;,&quot;username&quot;:&quot;SimonHoiberg&quot;,&quot;name&quot;:&quot;Simon H&#248;iberg&quot;,&quot;profile_image_url&quot;:&quot;&quot;,&quot;date&quot;:&quot;Fri Dec 16 12:29:56 +0000 2022&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:0,&quot;retweet_count&quot;:99,&quot;like_count&quot;:1362,&quot;impression_count&quot;:0,&quot;expanded_url&quot;:{},&quot;video_url&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>&nbsp;My key takeaways from it:</p><ul><li><p>Simon has essentially debunked the myth that you need to be an &#8220;expert&#8221; to be successful. He learned all the necessary skills himself and through the process, became a generalist. This essentially helped him try different things and in the end, some of those became successful. </p><p></p></li><li><p>This reminds me of the issue that is faced by young people all the time &#8212; they think they&#8217;ll need a degree or do a Bootcamp or know certain people to be successful. Whereas in reality, these can be helpful but they cannot replace the need of doing hard work and trying things. </p></li></ul><ul><li><p>In one of the replies below the tweet, someone mentioned that Simon must be very disciplined to achieve this and he agrees with that point. I would emphasize that too but another trait I think is also immensely important and that is &#8220;Grit&#8221;. When combined, these two can be your superpowers. And the good news is, you can learn how to master them.</p></li></ul><div><hr></div><p>That&#8217;s all for this week. Feel free to hit that reply button if you have a question or if you would like to open a discussion.</p><p>Follow me on <a href="https://twitter.com/phpfour">Twitter</a> to get the other stuff I am sharing that won&#8217;t be included in this newsletter &#128521;</p><p>Thank you for subscribing. </p><p>&#8211; <strong>Mohammad Emran</strong>&nbsp;&nbsp;</p><div class="pullquote"><p><em>PS. If you enjoyed my writing above or found the resources I shared helpful, it would be of great help if you let your friends know about this newsletter by sharing it &#129308; &#129307;</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Segfault&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Segfault</span></a></p></div>]]></content:encoded></item><item><title><![CDATA[A new beginning!]]></title><description><![CDATA[Welcome to the first edition of the Segfault newsletter. I will use the opportunity to share some background about myself and the newsletter! Included inside: 3 articles, 3 PHP packages, 1 tweet, and a bit of storytelling!]]></description><link>https://newsletter.phpfour.com/p/segfault-1-a-new-beginning</link><guid isPermaLink="false">https://newsletter.phpfour.com/p/segfault-1-a-new-beginning</guid><dc:creator><![CDATA[Mohammad Emran Hasan]]></dc:creator><pubDate>Tue, 10 Jan 2023 17:47:34 GMT</pubDate><enclosure url="https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1456w" sizes="100vw"><img src="https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" width="1080" height="720" data-attrs="{&quot;src&quot;:&quot;https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpg&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://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1632594737623-bea601083890?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHw0fHxiZWdpbm5pbmd8ZW58MHx8fHwxNjczMzI1MzA0&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 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">Photo by <a href="https://unsplash.com/@mxhpics">Maxime Horlaville</a> on <a href="https://unsplash.com">Unsplash</a></figcaption></figure></div><p>Hello Friends &#128075;&#127995;</p><p>Welcome to the first edition of the <strong>Segfault</strong> newsletter. </p><p>I will use the opportunity to share some background about myself and the newsletter! The next issues will be a lot slimmer, promise!</p><div><hr></div><h3>&#127881; <strong>A bit of Background</strong></h3><p>I fell in love with programming when I was in 9th grade (circa 1999). I vividly remember the first time I copied a piano program from a magazine, typed it in Notepad, and expected to listen to some melody when I saved it &#8212; but as you can imagine, nothing happened! </p><p>It was a sad moment for me but I knew I had to figure it out. That &#8220;figuring it out&#8221; led me to find <strong>QuickBASIC </strong>&#8212; I could then write programs using the BASIC language. I was a happy camper for a few months writing tiny programs that&#8217;d do cool things. </p><p>I outgrew that fun stage soon and wanted to write a program that would work in Windows rather than in the terminal. I then discovered <strong>Visual Basic</strong>. I was in dreamland again but this time for several years. I made lots of fun personal projects and then started doing freelance work. </p><p>A few years passed by and the web was becoming more and more important. I first looked into <strong>ASP</strong> but it was dying back then. One random day, a complete stranger whom I met for the first time in a cafe, recommended <strong>PHP</strong> when he heard I am trying to make a website. I was a bit skeptical but the moment I looked into <strong>PHP</strong> (version 4), I was hooked &#8212; I loved the simplicity and how easy it is to get something running!&nbsp;</p><p>Like many developers, I started writing web applications in PHP without any framework. It was fun in the beginning but writing the same boilerplate code, again and again, was tiring. It didn&#8217;t take me long to understand the benefit of frameworks and I was quick in picking up <strong>CodeIgniter</strong>. Over the years, my journey with PHP would look something like this:&nbsp;</p><p>No framework &#8594; CodeIgniter &#8594; Kohana &#8594; Zend Framework 1 &#8594; Zend Framework 2 &#8594; Symfony &#8594; <strong>Laravel</strong></p><p>I worked with each of them for several years (sometimes in parallel) &amp; learned many valuable things. IMHO each of them served the needs of their time and advanced the ecosystem forward. </p><div><hr></div><h3>&#127881; What would this newsletter be about?</h3><p>This newsletter is a personal distillation of what I think is actionable and interesting for someone working with web technologies, especially with <strong>PHP</strong> and <strong>Laravel</strong>.</p><p>I aim to provide you value by highlighting the contents I consume over a week and presenting the best among those in front of your eyes.</p><p>I will be covering:</p><ul><li><p><strong>Articles and Blog Posts</strong> regarding web development in general. The focus will be on the PHP ecosystem.</p></li><li><p><strong>Tweets</strong> that are actionable, contain great resources or have a unique point of view that is worth knowing.</p></li><li><p><strong>Tips on Laravel</strong> and its related technologies, usually very short in size but immediately actionable.</p></li><li><p><strong>Updates</strong> from my solopreneur journey, including product updates, things I learned, books I read, experiments I&#8217;m doing, etc.</p></li></ul><p>You can expect emails to arrive between 9:00 am and 12:00 pm Eastern Time every Tuesday.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.phpfour.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.phpfour.com/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h3><strong>&#129300; But what the heck is &#8220;Segfault&#8221;?&nbsp;</strong></h3><p>I&#8217;m glad you asked. If you look this up in a search engine or in Wikipedia, you&#8217;ll get a generic description that applies to different programming languages. However, as we are writing web applications with PHP, here is a definition closer to our ecosystem:</p><p><em>&#8220;A segmentation fault, or segfault, is any condition whereby the (PHP) application has attempted to access a restricted area of memory and thus resulted in crashing the application.&#8221;</em></p><p>Although Segfaults occur on rare occasions, they are usually quite difficult to debug. When developing large applications with complex logic, the likelihood of it occurring increases substantially. I generally recommend familiarizing yourself with this so that you&#8217;d know how to debug it without pulling your hair out when you encounter it.</p><p>If you&#8217;re interested in digging further, here are some resources to look into:&nbsp;</p><ul><li><p><a href="https://jolicode.com/blog/find-segfaults-in-php-like-a-boss">Find Segfaults in PHP like a boss</a></p></li><li><p><a href="https://www.zend.com/blog/debugging-php-segmentation-faults">Debugging PHP Segmentation Faults</a></p></li><li><p><a href="https://github.com/hannob/php-crashers">PHP Crashers (Github Repository)</a></p></li></ul><div><hr></div><h3><strong>&#128083; Recommended Readings</strong></h3><p>I read a few great articles over the week, so here are my top 3 picks for you. &nbsp;</p><ol><li><p><a href="https://matthewdaly.co.uk/blog/2022/10/26/why-i-no-longer-use-the-repository-pattern/">Why I no longer use the repository pattern</a> &#8211; author Matthew Daly explains in detail the reasons why he doesn&#8217;t use the well-debated Repository pattern in Laravel projects.<br><br>&#8594; When I first started to work with Laravel, I was very dogmatic about using the Repository pattern. But gradually I could see that it&#8217;s unnecessary and none of the core maintainers are using this approach. So I stopped it and embraced the Active Record pattern altogether.</p></li></ol><ol start="2"><li><p><a href="https://haydenjames.io/php-fpm-tuning-using-pm-static-max-performance/">PHP-FPM tuning: Using &#8216;pm static&#8217; for max performance</a> &#8211; a very handy guide that illustrates how you can achieve great throughput from your PHP-FPM powered server.<br><br>&#8594; I experimented with this in a recent project and saw great success. We were able to handle peak usage (~500 concurrent users) with no significant load on the server.  </p></li></ol><ol start="3"><li><p><a href="https://visualizevalue.com/blogs/feed/how-to-build-leverage">How to Build Leverage from Scratch</a> &#8211; the amazing guide from Jack Butcher on how to use leverage to build your online presence and start earning real money.<br><br>&#8594; I have seen Jack build his whole <strong>Visualize Value</strong> business first-hand, starting in 2020 &#8212; I bought all his courses, joined the community, and learned so much from him. He has the ability to distill valuable information in such a concise form that would amaze everybody.</p></li></ol><p>If you have come across a great write-up and want me to share it with others, feel free to reply to this and/or write in a comment.</p><div><hr></div><h3>&#128230; Great PHP Packages</h3><p>A couple of notable packages I&#8217;ve come across that I&#8217;ve bookmarked myself and would recommend to others.</p><ol><li><p><a href="https://github.com/PlannrCrm/laravel-fast-refresh-database">FastRefreshDatabase for Laravel</a> &#8212; this package can speed up your Laravel applications test time by 100x! It uses a neat technique of using checksum to decide whether to run <code>php artisan migrate:fresh</code>. </p><p></p></li><li><p><a href="https://github.com/BitOne/php-meminfo">PHP Meminfo</a> &#8212; this is a PHP extension that gives you insights into the PHP memory content. Its main goal is to help you understand memory leaks: by looking at data present in memory, you can better understand your application behavior.</p><p></p></li><li><p><a href="https://github.com/overtrue/laravel-versionable">Laravel Versionable</a> &#8212; It's a minimalist way to make your Eloquent model support version history, and it's very simple to roll back to the specified version. Very easy and straightforward configuration, and has a great API.</p></li></ol><div><hr></div><h3>&#128038; <strong>Tweetworthy</strong></h3><p>Here is one thread I discovered that really moved me this week:&nbsp;</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://twitter.com/adamwathan/status/1296447318074568704&quot;,&quot;full_text&quot;:&quot;This summer marked four years of working full-time on my own business, which is officially longer than I was a professional programmer working for other companies &#129327;\n\n&#128161; Here are some of the things I believe the most strongly about making a living as an independent maker...&quot;,&quot;username&quot;:&quot;adamwathan&quot;,&quot;name&quot;:&quot;Adam Wathan&quot;,&quot;profile_image_url&quot;:&quot;&quot;,&quot;date&quot;:&quot;Thu Aug 20 14:01:42 +0000 2020&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:0,&quot;retweet_count&quot;:651,&quot;like_count&quot;:3738,&quot;impression_count&quot;:0,&quot;expanded_url&quot;:{},&quot;video_url&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>My key takeaways from it:</p><ul><li><p>Being super helpful and giving free, valuable stuff to the community is the best way to build a foundation for the future where paid products can be offered.</p></li></ul><ul><li><p>Marketing can be more natural if a product is built in public and the journey is shared with an audience</p></li></ul><ul><li><p>Contrary to the recent trend of putting up a landing page as the first step of product validation, tweets/articles/videos should be used to put ideas to the public and see how people resonate with them.</p></li></ul><div><hr></div><p>That&#8217;s all for this week. Feel free to hit that reply button if you have a question or if you would like to open a discussion.</p><p>Follow me on <a href="https://twitter.com/phpfour">Twitter</a> to get the other stuff I am sharing that won&#8217;t be included in this newsletter &#128521;</p><p>Thank you for subscribing. </p><p>&#8211; <strong>Mohammad Emran</strong>&nbsp;&nbsp;</p><div class="pullquote"><p><em>PS. If you enjoyed my babbling above or found the resources I shared helpful, it would be of great help if you let your friends know about this newsletter by sharing it &#129308; &#129307;</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Segfault&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://phpfour.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Segfault</span></a></p></div>]]></content:encoded></item><item><title><![CDATA[Welcome to Segfault]]></title><description><![CDATA[A weekly newsletter for software developers working with web technologies, especially with PHP and Laravel.]]></description><link>https://newsletter.phpfour.com/p/coming-soon</link><guid isPermaLink="false">https://newsletter.phpfour.com/p/coming-soon</guid><dc:creator><![CDATA[Mohammad Emran Hasan]]></dc:creator><pubDate>Sat, 14 Nov 2020 06:51:02 GMT</pubDate><enclosure url="https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1456w" sizes="100vw"><img src="https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080" width="1080" height="720" data-attrs="{&quot;src&quot;:&quot;https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;vintage teal typewriter beside book&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpg&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="vintage teal typewriter beside book" title="vintage teal typewriter beside book" srcset="https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1432821596592-e2c18b78144f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwzMDAzMzh8MHwxfHNlYXJjaHwxMTd8fHJhbmRvbXxlbnwwfHx8fDE2NzI2ODgxOTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1080 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">Photo by <a href="https://unsplash.com/@retrosupply">RetroSupply</a> on <a href="https://unsplash.com">Unsplash</a></figcaption></figure></div><p>I present to you <strong>Segfault</strong> (the short form of <em>Segmentation Fault</em>) &#8212; a weekly newsletter for software developers working with web technologies, especially with PHP and Laravel.</p><p>I aim to provide you value by highlighting the contents I consume over a week and presenting the best among those in front of your eyes.</p><h4>What to expect?</h4><ul><li><p><strong>Articles and Blog Posts</strong> regarding web development in general. The focus will be on the PHP ecosystem.</p></li><li><p><strong>Tweets</strong> that are actionable, contain great resources or have a unique point of view that is worth knowing.</p></li><li><p><strong>Updates</strong> from my solopreneur journey, including product updates, things I learned, books I read, experiments I&#8217;m doing, etc.</p></li></ul><h4>Engage with me</h4><p>If you want to share your views or want to suggest improvements and/or content ideas, feel free to send me a DM on <a href="https://twitter.com/phpfour">Twitter</a>.</p><p>Sign up now so you don&#8217;t miss any issues. <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://newsletter.phpfour.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://newsletter.phpfour.com/subscribe?"><span>Subscribe now</span></a></p><p></p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>Share with your friends if you like it. </p></div></div>]]></content:encoded></item></channel></rss>