<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Lucas Santos</title><description>Articles about software development, technology and opinion.</description><link>https://blog.lsantos.dev/en/</link><language>en</language><item><title>I&apos;m back!</title><link>https://blog.lsantos.dev/en/i-m-back/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/i-m-back/</guid><description>After more than a year, I&apos;m back to writing. This post talks about what I went through during this time and explains why I disappeared.</description><pubDate>Fri, 11 Sep 2026 00:00:00 GMT</pubDate><category>meta</category><category>news</category><category>personal</category><category>writing</category></item><item><title>Slopware: The End of Well-Made Code</title><link>https://blog.lsantos.dev/en/backlog-10-slopware-the-end-of-well-made-code/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-10-slopware-the-end-of-well-made-code/</guid><description>Do you know what Slopware is? Well, let me introduce you to something that will probably leave you quite concerned.</description><pubDate>Thu, 20 Mar 2025 11:00:10 GMT</pubDate><category>opinion</category><category>backlog-newsletter</category><category>ai</category></item><item><title>What happened to devs?</title><link>https://blog.lsantos.dev/en/backlog-9-what-happened-to-the-devs/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-9-what-happened-to-the-devs/</guid><description>What happened to a profession that once prided itself on being super smart and focused on what it does? Did devs stop caring about their work?</description><pubDate>Thu, 06 Mar 2025 11:00:40 GMT</pubDate><category>opinion</category><category>backlog-newsletter</category><category>ai</category></item><item><title>My journey with Vim. Six months in, what changed?</title><link>https://blog.lsantos.dev/en/backlog-8-my-journey-with-vim-what-changed-in-6-months/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-8-my-journey-with-vim-what-changed-in-6-months/</guid><description>I uninstalled VSCode completely and switched to Vim. After 6 months of use, was that a good idea?</description><pubDate>Thu, 20 Feb 2025 11:00:21 GMT</pubDate><category>technology</category><category>backlog-newsletter</category><category>vim</category><category>productivity</category><category>tools</category><category>personal</category><category>vscode</category></item><item><title>The 10 Lessons That Changed My Life as a Dev</title><link>https://blog.lsantos.dev/en/the-10-lessons-that-changed-my-life-as-a-dev/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/the-10-lessons-that-changed-my-life-as-a-dev/</guid><description>Over 13 years I built a dev career I&apos;m proud of. But I didn&apos;t do it alone. These were the 10 most important lessons I learned along the way.</description><pubDate>Sat, 15 Feb 2025 14:56:35 GMT</pubDate><category>career</category><category>backlog-newsletter</category><category>opinion</category><category>personal</category></item><item><title>Are you a good dev?</title><link>https://blog.lsantos.dev/en/backlog-6-are-you-a-good-dev/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-6-are-you-a-good-dev/</guid><description>What makes a good dev a good dev? What is a strong engineer and a weak engineer? Are you one of the good ones?</description><pubDate>Thu, 23 Jan 2025 11:00:04 GMT</pubDate><category>career</category><category>backlog-newsletter</category><category>opinion</category></item><item><title>Everything about running TypeScript natively on Node!</title><link>https://blog.lsantos.dev/en/everything-about-node-running-typescript-natively/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/everything-about-node-running-typescript-natively/</guid><description>Node 22 supports TypeScript natively! What now? Is that all? Let&apos;s learn how you can run TS much more easily and what the main configurations are!</description><pubDate>Wed, 22 Jan 2025 11:01:10 GMT</pubDate><category>technology</category><category>typescript</category><category>nodejs</category></item><item><title>The dev bubble show</title><link>https://blog.lsantos.dev/en/backlog-5-the-dev-bubble-show/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-5-the-dev-bubble-show/</guid><description>This is the most honest backlog I have ever posted. Here you get honest answers to things people ask me and an authentic view of mine on the dev bubble.</description><pubDate>Thu, 09 Jan 2025 11:00:27 GMT</pubDate><category>opinion</category><category>backlog-newsletter</category></item><item><title>The first programming language</title><link>https://blog.lsantos.dev/en/backlog-4-first-programming-language/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-4-first-programming-language/</guid><description>What if I told you the first programming language came out of a loom? Let&apos;s understand what sewing has to do with code!</description><pubDate>Wed, 25 Dec 2024 11:00:16 GMT</pubDate><category>technology</category><category>backlog-newsletter</category><category>computing</category><category>history</category></item><item><title>29 years of JavaScript!</title><link>https://blog.lsantos.dev/en/backlog-3-29-years-of-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-3-29-years-of-javascript/</guid><description>December 4th, 1995 was a special day because it was the release of the language everyone loves to hate! Let&apos;s get into the history of JavaScript!</description><pubDate>Thu, 12 Dec 2024 11:00:40 GMT</pubDate><category>technology</category><category>backlog-newsletter</category><category>javascript</category><category>computing</category><category>history</category></item><item><title>Working hard won&apos;t get you that far</title><link>https://blog.lsantos.dev/en/backlog-2-hard-work-wont-take-you-that-far/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-2-hard-work-wont-take-you-that-far/</guid><description>Talent is a myth, work and effort are nothing without context. In this edition, we&apos;re going to explore why success is pure luck, or almost...</description><pubDate>Thu, 28 Nov 2024 11:00:38 GMT</pubDate><category>opinion</category><category>backlog-newsletter</category><category>career</category><category>personal</category></item><item><title>The first PC in history!</title><link>https://blog.lsantos.dev/en/backlog-1-the-first-pc-in-history/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-1-the-first-pc-in-history/</guid><description>Let&apos;s explore the history of computing inside our own history! To start, what was the world&apos;s first personal computer?</description><pubDate>Thu, 14 Nov 2024 11:00:54 GMT</pubDate><category>technology</category><category>backlog-newsletter</category><category>computing</category><category>history</category></item><item><title>Getting things off my chest</title><link>https://blog.lsantos.dev/en/backlog-0-a-rant/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/backlog-0-a-rant/</guid><description>A personal story about almost giving up and getting a fresh start. Welcome to my new project, Backlog.</description><pubDate>Sat, 09 Nov 2024 00:44:58 GMT</pubDate><category>opinion</category><category>backlog-newsletter</category><category>writing</category><category>personal</category></item><item><title>Deno 2.0: Is Node.js Already a Thing of the Past?</title><link>https://blog.lsantos.dev/en/deno-2-is-node-toast-now/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/deno-2-is-node-toast-now/</guid><description>Deno finally reached version 2.0! Find out what&apos;s new in the most popular TypeScript runtime and why it can replace Node.js</description><pubDate>Wed, 30 Oct 2024 11:00:52 GMT</pubDate><category>technology</category><category>deno</category><category>typescript</category><category>javascript</category><category>npm</category><category>open source</category></item><item><title>&quot;JavaScript Will Be Completely Different in 2025&quot;</title><link>https://blog.lsantos.dev/en/javascript-will-be-completely-different-in-2025/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/javascript-will-be-completely-different-in-2025/</guid><description>&quot;JavaScript may change quite a bit in 2025, some very interesting proposals were approved, check them out!&quot;</description><pubDate>Wed, 16 Oct 2024 11:00:01 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>First steps with Neovim</title><link>https://blog.lsantos.dev/en/getting-started-with-neovim/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/getting-started-with-neovim/</guid><description>I surrendered to Vim and it wasn&apos;t easy to get it the way I wanted. So I want to teach you so you don&apos;t have to go through the same problem!</description><pubDate>Wed, 25 Sep 2024 11:00:53 GMT</pubDate><category>technology</category><category>vim</category><category>tools</category><category>linux</category><category>productivity</category></item><item><title>Using derived types</title><link>https://blog.lsantos.dev/en/using-derived-types/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/using-derived-types/</guid><description>When should we be smarter about coupling our types to other types? When does repeating code make sense?</description><pubDate>Wed, 11 Sep 2024 11:00:14 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>What&apos;s New About JavaScript Signals</title><link>https://blog.lsantos.dev/en/whats-new-about-javascript-signals/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-about-javascript-signals/</guid><description>What is the new JavaScript signals proposal? How does it work and what is it for?</description><pubDate>Wed, 21 Aug 2024 11:00:14 GMT</pubDate><category>technology</category><category>javascript</category><category>react</category></item><item><title>Are UUIDs bad? Understanding ULID</title><link>https://blog.lsantos.dev/en/are-uuids-bad-understanding-ulid/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/are-uuids-bad-understanding-ulid/</guid><description>How can you implement random IDs that are also sortable? Meet ULIDs and what they promise to change!</description><pubDate>Wed, 14 Aug 2024 11:00:09 GMT</pubDate><category>technology</category><category>computing</category><category>databases</category></item><item><title>Where to use ANY in TypeScript</title><link>https://blog.lsantos.dev/en/when-to-use-any-in-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/when-to-use-any-in-typescript/</guid><description>We already know that &quot;any&quot; is a bad usage pattern, but learn about some use cases where any is our only option!</description><pubDate>Wed, 07 Aug 2024 11:00:19 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>How I Implemented Date Mocks in Node.js Core</title><link>https://blog.lsantos.dev/en/how-i-implemented-date-mocks-in-node-js-core/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/how-i-implemented-date-mocks-in-node-js-core/</guid><description>Ever wanted to contribute to an open source project? Let me explain how I added my code to Node.js!</description><pubDate>Wed, 31 Jul 2024 11:00:32 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category><category>open source</category><category>tests</category></item><item><title>What to Expect from JavaScript in 2025</title><link>https://blog.lsantos.dev/en/what-to-expect-from-javascript-in-2025/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-to-expect-from-javascript-in-2025/</guid><description>What to expect from JavaScript in 2025? Learn about the major proposals and features you may receive in the future!</description><pubDate>Wed, 24 Jul 2024 11:00:49 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>Typing environment variables the right way with TS</title><link>https://blog.lsantos.dev/en/typing-environment-variables-the-right-way-with-ts/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/typing-environment-variables-the-right-way-with-ts/</guid><description>Probably one of the biggest problems we face in TypeScript, discover the solution for typing envs and how to apply it in your project!</description><pubDate>Fri, 19 Jul 2024 11:00:44 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>What&apos;s New in JavaScript in 2024</title><link>https://blog.lsantos.dev/en/whats-new-javascript-2024/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-javascript-2024/</guid><description>Find out everything new in the latest version of JavaScript in 2024!</description><pubDate>Wed, 17 Jul 2024 11:00:20 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>What is Corepack and how can you use it?</title><link>https://blog.lsantos.dev/en/what-is-corepack-and-how-to-use-it/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-is-corepack-and-how-to-use-it/</guid><description>Learn how to use Corepack, the tool causing controversy in the Node.js world</description><pubDate>Thu, 11 Jul 2024 11:00:51 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category><category>npm</category><category>history</category></item><item><title>TypeScript&apos;s Biggest Update in Years - TypeScript 5.5</title><link>https://blog.lsantos.dev/en/typescript-5-5-biggest-update-in-years/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/typescript-5-5-biggest-update-in-years/</guid><description>Learn everything about TypeScript&apos;s biggest update in years!</description><pubDate>Wed, 10 Jul 2024 17:23:32 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>JavaScript gains new Set methods</title><link>https://blog.lsantos.dev/en/javascript-new-set-methods/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/javascript-new-set-methods/</guid><description>JavaScript has just gained new Set methods in 2024, let&apos;s explore them!</description><pubDate>Thu, 04 Jul 2024 11:00:40 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>Using Jest with TypeScript</title><link>https://blog.lsantos.dev/en/using-jest-with-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/using-jest-with-typescript/</guid><description>Learn how to configure your application to run automated tests with Jest written in TypeScript</description><pubDate>Wed, 19 Jun 2024 11:00:32 GMT</pubDate><category>technology</category><category>tests</category><category>typescript</category><category>nodejs</category></item><item><title>Using Assertion Functions in TypeScript</title><link>https://blog.lsantos.dev/en/using-assertion-functions-in-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/using-assertion-functions-in-typescript/</guid><description>Learn how to use one of the most important and yet least known features of TypeScript! Assertion functions</description><pubDate>Fri, 14 Jun 2024 11:00:51 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>Using Mocks with Node Test Runner</title><link>https://blog.lsantos.dev/en/using-mocks-with-the-node-test-runner/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/using-mocks-with-the-node-test-runner/</guid><description>How to use mocks, stubs and spies in your tests using the native Node.js Test Runner</description><pubDate>Wed, 05 Jun 2024 11:00:45 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category><category>tests</category></item><item><title>Getting Started with the Node.js Test Runner</title><link>https://blog.lsantos.dev/en/getting-started-with-the-node-js-test-runner/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/getting-started-with-the-node-js-test-runner/</guid><description>Learn how to start writing your tests with Node.js in the simplest, easiest way possible: using the Node.js Test Runner</description><pubDate>Thu, 30 May 2024 11:00:15 GMT</pubDate><category>technology</category><category>nodejs</category><category>typescript</category><category>tests</category><category>javascript</category></item><item><title>What are &apos;const assertions&apos; in TypeScript? The famous &apos;as const&apos;</title><link>https://blog.lsantos.dev/en/what-are-const-assertions-in-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-are-const-assertions-in-typescript/</guid><description>What are const assertions? Do you know the difference between the weird &apos;const as const&apos; and Object.freeze?</description><pubDate>Wed, 24 Apr 2024 11:00:59 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>&quot;Should You Be Using Enums in TypeScript?&quot;</title><link>https://blog.lsantos.dev/en/should-you-be-using-enums-in-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/should-you-be-using-enums-in-typescript/</guid><description>&quot;You&apos;ve probably heard someone say \&quot;Don&apos;t use Enums\&quot;... But why does nobody like enums in TypeScript? Does that even make sense?&quot;</description><pubDate>Wed, 17 Apr 2024 11:00:42 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>Types versus interfaces in 2024: which to use?</title><link>https://blog.lsantos.dev/en/types-versus-interfaces-in-typescript-2024/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/types-versus-interfaces-in-typescript-2024/</guid><description>What&apos;s the difference between types and interfaces in TypeScript? When to use one and the other?</description><pubDate>Wed, 10 Apr 2024 11:00:35 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>Filtering classes and methods from a type in TypeScript</title><link>https://blog.lsantos.dev/en/filtering-class-methods-from-a-type-in-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/filtering-class-methods-from-a-type-in-typescript/</guid><description>Learn how to create a type in TypeScript that can help you build filtering functionality by removing methods from classes!</description><pubDate>Wed, 03 Apr 2024 11:00:57 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>Deno KV on NPM - the database you needed and didn&apos;t know it</title><link>https://blog.lsantos.dev/en/deno-kv-on-npm/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/deno-kv-on-npm/</guid><description>The coolest database in the world just arrived for Node.js users with NPM.</description><pubDate>Wed, 27 Mar 2024 11:00:15 GMT</pubDate><category>technology</category><category>deno</category><category>typescript</category><category>databases</category><category>javascript</category><category>npm</category></item><item><title>Do you already know about auto-accessors in TypeScript?</title><link>https://blog.lsantos.dev/en/auto-accessors-in-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/auto-accessors-in-typescript/</guid><description>Have you heard about auto-accessors? Do you know what this feature is? Then let&apos;s understand better how it works!</description><pubDate>Wed, 20 Mar 2024 11:00:23 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>Parallel Assignments - A feature you didn&apos;t know existed in JavaScript</title><link>https://blog.lsantos.dev/en/parallel-assignments-a-feature-you-didnt-know-existed-in-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/parallel-assignments-a-feature-you-didnt-know-existed-in-javascript/</guid><description>Do you know what double assignments or parallel assignments are? Let&apos;s discover this unknown feature of JavaScript!</description><pubDate>Wed, 13 Mar 2024 11:00:54 GMT</pubDate><category>technology</category><category>javascript</category><category>typescript</category></item><item><title>Cryptography #1 - Asymmetric Cryptography with RSA</title><link>https://blog.lsantos.dev/en/asymmetric-cryptography-with-rsa/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/asymmetric-cryptography-with-rsa/</guid><description>Do you know how asymmetric key pairs that are all around us work? Want to learn how to calculate a key manually? Then this article is for you!</description><pubDate>Wed, 06 Mar 2024 11:00:32 GMT</pubDate><category>technology</category><category>security</category><category>cryptography</category><category>typescript</category></item><item><title>Deno 1.40 Release Highlights</title><link>https://blog.lsantos.dev/en/whats-new-in-deno-1-40/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-deno-1-40/</guid><description>Understand the main changes in Deno 1.40 and how they directly impact your experience with the tool!</description><pubDate>Wed, 28 Feb 2024 11:00:45 GMT</pubDate><category>technology</category><category>deno</category><category>typescript</category><category>javascript</category></item><item><title>&quot;The concept of \&quot;reference\&quot; and \&quot;value\&quot; in JavaScript&quot;</title><link>https://blog.lsantos.dev/en/the-concept-of-reference-and-value-in-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/the-concept-of-reference-and-value-in-javascript/</guid><description>&quot;Understand the differences between reference and value in JavaScript: primitives are copied, objects create shared pointers. Learn cloning techniques.&quot;</description><pubDate>Wed, 21 Feb 2024 11:00:38 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>What&apos;s New in TypeScript 5.4</title><link>https://blog.lsantos.dev/en/whats-new-in-typescript-5-4-beta/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-typescript-5-4-beta/</guid><description>See the main changes in the TypeScript 5.4 beta, including the new NoInfer type with detailed explanations!</description><pubDate>Wed, 14 Feb 2024 11:00:19 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>About Technical Interviews - It Was Never About the Code</title><link>https://blog.lsantos.dev/en/on-technical-interviews-it-was-never-about-the-code/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/on-technical-interviews-it-was-never-about-the-code/</guid><description>In this article, we discuss the point of technical interviews and why I believe none of us really understood their true purpose.</description><pubDate>Wed, 31 Jan 2024 11:00:42 GMT</pubDate><category>career</category><category>tips</category></item><item><title>Real-time applications with Deno KV</title><link>https://blog.lsantos.dev/en/real-time-applications-deno-kv/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/real-time-applications-deno-kv/</guid><description>Creating real-time applications became much easier with a new tool released by Deno in version 1.38.5, the watch mode!</description><pubDate>Wed, 24 Jan 2024 11:00:34 GMT</pubDate><category>technology</category><category>deno</category><category>typescript</category><category>javascript</category><category>databases</category></item><item><title>Cronjobs in the cloud with Deno Cron</title><link>https://blog.lsantos.dev/en/cron-jobs-in-the-cloud-with-deno-cron/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/cron-jobs-in-the-cloud-with-deno-cron/</guid><description>Probably the functionality that everyone has had to use at some point now has a completely serverless equivalent. Let&apos;s understand Deno Cron</description><pubDate>Wed, 17 Jan 2024 11:00:19 GMT</pubDate><category>technology</category><category>deno</category><category>typescript</category><category>javascript</category></item><item><title>Cryptography #0 - Essential Concepts</title><link>https://blog.lsantos.dev/en/cryptography-0-essential-concepts/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/cryptography-0-essential-concepts/</guid><description>How about learning several essential cryptography concepts?!</description><pubDate>Mon, 15 Jan 2024 23:47:05 GMT</pubDate><category>technology</category><category>cryptography</category><category>security</category></item><item><title>Understanding JavaScript Maps</title><link>https://blog.lsantos.dev/en/understanding-javascript-maps/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/understanding-javascript-maps/</guid><description>Since the dawn of humanity, we have tried to relate things in key and value objects. Let&apos;s talk about how JavaScript solves this with Maps.</description><pubDate>Sat, 13 Jan 2024 20:42:28 GMT</pubDate><category>technology</category><category>javascript</category><category>computing</category></item><item><title>Queues have arrived in Deno KV</title><link>https://blog.lsantos.dev/en/queues-have-arrived-in-deno-kv/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/queues-have-arrived-in-deno-kv/</guid><description>The simplest way to build message-based systems is now Deno Queues, let&apos;s understand everything about this new tool!</description><pubDate>Wed, 10 Jan 2024 11:00:32 GMT</pubDate><category>technology</category><category>deno</category><category>typescript</category><category>javascript</category><category>pubsub</category></item><item><title>.env Support, API Changes and Deno 1.38 Features</title><link>https://blog.lsantos.dev/en/deno-1-38-new-features/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/deno-1-38-new-features/</guid><description>.env file support, test runner in the REPL, unix socket support and much more in the new Deno version!</description><pubDate>Wed, 03 Jan 2024 11:00:52 GMT</pubDate><category>technology</category><category>deno</category><category>typescript</category><category>javascript</category></item><item><title>Node 21.2 is the most special version of all!</title><link>https://blog.lsantos.dev/en/node-21-2-is-the-most-special-version-of-all/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/node-21-2-is-the-most-special-version-of-all/</guid><description>Join me in understanding what changed in Node.js version 21.2, why this is one of the most special versions of all! And what it means!</description><pubDate>Fri, 24 Nov 2023 23:50:58 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category><category>tests</category></item><item><title>Node 21 Release Highlights!</title><link>https://blog.lsantos.dev/en/whats-new-in-node-21/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-node-21/</guid><description>Learn about the major features coming in Node 21 and 21.1!</description><pubDate>Fri, 10 Nov 2023 16:22:47 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category></item><item><title>What&apos;s New in TypeScript 5.3 - Beta!</title><link>https://blog.lsantos.dev/en/typescript-5-3-beta-features/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/typescript-5-3-beta-features/</guid><description>Let&apos;s understand all the new features of TypeScript 5.3 beta version!</description><pubDate>Wed, 01 Nov 2023 21:21:53 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>Defining static methods in interfaces with TypeScript</title><link>https://blog.lsantos.dev/en/defining-static-methods-in-interfaces-with-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/defining-static-methods-in-interfaces-with-typescript/</guid><description>Do you know how to type static methods and properties in TypeScript? Come here, I&apos;ll show you how!</description><pubDate>Tue, 17 Oct 2023 22:00:33 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>Accessing .env files natively with Node.js</title><link>https://blog.lsantos.dev/en/accessing-env-files-natively-with-nodejs/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/accessing-env-files-natively-with-nodejs/</guid><description>Ever thought about loading your environment variables directly into Node.js? Version 20.6 brings an incredible new feature!</description><pubDate>Mon, 09 Oct 2023 22:19:59 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category></item><item><title>Best practices for HarperDB projects using TypeScript</title><link>https://blog.lsantos.dev/en/best-practices-for-harperdb-projects-using-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/best-practices-for-harperdb-projects-using-typescript/</guid><description>When you are working with HarperDB, you can use TypeScript to improve your development experience. Let&apos;s talk about folder structures, code best practices, and how to set up your project.</description><pubDate>Mon, 09 Oct 2023 20:17:39 GMT</pubDate><category>technology</category><category>typescript</category><category>harperdb</category><category>databases</category><category>nodejs</category><category>architecture</category><category>rest</category></item><item><title>How to run TypeScript natively in Node.js with TSX</title><link>https://blog.lsantos.dev/en/how-to-run-typescript-natively-in-nodejs-with-tsx/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/how-to-run-typescript-natively-in-nodejs-with-tsx/</guid><description>Have you ever wondered what it would be like to run TypeScript directly on Node.js without needing a compilation step? It&apos;s possible, with TSX!</description><pubDate>Wed, 04 Oct 2023 17:45:33 GMT</pubDate><category>technology</category><category>typescript</category><category>nodejs</category><category>javascript</category></item><item><title>TypeScript 5.3 What&apos;s New</title><link>https://blog.lsantos.dev/en/whats-new-in-ts-5-3/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-ts-5-3/</guid><description>Let&apos;s understand what could come in TS 5.3 with this amazing list of features!</description><pubDate>Wed, 30 Aug 2023 09:00:30 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>You will never finish anything - Lessons from a decade of mistakes</title><link>https://blog.lsantos.dev/en/you-will-never-finish-anything-lessons-from-a-decade-of-mistakes/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/you-will-never-finish-anything-lessons-from-a-decade-of-mistakes/</guid><description>What to do when you realize that the control you thought you had over your life was just an illusion you created yourself?</description><pubDate>Sat, 26 Aug 2023 12:48:12 GMT</pubDate><category>opinion</category><category>career</category><category>personal</category></item><item><title>TypeScript 5.2&apos;s New Feature: Introducing Using</title><link>https://blog.lsantos.dev/en/typescript-5-2-using/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/typescript-5-2-using/</guid><description>TypeScript 5.2 is implementing a new keyword called using. But do you know what it&apos;s for?</description><pubDate>Thu, 03 Aug 2023 11:00:11 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>Atomic operations with Deno KV</title><link>https://blog.lsantos.dev/en/atomic-operations-with-deno-kv/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/atomic-operations-with-deno-kv/</guid><description>Deno KV is advancing faster and faster. Let&apos;s learn what atomic transactions are and how they&apos;re useful in a KV database.</description><pubDate>Thu, 27 Jul 2023 08:00:25 GMT</pubDate><category>technology</category><category>deno</category><category>typescript</category><category>databases</category><category>javascript</category></item><item><title>&quot;Do you already know Deno KV?&quot;</title><link>https://blog.lsantos.dev/en/have-you-heard-of-deno-kv/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/have-you-heard-of-deno-kv/</guid><description>&quot;Have you heard of the new Deno KV? Then it&apos;s time to discover this tool that could save your life&quot;</description><pubDate>Thu, 20 Jul 2023 11:00:50 GMT</pubDate><category>technology</category><category>deno</category><category>databases</category><category>typescript</category><category>javascript</category></item><item><title>All about the new Docker compose file watch</title><link>https://blog.lsantos.dev/en/docker-compose-file-watch/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/docker-compose-file-watch/</guid><description>Recently Docker announced a new API for Docker compose that allows you to take automatic actions based on modified files! Let&apos;s understand all about it!</description><pubDate>Thu, 06 Jul 2023 11:00:05 GMT</pubDate><category>technology</category><category>docker</category><category>containers</category><category>devops</category><category>infrastructure</category></item><item><title>Debugging containers with Docker Gremlin</title><link>https://blog.lsantos.dev/en/debugging-containers-with-docker-gremlin/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/debugging-containers-with-docker-gremlin/</guid><description>You&apos;ve been debugging your Docker containers wrong this entire time and I can prove it! Let&apos;s discover Gremlin, the extension that will change everything!</description><pubDate>Thu, 22 Jun 2023 11:00:32 GMT</pubDate><category>technology</category><category>docker</category><category>containers</category><category>devops</category><category>infrastructure</category></item><item><title>What is type-testing with TypeScript? Is it an anti-pattern? Is it worth it?</title><link>https://blog.lsantos.dev/en/what-is-type-testing-in-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-is-type-testing-in-typescript/</guid><description>Did you know there&apos;s a type of test you can&apos;t do in JavaScript? Learn all about Type Testing with TypeScript!</description><pubDate>Wed, 14 Jun 2023 22:46:19 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category><category>tests</category></item><item><title>&quot;What is NPM package provenance?&quot;</title><link>https://blog.lsantos.dev/en/what-is-npm-package-provenance/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-is-npm-package-provenance/</guid><description>&quot;NPM launched a quite interesting feature that will greatly improve the security of our packages. Learn about package provenance!&quot;</description><pubDate>Fri, 12 May 2023 11:00:16 GMT</pubDate><category>technology</category><category>security</category><category>nodejs</category><category>javascript</category><category>npm</category><category>ci</category><category>github</category><category>cryptography</category></item><item><title>&quot;What&apos;s New in ECMAScript 2023?&quot;</title><link>https://blog.lsantos.dev/en/whats-new-in-ecmascript-2023/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-ecmascript-2023/</guid><description>&quot;ECMAScript 2023 is officially finalized, and we already know which features will arrive in the new JavaScript specification&quot;</description><pubDate>Thu, 04 May 2023 10:00:18 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>Node.js 20 is out! Learn about the new features</title><link>https://blog.lsantos.dev/en/node-20-is-out-whats-new/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/node-20-is-out-whats-new/</guid><description>Another year, another official Node.js version is out. Version 20 brings significant changes, learn all about them here!</description><pubDate>Thu, 27 Apr 2023 10:00:07 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category><category>security</category><category>tests</category></item><item><title>Deno now has a native database</title><link>https://blog.lsantos.dev/en/deno-now-has-a-native-database/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/deno-now-has-a-native-database/</guid><description>Deno surprises us again with a native key-value database implemented directly in the global namespace! Let&apos;s understand how it works!</description><pubDate>Wed, 19 Apr 2023 11:00:53 GMT</pubDate><category>technology</category><category>typescript</category><category>deno</category><category>databases</category></item><item><title>Type-level programming - #TypeScriptWeek day 5</title><link>https://blog.lsantos.dev/en/type-level-programming-semanats-day-5/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/type-level-programming-semanats-day-5/</guid><description>You&apos;ve heard of object-oriented programming, but what about type-oriented? A development style that can help you write much safer code with TypeScript</description><pubDate>Fri, 07 Apr 2023 11:00:08 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>Advanced TypeScript Techniques - #SemanaTS day 4</title><link>https://blog.lsantos.dev/en/advanced-typescript-techniques-semanats-day-4/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/advanced-typescript-techniques-semanats-day-4/</guid><description>Learn all about more advanced TypeScript techniques, from type narrowing to generics and branded types.</description><pubDate>Thu, 06 Apr 2023 11:00:47 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>TypeScript good and bad practices - #SemanaTS day 3</title><link>https://blog.lsantos.dev/en/good-and-bad-typescript-practices-semanats-day-3/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/good-and-bad-typescript-practices-semanats-day-3/</guid><description>Have you ever wondered what the best TypeScript practices are for keeping your code typed and safe? I&apos;m going to show you!</description><pubDate>Wed, 05 Apr 2023 11:00:41 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>External types and declaration packages - #TypeScript Week day 2</title><link>https://blog.lsantos.dev/en/external-types-and-declaration-files-ts-week-day-2/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/external-types-and-declaration-files-ts-week-day-2/</guid><description>On the second day of TS week we&apos;ll talk about type declaration files and best practices for creating libraries!</description><pubDate>Tue, 04 Apr 2023 11:00:24 GMT</pubDate><category>technology</category><category>typescript</category><category>npm</category></item><item><title>What you knew and didn&apos;t know about TS - TS Week day 1</title><link>https://blog.lsantos.dev/en/what-you-knew-and-didnt-know-about-ts-ts-week-day-1/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-you-knew-and-didnt-know-about-ts-ts-week-day-1/</guid><description>Learn everything about TypeScript and how you can take your first steps in this technology that is growing more and more!</description><pubDate>Mon, 03 Apr 2023 11:00:04 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>TypeScript 5.0&apos;s Official Features</title><link>https://blog.lsantos.dev/en/typescript-5-official-updates/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/typescript-5-official-updates/</guid><description>It&apos;s official! TypeScript has released version 5.0, and I&apos;m going to tell you all about what&apos;s new!</description><pubDate>Thu, 23 Mar 2023 11:00:38 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>What is the new number sequence proposal with Iterator.range in JavaScript</title><link>https://blog.lsantos.dev/en/the-new-iterator-range-proposal-for-javascript-sequences/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/the-new-iterator-range-proposal-for-javascript-sequences/</guid><description>An API you never imagine you need until you do! Learn about sequences in JavaScript!</description><pubDate>Thu, 16 Feb 2023 11:00:08 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>What&apos;s New in TypeScript 5.0 Beta</title><link>https://blog.lsantos.dev/en/whats-new-in-typescript-5-0-beta/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-typescript-5-0-beta/</guid><description>TypeScript 5.0 beta is out! Time to discover what&apos;s new in this version of the superset we all love!</description><pubDate>Thu, 02 Feb 2023 11:11:51 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>What are errors and what does error.cause do in JavaScript?</title><link>https://blog.lsantos.dev/en/what-are-errors-and-what-is-error-cause-for-in-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-are-errors-and-what-is-error-cause-for-in-javascript/</guid><description>Error handling is one of the most important and most difficult skills for any developer. But almost nobody knows there&apos;s a much easier way to handle your errors.</description><pubDate>Wed, 18 Jan 2023 11:00:30 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>&quot;What are generators for in JS?&quot;</title><link>https://blog.lsantos.dev/en/what-are-generators-in-js-for/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-are-generators-in-js-for/</guid><description>&quot;Generators are not a recent API in JavaScript, yet they remain little known. Let&apos;s learn what generators are for, how you can use them in your applications, and how to take your skills to the next level with this feature.&quot;</description><pubDate>Thu, 05 Jan 2023 13:00:46 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>Let&apos;s talk about Deno</title><link>https://blog.lsantos.dev/en/lets-talk-about-deno/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/lets-talk-about-deno/</guid><description>Is Node.js finally dying? Is this the time to migrate to Deno? Let&apos;s understand everything about it in this article!</description><pubDate>Wed, 21 Dec 2022 12:00:14 GMT</pubDate><category>technology</category><category>deno</category><category>javascript</category><category>typescript</category><category>npm</category><category>security</category><category>open source</category></item><item><title>&quot;Will JavaScript stop being single-threaded? Understanding Module Expressions&quot;</title><link>https://blog.lsantos.dev/en/is-javascript-going-to-stop-being-single-threaded/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/is-javascript-going-to-stop-being-single-threaded/</guid><description>&quot;What if JavaScript were as good with multiple threads as it behaves today with just one? Let&apos;s understand Block Expressions!&quot;</description><pubDate>Thu, 08 Dec 2022 13:00:41 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>JavaScript Decorators</title><link>https://blog.lsantos.dev/en/javascript-decorators/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/javascript-decorators/</guid><description>One of the most important proposals for JavaScript has just reached stage 3! Understand what decorators are and why they are not the only novelty of this proposal!</description><pubDate>Fri, 04 Nov 2022 14:00:14 GMT</pubDate><category>technology</category><category>javascript</category><category>typescript</category></item><item><title>Simple Multi-Node Data Replication with HarperDB Pub/Sub</title><link>https://blog.lsantos.dev/en/simple-multi-node-data-replication-with-harperdb-pubsub/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/simple-multi-node-data-replication-with-harperdb-pubsub/</guid><description>In the previous articles I wrote about HarperDB, we explored Kubernetes and Helm. Now it&apos;s time to understand another cool feature: multi-node replication with pub/sub.</description><pubDate>Fri, 21 Oct 2022 11:10:15 GMT</pubDate><category>technology</category><category>harperdb</category><category>databases</category><category>pubsub</category><category>infrastructure</category><category>docker</category></item><item><title>Simpler CLIs with Util.parseArgs</title><link>https://blog.lsantos.dev/en/simpler-clis-with-util-parseargs/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/simpler-clis-with-util-parseargs/</guid><description>Learn how Node.js made building command-line tools easier with the new parseArgs method!</description><pubDate>Thu, 20 Oct 2022 13:00:04 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category><category>typescript</category></item><item><title>Everything about the new satisfies operator in TypeScript</title><link>https://blog.lsantos.dev/en/everything-about-the-new-satisfies-operator-in-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/everything-about-the-new-satisfies-operator-in-typescript/</guid><description>In TypeScript 4.9 beta, we got a new operator, &quot;satisfies&quot;. Let&apos;s understand how this new operator can be useful and why it&apos;s so cool!</description><pubDate>Wed, 05 Oct 2022 13:00:52 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>Creating bots for Telegram with GrammY</title><link>https://blog.lsantos.dev/en/creating-telegram-bots-with-grammy/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/creating-telegram-bots-with-grammy/</guid><description>Learn how to create amazing bots for Telegram using an excellent tool that will revolutionize the way you work with automation.</description><pubDate>Wed, 05 Oct 2022 13:00:00 GMT</pubDate><category>technology</category><category>deno</category><category>typescript</category><category>bots</category><category>telegram</category><category>grammy</category><category>javascript</category></item><item><title>Everything about the new array methods in JavaScript</title><link>https://blog.lsantos.dev/en/everything-about-the-new-array-methods-in-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/everything-about-the-new-array-methods-in-javascript/</guid><description>One of the promises of ECMAScript is the inclusion of new array methods, in this article we&apos;ll go through all of them and give a use case for each one, so you won&apos;t be left out!</description><pubDate>Thu, 22 Sep 2022 13:00:15 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>What are &quot;do expressions&quot; in JavaScript?</title><link>https://blog.lsantos.dev/en/what-are-do-expressions-in-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-are-do-expressions-in-javascript/</guid><description>Understand what one of the most famous and important forms of expressions coming to JavaScript soon is!</description><pubDate>Wed, 07 Sep 2022 13:00:17 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>What to expect from JavaScript in 2023</title><link>https://blog.lsantos.dev/en/what-to-expect-from-javascript-in-2023/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-to-expect-from-javascript-in-2023/</guid><description>What does JavaScript have in store for us in 2023? In this post, I bring the main proposals that could become reality next year!</description><pubDate>Sat, 27 Aug 2022 00:09:44 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>Using JWT tokens securely</title><link>https://blog.lsantos.dev/en/using-jwt-tokens-safely/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/using-jwt-tokens-safely/</guid><description>You&apos;ve been using JWT tokens insecurely in all your projects! In this article you&apos;ll learn how to protect your tokens against attacks!</description><pubDate>Thu, 18 Aug 2022 14:00:00 GMT</pubDate><category>technology</category><category>javascript</category><category>security</category><category>typescript</category><category>nodejs</category></item><item><title>The 5 hardest things in computing</title><link>https://blog.lsantos.dev/en/5-hardest-things-in-computer-science/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/5-hardest-things-in-computer-science/</guid><description>After almost 11 years in this career, I decided to write a bit about the things I find most complex in programming, and it&apos;s not writing code!</description><pubDate>Wed, 03 Aug 2022 14:00:00 GMT</pubDate><category>opinion</category><category>architecture</category><category>computing</category></item><item><title>JavaScript News in 2022</title><link>https://blog.lsantos.dev/en/javascript-news-2022/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/javascript-news-2022/</guid><description>JavaScript is always evolving! Join me in this article where I show you what&apos;s new in the world&apos;s most loved language in 2022.</description><pubDate>Thu, 28 Jul 2022 07:00:00 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>Using HarperDB with Kubernetes</title><link>https://blog.lsantos.dev/en/using-harperdb-with-kubernetes/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/using-harperdb-with-kubernetes/</guid><description>Ready to learn how to install and manage an awesome database on Kubernetes? Let me introduce you to HarperDB and show how we can distribute databases across clusters.</description><pubDate>Thu, 30 Jun 2022 14:45:00 GMT</pubDate><category>technology</category><category>kubernetes</category><category>harperdb</category><category>databases</category><category>containers</category><category>docker</category><category>infrastructure</category><category>azure</category><category>cloud</category></item><item><title>Why You Should Reconsider Using Date.now</title><link>https://blog.lsantos.dev/en/why-you-should-rethink-using-date-now/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/why-you-should-rethink-using-date-now/</guid><description>In this article I&apos;ll show you why Date.now() is very problematic, especially when we need to measure time or measure duration with JavaScript and why you need to stop using it.</description><pubDate>Tue, 28 Jun 2022 07:00:00 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category><category>performance</category></item><item><title>Safer code with Shadow Realms in JavaScript</title><link>https://blog.lsantos.dev/en/shadow-realms-in-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/shadow-realms-in-javascript/</guid><description>One of the most interesting proposals in JavaScript recently has been making waves. Learn what shadow realms are and how it will be possible to execute code more securely.</description><pubDate>Tue, 21 Jun 2022 13:00:00 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>What&apos;s New in TypeScript 4.7</title><link>https://blog.lsantos.dev/en/whats-new-in-typescript-47/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-typescript-47/</guid><description>Stay up to date with the main features of TypeScript 4.7. Which includes, among many things, the ability to use native ESModules!</description><pubDate>Wed, 08 Jun 2022 14:27:00 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category><category>nodejs</category></item><item><title>Everything you need to know about Node.js&apos;s new test runner</title><link>https://blog.lsantos.dev/en/everything-you-need-to-know-about-nodejs-new-test-runner/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/everything-you-need-to-know-about-nodejs-new-test-runner/</guid><description>Learn everything about Node.js 18&apos;s new test runner and how you can use it to test your code.</description><pubDate>Wed, 25 May 2022 11:53:00 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category><category>tests</category></item><item><title>&quot;What&apos;s New in Node.js 18!&quot;</title><link>https://blog.lsantos.dev/en/whats-new-in-nodejs-18/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-nodejs-18/</guid><description>&quot;Learn everything about Node.js 2022 release and how it can (and will) impact the ecosystem as a whole with the addition of incredible APIs and new import models.&quot;</description><pubDate>Wed, 04 May 2022 14:00:00 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category><category>tests</category></item><item><title>What is Infer in TypeScript and What Does It Do?</title><link>https://blog.lsantos.dev/en/typescript-infer-explained/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/typescript-infer-explained/</guid><description>If you&apos;ve written TypeScript code, you may not have seen the famous infer instruction yet. But believe me, one day it will appear and you&apos;ll know what it is!</description><pubDate>Mon, 18 Apr 2022 14:00:00 GMT</pubDate><category>technology</category><category>typescript</category></item><item><title>Sharing Types with TypeScript</title><link>https://blog.lsantos.dev/en/sharing-types-with-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/sharing-types-with-typescript/</guid><description>One of the biggest problems we have in TypeScript projects is sharing types across several projects. Let&apos;s look at some techniques to mitigate that!</description><pubDate>Mon, 11 Apr 2022 14:00:00 GMT</pubDate><category>technology</category><category>typescript</category><category>architecture</category><category>grpc</category></item><item><title>&quot;Pipeline operators in JavaScript&quot;</title><link>https://blog.lsantos.dev/en/pipeline-operators-in-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/pipeline-operators-in-javascript/</guid><description>&quot;Learn everything about the proposal gaining significant adoption in ECMAScript, the pipeline operators.&quot;</description><pubDate>Mon, 04 Apr 2022 14:00:00 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>JavaScript with TypeScript&apos;s type system? Understand everything about the new proposal!</title><link>https://blog.lsantos.dev/en/javascript-with-typescript-types-new-proposal/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/javascript-with-typescript-types-new-proposal/</guid><description>Understand everything about TypeScript&apos;s new proposal for JavaScript to embed native types in its interpreter.</description><pubDate>Mon, 28 Mar 2022 14:00:00 GMT</pubDate><category>technology</category><category>javascript</category><category>typescript</category></item><item><title>Meet the new JavaScript data types - Tuples and Records</title><link>https://blog.lsantos.dev/en/javascript-new-data-types-tuples-records/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/javascript-new-data-types-tuples-records/</guid><description>Meet the proposal for tuples and records that could change JavaScript history for the better! And you can still help shape this idea!</description><pubDate>Tue, 22 Mar 2022 14:00:00 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>&quot;Understanding timers/promises and AbortControllers in Node.js&quot;</title><link>https://blog.lsantos.dev/en/understanding-timers-promises-and-abortcontrollers-in-nodejs/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/understanding-timers-promises-and-abortcontrollers-in-nodejs/</guid><description>&quot;Learn everything about new ways to cancel asynchronous functions and declare time intervals with promises in Node.js&quot;</description><pubDate>Mon, 14 Mar 2022 14:00:00 GMT</pubDate><category>technology</category><category>javascript</category><category>nodejs</category></item><item><title>Migrating a legacy application from MongoDB to HarperDB</title><link>https://blog.lsantos.dev/en/migrating-a-legacy-application-from-mongodb-to-harperdb/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/migrating-a-legacy-application-from-mongodb-to-harperdb/</guid><description>A few weeks ago I gave a talk at the HarperDB channel about how we can migrate a legacy application from MongoDB to HarperDB. This is the written, hands-on version of that talk.</description><pubDate>Wed, 02 Mar 2022 19:51:23 GMT</pubDate><category>technology</category><category>mongodb</category><category>harperdb</category><category>databases</category><category>typescript</category><category>infrastructure</category><category>docker</category><category>architecture</category></item><item><title>The most common bad practices in JavaScript</title><link>https://blog.lsantos.dev/en/most-common-bad-practices-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/most-common-bad-practices-javascript/</guid><description>Come learn some of the practices considered &quot;bad&quot; in JavaScript and how you can work around them to make your code better!</description><pubDate>Tue, 01 Feb 2022 13:00:00 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>Grouping with Array.prototype.groupBy</title><link>https://blog.lsantos.dev/en/array-groupby-stage-3/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/array-groupby-stage-3/</guid><description>No more grouping objects and keys by hand or reaching for external libraries. JavaScript now has a native grouping method!</description><pubDate>Wed, 12 Jan 2022 15:00:00 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>Salary negotiation for devs - tips and tricks</title><link>https://blog.lsantos.dev/en/salary-negotiation-for-devs-tips-and-tricks/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/salary-negotiation-for-devs-tips-and-tricks/</guid><description>Ever thought about getting salary negotiation tips for devs? In this video I&apos;ll show you the main tips I wish I&apos;d known when I started my career and I&apos;ll share several resources so you can also negotiate the best salaries</description><pubDate>Sun, 14 Nov 2021 11:03:48 GMT</pubDate><category>career</category><category>video</category><category>tips</category></item><item><title>&quot;Why is writing important for your career?&quot;</title><link>https://blog.lsantos.dev/en/why-writing-matters-for-your-career/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/why-writing-matters-for-your-career/</guid><description>&quot;Why don&apos;t you write content? Have you thought that this could be really good for your career and for your own life?&quot;</description><pubDate>Thu, 04 Nov 2021 12:46:00 GMT</pubDate><category>career</category><category>video</category><category>writing</category></item><item><title>What I learned after 150 talks</title><link>https://blog.lsantos.dev/en/what-i-learned-after-150-talks/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-i-learned-after-150-talks/</guid><description>I&apos;ve been creating content for 6 years now and I want to show you my mistakes and my wins and everything I learned after 150 talks at online and in-person events!</description><pubDate>Thu, 28 Oct 2021 13:55:00 GMT</pubDate><category>career</category><category>video</category><category>events</category></item><item><title>10 things you didn&apos;t know NPM was capable of doing</title><link>https://blog.lsantos.dev/en/npm-10-hidden-features/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/npm-10-hidden-features/</guid><description>Did you know that NPM is not just a package manager? I&apos;ll show you the 10 coolest NPM commands that I bet you didn&apos;t know about!</description><pubDate>Thu, 21 Oct 2021 13:55:00 GMT</pubDate><category>technology</category><category>video</category><category>javascript</category><category>npm</category></item><item><title>5 things you should know before giving a talk: Call For Papers</title><link>https://blog.lsantos.dev/en/5-things-to-know-before-speaking-cfp/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/5-things-to-know-before-speaking-cfp/</guid><description>How about learning the 5 main tips for speaking at tech events?</description><pubDate>Thu, 14 Oct 2021 13:40:00 GMT</pubDate><category>career</category><category>video</category><category>events</category><category>tips</category></item><item><title>Temporal: the new way to work with dates in JavaScript</title><link>https://blog.lsantos.dev/en/temporal-the-new-way-to-work-with-dates-in-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/temporal-the-new-way-to-work-with-dates-in-javascript/</guid><description>Learn the new JavaScript specification for dates that will replace Date.</description><pubDate>Fri, 24 Sep 2021 00:49:00 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>What&apos;s new in TypeScript 4.4</title><link>https://blog.lsantos.dev/en/whats-new-in-typescript-4-4/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-typescript-4-4/</guid><description>Let&apos;s dive deeper into TypeScript 4.4&apos;s new features and understand what&apos;s new in each one!</description><pubDate>Wed, 15 Sep 2021 11:00:00 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>Removing duplicate items in JavaScript ES6</title><link>https://blog.lsantos.dev/en/removing-duplicate-items-in-javascript-es6/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/removing-duplicate-items-in-javascript-es6/</guid><description>One of the biggest challenges for developers when using Maps and Sets is removing duplicate objects that are not primitives. Learn the best way to make this change.</description><pubDate>Wed, 08 Sep 2021 12:00:00 GMT</pubDate><category>technology</category><category>javascript</category><category>performance</category></item><item><title>Meet SparkPlug, the new JS compiler for V8</title><link>https://blog.lsantos.dev/en/meet-sparkplug-the-new-v8-js-compiler/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/meet-sparkplug-the-new-v8-js-compiler/</guid><description>Meet the reason for a 15% performance boost in V8-based browsers and how it will change your code!</description><pubDate>Tue, 17 Aug 2021 20:16:48 GMT</pubDate><category>technology</category><category>javascript</category><category>architecture</category><category>performance</category></item><item><title>ES2021 is Approved! Check Out the JavaScript Updates</title><link>https://blog.lsantos.dev/en/es2021-approved-javascript-features/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/es2021-approved-javascript-features/</guid><description>Want to know what&apos;s coming in ES2021? Let&apos;s understand it part by part!</description><pubDate>Wed, 14 Jul 2021 13:00:00 GMT</pubDate><category>technology</category><category>javascript</category></item><item><title>The Complete Guide to gRPC Part 4: Streams</title><link>https://blog.lsantos.dev/en/the-complete-grpc-guide-part-4-streams/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/the-complete-grpc-guide-part-4-streams/</guid><description>Learn how to use one of the most interesting features of gRPC, streams! Performance and speed for large data in a super simple way!</description><pubDate>Wed, 07 Jul 2021 12:00:00 GMT</pubDate><category>technology</category><category>grpc</category><category>javascript</category><category>protobuf</category></item><item><title>Introducing the KEDA HTTP Add-on</title><link>https://blog.lsantos.dev/en/introducing-the-keda-http-add-on/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/introducing-the-keda-http-add-on/</guid><description>Learn how to scale your Kubernetes applications based on HTTP requests in Kubernetes with the KEDA HTTP Add-on</description><pubDate>Fri, 02 Jul 2021 20:01:58 GMT</pubDate><category>technology</category><category>keda</category><category>kubernetes</category><category>containers</category><category>infrastructure</category><category>helm</category><category>architecture</category><category>open source</category></item><item><title>Getting Started with ECMAScript Modules</title><link>https://blog.lsantos.dev/en/getting-started-with-ecmascript-modules/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/getting-started-with-ecmascript-modules/</guid><description>ES Modules are the next generation of module imports in JavaScript. Learn how this feature promises to revolutionize what we know.</description><pubDate>Wed, 23 Jun 2021 11:00:00 GMT</pubDate><category>technology</category><category>javascript</category><category>nodejs</category><category>typescript</category></item><item><title>Creating test environments dynamically with GitHub Actions</title><link>https://blog.lsantos.dev/en/creating-dynamic-test-environments-with-github-actions/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/creating-dynamic-test-environments-with-github-actions/</guid><description>Ever imagined having a different environment for every feature you want to test? So how about doing that with GitHub Actions and the power of Kubernetes?</description><pubDate>Wed, 09 Jun 2021 13:00:00 GMT</pubDate><category>technology</category><category>github</category><category>kubernetes</category><category>helm</category><category>aks</category><category>ci</category><category>infrastructure</category><category>acr</category><category>azure</category><category>cloud</category><category>containers</category><category>docker</category></item><item><title>The complete gRPC guide part 3: Types everywhere with TypeScript!</title><link>https://blog.lsantos.dev/en/the-complete-grpc-guide-part-3-types-everywhere-with-typescript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/the-complete-grpc-guide-part-3-types-everywhere-with-typescript/</guid><description>In this chapter of our gRPC series, we&apos;ll learn how to integrate TypeScript with gRPC and leverage its complete type system!</description><pubDate>Wed, 26 May 2021 15:10:32 GMT</pubDate><category>technology</category><category>grpc</category><category>typescript</category><category>nodejs</category><category>protobuf</category></item><item><title>See what&apos;s new in Node.js 16</title><link>https://blog.lsantos.dev/en/whats-new-in-nodejs-16/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-nodejs-16/</guid><description>Come learn what&apos;s new in version 16 of the world&apos;s most famous JavaScript runtime!</description><pubDate>Wed, 19 May 2021 17:46:04 GMT</pubDate><category>technology</category><category>nodejs</category><category>javascript</category></item><item><title>Containers Beyond Docker</title><link>https://blog.lsantos.dev/en/containers-beyond-docker/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/containers-beyond-docker/</guid><description>Want to learn more about containers? Check out this collection of content we discussed in an incredible live stream!</description><pubDate>Thu, 13 May 2021 20:18:00 GMT</pubDate><category>technology</category><category>containerd</category><category>containers</category><category>docker</category><category>video</category><category>golang</category><category>infrastructure</category></item><item><title>The complete gRPC guide part 2: Hands-on with JavaScript</title><link>https://blog.lsantos.dev/en/the-complete-grpc-guide-part-2-hands-on-with-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/the-complete-grpc-guide-part-2-hands-on-with-javascript/</guid><description>Understand what gRPC is for JavaScript, how a gRPC call works, and how you can transform all your APIs to be faster and more descriptive!</description><pubDate>Wed, 12 May 2021 13:00:00 GMT</pubDate><category>technology</category><category>grpc</category><category>javascript</category><category>protobuf</category><category>nodejs</category></item><item><title>What is Open Source?</title><link>https://blog.lsantos.dev/en/what-is-open-source/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/what-is-open-source/</guid><description>Come learn what Open Source is and understand what free software, open source and open code mean in this amazing livestream!</description><pubDate>Tue, 11 May 2021 20:41:00 GMT</pubDate><category>technology</category><category>open source</category><category>video</category><category>talk</category></item><item><title>What&apos;s New in the TypeScript 4.3 Beta</title><link>https://blog.lsantos.dev/en/whats-new-in-the-typescript-4-3-beta/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-the-typescript-4-3-beta/</guid><description>Let&apos;s understand everything about what just came out for TypeScript 4.3 and what you can already test!</description><pubDate>Mon, 10 May 2021 18:38:14 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>The simplest way to learn Kubernetes is through its API</title><link>https://blog.lsantos.dev/en/the-simplest-way-to-learn-kubernetes-is-through-its-api/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/the-simplest-way-to-learn-kubernetes-is-through-its-api/</guid><description>In this short article we&apos;ll discover the simplest way to learn the concepts behind Kubernetes in a practical way.</description><pubDate>Thu, 06 May 2021 18:50:34 GMT</pubDate><category>technology</category><category>kubernetes</category><category>drop</category><category>infrastructure</category></item><item><title>&quot;The complete gRPC guide part 1: What is gRPC?&quot;</title><link>https://blog.lsantos.dev/en/the-complete-grpc-guide-part-1-what-is-grpc/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/the-complete-grpc-guide-part-1-what-is-grpc/</guid><description>&quot;In this series of articles we will learn everything there is to learn about gRPC and how we use this incredible tool in our applications!&quot;</description><pubDate>Tue, 20 Apr 2021 11:00:00 GMT</pubDate><category>technology</category><category>grpc</category><category>javascript</category><category>typescript</category><category>protobuf</category><category>rest</category><category>architecture</category><category>microservices</category></item><item><title>Hosting your Docker images in your own registry</title><link>https://blog.lsantos.dev/en/hosting-your-docker-images-in-your-own-registry/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/hosting-your-docker-images-in-your-own-registry/</guid><description>One of the coolest things about Docker is that you already have, out of the box, a huge repository of images called Docker Hub where you can download and host your images publicly (and even privately, for a fee).</description><pubDate>Tue, 13 Apr 2021 13:00:00 GMT</pubDate><category>technology</category><category>docker</category><category>containers</category><category>infrastructure</category></item><item><title>Integrating Azure Active Directory into AKS</title><link>https://blog.lsantos.dev/en/integrating-azure-active-directory-with-aks/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/integrating-azure-active-directory-with-aks/</guid><description>Let&apos;s learn how to keep your cluster even more secure with the Azure AD integration with AKS, making cluster administration even easier.</description><pubDate>Tue, 06 Apr 2021 13:00:00 GMT</pubDate><category>technology</category><category>aks</category><category>kubernetes</category><category>azure</category><category>security</category><category>cloud</category><category>infrastructure</category></item><item><title>Storing your Helm Charts in Azure Container Registry</title><link>https://blog.lsantos.dev/en/storing-your-helm-charts-in-azure-container-registry/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/storing-your-helm-charts-in-azure-container-registry/</guid><description>Helm has a lot of amazing tooling around it, but chart storage has always been a problem. Learn how we can make the process much easier!</description><pubDate>Tue, 30 Mar 2021 13:00:00 GMT</pubDate><category>technology</category><category>helm</category><category>kubernetes</category><category>containers</category><category>azure</category><category>acr</category><category>docker</category><category>cloud</category><category>infrastructure</category><category>oci</category></item><item><title>#DockerSP - Understanding the container ecosystem beyond Docker</title><link>https://blog.lsantos.dev/en/understanding-container-ecosystem-beyond-docker/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/understanding-container-ecosystem-beyond-docker/</guid><description>Watch the full video of my talk about the container ecosystem beyond Docker with the Docker SP team!</description><pubDate>Fri, 26 Mar 2021 00:20:12 GMT</pubDate><category>technology</category><category>video</category><category>talk</category><category>containerd</category><category>containers</category><category>docker</category><category>kubernetes</category><category>cri</category><category>oci</category><category>cri-o</category><category>devops</category><category>infrastructure</category></item><item><title>Manage your dotfiles from anywhere with Git</title><link>https://blog.lsantos.dev/en/manage-your-dotfiles-from-anywhere-with-git/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/manage-your-dotfiles-from-anywhere-with-git/</guid><description>Configuring a new computer is one of the most tedious tasks any developer has to do when switching machines, but what if it were much easier?</description><pubDate>Tue, 23 Mar 2021 13:00:00 GMT</pubDate><category>technology</category><category>github</category><category>git</category><category>tips</category><category>linux</category><category>tools</category><category>productivity</category></item><item><title>&quot;How to take control of your Kubernetes cluster with affinity and tolerations&quot;</title><link>https://blog.lsantos.dev/en/how-to-control-your-kubernetes-cluster-with-affinity-and-tolerations/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/how-to-control-your-kubernetes-cluster-with-affinity-and-tolerations/</guid><description>&quot;Do you control your Kubernetes cluster? Let&apos;s learn techniques and concepts that will help you have control of your applications within the distributed model&quot;</description><pubDate>Tue, 02 Mar 2021 12:00:00 GMT</pubDate><category>technology</category><category>kubernetes</category><category>containers</category><category>devops</category><category>infrastructure</category></item><item><title>Granting permissions to users with Kubernetes</title><link>https://blog.lsantos.dev/en/giving-permissions-to-users-with-kubernetes/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/giving-permissions-to-users-with-kubernetes/</guid><description>We know how to create users in Kubernetes, now let&apos;s learn how to grant them permissions using Roles and ClusterRoles!</description><pubDate>Tue, 23 Feb 2021 12:00:00 GMT</pubDate><category>technology</category><category>kubernetes</category><category>aks</category><category>azure</category><category>devops</category><category>infrastructure</category><category>security</category></item><item><title>Understanding container runtimes</title><link>https://blog.lsantos.dev/en/understanding-container-runtimes/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/understanding-container-runtimes/</guid><description>Did you know there are different types of container runtimes? What if we understood a bit more about the differences between them?</description><pubDate>Thu, 18 Feb 2021 12:37:00 GMT</pubDate><category>technology</category><category>containerd</category><category>containers</category><category>cri</category><category>devops</category><category>docker</category><category>kubernetes</category><category>oci</category><category>cri-o</category><category>infrastructure</category></item><item><title>Creating and managing users in Kubernetes</title><link>https://blog.lsantos.dev/en/creating-and-managing-users-in-kubernetes/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/creating-and-managing-users-in-kubernetes/</guid><description>Using the same configuration file for all users can be a major problem for your cluster&apos;s security! Learn how to create new users to improve the audit trail and security of your applications!</description><pubDate>Thu, 11 Feb 2021 13:00:00 GMT</pubDate><category>technology</category><category>kubernetes</category><category>aks</category><category>cloud</category><category>azure</category><category>security</category><category>infrastructure</category></item><item><title>Custom metrics with AKS</title><link>https://blog.lsantos.dev/en/custom-metrics-with-aks/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/custom-metrics-with-aks/</guid><description>Monitoring is very important for distributed applications. Learn how to create and monitor your applications with custom Prometheus metrics for Azure Monitor.</description><pubDate>Tue, 09 Feb 2021 13:00:00 GMT</pubDate><category>technology</category><category>kubernetes</category><category>azure</category><category>containers</category><category>devops</category><category>cloud</category><category>aks</category><category>prometheus</category><category>nodejs</category><category>docker</category><category>infrastructure</category><category>observability</category></item><item><title>#FullstackImmersion - Scaling infinitely with Kubernetes</title><link>https://blog.lsantos.dev/en/learn-kubernetes-on-aks/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/learn-kubernetes-on-aks/</guid><description>Learn what Docker is and what Kubernetes is in a simple and quick talk!</description><pubDate>Fri, 05 Feb 2021 01:00:00 GMT</pubDate><category>technology</category><category>kubernetes</category><category>aks</category><category>azure</category><category>containers</category><category>docker</category><category>cloud</category><category>events</category><category>video</category><category>infrastructure</category><category>talk</category></item><item><title>Controlling containers from inside your application with ContainerD</title><link>https://blog.lsantos.dev/en/controlling-containers-from-inside-your-application-with-containerd/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/controlling-containers-from-inside-your-application-with-containerd/</guid><description>Ever thought of a Docker alternative? What about manipulating containers programmatically in your API? Let&apos;s integrate your app with the containers world!</description><pubDate>Thu, 04 Feb 2021 14:00:00 GMT</pubDate><category>technology</category><category>containerd</category><category>containers</category><category>docker</category><category>oci</category><category>cri</category><category>golang</category><category>devops</category><category>infrastructure</category></item><item><title>Kubernetes without Docker? – Understanding OCI, CRI and the container ecosystem</title><link>https://blog.lsantos.dev/en/kubernetes-without-docker-oci-cri/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/kubernetes-without-docker-oci-cri/</guid><description>Recently Kubernetes began deprecating Docker. What does this mean for you? What is this alphabet soup of OCI, CRI, RunC? Let&apos;s dive in and learn more about the container ecosystem!</description><pubDate>Tue, 02 Feb 2021 13:00:00 GMT</pubDate><category>technology</category><category>docker</category><category>containerd</category><category>oci</category><category>cri</category><category>kubernetes</category><category>containers</category><category>architecture</category><category>infrastructure</category></item><item><title>Podcast #FalaDev - Let&apos;s Talk About Microservices</title><link>https://blog.lsantos.dev/en/podcast-faladev-lets-talk-about-microservices/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/podcast-faladev-lets-talk-about-microservices/</guid><description>Do you know what microservices are? Want to participate in a really interesting discussion about best practices and how we work with them? Then join #FalaDev</description><pubDate>Fri, 08 Jan 2021 17:42:39 GMT</pubDate><category>technology</category><category>podcasts</category><category>architecture</category><category>microservices</category><category>video</category></item><item><title>&quot;We&apos;re at 4k! Thank you!&quot;</title><link>https://blog.lsantos.dev/en/we-are-4k-thank-you/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/we-are-4k-thank-you/</guid><description>&quot;Thank you for reaching 4k followers! To celebrate this milestone, I&apos;m running some awesome giveaways!&quot;</description><pubDate>Wed, 09 Dec 2020 17:33:25 GMT</pubDate><category>meta</category><category>news</category><category>personal</category></item><item><title>gRPC with Node.js at EnterJS 2020</title><link>https://blog.lsantos.dev/en/grpc-with-nodejs-at-enterjs-2020/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/grpc-with-nodejs-at-enterjs-2020/</guid><description>Want to know how gRPC works in practice with Node.js? In this talk I&apos;ll present the full concept of gRPC and see how it all works!</description><pubDate>Thu, 03 Dec 2020 20:55:44 GMT</pubDate><category>technology</category><category>grpc</category><category>events</category><category>talk</category><category>video</category><category>javascript</category><category>nodejs</category></item><item><title>&quot;Understanding service communication with gRPC at DoWhile 2020&quot;</title><link>https://blog.lsantos.dev/en/understanding-service-communication-with-grpc-at-dowhile-2020/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/understanding-service-communication-with-grpc-at-dowhile-2020/</guid><description>&quot;Want to learn how to retire REST from your service-to-service communication using gRPC? Join me for this FREE workshop!&quot;</description><pubDate>Mon, 30 Nov 2020 14:52:51 GMT</pubDate><category>technology</category><category>events</category><category>talk</category><category>workshop</category><category>grpc</category><category>microservices</category></item><item><title>Why Do Black Fridays Go Wrong? - Hipsters.talks</title><link>https://blog.lsantos.dev/en/why-black-fridays-go-wrong/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/why-black-fridays-go-wrong/</guid><description>Want to know why Black Fridays go wrong? Join me and other amazing guests in this sensational webcast!</description><pubDate>Mon, 30 Nov 2020 03:21:41 GMT</pubDate><category>technology</category><category>video</category><category>podcasts</category></item><item><title>Understanding Threading in Node.js with Rodrigo Branas</title><link>https://blog.lsantos.dev/en/understanding-threading-nodejs-rodrigo-branas/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/understanding-threading-nodejs-rodrigo-branas/</guid><description>In this incredible live stream, we talked about the concept of worker threads and how threads work on modern computers.</description><pubDate>Fri, 20 Nov 2020 16:31:32 GMT</pubDate><category>technology</category><category>javascript</category><category>nodejs</category><category>threads</category><category>performance</category><category>video</category><category>talk</category></item><item><title>Automatic OS Updates with Unattended Upgrades</title><link>https://blog.lsantos.dev/en/automatic-os-updates-unattended-upgrades/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/automatic-os-updates-unattended-upgrades/</guid><description>How about configuring your server so it never needs your input again to install security updates?</description><pubDate>Wed, 11 Nov 2020 16:10:23 GMT</pubDate><category>technology</category><category>security</category><category>infrastructure</category><category>linux</category></item><item><title>Applying Two Factor Authentication to SSH</title><link>https://blog.lsantos.dev/en/applying-two-factor-authentication-to-ssh/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/applying-two-factor-authentication-to-ssh/</guid><description>These days, using only passwords or public keys is no longer the answer, we need to take security further by applying two-factor authentication to our servers.</description><pubDate>Thu, 05 Nov 2020 22:07:56 GMT</pubDate><category>technology</category><category>security</category><category>infrastructure</category><category>linux</category></item><item><title>Have total privacy with your own VPN hosted in the cloud</title><link>https://blog.lsantos.dev/en/have-total-privacy-with-your-own-cloud-hosted-vpn/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/have-total-privacy-with-your-own-cloud-hosted-vpn/</guid><description>Ever thought about having a VPN server just for yourself? Something that definitely doesn&apos;t generate logs and has no one spying on you? Then why not create one?</description><pubDate>Tue, 27 Oct 2020 17:51:53 GMT</pubDate><category>technology</category><category>azure</category><category>security</category><category>cloud</category><category>vpn</category><category>infrastructure</category><category>linux</category></item><item><title>Want to learn AKS with this FREE course?</title><link>https://blog.lsantos.dev/en/learn-aks-with-this-free-course/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/learn-aks-with-this-free-course/</guid><description>In this free 8-hour training, I show how we can learn Kubernetes from zero to being capable of managing our own applications!</description><pubDate>Fri, 23 Oct 2020 14:34:51 GMT</pubDate><category>technology</category><category>azure</category><category>containers</category><category>kubernetes</category><category>video</category><category>cloud</category><category>infrastructure</category></item><item><title>Making VSCode your only development environment with Docker and Kubernetes</title><link>https://blog.lsantos.dev/en/making-vscode-your-only-dev-environment-docker-kubernetes/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/making-vscode-your-only-dev-environment-docker-kubernetes/</guid><description>Ever thought about never having to leave your favorite editor to develop native Kubernetes applications? What if I told you this is possible, and very easy?</description><pubDate>Mon, 05 Oct 2020 00:34:43 GMT</pubDate><category>technology</category><category>kubernetes</category><category>docker</category><category>containers</category><category>vscode</category><category>azure</category><category>cloud</category><category>video</category><category>infrastructure</category><category>talk</category></item><item><title>&quot;Is this the end of the software development career?&quot;</title><link>https://blog.lsantos.dev/en/is-this-the-end-of-the-software-development-career/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/is-this-the-end-of-the-software-development-career/</guid><description>&quot;Are technology advancements and the current state of the software development market contributing to a decline in the \&quot;Developer\&quot; profession? Are we digging our own graves?&quot;</description><pubDate>Fri, 02 Oct 2020 21:47:10 GMT</pubDate><category>opinion</category><category>career</category><category>ai</category></item><item><title>Microsoft Reactor: Workshop on AKS with Virtual Nodes and AKS with GitHub Actions</title><link>https://blog.lsantos.dev/en/microsoft-reactor-aks-virtual-nodes-github-actions/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/microsoft-reactor-aks-virtual-nodes-github-actions/</guid><description>A free workshop on how we can harness the power of Virtual Nodes to create applications that scale infinitely, and how we can automate the deployment of all this using GitHub Actions and AKS!</description><pubDate>Thu, 01 Oct 2020 17:17:34 GMT</pubDate><category>technology</category><category>azure</category><category>kubernetes</category><category>github</category><category>ci</category><category>containers</category><category>video</category><category>workshop</category><category>infrastructure</category></item><item><title>Docker image deploy: from VSCode to Azure in a click</title><link>https://blog.lsantos.dev/en/docker-image-deploy-from-vscode-to-azure-in-a-click/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/docker-image-deploy-from-vscode-to-azure-in-a-click/</guid><description>The long-awaited Docker and Azure integration has finally arrived for everyone, and in a much easier way!</description><pubDate>Fri, 25 Sep 2020 23:54:57 GMT</pubDate><category>technology</category><category>docker</category><category>azure</category><category>containers</category><category>cloud</category><category>infrastructure</category><category>vscode</category></item><item><title>Meet GitHub Container Registry</title><link>https://blog.lsantos.dev/en/meet-the-github-container-registry/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/meet-the-github-container-registry/</guid><description>Have you ever thought about the convenience of storing your Docker images in the same place where you version your code?</description><pubDate>Fri, 18 Sep 2020 22:59:27 GMT</pubDate><category>technology</category><category>docker</category><category>containers</category><category>github</category><category>infrastructure</category><category>ci</category></item><item><title>&quot;Learn Everything About Your Services with Jaeger and Linkerd&quot;</title><link>https://blog.lsantos.dev/en/know-everything-about-your-services-with-jaeger-and-linkerd/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/know-everything-about-your-services-with-jaeger-and-linkerd/</guid><description>&quot;Want to observe all the calls to your system in depth and understand when everything happened? Let&apos;s install Jaeger and have all that power!&quot;</description><pubDate>Mon, 14 Sep 2020 17:16:46 GMT</pubDate><category>technology</category><category>kubernetes</category><category>linkerd</category><category>jaeger</category><category>containers</category><category>infrastructure</category><category>observability</category><category>microservices</category></item><item><title>An Introduction to Service Mesh with Linkerd</title><link>https://blog.lsantos.dev/en/an-introduction-to-service-mesh-with-linkerd/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/an-introduction-to-service-mesh-with-linkerd/</guid><description>Observability, logging, traffic control. Everything you&apos;ve always wanted for microservices in a simple and fast way with Linkerd</description><pubDate>Thu, 10 Sep 2020 21:26:02 GMT</pubDate><category>technology</category><category>kubernetes</category><category>containers</category><category>linkerd</category><category>architecture</category><category>cloud</category><category>infrastructure</category><category>microservices</category><category>observability</category></item><item><title>Cost Optimization with Kubernetes and AKS</title><link>https://blog.lsantos.dev/en/optimizing-costs-with-kubernetes-and-aks/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/optimizing-costs-with-kubernetes-and-aks/</guid><description>Kubernetes is often seen as a much more expensive approach than normal for most applications. Want to know how you can efficiently optimize your costs?</description><pubDate>Thu, 03 Sep 2020 15:41:57 GMT</pubDate><category>technology</category><category>kubernetes</category><category>azure</category><category>cloud</category><category>containers</category><category>infrastructure</category></item><item><title>What&apos;s New in TypeScript 4.0</title><link>https://blog.lsantos.dev/en/whats-new-in-typescript-4-0/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/whats-new-in-typescript-4-0/</guid><description>Let&apos;s dive into the newest TypeScript update! Version 4.0!</description><pubDate>Mon, 31 Aug 2020 20:45:39 GMT</pubDate><category>technology</category><category>typescript</category><category>javascript</category></item><item><title>Full Cycle 4.0 Marathon</title><link>https://blog.lsantos.dev/en/full-cycle-4-0-marathon/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/full-cycle-4-0-marathon/</guid><description>In this amazing talk, we discuss clouds in general and how they differ from each other. Then I show six demonstrations of how you can deploy your service to Azure effortlessly!</description><pubDate>Sat, 29 Aug 2020 02:48:18 GMT</pubDate><category>technology</category><category>azure</category><category>cloud</category><category>containers</category><category>docker</category><category>video</category><category>talk</category><category>kubernetes</category><category>infrastructure</category></item><item><title>Elevating microservices with service meshes</title><link>https://blog.lsantos.dev/en/leveling-up-microservices-with-service-meshes/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/leveling-up-microservices-with-service-meshes/</guid><description>How great would it be if you had complete control over your distributed applications so you could know everything about them?</description><pubDate>Fri, 21 Aug 2020 20:42:36 GMT</pubDate><category>technology</category><category>containers</category><category>kubernetes</category><category>architecture</category><category>cloud</category><category>infrastructure</category><category>microservices</category></item><item><title>A Deep Dive into Container Images - Part 3</title><link>https://blog.lsantos.dev/en/a-deep-dive-into-container-images-part-3/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/a-deep-dive-into-container-images-part-3/</guid><description>How to build a fast, lightweight, and efficient image for your application using a dynamic language like JavaScript?</description><pubDate>Fri, 14 Aug 2020 17:34:25 GMT</pubDate><category>technology</category><category>docker</category><category>containers</category><category>javascript</category><category>typescript</category><category>infrastructure</category><category>nodejs</category></item><item><title>Code anywhere with Codespaces</title><link>https://blog.lsantos.dev/en/write-code-anywhere-with-codespaces/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/write-code-anywhere-with-codespaces/</guid><description>What would your life be like if you could have your computer everywhere without ever actually having it?</description><pubDate>Thu, 13 Aug 2020 22:20:32 GMT</pubDate><category>technology</category><category>docker</category><category>containers</category><category>cloud</category><category>infrastructure</category><category>vscode</category><category>github</category></item><item><title>Hipsters.tech #212 - Microsoft Cloud Technologies</title><link>https://blog.lsantos.dev/en/hipsters-tech-212-microsoft-cloud-technologies/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/hipsters-tech-212-microsoft-cloud-technologies/</guid><description>Learn how Microsoft&apos;s cloud technologies work and how to make the most of them in this amazing podcast!</description><pubDate>Tue, 04 Aug 2020 20:21:26 GMT</pubDate><category>technology</category><category>podcasts</category><category>azure</category><category>cloud</category><category>infrastructure</category></item><item><title>Running Containers on Azure Container Instances with Docker</title><link>https://blog.lsantos.dev/en/running-containers-on-azure-container-instances-with-docker/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/running-containers-on-azure-container-instances-with-docker/</guid><description>Have you ever imagined what it would be like if you could run a container directly on cloud infrastructure without doing anything new?</description><pubDate>Mon, 03 Aug 2020 13:00:00 GMT</pubDate><category>technology</category><category>containers</category><category>docker</category><category>azure</category><category>cloud</category><category>infrastructure</category></item><item><title>Alura React Live #02 - Using TypeScript in our project</title><link>https://blog.lsantos.dev/en/alura-react-live-02-using-typescript-in-project/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/alura-react-live-02-using-typescript-in-project/</guid><description>Do you know TypeScript? Did you know we can use TypeScript on the front-end? Let&apos;s explore an application and understand how TypeScript works using React!</description><pubDate>Wed, 29 Jul 2020 23:28:30 GMT</pubDate><category>technology</category><category>video</category><category>typescript</category><category>react</category></item><item><title>A Deep Dive into Container Images - Part 2</title><link>https://blog.lsantos.dev/en/a-deep-dive-into-container-images-part-2/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/a-deep-dive-into-container-images-part-2/</guid><description>We already know what each type of image is for. Let&apos;s apply our knowledge to a compiled application! Is the smallest image always the best?</description><pubDate>Wed, 29 Jul 2020 13:00:00 GMT</pubDate><category>technology</category><category>containers</category><category>docker</category><category>golang</category><category>infrastructure</category></item><item><title>Meetup: 1st Meetrybe - Code architecture</title><link>https://blog.lsantos.dev/en/meetrybe-code-architecture/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/meetrybe-code-architecture/</guid><description>On the 25th I took part in the first Meetrybe, the Trybe school&apos;s online meetup, with several heavyweight people talking about software architecture. See how it went!</description><pubDate>Sat, 25 Jul 2020 17:01:16 GMT</pubDate><category>technology</category><category>video</category><category>meetup</category><category>architecture</category><category>talk</category></item><item><title>A Deep Dive into Container Images - Part 1</title><link>https://blog.lsantos.dev/en/a-deep-dive-into-container-images-part-1/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/a-deep-dive-into-container-images-part-1/</guid><description>Learn what different types of container images are for and how to choose the best image for your project!</description><pubDate>Fri, 24 Jul 2020 13:00:00 GMT</pubDate><category>technology</category><category>containers</category><category>docker</category><category>infrastructure</category><category>security</category></item><item><title>Hello, World!</title><link>https://blog.lsantos.dev/en/hello-world/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/hello-world/</guid><description>After months of researching and working toward a new phase of content production, this blog has finally come to life!</description><pubDate>Thu, 23 Jul 2020 00:23:11 GMT</pubDate><category>meta</category><category>news</category><category>personal</category></item><item><title>Why Devs Should Write Articles</title><link>https://blog.lsantos.dev/en/why-devs-should-write-articles/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/why-devs-should-write-articles/</guid><description>Ever stopped to think that most people only consume and never produce anything? Writing can make your career take off!</description><pubDate>Thu, 14 May 2020 03:00:00 GMT</pubDate><category>career</category><category>writing</category><category>tips</category></item><item><title>From zero to automation with GitHub Actions in 7 minutes</title><link>https://blog.lsantos.dev/en/from-zero-to-github-actions-automation-in-7-minutes/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/from-zero-to-github-actions-automation-in-7-minutes/</guid><description>How to start from scratch and automate your entire container pipeline in less than 7 minutes! All with GitHub Actions</description><pubDate>Fri, 08 May 2020 03:00:00 GMT</pubDate><category>technology</category><category>containers</category><category>infrastructure</category><category>ci</category><category>azure</category><category>github</category></item><item><title>Understanding Async Iterators in JavaScript</title><link>https://blog.lsantos.dev/en/understanding-async-iterators-in-javascript/</link><guid isPermaLink="true">https://blog.lsantos.dev/en/understanding-async-iterators-in-javascript/</guid><description>You already know synchronous iterators, but do you know async iterators?</description><pubDate>Sun, 28 Jul 2019 03:00:00 GMT</pubDate><category>technology</category><category>javascript</category><category>nodejs</category></item></channel></rss>