<?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: Neel Modi</title>
    <description>The latest articles on DEV Community by Neel Modi (@neel229).</description>
    <link>https://dev.to/neel229</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%2F440742%2Fa6c7bc14-66d0-4e3e-9ff5-8e8d11339a16.jpeg</url>
      <title>DEV Community: Neel Modi</title>
      <link>https://dev.to/neel229</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/neel229"/>
    <language>en</language>
    <item>
      <title>Variables in Depth</title>
      <dc:creator>Neel Modi</dc:creator>
      <pubDate>Wed, 25 Nov 2020 07:19:29 +0000</pubDate>
      <link>https://dev.to/neel229/variables-in-depth-flb</link>
      <guid>https://dev.to/neel229/variables-in-depth-flb</guid>
      <description>&lt;h3&gt;
  
  
  In the previous blogs, we have covered enough topics to get you the introductory knowledge about &lt;strong&gt;How to code in Go&lt;/strong&gt;. It is now time that we dive deep into specific topics and understand the in and out's.
&lt;/h3&gt;

&lt;h3&gt;
  
  
  In this blog, we will go through how to declare variables, assign values to variables, and then how to do both of them at the same time. Then we will discuss about the differences between the styles and when should you use which one.
&lt;/h3&gt;




&lt;h2&gt;
  
  
  Style 1 : Using var Keyword
&lt;/h2&gt;

&lt;p&gt;The first and foremost way we will cover is using the var keyword. We have use this method in our previous introductory blogs. &lt;/p&gt;

&lt;p&gt;We declare a variable using the following syntax:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight go"&gt;&lt;code&gt;&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="k"&gt;type&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Here, we first write the &lt;strong&gt;keyword&lt;/strong&gt; var followed by the name of the variable and then the &lt;strong&gt;type&lt;/strong&gt; we want to use. For example, we want to declare a variable called title of type string. It will look like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight go"&gt;&lt;code&gt;&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;title&lt;/span&gt; &lt;span class="kt"&gt;string&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This way, we do declare the variable title but we don't assign a value to it at this moment. It is initialized or assigned it's &lt;strong&gt;default&lt;/strong&gt; or &lt;strong&gt;zero-value&lt;/strong&gt; which is empty string. You can verify this by printing the value of title using the fmt.Println method.&lt;/p&gt;




&lt;h2&gt;
  
  
  Style 2 : Using var Keyword but also Assigning a Value.
&lt;/h2&gt;

&lt;p&gt;Adding to our style 1, we can further simplify the process by declaring and assigning the value at the same time. We do so in the following way:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight go"&gt;&lt;code&gt;&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;title&lt;/span&gt; &lt;span class="kt"&gt;string&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"Spaces or Tabs"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We will not discuss about &lt;strong&gt;Spaces vs Tabs&lt;/strong&gt; here but do comment your preference in the comment section.&lt;/p&gt;

&lt;p&gt;In style 2, we are declaring the variable as we did in style 1 but we also added &lt;code&gt;= &amp;lt;value&amp;gt;&lt;/code&gt; after it. This way, we can declare a variable and assign value to it immediately. Now, let's move onto style 3.&lt;/p&gt;




&lt;h3&gt;
  
  
  Style 3 : Using the short-declaration Operator.
&lt;/h3&gt;

&lt;p&gt;The third style in which we can declare and assign an initial value to our variable is using the &lt;strong&gt;short-declaration operator&lt;/strong&gt;. &lt;br&gt;
We do it in the following way:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight go"&gt;&lt;code&gt;&lt;span class="n"&gt;title&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="s"&gt;"Spaces or Tabs"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Those who have experience in python may recognize it as the walrus operator. &lt;/p&gt;

&lt;p&gt;In this style, Go itself inferences the type of our variable by looking at the value assigned on the right hand side. &lt;/p&gt;

&lt;h4&gt;
  
  
  You might think like "Shouldn't we use style 3 all the time."
&lt;/h4&gt;

&lt;p&gt;We do use it most of the time but there are scenarios where we have to use either style 1 or style 2.&lt;/p&gt;




