<?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: Siddhartha Sahu</title>
    <description>The latest articles on DEV Community by Siddhartha Sahu (@callmesahu).</description>
    <link>https://dev.to/callmesahu</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%2F671945%2F9571ae11-2db5-4aa7-8790-a37dedfc25c2.jpg</url>
      <title>DEV Community: Siddhartha Sahu</title>
      <link>https://dev.to/callmesahu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/callmesahu"/>
    <language>en</language>
    <item>
      <title>How does the Internet work?</title>
      <dc:creator>Siddhartha Sahu</dc:creator>
      <pubDate>Mon, 16 Aug 2021 16:54:58 +0000</pubDate>
      <link>https://dev.to/callmesahu/how-does-the-internet-work-i4c</link>
      <guid>https://dev.to/callmesahu/how-does-the-internet-work-i4c</guid>
      <description>&lt;p&gt;If there is one thing that has revolutionized the world in the 20th century, it is the internet. It has completely changed the way humans communicates and has impacted a lot of lives. Most of us have been a consumer on the internet for the most part of our lives. As web developers we are becoming a creator on the internet. Hence it becomes very essential for us to know how the internet works from a web-developer's point of view. Let's begin!&lt;/p&gt;

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

&lt;p&gt;At a bottom level, what the internet really is your browser or your machine is making requests to a server and is getting responses back. Browser can be on your PC, Mac, phone or any other multimedia device. The server is just another machine with server software running on it. Every device connected to the internet have an IP address assigned to them. In this case both the server and the machine running the browser have an IP address assigned to them. Now when we type an URL(&lt;a href="http://www.xyz.com"&gt;www.xyz.com&lt;/a&gt;) on the browser, the browser does not know the server's IP address associated to the URL. Hence it goes to the ISP for the server's address. The ISP does something known as a DNS lookup which is nothing but a search of association of the URL to the server's address. Once the association is found, it returns the IP address of the server to the browser. Now the browser can send direct requests to the server and gather responses.&lt;/p&gt;

&lt;p&gt;Now to browser sends connection requests to the server and in return, the server sends a response back to the browser. The response is a file and its content type. The file can be an image file, CSS file or JavaScript file. Usually, the file is index.html and the type is text/html. Now the browser knows what to do with it, so it starts parsing the HTML file provided by the server. During parsing, it usually goes top to bottom and pauses when it finds a request for any asset. An asset is another request that has to be made by the browser to procure that file and its content type. These assets are mostly CSS stylesheets and JavaScript files that are required to ensure the proper functioning of the webpage.&lt;/p&gt;

&lt;p&gt;Once the assets are procured from the server, anything on the HTML file that has a reference of the asset files, the assets files are consulted for that. CSS files are referred to add styling to HTML components and JS files are referred to add functionality to HTML components on the webpage. Usually, the CSS files are linked inside the head tag of the HTML files so that the CSS file is procured before parsing components inside the body tag. This step is taken by most web developers to avoid something known as Flash of Unstyled Content (FOUC). Similarly, JavaScript files are sourced at the end inside the body tag because these kinds of files are usually heavy in size and take time to request, procure and parse. Moreover, JavaScript files can request stylesheets and images. This process should not slow down the loading of the webpage because parsing is paused whenever a request for an asset is sent. It is always recommended to club CSS and JS files so that less request is sent by the browser.&lt;/p&gt;

&lt;p&gt;Now lets us have a closer look at the requests and responses in which the browser is involved.&lt;/p&gt;

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

&lt;p&gt;The request header consists of few parameters as mentioned in the diagram. Let us discuss each parameter one by one.&lt;/p&gt;

