<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Weekly on Writing Developer</title>
    <link>https://writingdeveloper.com/tags/weekly/</link>
    <description>Recent content in Weekly on Writing Developer</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Fri, 01 Dec 2023 07:00:00 +0200</lastBuildDate><atom:link href="https://writingdeveloper.com/tags/weekly/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Weekly Tech Notes #19: Availability</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-19/</link>
      <pubDate>Fri, 01 Dec 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-19/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/tEylFyxbDLE?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;&amp;#x1f3ac; A video about the difference between SLIs, SLOs and SLAs. In a nutshell, SLIs drive SLOs, which in turn inform SLAs.
More specifically:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SLIs are Service Level Indicators or metrics over time which inform about the health of a service (e.g. 95th percentile of latency over last 5 minutes)&lt;/li&gt;
&lt;li&gt;SLOs are Service Level Objectives agreed upon bounds for how often those SLIs must be met (e.g. 95th percentile SLI will succeed 99,9% over the year)&lt;/li&gt;
&lt;li&gt;SLAs are business-level agreements which define the service availability for a customer and the penalties for breaking that availability&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;#x1f4da; Availability is an important concept for distributed systems. There&amp;rsquo;s math behind it, but also reasonable rules of thumb to follow. This week, I&amp;rsquo;m sharing a few articles that cover the topic.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #18: Consistent Hashing</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-18/</link>
      <pubDate>Fri, 24 Nov 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-18/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/UF9Iqmg94tk?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;&amp;#x1f3ac; If you’re too lazy to read the articles below, this video is for you. It’s a short and concise explanation of what Consistent Hashing is and how it works.&lt;/p&gt;
&lt;p&gt;&amp;#x1f4da; This week I decided to focus on Consistent Hashing. I’ve been hearing about this topic for a while now, but I never really found the time to dig deeper. Consistent Hashing is an important algorithm used to horizontally scale and manage distributed systems. It is usually explained in the context of sharded systems, but it can be applied in many other scenarios, like load balancing, routing algorithms and more.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #17: Architecture Refresher</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-17/</link>
      <pubDate>Fri, 17 Nov 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-17/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/goYiaIGebFo?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;&amp;#x1f3ac; In this talk, Gregor Hohpe describes the role of the architect and the many trade-offs that come with it. An architect should be able to talk to both business and technical people, thus being able to sketch a system to see its real essence, zooming in and out to focus on more or fewer details and seeing shades of grey of different solutions.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #16: Complexity</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-16/</link>
      <pubDate>Fri, 10 Nov 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-16/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/y8OnoxKotPQ?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;&amp;#x1f3ac; A well-known parody about the microservices environment in which the system is so complex that even displaying a birthday date is a real hustle.&lt;/p&gt;
&lt;p&gt;&amp;#x1f4da; As you might already understand, this week&amp;rsquo;s readings are all about microservices and the challenges that come with them.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #15: Cell-based Architecture</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-15/</link>
      <pubDate>Fri, 29 Sep 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-15/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/E6H4bgJ3Z6c?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;&amp;#x1f3ac; Reading below Slack blog post I discovered they use &lt;a href=&#34;https://vitess.io/&#34;&gt;Vitess&lt;/a&gt;: a database clustering system for horizontal scaling of MySQL. It is used not only by Slack but also by YouTube, Square, Hubspot and many others. This video explains its architecture and shows a demo of it in action.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #14: Multitenancy</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-14/</link>
      <pubDate>Fri, 22 Sep 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-14/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/Khu9BB2g4Ks?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;&amp;#x1f3ac; This week&amp;rsquo;s video is not technical but worth watching. It&amp;rsquo;s the fastest Super Mario Bros speedrun with a time of 4:54.631, achieved less than two weeks ago (at the time of writing). The previous record was 4:55.230. Have fun!&lt;/p&gt;
&lt;p&gt;This time, readings are all about multi-tenancy, from the basics to more advanced topics like rate limiters and fairness.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #13: Threads</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-13/</link>
      <pubDate>Fri, 15 Sep 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-13/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/XdspkM5atwU?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;&amp;#x1f3ac; This week&amp;rsquo;s video dives into Meta&amp;rsquo;s journey in re-architecting their asynchronous computing platform. Besides splitting the system into smaller pieces to better follow the single-responsibility principle, they also switched from a pull-based to a push-based model. This brought many benefits including less latency caused by errors and better load balancing across regions.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #12: Salary negotiation</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-12/</link>
      <pubDate>Fri, 08 Sep 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-12/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/UIHfzUvMAbM?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;Hey people! &amp;#x1f44b;&lt;/p&gt;