&lt;h3&gt;
  
  
  Differences and When to Use.
&lt;/h3&gt;

&lt;p&gt;Let's first discuss about the differences this styles comes with. &lt;br&gt;
There are no differences in style 1 and style 2 but if you are aware of any, please share it for others in the comment section.&lt;/p&gt;

&lt;p&gt;The main difference style 3 has with style 1 and style 2 is that we are not telling Go the type we want to use with the variable. Now, since Go itself is attaching the type to our variable, there are some limitations. &lt;strong&gt;In blog #3 Primitive Data Types in Go&lt;/strong&gt;, we discussed about the different types of int present in Go. We have &lt;strong&gt;uint&lt;/strong&gt;. Within &lt;strong&gt;uint&lt;/strong&gt;, we have uint8, uint16, uint32 and uint64. Same goes for int, floats, and complex numbers.  &lt;/p&gt;

&lt;p&gt;When we define a variable like &lt;code&gt;age := 18&lt;/code&gt;, Go initializes the variable age with value 18 of &lt;strong&gt;type int&lt;/strong&gt;. &lt;/p&gt;

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

&lt;p&gt;When we run the program, we see that our variable age is of type int.&lt;/p&gt;

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

&lt;p&gt;Now, &lt;strong&gt;the problem arises when we want to declare the variable with different type of integer other than int like int8 or uint8&lt;/strong&gt;. In this scenario, we use style 1 or style 2.&lt;/p&gt;




&lt;h3&gt;
  
  
  When to use which style.
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Short-declaration operator can be used only inside a function body. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;To define global variables or declare variables out of function blocks, we use the style 1 or style 2.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When we want to attach a specific type like uint8 or uint32, we use the style 1 or style 2.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;With that said, we will wrap up our post here.&lt;br&gt;
More on scope of go code will be discussed in the later blogs.&lt;/p&gt;

&lt;p&gt;Make sure to follow me on DEV or Twitter if you like the content. It will help in increasing the reach of blogs to a wider audience. &lt;/p&gt;

</description>
      <category>go</category>
      <category>programming</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Zero Values and Complex Data Types In Golang</title>
      <dc:creator>Neel Modi</dc:creator>
      <pubDate>Sat, 21 Nov 2020 10:29:44 +0000</pubDate>
      <link>https://dev.to/neel229/zero-values-and-complex-data-types-in-golang-3oko</link>
      <guid>https://dev.to/neel229/zero-values-and-complex-data-types-in-golang-3oko</guid>
      <description>&lt;p&gt;In the last blog, we talked about the Primitive Data Types of Golang. If you haven’t read it yet, first go read that blog. In that blog, in the end, we talked that we will learn about zero values and how we will optimize our code. So that’s the topic of this blog.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--J8EwBqYH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/0%2AKMbjNx5lbkE6LI1w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--J8EwBqYH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/0%2AKMbjNx5lbkE6LI1w.png" alt="Our code from the last blog." width="880" height="358"&gt;&lt;/a&gt;&lt;em&gt;Our code from the last blog.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In the photo above, you can see that initially, when we are declaring the variables, we are not assigning the values at the time of declaring the variables.&lt;/p&gt;

&lt;p&gt;Now, let’s look at what will be the output if we print the value of our variables before assigning values to them.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xQIaVx-u--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AaVWPWPwuABQI-QpWNvStqQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xQIaVx-u--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AaVWPWPwuABQI-QpWNvStqQ.png" alt="We print the values of the variables before assigning any values to the variables using the Println method from the package fmt." width="801" height="386"&gt;&lt;/a&gt;&lt;em&gt;We print the values of the variables before assigning any values to the variables using the Println method from the package fmt.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_lrSMG5Y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AhTv7GRIFXiuoa1F__RUHZA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_lrSMG5Y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AhTv7GRIFXiuoa1F__RUHZA.png" alt="If you have followed the guide, you may get an output similar to this." width="661" height="108"&gt;&lt;/a&gt;&lt;em&gt;If you have followed the guide, you may get an output similar to this.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In the terminal, you may notice that we are only seeing &lt;strong&gt;two zeros&lt;/strong&gt;. But in reality, we are &lt;strong&gt;looking at two zeros and two empty strings&lt;/strong&gt; &lt;strong&gt;""&lt;/strong&gt; . A question may arise in your mind that if we haven’t assigned any value to those variables, how can it decide on its own the values of the variables.&lt;/p&gt;

