<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Luiz Gois</title>
    <description>The latest articles on DEV Community by Luiz Gois (@developerluizgois).</description>
    <link>https://dev.to/developerluizgois</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F766219%2F77514905-b1ec-4c6e-93d1-710b326061f7.jpg</url>
      <title>DEV Community: Luiz Gois</title>
      <link>https://dev.to/developerluizgois</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/developerluizgois"/>
    <language>en</language>
    <item>
      <title>Semantic Versioning: 1.0.1, 2.3.1 what is this?</title>
      <dc:creator>Luiz Gois</dc:creator>
      <pubDate>Mon, 08 Apr 2024 01:30:16 +0000</pubDate>
      <link>https://dev.to/developerluizgois/semantic-versioning-101-231-what-is-this-4adk</link>
      <guid>https://dev.to/developerluizgois/semantic-versioning-101-231-what-is-this-4adk</guid>
      <description>&lt;p&gt;When developing a project, part of your work as a developer will be to document and version your code. Have you ever noticed those numbers like 2.3.1 or 1.0.4? They aren't randomly defined! They're defined by a convention called Semantic Versioning.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Semantic Versioning?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You're developing or already have a super useful JavaScript package that other developers are using in their projects. Every new feature you implement in your package or every bug you fix needs to be communicated to the people using your package.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How should I do it?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is where Semantic Versioning helps you! It breaks down the version number of your package into three parts: X.Y.Z.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;X&lt;/strong&gt; is the major version. This changes when you make changes that can break the code of people using your package.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Y&lt;/strong&gt; is the minor version. This changes when you add a new feature but don't break people's code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Z&lt;/strong&gt; is the patch version. This changes when you fix a bug but don't change anything that people are already using.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Let's make it even easier for you to understand with these examples:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Do you release the first version of your package? 1.0.0.&lt;/li&gt;
&lt;li&gt;Added a new feature? 1.1.0.&lt;/li&gt;
&lt;li&gt;Fixed a bug? 1.1.1.&lt;/li&gt;
&lt;li&gt;Made big changes that could break people's code? 2.0.0.&lt;/li&gt;
&lt;li&gt;Fixed a bug in the new version? 2.0.1.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This way, everyone can clearly understand the impact of changes in your package or project. Remember to also explain in your README what's new in your changes.&lt;/p&gt;

</description>
      <category>developer</category>
      <category>programming</category>
      <category>tutorial</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Choose the tool that solves your problem</title>
      <dc:creator>Luiz Gois</dc:creator>
      <pubDate>Tue, 02 Apr 2024 06:28:56 +0000</pubDate>
      <link>https://dev.to/developerluizgois/escolha-a-ferramenta-que-resolve-seu-problema-57a0</link>
      <guid>https://dev.to/developerluizgois/escolha-a-ferramenta-que-resolve-seu-problema-57a0</guid>
      <description>&lt;p&gt;You decide to dive into the world of programming and your first challenge seems to be choosing the language you will adopt. Well, actually, your concern should be something else: "What do I want to solve?"&lt;/p&gt;

&lt;p&gt;It's like choosing a tool to fix a broken object at home. You don't sit in front of the toolbox thinking, "What's the latest? What's the most popular?" No, you simply get the right tool for the job.&lt;/p&gt;

&lt;p&gt;It may seem a bit cliché to think that instead of trying to know a little bit of everything, the ideal is to delve deeper into the fundamentals of a language. But the reality is that, in fact, your best tool will always be the ability to analyze problems, design solutions and implement them effectively, regardless of language.&lt;/p&gt;

&lt;p&gt;From building small modules or packages to building your first complex and fully functional application, your goal should be a solid understanding of concepts that govern any language, such as: Algorithms and data structures, control structures and object orientation .&lt;/p&gt;

&lt;p&gt;Don't skip steps in your studies, don't hide your mistakes from yourself, start with what you know and make your development process public. Part of the process is understanding that you will find that you can easily adapt to different languages and environments.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