&lt;p&gt;After the summer break, we are back even more motivated than before! &amp;#x1f4aa;&lt;/p&gt;
&lt;p&gt;This week&amp;rsquo;s video is about the three types of probes in Kubernetes: startup, liveness and readiness. As a refresher, the three probes answer the following questions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Startup probe: is the container started?&lt;/li&gt;
&lt;li&gt;Liveness probe: should the container be restarted?&lt;/li&gt;
&lt;li&gt;Readiness probe: should the container accept traffic?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The speaker then goes through the differences among them and how to avoid committing some common mistakes that would result in production problems.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #11: Monitor all the things</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-11/</link>
      <pubDate>Fri, 28 Jul 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-11/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/an8SrFtJBdM?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;A short video explaining the differences among DevOps, SRE and Platform Engineering. The main takeaway is that DevOps is a culture, while SRE and Platform Engineering are roles. The latter two are not mutually exclusive, but they are not the same either. In fact, Platform Engineers are responsible for the infrastructure, while SREs are responsible for the applications.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #10: Failing bus</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-10/</link>
      <pubDate>Thu, 20 Jul 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-10/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/1nKC505_uTU?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;This talk shows the Rust adoption journey by Truelayer, summarizing the pros and cons of taking this path. Interestingly, the main benefits inherit from functional programming: composition and exhaustive pattern matching.&lt;/p&gt;
&lt;p&gt;In addition, we will read about the bus factor, resilient architectures (again) and health checks.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #9: Embrace chaos</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-09/</link>
      <pubDate>Fri, 14 Jul 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-09/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/zXPiqk0-zDY?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;This week I stumbled upon a video about a guy building a 32-bit CPU running inside the game Terraria. It&amp;rsquo;s a fun watch! &amp;#x1f604;&lt;/p&gt;
&lt;p&gt;On the reading side, we will mainly explore the world of Chaos Engineering, followed by a visual explanation of exponential backoff and a simple but effective introduction to Functional Programming.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #8: Resilience is key</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-08/</link>
      <pubDate>Fri, 07 Jul 2023 07:00:00 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-08/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/Uu32ggF-DWg?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;Today&amp;rsquo;s video is about Netflix&amp;rsquo;s architecture evolution.&lt;/p&gt;
&lt;p&gt;The main takeaway we should stick in our minds is that the architecture of our business should be tailored to its needs, not the other way around.&lt;/p&gt;
&lt;p&gt;In addition, we will read about resilient systems through retrospection and load shedding with a pinch of hashing on top.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #7</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-07/</link>
      <pubDate>Fri, 30 Jun 2023 10:30:15 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-07/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;p&gt;&lt;img src=&#34;https://media.giphy.com/media/DpSoj00vkPpswwZU9o/giphy.gif&#34; alt=&#34;Image&#34;&gt;&lt;/p&gt;
&lt;p&gt;Good afternoon, and welcome to the seventh edition of Weekly Tech Notes!&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s not that easy to find good videos to watch, so this week I&amp;rsquo;m sharing only articles.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://robertheaton.com/preventing-impossible-game-levels-using-cryptography/&#34;&gt;Preventing impossible game levels using cryptography&lt;/a&gt; &amp;ndash; A fun story disseminating cryptography pills in building an in-game level editor.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://stackoverflow.blog/2023/06/26/the-hardest-part-of-building-software-is-not-coding-its-requirements/&#34;&gt;The hardest part of building software is not coding, it’s requirements&lt;/a&gt; &amp;ndash; AI will for sure reshape the working environment as we know it, but human software development is here to stay.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.ploeh.dk/2023/06/26/validation-and-business-rules/&#34;&gt;Validation and business rules&lt;/a&gt; &amp;ndash; Starting from his definition of validation, Mark Seemann draws a line between validation and business rules, with a twist on functional programming.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Have a fun weekend! &amp;#x1f44b;&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #6</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-06/</link>
      <pubDate>Fri, 23 Jun 2023 10:30:15 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-06/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/josjRSBqEBI?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;Hey folks! &amp;#x1f44b;&lt;/p&gt;