&lt;p&gt;This is because whenever we declare a variable without assigning values to it, the &lt;strong&gt;Go language&lt;/strong&gt; does that for us by automatically assigning &lt;strong&gt;Zero Values or Default Values&lt;/strong&gt;. Each variable is given a default value as per its type.&lt;/p&gt;

&lt;h3&gt;
  
  
  Default values corresponding to their types are given below:
&lt;/h3&gt;

&lt;p&gt;false for booleans, 0 for numeric types, "" for strings, and nil for pointers, functions, interfaces, slices, channels, and maps.&lt;/p&gt;

&lt;p&gt;Now let’s move forward towards optimizing our code. In this blog, we will look at one of the Complex Data types present in Go. We will be talking about type &lt;strong&gt;Struct&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A struct in Go is similar to classes if you are coming from OOP paradigm languages like C++, Java, Python, etc.&lt;/p&gt;

&lt;p&gt;What it basically does is it encapsulates different types which we use to describe a particular thing and form a single entity that can represent all the features of that particular thing.&lt;/p&gt;

&lt;p&gt;For example, in our code above, &lt;strong&gt;we are declaring and assigning values to different variables only to describe a student&lt;/strong&gt;. What we can do is define a student of type &lt;strong&gt;Struct&lt;/strong&gt; and populate it with all the features we want the student to have. Let’s understand it more clearly by writing the code and then understanding what we have written.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Q9KTEw_b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AQqAh--TekYcxTvrMKcqrTA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Q9KTEw_b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AQqAh--TekYcxTvrMKcqrTA.png" alt="After optimizing our code, it will look something like this." width="880" height="304"&gt;&lt;/a&gt;&lt;em&gt;After optimizing our code, it will look something like this.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Note that in the code above, we are not declaring a struct with keyword &lt;strong&gt;var&lt;/strong&gt;, instead, we are using another keyword present in Golang called &lt;strong&gt;type.&lt;/strong&gt; The keyword &lt;strong&gt;type&lt;/strong&gt; is used when we want to define our own type apart from those present in the language.&lt;/p&gt;

&lt;p&gt;Here, we are defining a &lt;strong&gt;type student&lt;/strong&gt; &lt;strong&gt;of type struct&lt;/strong&gt;. Confusing right. Let’s frame the sentence more clearly. We are &lt;strong&gt;declaring a variable of type student whose underlying type is a struct which allows us to store different data types inside it&lt;/strong&gt;. It will get more clear as we move further ahead in the course.&lt;/p&gt;

&lt;p&gt;Since now we can define structs in Golang, I want you to create a solution for the following problem.&lt;/p&gt;

&lt;h3&gt;
  
  
  Problem #2: We Define A Car With The Following Characteristics.
&lt;/h3&gt;

&lt;p&gt;No. of tires.&lt;/p&gt;

&lt;p&gt;Driving fuel. (i.e. Petrol, Diesel, Electric, etc.)&lt;/p&gt;

&lt;p&gt;Capacity. (2-seater, 4-seater, etc.)&lt;/p&gt;

&lt;p&gt;Company Name&lt;/p&gt;

&lt;p&gt;Car Name&lt;/p&gt;

&lt;p&gt;— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —&lt;/p&gt;

&lt;h3&gt;
  
  
  Try to solve the above problem and let me know your answers in the response section.
&lt;/h3&gt;

