<?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: joao-gouveia</title>
    <description>The latest articles on DEV Community by joao-gouveia (@joaogouveia).</description>
    <link>https://dev.to/joaogouveia</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%2F499197%2Ff6c4b9a4-0337-49fb-a4e2-1b2adc8dc33b.jpeg</url>
      <title>DEV Community: joao-gouveia</title>
      <link>https://dev.to/joaogouveia</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/joaogouveia"/>
    <language>en</language>
    <item>
      <title>Bookmark Launcher (launch your bookmarks from the terminal)</title>
      <dc:creator>joao-gouveia</dc:creator>
      <pubDate>Thu, 28 Jan 2021 11:54:28 +0000</pubDate>
      <link>https://dev.to/joaogouveia/bookmark-launcher-launch-your-bookmarks-from-the-terminal-3908</link>
      <guid>https://dev.to/joaogouveia/bookmark-launcher-launch-your-bookmarks-from-the-terminal-3908</guid>
      <description>&lt;p&gt;This CLI allows you to open your bookmarks from the terminal. If you would like to, check it out in the Github repository:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; &lt;a href="https://github.com/joao-gouveia/bookmark-launcher"&gt;https://github.com/joao-gouveia/bookmark-launcher&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let me know what you think!&lt;br&gt;
If you would like to contribute or give ideas please reach out!&lt;/p&gt;

&lt;h2&gt;
  
  
  Story
&lt;/h2&gt;

&lt;p&gt;When I started using Windows instead of a MacOS to code at my job, I missed a lot of things. One of those was &lt;strong&gt;Alfred&lt;/strong&gt;, which I used all the time, specially to quickly open URLs, either saved separately or from my Google bookmarks.&lt;/p&gt;

&lt;p&gt;After searching for a Windows alternative to fit my use case I was not satisfied with what I found. Hence, I designed exactly what I was searching for: an App/CLI which parses my bookmarks and enables me to open them quickly from the terminal. Since I always have the terminal open (in MacOs I used iTerm2 with zsh and in Windows I use Cygwin with zsh) it works nicely for me.&lt;/p&gt;

&lt;p&gt;I coded this CLI in Node JS and followed a Kanban approach (I even created stories in a board!) to make things more enjoyable since I love Agile.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vhNyev2x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ppttsuj7z40rxidyvfgj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vhNyev2x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ppttsuj7z40rxidyvfgj.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Commands
&lt;/h2&gt;

&lt;p&gt;The CLI is very simple to use.&lt;/p&gt;

&lt;h3&gt;
  
  
  To read all your bookmarks and process them to a json file:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;bml run-save&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  To launch a bookmark:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;bml &amp;lt;bookmark_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>node</category>
      <category>programming</category>
      <category>shell</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Why you should use GIT in the bash (and not a GUI)</title>
      <dc:creator>joao-gouveia</dc:creator>
      <pubDate>Mon, 09 Nov 2020 11:19:30 +0000</pubDate>
      <link>https://dev.to/joaogouveia/why-you-should-use-git-in-the-bash-and-not-a-gui-5fca</link>
      <guid>https://dev.to/joaogouveia/why-you-should-use-git-in-the-bash-and-not-a-gui-5fca</guid>
      <description>&lt;p&gt;When I was in college, I was introduced to the concept of GIT. A place where you could share your code with your group mates instead of sending code through Facebook (yes, I used to do that). &lt;br&gt;
It was love at first sight!&lt;/p&gt;

&lt;p&gt;I began using it by means of a GUI. I don't remember exactly which one it was (maybe SourceTree or Kraken).&lt;br&gt;
In a group project, we would use a single branch and push the new code when we finished some new functionality. I did not really understand the concept of multiple branches, pull requests, rebases, etc. Every time there was a merge conflict, no one really knew what to do. We would panic and sometimes delete everything and start over.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7desOObB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/b1djvnj1la56lwgak27o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7desOObB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/b1djvnj1la56lwgak27o.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We knew how to use a couple of functionalities of a GIT GUI. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;But we did not know GIT.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;We didn't know how it worked under the hood. And I believe that in GIT that is paramount.&lt;/p&gt;

&lt;p&gt;GIT is a fairly complex tool. Its not easy to understand the branching system, how to merge and solve conflicts, rebase your code with some missing commits, among other important possible flows. In order to do that, it is necessary to read and study a little bit.&lt;/p&gt;

&lt;p&gt;In my opinion, a GUI is great in abstracting all that complexity (especially for beginners), but without using the bash and running the commands yourself, you will never break that barrier into the land of really understanding what is happening in your repository.&lt;/p&gt;

&lt;p&gt;I only figured out GIT once I started googling the problems I had and saw all the branch schemes, weird git commands and their explanations.&lt;/p&gt;

&lt;p&gt;A GUI will not force you to progress in your GIT knowledge since you can only do so much with it.&lt;/p&gt;

&lt;p&gt;So if you are willing to make the switch and start using the bash to use GIT, here is another post with some useful commands to get you on the right track (&lt;a href="https://dev.to/duomly/git-cheatsheet-for-beginners-5apl"&gt;https://dev.to/duomly/git-cheatsheet-for-beginners-5apl&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TLDR:&lt;/strong&gt;&lt;br&gt;
It can be a bit overwhelming at first when you start messing with the commands to add files, commit and push to the remote branches, fix merge conflicts, etc. A GUI is great in abstracting all that GIT complexity but if you want to be a GIT wizard, use the bash. That is it.&lt;/p&gt;

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