&lt;p&gt;This past week was quite busy, so I just watched a video on Pastebin system design.&lt;/p&gt;
&lt;p&gt;The author has a series of videos on this topic, and I’ll probably watch more of them in the future.&lt;/p&gt;
&lt;p&gt;Key takeaways are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Difference between functional and non-functional requirements. The first ones describe what a system should do. Non-functional, instead, are the ones that describe how a system should perform (e.g., latency, availability, etc.).&lt;/li&gt;
&lt;li&gt;If a paste is too big, we can use a mixed approach: store the first part in a database to give a quick preview to the user and the rest in a bucket available on demand.&lt;/li&gt;
&lt;li&gt;He uses a Distributed Key Generation Service for URLs generation, but UUIDs would have been sufficient.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Have a great end of the week!&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #5</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-05/</link>
      <pubDate>Fri, 16 Jun 2023 10:30:15 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-05/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/bnnacleqg6k?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
    &lt;/div&gt;

&lt;p&gt;Hello again! &amp;#x1f44b;&lt;/p&gt;
&lt;p&gt;Today we start with something new: I&amp;rsquo;ll try to embed a video in every notes post, forcing me to watch a talk every week. It&amp;rsquo;s more valuable than just including GIFs. &amp;#x1f604;&lt;/p&gt;
&lt;p&gt;In today&amp;rsquo;s talk, the author designs a new API in Rust and forces its correct use through the type system.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #4</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-04/</link>
      <pubDate>Fri, 09 Jun 2023 10:30:15 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-04/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;p&gt;&lt;img src=&#34;https://media.giphy.com/media/YSfb5vx87BpAU1P9MG/giphy.gif&#34; alt=&#34;Image&#34;&gt;&lt;/p&gt;
&lt;p&gt;Hey, amazing people! :flexed_biceps:&lt;/p&gt;
&lt;p&gt;I am back with the weekly tech notes after a short break due to Italy&amp;rsquo;s public holidays at the beginning of June.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://medium.easyread.co/c4-model-in-software-architecture-6587ab4a2d0f&#34;&gt;Making C4-Model in Software Architecture&lt;/a&gt; &amp;ndash; C4-Model is a simple hierarchical way to describe the architecture of a software system. Its layered approach helps to understand the system from different perspectives.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://netflixtechblog.medium.com/migrating-critical-traffic-at-scale-with-no-downtime-part-2-4b1c8c7155c1&#34;&gt;Migrating Critical Traffic At Scale with No Downtime — Part 2&lt;/a&gt; &amp;ndash; This is the second part of the series about migrating critical traffic at scale, or better, how to carefully control migration processes.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://levelup.gitconnected.com/stay-ahead-of-the-curve-5-must-know-distributed-systems-design-patterns-for-event-driven-7515121a28ae&#34;&gt;5 Must-Know Distributed Systems Design Patterns for Event-Driven Architectures&lt;/a&gt; &amp;ndash; An overview of 5 known design patterns for event-driven architectures.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://levelup.gitconnected.com/12-microservices-pattern-i-wish-i-knew-before-the-system-design-interview-5c35919f16a2&#34;&gt;12 Microservices Patterns I Wish I Knew Before the System Design Interview&lt;/a&gt; &amp;ndash; Another pattern overview, more focused on microservices this time. Some are well-known, others more niche.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://martinfowler.com/bliki/StranglerFigApplication.html&#34;&gt;StranglerFigApplication&lt;/a&gt; &amp;ndash; Reading the previous article, I stumbled upon this pattern used to migrate from a monolith to a microservices architecture, inspired by the strangler fig tree.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://levelup.gitconnected.com/error-handling-in-event-driven-systems-1f0a7ef2cfb7&#34;&gt;Error Handling in Event-Driven Systems&lt;/a&gt; &amp;ndash; Engaging read of how to treat different types of errors in event-driven systems.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Have a wonderful weekend! &amp;#x2764;&amp;#xfe0f;&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #3</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-03/</link>
      <pubDate>Thu, 25 May 2023 10:30:15 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-03/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;p&gt;&lt;img src=&#34;https://media.giphy.com/media/vf2O8DpuNOZmXH7qZg/giphy.gif&#34; alt=&#34;Image&#34;&gt;&lt;/p&gt;