&lt;p&gt;In the next blog, we will look at &lt;strong&gt;more complex data types&lt;/strong&gt;.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Primitive Data Types in Golang</title>
      <dc:creator>Neel Modi</dc:creator>
      <pubDate>Sat, 21 Nov 2020 10:23:59 +0000</pubDate>
      <link>https://dev.to/neel229/primitive-data-types-in-golang-3fph</link>
      <guid>https://dev.to/neel229/primitive-data-types-in-golang-3fph</guid>
      <description>&lt;h4&gt;
  
  
  Deep Dive into Golang’s Primitive Data Types and How To Use Them.
&lt;/h4&gt;

&lt;p&gt;In the last blog, we discussed how to print text in the console. For that, we used string as the underlying type for our input variable. Now, in this blog, we will work on different types, actually different primitive data types provided by Go. Later, we will cover complex data types.&lt;/p&gt;

&lt;h2&gt;
  
  
  So, what are primitive data types?
&lt;/h2&gt;

&lt;p&gt;Think of primitive data types as atoms. Atoms are the smallest particles in the universe which cannot be further broken. (Though we can use the latest technology to break them but we will leave it for the physicists.) Like atoms, primitive data types also cannot be further broken down. And like atoms, on combining them, we can form complex data types but more on that later.&lt;/p&gt;

&lt;h2&gt;
  
  
  Primitive data types in Golang
&lt;/h2&gt;

&lt;p&gt;In golang, we have &lt;strong&gt;int&lt;/strong&gt;, &lt;strong&gt;float&lt;/strong&gt;, &lt;strong&gt;byte&lt;/strong&gt;, &lt;strong&gt;string&lt;/strong&gt;, &lt;strong&gt;rune&lt;/strong&gt; &amp;amp; &lt;strong&gt;bool&lt;/strong&gt;(boolean if you are coming from other programming languages).&lt;/p&gt;

&lt;h3&gt;
  
  
  1) Int
&lt;/h3&gt;

&lt;p&gt;Int is one of the numeric types which represents a set of integers. There are various kinds of integer types associated with int. We have uint or unsigned integers, complex numbers, and int itself. Along with them are the different sets of numbers that they contain. For example, int8 contains all the 8-bit integers from -128 to +127, int16 contains all the 32-bit integers from -32768 to 32767.&lt;/p&gt;

&lt;p&gt;By default, when we write int, the bits associated with it depends on the architecture of your computer. It can be either 32 or 64 bits.&lt;/p&gt;

&lt;h3&gt;
  
  
  2) Floats
&lt;/h3&gt;

&lt;p&gt;Floats are also numeric types. They represent the decimal numbers. We have some special formatting on the floats which are known as verbs. Verbs are used to set the precision of the floating-point numbers. We will cover verbs when we will work on a problem where we have to calculate the GPA of a student.&lt;/p&gt;

&lt;p&gt;In general, verbs are not only associated with floats. Verbs are the different formatting styles that we can apply when using the &lt;strong&gt;Printf method from package fmt&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  3) String
&lt;/h3&gt;

&lt;p&gt;A string type represents a series of string values or characters if you may. String type is usually used when we want to name things out or to write sentences. There are various needs that strings can satisfy but in layman’s terms, they are used for writing characters as we write words and sentences.&lt;/p&gt;

&lt;h3&gt;
  
  
  4) Boolean
&lt;/h3&gt;

&lt;p&gt;When the outcome of our input can either be true or false, we use Boolean.&lt;/p&gt;

&lt;h2&gt;
  
  
  We have discussed the primitive data types, let’s look at them in action.
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Azt3YADE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AXf4KFTRLicrBxiYmDgaPAw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Azt3YADE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AXf4KFTRLicrBxiYmDgaPAw.png" alt="" width="473" height="123"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We always declare the variable in this way. (At least for now)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Var {Keyword} followed by the variable name followed by Data Type.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Problem #1: We want to populate the information of a student.&lt;/strong&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;We would like to have his name, his age, his address, and his GPA for the last sem. Let name = Sam, age = 19, address = Encino, California and GPA = 3.9 {You can populate the data of your own choice.}&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;First, try it on your own and see if you can do this, I know you will. But here’s my take on it.&lt;/p&gt;