&lt;p&gt;1.&lt;strong&gt;Host:&lt;/strong&gt; It is nothing but the request URL to which the browser wants to connect.&lt;br&gt;
1.&lt;strong&gt;Request Method:&lt;/strong&gt; It can be anything from GET, POST, PUT or DELETE. Request using GET should only retrieve data from the server. The POST method is used to submit entities to specified resources on a server. The PUT method replaces all current representations of the target resource with the request payload. The DELETE method deletes the specified resource.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Path:&lt;/strong&gt; It is the path of the resource to which the browser is requesting to access or procure.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cookies:&lt;/strong&gt; It is a string that the browser stores to improve the users experience on the website. It is been sent to the server in a hope that the response will be curated as per the user.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;User String:&lt;/strong&gt; It is a string that contains information about your web browser and the device you are using.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Content Type:&lt;/strong&gt; It is the type of content that that the browser is expecting the server to give.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Payload:&lt;/strong&gt; When we use the POST method we send data to the server in JSON or XML format. It is known as the payload with your request.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The response consist of a header and a response body. The header contains the response information and the body contains the resource from the server.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Content Type:&lt;/strong&gt; It is the information about the content type of the resource sent by the server. Using this the browser parses the resource file.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Status Code:&lt;/strong&gt; It is a message from the server in form of a code. Code 200 means Successful response, 404 means not found, 500 means internal server error. These were a few common codes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Response Body:&lt;/strong&gt; The response body consist of a file that the browser requested or a result that the server has sent to the browser. The file can be a HTML file, CSS file, a JS file or an image file. Results are mostly in form of JSON or XML format.&lt;/li&gt;
&lt;/ol&gt;

</description>
    </item>
    <item>
      <title>Why should you learn to code?</title>
      <dc:creator>Siddhartha Sahu</dc:creator>
      <pubDate>Mon, 16 Aug 2021 16:37:43 +0000</pubDate>
      <link>https://dev.to/callmesahu/why-should-you-learn-to-code-335o</link>
      <guid>https://dev.to/callmesahu/why-should-you-learn-to-code-335o</guid>
      <description>&lt;p&gt;If you want to stay relevant in the future you either need to be able to code or be able to tell really good stories. Telling stories is a creative task which is not a piece of cake for most of us, but coding is something that everyone can do.&lt;/p&gt;

&lt;p&gt;In the 1960s, the number one and the most important skill to learn for an Indian was the English language. If you knew the English language the number of opportunities for you was extremely high. If you have studied history you will see the friction to learning English was quite prominent in India. If you read those stories, people in India were like 'I know my native language, why should I learn English?' or 'Our native language is the Indian language, this is where we come from.' etc. Other people kept telling them the opportunities are in English and English is the global language, it is how we communicate with people across borders. It helps us with export and export is where the money is and the mediocrity just did not get the point. They came up with thousands of excuses as to why you should not learn English. If you think properly, language is the ability to communicate with other human beings and English happens to be the most universally understood language. While you can communicate with other human beings in other languages like Hindi or Bengali, English is something that will get you better reach, will get you more opportunities.&lt;/p&gt;

&lt;p&gt;Today learning to write code is exactly like learning the English language in the 1960s. Instead of talking to human beings, you are learning to talk to machines through coding. Just look around you, most of the things around you are made digitally. They have a digital interface, it's either IOT or actual computers computing. If you can't create for this ecosystem then you are going to lose out on opportunities. If you can't talk to computers how do you expect them to yield to whatever you want them to do? Today one of the most magical things about me and a computer is if I ever want to create something or I ever want to take a robot and program it to do something, I know how to do it. I might not know the exact programming language used to program that robot but I can pick it up with ease just because I know another programming language.&lt;/p&gt;

&lt;p&gt;So it is so critical for us to learn to code because all opportunities are going to be there. Learning how to write code is the number one skill I recommend to each and everyone to learn right now. If you can learn how to write code, there is nothing stopping you and there is a new world of opportunities unlocked just for you. You can't see it but everybody who knows how to code can, it is right in front of them. Almost everything around you is programmable, everything around you will obey your will. You will feel like a god and you are missing out on that opportunity that all of us can have. All of us can learn this skill, all of us can learn how to program, it is not a zero-sum game at all. All of us can add value to each other by programming things around us. You also don't realise that a lot of people who know how to code are literally walking around like magicians. They have the ability to create anything in their head and make it real and you are missing out on the craziest opportunity to be one of us. I would love to be able to speak to my AC and lower the temperature but if LG is the only company that can do it then LG is the only one getting my money. If you know how to code, you can either work at LG or create an alternative for the market, otherwise, there is no opportunity for anything else.&lt;/p&gt;

&lt;p&gt;So learn how to code, learn how to talk to machines, get over any excuses you have over your head because it is as important as you learning the English language in the 1960s.&lt;/p&gt;

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