&lt;p&gt;Hello wonderful people! &amp;#x1f44b;&lt;/p&gt;
&lt;p&gt;Another week, other food for thought. Let&amp;rsquo;s go!&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.datadoghq.com/blog/2023-03-08-multiregion-infrastructure-connectivity-issue/&#34;&gt;Infrastructure connectivity issue affecting multiple regions&lt;/a&gt; &amp;ndash; This is a post-mortem from Datadog explaining how a connectivity issue took down their multi-region infrastructure for more than a day. Gergely Orosz covered the same story in &lt;a href=&#34;https://newsletter.pragmaticengineer.com/p/inside-the-datadog-outage&#34;&gt;his newsletter&lt;/a&gt; in a more detailed way.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.xda-developers.com/cloudflare-wall-of-lava-lamps&#34;&gt;How Cloudflare&amp;rsquo;s wall of lava lamps helps keep the internet safe&lt;/a&gt; &amp;ndash; Cloudflare uses a wall of lava lamps (along with two other physical projects) to maximize entropy for cryptographic seeds. First time I heard about this, and you can find more technical details &lt;a href=&#34;https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/&#34;&gt;here&lt;/a&gt; and &lt;a href=&#34;https://www.cloudflare.com/learning/ssl/lava-lamp-encryption/&#34;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://fourtheorem.com/the-illustrated-guide-to-s3-pre-signed-urls/&#34;&gt;The illustrated guide to S3 pre-signed URLs&lt;/a&gt; &amp;ndash; Have you ever wondered how to handle uploads and downloads to S3 without exposing your bucket to the public? This article explains how to use pre-signed URLs to grant temporary access to S3 objects. I used this technique in the past and it worked like a charm.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Thanks for reading! &amp;#x1f4da;&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #2</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-02/</link>
      <pubDate>Fri, 19 May 2023 10:30:15 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-02/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;p&gt;&lt;img src=&#34;https://media.giphy.com/media/J1BJUN9feeyli/giphy-downsized-large.gif&#34; alt=&#34;Image&#34;&gt;&lt;/p&gt;
&lt;p&gt;Hello people! &amp;#x1f973;&lt;/p&gt;
&lt;p&gt;The second edition of the weekly notes is here, with many engaging articles to read. I hope you enjoy it!&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.cloudflare.com/introducing-cursor-the-ai-assistant-for-docs/&#34;&gt;Introducing Cursor: the Cloudflare AI Assistant&lt;/a&gt; &amp;ndash; Cloudflare launches Cursor, an experimental AI assistant trained to answer questions about their Developer Platform.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://lucasfcosta.com/2023/02/07/backlogs-are-useless.html&#34;&gt;Why backlogs are harmful, why they never shrink, and what to do instead&lt;/a&gt; &amp;ndash; A reflection on backlogs and why they are not suited for prioritization.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.marcolancini.it/2021/blog-team-weekly-digest/&#34;&gt;Weekly Digests to Increase Visibility and Transparency&lt;/a&gt; &amp;ndash; Be it for personal or professional reasons, the use of weekly digests can be a great way to keep track of your progress.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://medium.com/ssense-tech/event-sourcing-part-i-understanding-what-it-is-core-components-and-common-misconceptions-5dec65f6d61&#34;&gt;Event Sourcing Series&lt;/a&gt; &amp;ndash; A series of four articles about Event Sourcing. It deals with the basics concepts, an overview of read access patterns and how to evolve your system over time, complying with versioning and GDPR. It also provides the full implementation of a simple application in Python.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://engineering.atspotify.com/2023/04/spotifys-shift-to-a-fleet-first-mindset-part-1&#34;&gt;Fleet Management at Spotify&lt;/a&gt; &amp;ndash; Removing low-level work from developers&amp;rsquo; to-do lists allows product teams to focus on solving problems way more interesting than migrating library versions. In this series, Spotify explains how they are switching to a fleet-first mindset.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://towardsdatascience.com/the-design-of-an-event-store-8c751c47db6f&#34;&gt;The Design of an Event Store&lt;/a&gt; &amp;ndash; A good set of requirements an event store should meet and some interesting questions to ask when evaluating one or building your own.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://netflixtechblog.com/migrating-critical-traffic-at-scale-with-no-downtime-part-1-ba1c7a1c7835&#34;&gt;Migrating Critical Traffic At Scale with No Downtime — Part 1&lt;/a&gt; &amp;ndash; First part of a series of articles about how Netflix approaches system migrations through traffic replay.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Have a great weekend! &amp;#x1f44b;&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Weekly Tech Notes #1</title>
      <link>https://writingdeveloper.com/posts/weekly-tech-notes-01/</link>
      <pubDate>Fri, 12 May 2023 10:30:15 +0200</pubDate>
      
      <guid>https://writingdeveloper.com/posts/weekly-tech-notes-01/</guid>
      
      
      <category>links</category>
      
      <category>weekly</category>
      
      
      
      <description>&lt;p&gt;&lt;img src=&#34;https://media.giphy.com/media/3oKIPnAiaMCws8nOsE/giphy.gif&#34; alt=&#34;Image&#34;&gt;&lt;/p&gt;