&lt;p&gt;Okay, so this is how I would do it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HO1ipf_n--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AOHAd_HEdCulzXeM5AlXCNw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HO1ipf_n--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AOHAd_HEdCulzXeM5AlXCNw.png" alt="Note: This exercise is just for the shake of getting started with Go. We will discuss how to write it in a more approachable way in upcoming blogs." width="880" height="358"&gt;&lt;/a&gt;&lt;em&gt;Note: This exercise is just for the shake of getting started with Go. We will discuss how to write it in a more approachable way in upcoming blogs.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;So that’s it for this blog, in the next blog, we will further optimize our code and learn about &lt;strong&gt;Zero Values&lt;/strong&gt;.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Learn Golang by Solving Real-World Problems</title>
      <dc:creator>Neel Modi</dc:creator>
      <pubDate>Sat, 21 Nov 2020 09:55:26 +0000</pubDate>
      <link>https://dev.to/neel229/learn-golang-by-solving-real-world-problems-2b2o</link>
      <guid>https://dev.to/neel229/learn-golang-by-solving-real-world-problems-2b2o</guid>
      <description>&lt;h4&gt;
  
  
  Roadmap To Mastering the Language
&lt;/h4&gt;




&lt;p&gt;Since you are already sold on learning "Go" after reading countless articles on the internet, we will cut it down directly to how you will learn it. &lt;strong&gt;In this series of blogs, we will learn anything new by solving real-world problems via programming and down the line, will focus on its applications.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We will start our journey by learning the keywords and syntax in Go. Later, we will move on to conditionals and statements, functions, methods, structs, maps, and many more features of the Go programming language. We will also cover how to read the go standard library because believe me it is confusing and time-consuming to just get the gist of what it wants to convey when you are a beginner.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Following is the roadmap of what we will be doing under various categories.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F4240%2F1%2As7NLuA0xy4G5vrv261ExzQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F4240%2F1%2As7NLuA0xy4G5vrv261ExzQ.png" alt="Note: This roadmap may change further down the line but everything which is shown in the photo will be covered. The only thing that may change will be the sequence or new things which I think should be added."&gt;&lt;/a&gt;&lt;em&gt;Note: This roadmap may change further down the line but everything which is shown in the photo will be covered. The only thing that may change will be the sequence or new things which I think should be added.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Now, before we start anything, I want to make sure you have set up your Go development environment. If not, now is the right time. &lt;a href="https://dev.to/neel229_93/setting-up-dev-environment-for-golang-ipo"&gt;Follow this link if you haven't already.&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;In your src directory create a directory for example called youngling in which we will store all the codes for beginner level concepts and projects.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Problem #0: The Good Ol’ Hello World
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;In this introductory blog, we will look at how to define variables, and how to print out some text back to the user.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Step 1) Declaring the package name&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;The first thing in every Go program that we do is defining the package name. We will define the package name as **package main **here.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AqVqj0g8OGY3YjImzRrHNKw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AqVqj0g8OGY3YjImzRrHNKw.png" alt="Every Go program starts by defining the package name"&gt;&lt;/a&gt;&lt;em&gt;Every Go program starts by defining the package name&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Step 2)&lt;/strong&gt; Importing the required packages
&lt;/h3&gt;

&lt;p&gt;After we have defined the package name, we will always write the package imports that we will use in our program. Think of packages as pre-written codes to perform a specific action. In our case, we have to print out a text to the user and for that, we will import a package called “&lt;strong&gt;fmt&lt;/strong&gt;” which stands for format. More on that later.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2ADiuC7g9rr_LP043zcAT2CQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2ADiuC7g9rr_LP043zcAT2CQ.png" alt="We always enclose the package name which we are importing inside double-quotes. The red squiggly shown above is because we have imported the fmt package but haven’t used it yet."&gt;&lt;/a&gt;&lt;em&gt;We always enclose the package name which we are importing inside double-quotes. The red squiggly shown above is because we have imported the fmt package but haven’t used it yet.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3) Main function block
&lt;/h3&gt;

