<?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: dragonDScript</title>
    <description>The latest articles on DEV Community by dragonDScript (@aitor).</description>
    <link>https://dev.to/aitor</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%2F768865%2F17c0f20b-cfb9-4bd5-add1-042e8a6cfaa1.png</url>
      <title>DEV Community: dragonDScript</title>
      <link>https://dev.to/aitor</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aitor"/>
    <language>en</language>
    <item>
      <title>I made a dev.to badge for GitHub</title>
      <dc:creator>dragonDScript</dc:creator>
      <pubDate>Thu, 09 Dec 2021 20:38:50 +0000</pubDate>
      <link>https://dev.to/aitor/i-made-a-devto-badge-for-github-50c9</link>
      <guid>https://dev.to/aitor/i-made-a-devto-badge-for-github-50c9</guid>
      <description></description>
      <category>github</category>
      <category>devto</category>
      <category>portfolio</category>
    </item>
    <item>
      <title>How to make your first open source contribution</title>
      <dc:creator>dragonDScript</dc:creator>
      <pubDate>Mon, 06 Dec 2021 14:04:38 +0000</pubDate>
      <link>https://dev.to/aitor/how-to-make-your-first-open-source-contribution-1dm5</link>
      <guid>https://dev.to/aitor/how-to-make-your-first-open-source-contribution-1dm5</guid>
      <description>&lt;p&gt;You've probably heard of what &lt;a href="https://opensource.org/osd"&gt;open source software&lt;/a&gt; is and how it works. But do you want know how it's &lt;strong&gt;&lt;em&gt;REALLY&lt;/em&gt;&lt;/strong&gt; made?&lt;/p&gt;

&lt;h2&gt;
  
  
  Open source software is not free software
&lt;/h2&gt;

&lt;p&gt;First, you need to differentiate what open source software is. It's not software available for free. It's not software whose code is available. No.&lt;/p&gt;

&lt;p&gt;Aseprite, Epic Games and Wexond would fit this definition of "source code available" but not open source.&lt;/p&gt;

&lt;p&gt;These are the characteristics of open source software:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Open source software is available for everyone&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Open source software always have a LICENSE file in their root&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Open source software can be freely forked without &lt;em&gt;ANY&lt;/em&gt; restrictions&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;You must keep the same LICENSE if you fork a project&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;See &lt;a href="https://opensource.org/osd"&gt;what's the definition of open source software here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;OK, now we know what OSS is, but how is it made?&lt;/p&gt;

&lt;h2&gt;
  
  
  Ways to contribute to oss software
&lt;/h2&gt;

&lt;p&gt;Even though I'm covering &lt;strong&gt;code contributions&lt;/strong&gt;, there are other ways to contribute to OSS software:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Financiation $$&lt;/li&gt;
&lt;li&gt;Translation and localization&lt;/li&gt;
&lt;li&gt;Community support&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  You'll need git, learn it.
&lt;/h2&gt;

&lt;p&gt;Most OSS use &lt;a href="https://git-scm.com/"&gt;Git&lt;/a&gt;, which is a versioning system. It lets you handle code changes. I'm not covering how to use Git here, if you need to learn it you can visit any tutorial you want.&lt;/p&gt;

&lt;h2&gt;
  
  
  Your first contribution and the github flow
&lt;/h2&gt;

&lt;p&gt;You want to contribute to that project you've used for your project. But don't know what do. Here's when tags come in handy. Specially &lt;code&gt;good-first-issue&lt;/code&gt;. Issues with this tag are easy to do for newcomers to the project.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4bDoOn2H--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8lt32ho0s6xp447kf74q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4bDoOn2H--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8lt32ho0s6xp447kf74q.png" alt="Image description" width="880" height="160"&gt;&lt;/a&gt;&lt;br&gt;
There's also &lt;code&gt;Assignee: assigned to nobody&lt;/code&gt; which makes sure that one has already taken the issue.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--OxTgy56v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4orq6b9c3rxn1gb1zyla.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--OxTgy56v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4orq6b9c3rxn1gb1zyla.png" alt="Image description" width="880" height="144"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Take an easy one
&lt;/h3&gt;

&lt;p&gt;You don't want to be writing this contribution for 8 hours. You have a life and maybe a job. So take &lt;strong&gt;easy and feasable issues&lt;/strong&gt; when you're a beginner.&lt;/p&gt;

&lt;h3&gt;
  
  
  Now what?
&lt;/h3&gt;

&lt;p&gt;OK, I have chosen an issue or maybe I've created one. Now what?&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Fork the repository.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Clone the fork to your PC.&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;git clone https://github.com/&amp;lt;USERNAME&amp;gt;/&amp;lt;REPO NAME&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Create a branch and switch to it.&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;git switch -c my-branch-name&lt;/code&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Make the changes you want in your IDE of preference.&lt;/strong&gt; I suggest &lt;a href="https://code.visualstudio.com/"&gt;VS Code&lt;/a&gt;. Create little commits, and little PRs.&lt;/li&gt;
&lt;li&gt;Push the branch.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;git push&lt;/code&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Create the PR&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--CH2RM7Ef--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t208pdsfgy4gd9lmfeyl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--CH2RM7Ef--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t208pdsfgy4gd9lmfeyl.png" alt="Image description" width="880" height="94"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;OK, what do I do now?&lt;/strong&gt; You will get reviews from maintainers that ask you to improve X and Y. Make the changes, ask another review and wait for a merge&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Wait,&lt;/strong&gt; they have closed my PR ;-;&lt;/p&gt;

&lt;p&gt;Don't worry, it happens. For many reasons. Accept it.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>git</category>
      <category>beginners</category>
      <category>programming</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