&lt;p&gt;Hello folks!&lt;/p&gt;
&lt;p&gt;Today I&amp;rsquo;m starting a new series of posts where I&amp;rsquo;ll share interesting links found during the week. The purpose is to keep track of the most engaging topics I read and share them with you all. Resources shared won&amp;rsquo;t necessarily be the most recent ones.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ll try to be consistent and publish them on Fridays to wrap up the week.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s start!&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://security.googleblog.com/2023/05/so-long-passwords-thanks-for-all-phish.html&#34;&gt;So long passwords, thanks for all the phish&lt;/a&gt; &amp;ndash; Google added support for passkeys to its accounts, a more convenient and safer alternative to passwords. The &amp;ldquo;Under the hood&amp;rdquo; section is worth reading to understand how it works.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.blog/2023-05-08-github-code-search-is-generally-available&#34;&gt;GitHub code search is generally available&lt;/a&gt; &amp;ndash; Github announced the general availability of its code search feature.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.blog/2023-02-06-the-technology-behind-githubs-new-code-search/&#34;&gt;The technology behind GitHub’s new code search&lt;/a&gt; &amp;ndash; If code search is something you&amp;rsquo;re interested in, this article can give you a better understanding of how it works in practice and at Github&amp;rsquo;s scale.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.allthingsdistributed.com/2023/05/monoliths-are-not-dinosaurs.html&#34;&gt;Monoliths are not dinosaurs&lt;/a&gt; &amp;ndash; Werner Vogels, CTO at Amazon, explains that there is no architectural pattern to rule them all and that you should revisit every order of magnitude of growth. If you need to rethink the architecture, designing it as an evolutionary one will make it easier.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.primevideotech.com/video-streaming/scaling-up-the-prime-video-audio-video-monitoring-service-and-reducing-costs-by-90&#34;&gt;Scaling up the Prime Video audio/video monitoring service and reducing costs by 90%&lt;/a&gt; &amp;ndash; Werner mentions this in the previous article, but it&amp;rsquo;s worth reading the full story about how Amazon Prime Video switched from a microservices to a monolith architecture (yes, you read it right).&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://world.hey.com/dhh/how-to-recover-from-microservices-ce3803cc&#34;&gt;How to recover from microservices&lt;/a&gt; &amp;ndash; In the same vein, David Heinemeier Hansson, CTO at Basecamp, explains how the need for microservices is often overestimated and how to recover from them.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.devgenius.io/notification-system-design-that-scales-361e03b1d9e0&#34;&gt;Notification System: Design that scales&lt;/a&gt; &amp;ndash; Here you can find a high-level overview of how to design a notification system. There&amp;rsquo;s a lot more to it, but it&amp;rsquo;s a good starting point.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://samwho.dev/load-balancing/&#34;&gt;Load Balancing&lt;/a&gt; &amp;ndash; A great introduction to load balancing, with a focus on the different algorithms used to distribute the load. It touches round-robin, weighted round-robin, least connections and Peak Exponentially Weighted Moving Average (PEWMA).&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://lucasfcosta.com/2022/10/02/scrum-versus-kanban.html&#34;&gt;You don&amp;rsquo;t need Scrum. You just need to do Kanban right.&lt;/a&gt; &amp;ndash; I always felt Scrum was too rigid and Kanban a better fit for most teams. This article gives valid arguments to support this idea.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See you next week! &amp;#x1f44b;&lt;/p&gt;</description>
      
    </item>
    
  </channel>
</rss> 