&lt;p&gt;Now, since we have imported the &lt;strong&gt;fmt&lt;/strong&gt; package, we will now move on to write the main logic behind solving the problem. The main driving code of our problem is always written between the &lt;strong&gt;main function&lt;/strong&gt;. Think of it as the entry point of our code which runs as soon as we first compile our program.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2Ae4bzcP1H8OuOACTg9_j-LA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2Ae4bzcP1H8OuOACTg9_j-LA.png" alt="The syntax to declare the main function is shown in the above picture."&gt;&lt;/a&gt;&lt;em&gt;The syntax to declare the main function is shown in the above picture.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Now, we will work on writing the logic which will solve our problem, but remember that we will have to write it between the main function block otherwise it won’t run and will result in an error.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 4) Declaring the variable
&lt;/h3&gt;

&lt;p&gt;There are various ways to declare a variable in go but we will focus right now on only one. More on that later. We will create a variable named **input **which will store the text which we want to print out to the user.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AeIjtYCbopriqMa3ncR_goQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AeIjtYCbopriqMa3ncR_goQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We define a variable by writing the &lt;strong&gt;&lt;em&gt;keyword&lt;/em&gt;&lt;/strong&gt; *&lt;em&gt;var **followed by the **variable name **and the **type **we want our variable to be. *(A keyword is a text which has a special meaning attached to it and cannot be used by us in our code. Golang has 25 keywords which we will discuss further down the line.)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In this example, we will use string as the type of input. &lt;a href="https://golang.org/ref/spec#Numeric_types" rel="noopener noreferrer"&gt;Follow this link&lt;/a&gt; to see the various types Golang offers us. We will cover each type and will also define our own types later on.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 5) Assigning value to our input
&lt;/h3&gt;

&lt;p&gt;In Golang, we cannot leave unused variables, meaning we have to use every variable we define in our code. To use a variable, we have to do two things, first &lt;strong&gt;declare and assign values to it&lt;/strong&gt;, and secondly &lt;strong&gt;perform some actions on it.&lt;/strong&gt; We will now assign value to our variable input and print it out to the user. I am assigning the value “Hello World” here but you can write anything you want but between the double-quotes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2154%2F1%2ABcCvrZAne9-QC3DXTKL-Gg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2154%2F1%2ABcCvrZAne9-QC3DXTKL-Gg.png" alt="Assigning value Hello World to the variable input."&gt;&lt;/a&gt;&lt;em&gt;Assigning value Hello World to the variable input.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 6) Printing the value
&lt;/h3&gt;

&lt;p&gt;Now, since we have assigned the value to our variable, “&lt;em&gt;Hello World&lt;/em&gt;” in my case, we will try to print it. For this, &lt;strong&gt;we will use a method called Println from the package fmt&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2A6EEIc1EVBR2lxYwZe6_JXg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2A6EEIc1EVBR2lxYwZe6_JXg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We use the Println method as shown above. First, we type the package name from which we are using the method, followed by a &lt;strong&gt;. (dot)&lt;/strong&gt; and the method name. While writing the code, you can repeat this in your head, “&lt;strong&gt;From package fmt, I am using the Println method&lt;/strong&gt;”.&lt;/p&gt;

&lt;p&gt;Note: All the methods are called only by placing parenthesis in the end and passing inside the variable we want to carry operations on.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;(input)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Now save the file as main.go. See here, we have an extension of .go with our filename. &lt;strong&gt;All go programs are saved as .go&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 7) Run the program
&lt;/h3&gt;

&lt;p&gt;We have written all the code required to print out the text to the user. Now to run the code, we have to first compile it into the byte code which will tell our computer to do the intended operations. For that open your terminal inside the code directory and run the following command.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;go run &amp;lt;filename&amp;gt;.go 

For example: 

go run 01.go
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;You should see the results in your terminal.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AJAfRLaYmlW6ckNm5KAOb1Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AJAfRLaYmlW6ckNm5KAOb1Q.png"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  So that’s it for this blog. We have covered the extreme basics of how we start writing our code. We will learn more about packages, methods, and the different ways of declaring and assigning variables in the later blogs. Till then, adios.
&lt;/h3&gt;

</description>
      <category>go</category>
      <category>beginners</category>
      <category>programming</category>
      <category>vscode</category>
    </item>
    <item>
      <title>Setting Up Dev Environment for Golang</title>
      <dc:creator>Neel Modi</dc:creator>
      <pubDate>Thu, 19 Nov 2020 06:43:58 +0000</pubDate>
      <link>https://dev.to/neel229/setting-up-dev-environment-for-golang-ipo</link>
      <guid>https://dev.to/neel229/setting-up-dev-environment-for-golang-ipo</guid>
      <description>&lt;p&gt;In this post, we will be setting up our development environment for writing go-code. Now, first thing that should be clear is having a good development environment as it brings up your "A-game" when writing good quality codes. The better your environment, the less work you have to do, and the better the code quality. &lt;strong&gt;Do Less, Do Better&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Assuming you have no prior experience in installing Go, we will first start by installing Go in Windows and then in Ubuntu(can be applied to any other distro). For Mac, I have no experience in installing Go in Mac, so sorry folks but you have to work on yourself and then join us later when setting up &lt;em&gt;VSCode&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  For Windows
&lt;/h2&gt;




&lt;p&gt;First of all, head over to &lt;a href="https://golang.org/" rel="noopener noreferrer"&gt;golang.org&lt;/a&gt; and &lt;strong&gt;click on&lt;/strong&gt; "Download Go" button. You will be redirected to a new page. Now click on the .msi installer under the Microsoft Windows box, the installer will be downloaded. Once, the installer is downloaded, open it and install Go. (Just do next, next, next!). Once Go is installed, you can verify it by opening your &lt;strong&gt;Command Prompt&lt;/strong&gt; and enter&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;go version
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fpv8o0gmlf33710l27vg8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fpv8o0gmlf33710l27vg8.png" alt="Go Version is shown"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Next step is creating a workspace folder.
&lt;/h3&gt;

&lt;p&gt;On your PC, create a folder which will be used to store Go Projects. Mine is in Local Disk C. You can see the path.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;C:\workspace\go
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now create three directories in here by the name &lt;strong&gt;bin&lt;/strong&gt;, &lt;strong&gt;pkg&lt;/strong&gt;, &lt;strong&gt;src&lt;/strong&gt;. The &lt;strong&gt;src&lt;/strong&gt; folder is the one which we will for our projects initially before learning about &lt;strong&gt;Go Mod&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;After creating a workspace folder, we have to add it to the GOPATH. To do this, first search for environment variables in your search window. (Search Window can be open by pressing Win+S). &lt;br&gt;
Click on edit environment variables for your account. &lt;/p&gt;

&lt;p&gt;Now, under user variables, i.e. the first dialog box, if no &lt;strong&gt;GOPATH&lt;/strong&gt; variable is there, then create a new one by clicking on New. Then under variable name, write &lt;strong&gt;GOPATH&lt;/strong&gt; and under variable value, copy the path of your workspace folder.&lt;/p&gt;

&lt;p&gt;Mine looks something like this:&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F8bs2n76j15ofo9xoajgk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F8bs2n76j15ofo9xoajgk.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  That's it, you have successfully installed Go in your Windows PC. You can now jump directly to the VSCode part of the post.
&lt;/h2&gt;
&lt;h1&gt;
  
  
  For Ubuntu
&lt;/h1&gt;



&lt;p&gt;Firstly, we will download the tar ball of Latest Go version. At the writing of this post, the latest Go Version is 1.15.something something. You can check the latest version by going to the official golang website &lt;a href="https://golang.org/" rel="noopener noreferrer"&gt;golang.org&lt;/a&gt;. Click on &lt;strong&gt;Download Go&lt;/strong&gt; and check the latest version. You can download it from there, or you can follow the way I am showing. The reason is that those who are running Ubuntu on WSL (like me), for them downloading and then moving the Go Tar file is kind of a boring work. &lt;/p&gt;

&lt;p&gt;In your terminal, write the following term.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;wget -c https://dl.google.com/go/&amp;lt;insert your version here&amp;gt;.linux-amd64.tar.gz -O - | sudo tar -xz -C /usr/local
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The above step will download the tar file, will extract it and place the resultant directory under &lt;strong&gt;/usr/local/&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Now, we have to set the &lt;strong&gt;GOPATH&lt;/strong&gt;. In your &lt;strong&gt;.profile&lt;/strong&gt; file, located in your root, place the following line at the end of the file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export PATH=$PATH:/usr/local/go/bin
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;By default, the GOPATH is set us &lt;strong&gt;$HOME/go&lt;/strong&gt;. Therefore, in your HOME directory, you have to create a directory named go. You can do this by copying and pasting the following text.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mkdir ~/go
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now create three directories in here by the name &lt;strong&gt;bin&lt;/strong&gt;, &lt;strong&gt;pkg&lt;/strong&gt;, &lt;strong&gt;src&lt;/strong&gt;. The &lt;strong&gt;src&lt;/strong&gt; folder is the one which we will for our projects initially before learning about &lt;strong&gt;Go Mod&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Now, source your .profile file or just restart your terminal.&lt;br&gt;
Verify your installation by writing&lt;br&gt;
&lt;br&gt;
 &lt;code&gt;go version&lt;/code&gt;&lt;br&gt;
&lt;br&gt;
 in your terminal.&lt;/p&gt;




&lt;h1&gt;
  
  
  Setting Up VSCode
&lt;/h1&gt;




&lt;p&gt;I use VSCode as my code editor but feel free to use any other code editor of your choice. If you are using VSCode, then follow the steps.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Install VScode on your PC. &lt;/li&gt;
&lt;li&gt;Download the official go-extension. &lt;/li&gt;
&lt;li&gt;Once, the extension is installed, a pop-up will be shown to download some additional tools. Make sure you click on &lt;strong&gt;Install All&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Next step is setting up an advanced &lt;strong&gt;Linter&lt;/strong&gt;. Open your settings.json file by pressing &lt;strong&gt;CTRL + ,&lt;/strong&gt; and on top right, click on the file icon.
&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F68lii34064v4krqdtoc4.png" alt="Alt Text"&gt;
&lt;/li&gt;
&lt;li&gt;Copy the following text in the end of the file.
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"go.lintTool":"golangci-lint",
"go.lintFlags": [
  "--fast"
]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Make sure you format this document otherwise it may break your VSCode.
&lt;/h2&gt;

&lt;h3&gt;
  
  
  So that's it for this post, we will start working on learning Go by solving real world problems from the next post. It is already publish on &lt;strong&gt;Medium&lt;/strong&gt; prior to writing this post. You can check out those posts also.
&lt;/h3&gt;

&lt;p&gt;These are the friend links:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://medium.com/golang-jedi-knight/learn-golang-by-solving-real-world-problems-955c609ff0db?source=friends_link&amp;amp;sk=7566d31760ca0995cc6dac306b43bb6b" rel="noopener noreferrer"&gt;Learn Go by solving real world problems&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://medium.com/golang-jedi-knight/primitive-data-types-in-golang-35a291df3bbe?source=friends_link&amp;amp;sk=737a6bfb6776ff330fd4dbbcd5da100e" rel="noopener noreferrer"&gt;Primitive Data Types in Go&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://medium.com/golang-jedi-knight/zero-values-and-complex-data-types-in-golang-20ec177d11a2?source=friends_link&amp;amp;sk=9376caa0a5e769945027b46dac6730ad" rel="noopener noreferrer"&gt;Zero Values and Complex Data Types in Go&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;You can contact me on twitter &lt;a href="https://twitter.com/neel229" rel="noopener noreferrer"&gt;@neel229&lt;/a&gt;&lt;/strong&gt; ✌&lt;/p&gt;

</description>
      <category>go</category>
      <category>vscode</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
