<?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: Rahul kumar parida</title>
    <description>The latest articles on DEV Community by Rahul kumar parida (@rahul_kumarparida_6c16f5).</description>
    <link>https://dev.to/rahul_kumarparida_6c16f5</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%2F3719099%2Fdc8dbb15-c623-4ab9-810d-4efc0e8a9782.jpg</url>
      <title>DEV Community: Rahul kumar parida</title>
      <link>https://dev.to/rahul_kumarparida_6c16f5</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rahul_kumarparida_6c16f5"/>
    <language>en</language>
    <item>
      <title>Understanding HTTP</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Sat, 16 May 2026 05:54:39 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/understanding-http-10p2</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/understanding-http-10p2</guid>
      <description>&lt;p&gt;Hey!! there reader, Today in this blog we will  explore &lt;strong&gt;What is HTTP?&lt;/strong&gt; , &lt;strong&gt;Explore HTTP .&lt;/strong&gt;If you don’t know anything or want to revise this blog will help a lot.&lt;/p&gt;

&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;HTTP&lt;/strong&gt; (Hypertext transfer protocol) is one of the many protocol which is used to communicate on the application layer of the &lt;strong&gt;TCP/IP&lt;/strong&gt; model over the internet and between different computers . It is a set of rules and format that is used as a standard set of practices while communicating. HTTP have statelessness which is it does not remember the previous request or persists and data during communication. It follows the client-server architecture which is when user requests a resource, the response is provided in specified format by the server. The request and response should contain headers which provide metadata about the provided body and a body which is the actual data sent by the client or requested by the client. The HTTP contains specified set of OPERATION names known as HTTP methods which are used to specify the server about the type of request.&lt;/p&gt;

&lt;p&gt;Also server uses codes which are known as HTTP Status codes to specify the type or state of the response. Let’s start from the HTTP headers.&lt;/p&gt;

&lt;h3&gt;
  
  
  HTTP Headers
&lt;/h3&gt;

&lt;p&gt;The headers are the metadata that contains the information about the data, like requested source, destination, user-agent , tokens , e-tags , date-times , status codes. These headers are created and often used on the client side or the server side to validate authorize or permit specific tasks from the user. There are different types of headers.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Request Header : Sent by the client to the server.&lt;/li&gt;
&lt;li&gt;Response Header : Sent by the server to the client.&lt;/li&gt;
&lt;li&gt;Representation Header : Decides the format of the response or the request body to be sent.&lt;/li&gt;
&lt;li&gt;Payload Header: This are the custom headers used by the server or client to authenticate and authorize or for any different task used by the developer for specific tasks or requirements.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Covering all the headers then we think how the HTTP communicate and be able to do basic CRUD operations. We understand HTTP methods.&lt;/p&gt;

&lt;h3&gt;
  
  
  HTTP Methods
&lt;/h3&gt;

&lt;p&gt;The HTTP Methods are the basic set of operations format that helps the server understand the type of the request like for example, If it is creating , updating or deleting a resource. These methods are used such operation each having a specific work.These is mostly invoked from the client side to request some resources and can be found in the request headers.&lt;/p&gt;

&lt;p&gt;The HTTP Methods are:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;GET : Used to retrieve a source from the server.&lt;/li&gt;
&lt;li&gt;POST: Used to add new data to the server.&lt;/li&gt;
&lt;li&gt;PATCH: Partially updates the data without removing them. In other words add more data to the already existing data.&lt;/li&gt;
&lt;li&gt;PUT: Completely replaces the old data to the new data sent.&lt;/li&gt;
&lt;li&gt;DELETE: Delete a resource from the server.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These are the most commonly used methods in the modern development and use case. But there are some other methods which are not most frequently used. &lt;/p&gt;

&lt;p&gt;Those are:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;HEAD: Used to only see the headers no body.&lt;/li&gt;
&lt;li&gt;OPTIONS: Provides the available methods for the specific endpoint.&lt;/li&gt;
&lt;li&gt;TRACE: Loopback test provides the same data again to check if it is working properly.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The most common HTTP methods among them are GET and POST which are most frequently used in any application to give and take data.&lt;/p&gt;

&lt;p&gt;Then comes the HTTP status code which is sent by the server on the response headers.&lt;/p&gt;

&lt;h3&gt;
  
  
  HTTP Status Codes
&lt;/h3&gt;

&lt;p&gt;These codes have specific meaning to each of the response codes and have different range for what the response provided by the server upon your request. It is standard practice to maintain the response with a status code specific to the response.The Range starts from 100 to 599&lt;/p&gt;

&lt;p&gt;The Ranges specify what type of information is shared.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;100 - 199 : Informational response&lt;/li&gt;
&lt;li&gt;200 - 299 : Success response&lt;/li&gt;
&lt;li&gt;300 - 399 : Redirection response&lt;/li&gt;
&lt;li&gt;400 - 499 : Client side error&lt;/li&gt;
&lt;li&gt;500 - 599 : Server side error&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The status code each represents a specific response type and among the most commonly used status code are:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; 100 : Continue&lt;/li&gt;
&lt;li&gt; 102 : Processing&lt;/li&gt;
&lt;li&gt; 200 : OK&lt;/li&gt;
&lt;li&gt; 201 : Created&lt;/li&gt;
&lt;li&gt; 202 : Accepted&lt;/li&gt;
&lt;li&gt; 307 : Temporary redirect&lt;/li&gt;
&lt;li&gt; 308 : Permanent redirect&lt;/li&gt;
&lt;li&gt; 400 : Bad request&lt;/li&gt;
&lt;li&gt; 401 : Unauthorized&lt;/li&gt;
&lt;li&gt;402 : Payment required&lt;/li&gt;
&lt;li&gt;404 : Not found&lt;/li&gt;
&lt;li&gt;500 : Internal server error&lt;/li&gt;
&lt;li&gt;504 : Gateway timeout&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These are the most commonly used status codes across all the ranges and most of the work is done in these only.&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;These are most of the cover ups of HTTP basics , although you maybe wondering “But nowadays we are using HTTPS not HTTP then what is the diffrence between two if they work in the same way”, There is a big diffrence not in the form of communication but in the way of communication.&lt;/p&gt;

&lt;p&gt;The S in HTTPS stands for secure so it is &lt;strong&gt;Hypertext transfer protocol secure&lt;/strong&gt; , In normal works it means the data packets that were sent over the network are secured , Now lets understand the process of how it gets secure.&lt;/p&gt;

&lt;p&gt;Previously on HTTP the data packets were shared over the network raw so anybody that interprets the network can access it and change the data and this was one of the core reason why the TSL and and later SSL were introduced. These are the extra layer that were used to encrypt the data and when they are being transported from the server to the client and can only be decoded from the client side which have they key to decrypt the message usign the specified salt and key value.&lt;/p&gt;

&lt;p&gt;Understanding the TLS and SSL are a completely diffrent topics and cannot be covered in this blog. And thus using these layers we can convert HTTP to HTTPS, Which is highly recommended in today’s time.&lt;/p&gt;

&lt;p&gt;This is the conclusion  for the HTTP Basics I have tried to cover almost everything that is required for basic knowledge and understanding. If left anything please provide feedback on how the blog was. Thank you for reading.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>networking</category>
      <category>tutorial</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How React Virtual DOM works under the Hood?</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Tue, 05 May 2026 09:55:50 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/how-react-virtual-dom-works-under-the-hood-3ho7</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/how-react-virtual-dom-works-under-the-hood-3ho7</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;In this blog we are going to cover how Virtual DOM works and how is it any different from Real DOM . This Virtual DOM concept is used in various frameworks like VueJs and a library like React. Before understanding Virtual DOM, Let’s see how Real DOM works on the web Browser.&lt;/p&gt;

&lt;h3&gt;
  
  
  Real DOM
&lt;/h3&gt;

&lt;p&gt;The Real DOM or Document Object Model represents the structure of the HTML page rendered on the browser. The DOM represents the HTML in a tree like structure, All of them have a Parent-Child relationship with there parent element and the root elemnt being the HTML(the  tag we use to initialize a HTML page), Which is accessed by javascript to manipulate the struture and nodes of the HTML tree. This is an example of DOM tree of  a minimal HTML based document.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;HTML&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;main&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;title&amp;gt;&lt;/span&gt;This is the title&lt;span class="nt"&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;link&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"http://somecdn.dev/xyz"&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/main&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;h1&amp;gt;&lt;/span&gt;This is the heading tag&lt;span class="nt"&gt;&amp;lt;/h1&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;This is the paragraph tag&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/HTML&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F44gygyie8k2m23u0fgqm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F44gygyie8k2m23u0fgqm.png" alt="HTML tree" width="800" height="453"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So, When we do some changes on the tree the page refreshes and the whole page is rendered again. This is a problem because a slight change in the DOM can make the page re-render completly from the HTML element. To avoid these problem Virtual DOM is used in frameworks or libraries.&lt;/p&gt;

&lt;h3&gt;
  
  
  Virtual DOM
&lt;/h3&gt;

&lt;p&gt;Virtual DOM is a JSON representation of the actual DOM on the Browser and is faster in rendering the changes in the real DOM than manipulating them directly. Virtual DOM does the minimal changes required in the virtual DOM and once that is done it changes only the element affected in real DOM. Lets take an example on how &lt;strong&gt;this&lt;/strong&gt; DOM looks. We will take a small example for it.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;h1&amp;gt;&lt;/span&gt;This is the heading tag&lt;span class="nt"&gt;&amp;lt;/h1&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;This is the paragraph tag&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="err"&gt;**&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"body"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"props"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"children"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"h1"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"props"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"children"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"This is the heading tag"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"p"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"props"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"children"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"This is the paragraph tag"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="err"&gt;**&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is a mere example, An entire tree like structure  like this is generated for all the elements in the virtual DOM. The changes that are done are firts changed in the JSON like structure here and then the diffrence is updated in the real DOM.&lt;/p&gt;

&lt;h4&gt;
  
  
  How does it do that?
&lt;/h4&gt;

&lt;p&gt;Virtual DOM follows a step by step rule to do these changes following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Initial Render :&lt;/strong&gt; When the web-app starts the entire document is represented in the web browser and a virtual copy is created.This copy holds the entire tree like structure for the web page.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;States / Props (Change):&lt;/strong&gt; When you change something on the document or the components or properties. According to the changes React creates a new version of the virtual DOM with the changes in it . But these are not applied to the real DOM yet.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Diffing or Comparision:&lt;/strong&gt; After a new version of the virtual DOM is created a diffing algorithm is used to find the diffrences between the previous and the current version of the virtual DOM.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reconciliation process:&lt;/strong&gt; After finding the minimal differences React finds the most optimized form to make the changes in the real DOM.This helps avoid re-rendering of the entire UI and happens quick and is highly perfomance oreinted.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Update Real DOM:&lt;/strong&gt; React find the minimal changes and updates on the elements affected rather than rendering the entire UI it only changes the affected components or properties.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The main process that helps in this fast renders are &lt;strong&gt;diffing&lt;/strong&gt; and &lt;strong&gt;reconciliation.&lt;/strong&gt; To visualise the process check the image below.       &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Filed3ttp32mbxcqxi05q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Filed3ttp32mbxcqxi05q.png" alt="Diffing and reconciliation process" width="800" height="292"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;Virtual DOM is key feature in improving performance and efficient UI updates . Using this React acn minimize the rendering of elements and provide a smooth and fast UI changes. This is make it more useful while serving or devloping the websites.&lt;/p&gt;

&lt;h4&gt;
  
  
  Refrences:
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://www.freecodecamp.org/news/what-is-the-virtual-dom-in-react/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/what-is-the-virtual-dom-in-react/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://medium.com/@noyoncse3101/how-react-work-under-the-hood-9a6534a7fd77" rel="noopener noreferrer"&gt;https://medium.com/@noyoncse3101/how-react-work-under-the-hood-9a6534a7fd77&lt;/a&gt;&lt;/p&gt;

</description>
      <category>frontend</category>
      <category>javascript</category>
      <category>react</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Understanding HTML , Tags, Elements(Basics)</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Sun, 01 Feb 2026 16:34:41 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/understanding-html-tags-elementsbasics-d54</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/understanding-html-tags-elementsbasics-d54</guid>
      <description>&lt;p&gt;Let us start by understanding what is HTML and why it is used.&lt;/p&gt;

&lt;p&gt;So, HTML stands for a Hyper Text Markup Language which as the name suggests is a markup language which mean data showned in a structured format keeping the related data together . &lt;/p&gt;

&lt;p&gt;It is the backbone of modern web technologies . HTML is the skeleton of the website which decides where and how a data will be shown. &lt;/p&gt;

&lt;p&gt;HTML uses CSS as skin to fill the webpage with color  and animations and what not and JS is the brain which decides when to show data when to not and what to do on diffrent events.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Intresting Fact&lt;/strong&gt; : Did you know that HTML uses C under the hood while rendering or getting parsed beacuse browser are made from C lang. to be fastest and efficient.&lt;/p&gt;

&lt;p&gt;Now that we know what HTML is let’s understand what HTML tags are and how they are used&lt;/p&gt;

&lt;p&gt;As we now that HTML is a markup language so it uses some tags which help it to embed  texts , images and videos in a diffrent formats. All of them have a common syntax&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="err"&gt;&amp;lt;Opening&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;TagName&amp;gt;&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;Closing&amp;gt;&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="w"&gt;       &lt;/span&gt;&lt;span class="err"&gt;content&lt;/span&gt;&lt;span class="w"&gt;     &lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt;

 &lt;/span&gt;&lt;span class="err"&gt;HTML&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;Element:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="err"&gt;&amp;lt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;Content&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;Content&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;‘&amp;lt;’&lt;/strong&gt; and &lt;strong&gt;‘&amp;gt;’&lt;/strong&gt; are Opening and Closing Brackets &lt;strong&gt;‘/’&lt;/strong&gt; is used only in the closing bracket and show that the work of the tag ends here.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;‘Content’&lt;/strong&gt; contains the TagName being used and according to the Tag the content should be added inside or to that Tag.&lt;/p&gt;

&lt;p&gt;When we add both the Opening and Closing Tag together this Creates a HTML element.&lt;/p&gt;

&lt;p&gt;For Example for heading there are tags from h1-h6 which vary in sizes as we go higher:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs2bei3hb99whctd27c74.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs2bei3hb99whctd27c74.png" alt="headingTags description" width="598" height="189"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Febwas62ujnjl3cg84m4g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Febwas62ujnjl3cg84m4g.png" alt="headingTagsLive description" width="460" height="372"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now along with these Opening and Closing Tag there are also some Self Closing Void Elements which does not have any Closing Tags but work the same as HTML elements.&lt;/p&gt;

&lt;p&gt;An example of is&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;
 &lt;span class="nt"&gt;&amp;lt;img&lt;/span&gt;  &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;””&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is an Example of self closing void element and there are many more like input , label , video Tags etc.&lt;/p&gt;

&lt;p&gt;Now they are some other fancy term to call this elements Block- level elements and Inline-level elements , they differ slightly.&lt;/p&gt;

&lt;p&gt;Block-level elements:&lt;/p&gt;

&lt;p&gt;This elements are those element that starts from a new line takes up some space and margin like they take up a part of the page completely for themself as much as they require for their content.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="err"&gt;&amp;lt;div&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;style=&lt;/span&gt;&lt;span class="s2"&gt;"border: 1px solid black;"&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; 

&lt;/span&gt;&lt;span class="err"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;div&amp;gt;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn9fn8n9dmfbsjvlq61wf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn9fn8n9dmfbsjvlq61wf.png" alt="divblocklevel description" width="800" height="136"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Inline-level elements:&lt;/p&gt;

&lt;p&gt;This elements are those elements that only take space as they need without disturbing other elements on the same line , without taking the entire  page space or line space only takes what is required.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;span&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;style=&lt;/span&gt;&lt;span class="s2"&gt;"border: 1px solid black;"&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="err"&gt;World&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;b&amp;gt;This&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;HTML&amp;lt;/b&amp;gt;&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="err"&gt;&amp;lt;/span&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj9zk7ld1yvz6u6citg54.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj9zk7ld1yvz6u6citg54.png" alt="spaninlinelevel description" width="257" height="40"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Some of the Commonly used HTML tags:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt; -- This is a container tag acts as a container is of block level 
&lt;span class="nt"&gt;&amp;lt;span&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;&amp;lt;/span&amp;gt;&lt;/span&gt; -- This is also a Container tag but is of inline level
&lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt; -- This is paragraph tag used to write paragraphs.
&lt;span class="nt"&gt;&amp;lt;h1...6&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;&amp;lt;/&lt;/span&gt; &lt;span class="nt"&gt;h1...6&amp;gt;&lt;/span&gt; -- This is a Heading tag used to write headings
&lt;span class="nt"&gt;&amp;lt;img&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;""&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt; -- This is a Image tag used to embed image in your web page in the src you provide the link of the image.
&lt;span class="nt"&gt;&amp;lt;video&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;""&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt; -- This is a video tag used to embed image in your web page in the src you provide the link of the video.
&lt;span class="nt"&gt;&amp;lt;section&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;&amp;lt;/section&amp;gt;&lt;/span&gt; -- This is used to divide and create sections for a webpage.
&lt;span class="nt"&gt;&amp;lt;button&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;&amp;lt;/button&amp;gt;&lt;/span&gt; -- This creates a button which acts as a button
&lt;span class="nt"&gt;&amp;lt;table&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;&amp;lt;/table&amp;gt;&lt;/span&gt; -- This is used to create tables.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This blog about the basic understanding of HTML , it’s Tags and Elements.&lt;/p&gt;

&lt;p&gt;Thank you for reading and would love have your feedback!!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>frontend</category>
      <category>html</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Emmet for HTML</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Fri, 30 Jan 2026 16:36:14 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/emmet-for-html-2e0g</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/emmet-for-html-2e0g</guid>
      <description>&lt;p&gt;What do you think when you here HTML . Ohh!! those long lines of tags each having there own personal attribute and writing them manually is like doing something that is not as prodocutive as it looks , No offence to HTML coders. &lt;/p&gt;

&lt;p&gt;If you used VS code from the start you won’t understand the pain of writing HTML on notepad manually feels like the head is gonna burst. But my friends thanks to  &lt;a href="https://www.google.com/search?q=Sergey+Chikuyonok+who+is+he&amp;amp;sca_esv=95c4599e20cb2333&amp;amp;sxsrf=ANbL-n4HjbnSi658gGXfi8MdfBFlbAYviw%3A1769790449745&amp;amp;ei=8dt8ae-cLcyb4-EP7bjI2AU&amp;amp;ved=0ahUKEwiv2dWY17OSAxXMzTgGHW0cElsQ4dUDCBE&amp;amp;uact=5&amp;amp;oq=Sergey+Chikuyonok+who+is+he&amp;amp;gs_lp=Egxnd3Mtd2l6LXNlcnAiG1NlcmdleSBDaGlrdXlvbm9rIHdobyBpcyBoZTIFECEYoAEyBRAhGKABSLgcUJMGWNIacAF4AJABAJgBggKgAbkSqgEEMi0xMLgBA8gBAPgBAZgCC6AC7hLCAgcQABiwAxgewgILEAAYgAQYsAMYogTCAgYQABgWGB7CAgUQABjvBcICCBAAGIAEGKIEmAMAiAYBkAYFkgcGMS4wLjEwoAeZFLIHBDItMTC4B-gSwgcFMC44LjPIBxyACAA&amp;amp;sclient=gws-wiz-serp" rel="noopener noreferrer"&gt;Sergey Chikuyonok&lt;/a&gt;  who developed Emmet a HTML shortcut provider before Emmet existed people used to manually write the complete HTML and CSS **** by themselves which was tiring and boring so Sergey thought of making this to help a lot of developer all over the world in 2012 .&lt;/p&gt;

&lt;p&gt;Emmet is a plugin which helps us to write code much efficiently and easily than ever before.&lt;/p&gt;

&lt;p&gt;So how it works? &lt;/p&gt;

&lt;p&gt;It uses the logic of abberviation syntax in simple words tagName{and some command then}. This improves the learning of HTML beginner much faster and easy to understand without writing the entire block by themselves.&lt;/p&gt;

&lt;p&gt;So how does is work?&lt;/p&gt;

&lt;p&gt;In VScode you might have noticed that whenever you type something in HTML there are some utilities you find out like creating a class and div using a single line , ever wondered how does that happen and how we can do that  . Well that is the magic of emmet.&lt;/p&gt;

&lt;p&gt;Let start by giving some basic commands to start:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. When you type ‘!’ in HTML file in VScode and click enter:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp7nxroovhi4ehenk5y22.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp7nxroovhi4ehenk5y22.png" alt="doctypehtml" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You see the arrow mark when you click ! command the top written Emmet Abbreviation if you click enter it automatically writes all that for you. This is the complete HTML boilerplate used while creating a page and is common so we ‘!’ this to get the boiler plate.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Let say you want to create div with  a classname and id :&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

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

    div.someclassname#someID


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbosjtzqm620ndvrz92w6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbosjtzqm620ndvrz92w6.png" alt="divcalssID" width="800" height="91"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftyj3x5mndb4uh4t4yjyk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftyj3x5mndb4uh4t4yjyk.png" alt="divclassid2" width="743" height="63"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. If you want to create a nested fields:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
        div&amp;gt;span*5.span

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw0xmot4m7pknvgczlpms.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw0xmot4m7pknvgczlpms.png" alt="divspans" width="659" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Similarily adding custom attribute using  ‘[]’ :&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
    div[idea="0000"]

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8tk40bdr4zf5afs16q37.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8tk40bdr4zf5afs16q37.png" alt="div00" width="394" height="74"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. You can also create nested + siblings elements using + and &amp;gt;:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
    div&amp;gt;span&amp;gt;a^h1+h2
    div&amp;gt;(span&amp;gt;a)+h1+h2

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm2dvzvsrlyorg2k35d0g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm2dvzvsrlyorg2k35d0g.png" alt="divspanh2" width="490" height="169"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;‘&amp;gt;’&lt;/strong&gt; means it is nested or children element and &lt;strong&gt;‘+’&lt;/strong&gt; means they are sibling elements. &lt;strong&gt;‘^’&lt;/strong&gt; means to to upper parent and be there sibling&lt;/p&gt;

&lt;p&gt;if you  use (&lt;strong&gt;tag&amp;gt;tag&lt;/strong&gt;) you are creating a sibling with thier own custom properties inside them.&lt;/p&gt;

&lt;p&gt;These are some examples there are more but these are the fundamentals of the one you willbe requiring as a starter and will enjoy more as you go deeeper.&lt;/p&gt;

&lt;p&gt;That’s it that’s the work of an emmet it is a plugin helps you to write HTML faster and efficiently.&lt;/p&gt;

&lt;p&gt;Thank you for reading this!! Would love to have your feedback on this!!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>html</category>
      <category>productivity</category>
      <category>webdev</category>
    </item>
    <item>
      <title>TCP working (Communication Between Networks)</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Thu, 29 Jan 2026 16:46:41 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/tcp-working-communication-between-networks-14d9</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/tcp-working-communication-between-networks-14d9</guid>
      <description>&lt;p&gt;TCP (Transfer control protocol) is itself is a lot to understand in theory, Let’s start slowly by understanding where it came from .&lt;/p&gt;

&lt;p&gt;TCP is a reliable control protocol residing or works in transport layer of the TCP/IP network model. its primary work is to transmit data over the network to a reciever’s end. &lt;/p&gt;

&lt;p&gt;So how does it do that. Let’s walkthrough the process step by step :&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Adding the layer :&lt;/strong&gt; Transport layer adds a layer over the data which includes some required data such as IP header , Ordering , Control Flags , Checksum(Error Control mechanism)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;a. IP header :&lt;/strong&gt;  Containing the source and the destination address along with some metadata.&lt;br&gt;
&lt;strong&gt;b. Ordering :&lt;/strong&gt;  TCP send the data in order so it provide a serial number to each of the data packets such that receiver can order them as expected.&lt;br&gt;
&lt;strong&gt;c. Control Flags :&lt;/strong&gt;  These are the flags containing the signaling what it the could be the next block of packet might contain. These are of few types:&lt;br&gt;
        &lt;strong&gt;i. SYN:&lt;/strong&gt; Syncronizes with the receiver end initializes the data transfer.&lt;br&gt;
        &lt;strong&gt;ii. ACK:&lt;/strong&gt; Acknowledgement which are sent until the connection is going on and required.&lt;br&gt;
       &lt;strong&gt;iii. FIN:&lt;/strong&gt; Finish is the final signal first sent by the sender to receiver and then from receiver to sender to close the connection.&lt;br&gt;
        &lt;strong&gt;iv. RESET:&lt;/strong&gt;  Resets the connection for sending the data from the sender to reciever again in case the data is corruppted or failed to reach .&lt;br&gt;
&lt;strong&gt;d. Checksum :&lt;/strong&gt; This is sent to verify that the required data is reached or not and if there is any data loss during transmission.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Connection is established :&lt;/strong&gt; The connection is established from the sender to reciever through a process of 3-way handshake. The sender sends signals SYN to initiate the connection  , the reciever reads and replies with a SYN and ACK and then sender sends a ACK to fully establish the connection between them.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo7uehsgvibr3g1wzktao.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo7uehsgvibr3g1wzktao.png" alt="3wayhandshake" width="646" height="608"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Data Packet Transfer :&lt;/strong&gt; Once the connection is established the data packets are sent one by one from the sender to the reciever from a single consistent network. The sender sends data once the data is reached it is checked using checksum if the data length matches then the reciever send a ACK to the sender and sender sends another chunk of data if error is found in the data packet the reciever does not send the ACK and after a interval the sender understands that the data was not recieved properly and that is why no ACK so sender retransmits the same packet again .&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fitxu6duzasdoq9ajwaqz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fitxu6duzasdoq9ajwaqz.png" alt="Data communication" width="581" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Closing connection:&lt;/strong&gt; Once all the data is transffered and the data is recieved successfully the sender send the final block and FIN which is acknowledged by the reciever and then a ACK and a FIN is sent to the sender , the sender again sends the FIN to reciever and finally ends the connection this is a 4-way handshake. Data transffered successfully.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fewv54y55yrplu1fvi0h9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fewv54y55yrplu1fvi0h9.png" alt="4wayhandshake" width="647" height="701"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is the complete process of how TCP works , it establishes a secure connection does the data transfer and closes the connection this is a large process but it happens so fast that you feel like nothing happend.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Advantages of TCP:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;TCP is reliable all the data is sent without any error or any loss&lt;/li&gt;
&lt;li&gt;Network Congestion Control: Which is the best part if the network is crowded and slow , then TCP packets sending time interval increases so that no data loss is done and if the the network has less traffic or less crowded then the time interval decreases and the packets are sent faster.&lt;/li&gt;
&lt;li&gt;Error handling statergy: TCP uses checksum which is used to calculate if the length data packet sent matches the data packet recieved and if the length matches upon calculating on the reciever’s side then the data is most likely intact&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;TCP is designed to solve reliability over an open connection of large network such as the Internet  so that the data could be transmitted securely without any data loss and in correct order compromising a slice of time which is accepted because the time is almost negligible 99% of the time.&lt;/p&gt;

&lt;p&gt;This is my understanding of how TCP works and what it is!! Thank you for reading till the end . Would love to get any feedback possible!!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>computerscience</category>
      <category>networking</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>TCP vs UDP</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Wed, 28 Jan 2026 16:32:15 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/tcp-vs-udp-1m6p</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/tcp-vs-udp-1m6p</guid>
      <description>&lt;p&gt;Have you ever wondered how you can chat with a person so far or voice or video call them so easily , Well let’s talk about network layers and how each of them help.&lt;/p&gt;

&lt;p&gt;There are basically two models of network transmission stack :&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;TCP/IP model&lt;/li&gt;
&lt;li&gt;OSI model&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Both have a great theory but only TCP/IP is the only one that comes in handy in today’s internet.&lt;/p&gt;

&lt;p&gt;The TCP/IP model is basically consist of  4 network stack:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Data Link Layer :&lt;/strong&gt; The Data is converted to Binary or they opposite in this layer .&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Network Layer :&lt;/strong&gt; The stream of bits of data are gathered here and the shortest and most efficient route is found for the data packets to be transffered to the destination address.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transport Layer :&lt;/strong&gt; This is where TCP or UDP is chosen based on the data being transferred through the network.This handles error detection and ordering when a the data packets are sent or recieved.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Application Layer :&lt;/strong&gt; Handles transferring data end to end.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Each of the layer has there work but lets understand about Transport Layer a bit more:&lt;/p&gt;

&lt;p&gt;Transport layer is used to send data packets across the network along with the loads of data sent by other users around you.&lt;/p&gt;

&lt;p&gt;So What Special does the Transport Layer does? It basically adds a layer to the data packets containing the IP headers , Ordering , Checksum&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;IP headers :&lt;/strong&gt; Headers contain the Source address , Destination address , MAC address of the network passed from and other metadata.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ordering :&lt;/strong&gt; This layer assigns a special unique number to each of the data packets in a serial manner so that if a data packet reaches late they can be correctly ordered by the application layer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;checksum :&lt;/strong&gt; It is a method which to used to handle error and is used in error detection.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;All these are handled by Transport layer but vary depending on what you are using TCP or UDP&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TCP (Transmission Control Protocol):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;TCP is a very reliable communication and is always safe to send data through this protocol. TCP uses almost all of the transport layer utilities along with the  it’s own advantages(discussed later).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UDP (User Datagram Protocol):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;UDP are very fast but uses some of the utilities in available in Transport layer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TCP-Process:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;TCP establishes the connection to the other end user using a 3-way handshake.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhikescbk5vw1btyfv0pa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhikescbk5vw1btyfv0pa.png" alt="3wayhandshake" width="646" height="608"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once the connection is established and the network is set TCP starts sending data packets using that connection and everytime the reciever recieves a data packet it sends an acknowlodgement (ACK) to the sender once the ACK is recieved the sender sends  another packet and the process goes on if in anytime the the reciever does not send a ACK then after a interval the sender sends the previous data packet again and the process goes on once this finishes the sender sends a finish(FIN) request to the reciever and the reciever sends a FIN then ACK to the sender and then sender send the FIN again to close down the connection.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fflqg6tn6sa2cggfxz984.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fflqg6tn6sa2cggfxz984.png" alt="4wayhandshake" width="647" height="701"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This process is little slow but is reliable and no data loss is found , error handling is done using checksum to check if any data is lossed while transmission.&lt;/p&gt;

&lt;p&gt;TCP also handles network congestion which is if the network is crowded or slow then it increases the time to send the data packets while if the network is fast it decreases the time of transmission of each packet and this is how it adjust according to the network speed.&lt;/p&gt;

&lt;p&gt;TCP is widely used e.g. When you browse something on a HTTP server or in FTP ,TCP is used.&lt;/p&gt;

&lt;p&gt;Basically it is used in every aspect unless it is not about real-time streaming of data. So you must be asking me if TCP is protocol so are HTTP and FTP why are they not doing something like this . The answer is simple HTTP and FTP and many other protocols are of application layer protocols they only help keep the data authentic and only to the end user(reciever). &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UDP-process:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;UDP doesn’t establish any connection to the reciever end it is connectionless. It start sending data packets(datagram)  to the reciever address without any reliable connection , so , there is no single network used it send the data through multiple networks never thinking about ordering , it oonly think of how i can make the packets reach faster to the receiver rather than the quality.&lt;/p&gt;

&lt;p&gt;A real life example would be video calling you must have notices that the quality of video calling is not as good even with fast internet connection it might loose some bits of data which may create a laggy interface to you.&lt;/p&gt;

&lt;p&gt;UDP is generally used in fast data transferring like DNS search , DHCP  , Live streaming etc.&lt;/p&gt;

&lt;p&gt;UDP is faster in general compared to TCP but if you compare it yourself you wont see much difference unless a very large stream of data is being transffered.&lt;/p&gt;

&lt;p&gt;Best Meme to understand TCP and UDP is :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs0hibyle9h3eno2cocgt.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs0hibyle9h3eno2cocgt.jpeg" alt="TCPUDPmeme" width="237" height="213"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This meme shows exactly what each of they mean , TCP is very gentle while UDP is careless. &lt;/p&gt;

&lt;p&gt;This is my understanding of TCP and UDP . Would love to have your feedbacks.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>computerscience</category>
      <category>networking</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Getting started with cURL (as a beginner!!)</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Tue, 27 Jan 2026 16:33:44 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/getting-started-with-curl-as-a-beginner-1pj7</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/getting-started-with-curl-as-a-beginner-1pj7</guid>
      <description>&lt;p&gt;Before exploring cURL let’s understand what is cURL &lt;/p&gt;

&lt;p&gt;so what is curl?&lt;/p&gt;

&lt;p&gt;curl in the simplest of word is a postman for terminal you can send ,request ,delete data from an api(application programming interface) using the required credentials and data from the terminal only , curl is used widely among developers or programmers who love terminal . it is used to request something &lt;strong&gt;to or from&lt;/strong&gt; a server . curl helps a lot when you need to automate api calls and it supports almost every protocol available from HTTP , HTTPS  to SMTP , FTP etc. &lt;/p&gt;

&lt;p&gt;You can perform all the request methods like GET , POST , PUT , DELETE etc for HTTP/S&lt;/p&gt;

&lt;p&gt;For all the requests i will be making i will be using &lt;a href="https://jsonplaceholder.typicode.com/" rel="noopener noreferrer"&gt;Jsonplaceholder&lt;/a&gt; which help in fake api testing&lt;/p&gt;

&lt;p&gt;Let’s see how it works on the basic commands&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GET-method:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When you type the first and since no method is mentioned it by default uses GET request for whatever the api is. You can also write the second one mentioning the method:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;curl&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;https://jsonplaceholder.typicode.com/posts/&lt;/span&gt;&lt;span class="w"&gt;
 &lt;/span&gt;&lt;span class="err"&gt;curl&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;--request&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;GET&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;https://jsonplaceholder.typicode.com/posts/&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn2sgvdckf65u5kbje181.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn2sgvdckf65u5kbje181.png" alt="getrequest " width="800" height="396"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;POST-method&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Post method is used to post data to an API&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="err"&gt;curl&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;--request&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;POST&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;https://jsonplaceholder.typicode.com/post&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;-d&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="err"&gt;data&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;json&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;format&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjxi409d753vynl0u3hru.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjxi409d753vynl0u3hru.png" alt="Post request" width="800" height="115"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DELETE-method&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Delete method is used to delete data to an API of the particular endpoint.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="err"&gt;curl&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;--request&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;DELETE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;https://jsonplaceholder.typicode.com/post/&lt;/span&gt;&lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="err"&gt;/&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F84gs1rhde3c1wpdrrkkl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F84gs1rhde3c1wpdrrkkl.png" alt="Delete request" width="800" height="35"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and this is how you communicate with the API there are a lot of diffrent methods and protocols these are some basics.&lt;/p&gt;

&lt;p&gt;Request-Response Cycle is as the name suggests when a user request something the server serves them that as a response. if you order pasta then pasta will be delivered this is request response cycle&lt;/p&gt;

&lt;p&gt;if your order is late you get status like time limit exceeded or if  the shop(server) is closed you see Not found that is it everything that can happen to a pasta from you ordering to being delivered to you or not is the request response cycle. &lt;/p&gt;

&lt;p&gt;Things To avoid doing as a begginer:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Don’t use unneccessary commands like —request GET or -x POST if you are using -d command to post some data &lt;/li&gt;
&lt;li&gt;Make sure you are writing the correct commands and shortcuts an alphabet here and there can get you diffrent result than expected.&lt;/li&gt;
&lt;li&gt;As i said curl is like postman not postman so you need to carefully check the command line before executing it.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This is my understanding of curl , Would love to have more knowledge on this.&lt;/p&gt;

</description>
      <category>api</category>
      <category>beginners</category>
      <category>cli</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>DNS Record Explained</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Mon, 26 Jan 2026 16:02:34 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/dns-record-explained-5h4e</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/dns-record-explained-5h4e</guid>
      <description>&lt;p&gt;So What are DNS Record exactly , What are the types  , what are each of their use cases Let’s understand step by step&lt;/p&gt;

&lt;p&gt;DNS records are instruction that live on the authoritative server which is accessed to find diffrent ways in which a server requests are handled records could be the IP address to the server or to a load balancer leading to that IP address or anything which helps you connect to the server&lt;/p&gt;

&lt;p&gt;There are various types of records but some of the important  records among them are :&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A record:&lt;/strong&gt; This holds the IP address of the server in IPv4 format . 32-bit long string&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frz0alnozsnxmpplbu5bf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frz0alnozsnxmpplbu5bf.png" alt="arec" width="751" height="18"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AAAA record&lt;/strong&gt;:  This holds the IP address of the server in IPv6 format . 128-bit long string&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foid5lkgnkl1c1w8yhbb9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foid5lkgnkl1c1w8yhbb9.png" alt="aaaarec" width="800" height="19"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CNAME record&lt;/strong&gt;: Forward one domain to another domain e.g. &lt;a href="http://www.example.com" rel="noopener noreferrer"&gt;www.example.com&lt;/a&gt;  —&amp;gt;  &lt;a href="http://example.com/" rel="noopener noreferrer"&gt;example.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;does not points to any IP&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MX record:&lt;/strong&gt; This are mail records and can be created for literally any domain that you bought, Format is simple: @ here @ represents that this is a MX record&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2d4b9ei556vgfo44oew1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2d4b9ei556vgfo44oew1.png" alt="mxrec" width="800" height="13"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NS record:&lt;/strong&gt; This record holds the direction to the authoritative server which keeps the rest rest of the records.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fadm3wgfnbceppxnf9h88.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fadm3wgfnbceppxnf9h88.png" alt="nsrec" width="800" height="63"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let’s understand them one by one&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A record and AAAA record&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;This record hold the actual IP address of the requested domain name and this is where the server lives this records are what actually stored in the Name server or Authoritative server. The only diffrence is that A record contains IPv4 address 32-bit long so limited avaliability and AAAA-record contains 128-bit long address which are of IPv6 address and are highly avaliable with wider range.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CNAME record(Cannonical Name):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This record stores another domains or subdomain names not IP address  like if you want to have a separate service to run under the same domain name you can create a subdomain and point it to the domain name but with diffrent services e.g. &lt;a href="http://blog.exampl.com" rel="noopener noreferrer"&gt;blog.example.com&lt;/a&gt; —&amp;gt; &lt;a href="http://example.com/" rel="noopener noreferrer"&gt;example.com&lt;/a&gt; but since the domain has a subdomain it is redirected to the blog services of example.com&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo1uctfxdzltg9nj0nep5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo1uctfxdzltg9nj0nep5.png" alt="domainflowindns" width="800" height="220"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MX Record:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This record is mail service for a domain , it can be created with any domain name the server has access to it . if a MX record is created any one can mail; using that &lt;a href="mailto:mail@domainname.TLD"&gt;mail@domainname.TLD&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;e.g.  &lt;a href="mailto:rahul@example.com"&gt;rahul@example.com&lt;/a&gt; can work as a mail if the MX is created on this name &lt;/p&gt;

&lt;p&gt;All the server has to to is create a MX record for this username and the @ here represents that the domain is used as a MX record.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NS record:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is Name Server record and as the name suggests it keeps the name and IP address of the server it is the authoritative server which holds records of a server information , They generally have 2 records Primary and secondary . Secondary is used when primary goes down is slow.&lt;/p&gt;

&lt;p&gt;And these are some of the important records that you need to know &lt;/p&gt;

&lt;p&gt;This is my understanding of the records happy to get feedbacks &lt;/p&gt;

&lt;p&gt;If you like this hope you will like this :  &lt;a href="https://dev.to/rahul_kumarparida_6c16f5/dns-resolutionwhy-name-instead-of-ips-4lmg"&gt;DNS Resolution(Why name instead of IPs?)&lt;/a&gt;&lt;/p&gt;

</description>
      <category>dns</category>
      <category>dnsrecord</category>
      <category>network</category>
    </item>
    <item>
      <title>DNS Resolution(Why name instead of IPs?)</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Sun, 25 Jan 2026 16:55:07 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/dns-resolutionwhy-name-instead-of-ips-4lmg</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/dns-resolutionwhy-name-instead-of-ips-4lmg</guid>
      <description>&lt;p&gt;DNS-Domain Name Service this is one of the most interesting topic when it comes to networking and connection have you ever wondered how so domain have names while hardware can understand only numbers how is that you click &lt;a href="http://example.com" rel="noopener noreferrer"&gt;example.com&lt;/a&gt; and voila the website appears right in front of you , Why names are used instead of IP ??&lt;/p&gt;

&lt;p&gt;Well the answer is simple it’s because it is Humanly readable and can be easily remembered that’s it!! You cannot remember 127.0.03.10 a number like this can you that too this is just of a single server.&lt;/p&gt;

&lt;p&gt;So before jumping to how the DNS resolution works lets first understand what it conatains.&lt;/p&gt;

&lt;p&gt;if you would have noticed when you search &lt;a href="http://example.com" rel="noopener noreferrer"&gt;example.com&lt;/a&gt; you type two word what are these and there any hidden domains added to it &lt;/p&gt;

&lt;p&gt;for &lt;a href="http://example.com" rel="noopener noreferrer"&gt;example.com&lt;/a&gt; it  might be example.com.&lt;/p&gt;

&lt;p&gt;The DNS server reads backward like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcdgjbcb22r586j8svq76.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcdgjbcb22r586j8svq76.png" alt="How DNS reads a domain" width="800" height="220"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let’s try to unserstand by example what happens here .Suppose you want to visit a website say &lt;a href="http://example.com" rel="noopener noreferrer"&gt;example.com&lt;/a&gt; (personal favourite) when you click enter the request goes to the DNS servers(this are static and doesn’t not change unless required) these servers recieve your request and checks if they have that IP of that domain listed in their directory(maintains a frequently visited website list) a.k.a DNS resolver cache(temporarily store the IP until the ttl has ended) and if it is avaliable then it sends it back to the browser else a process starts the request is then sent to a Recursive DNS server or the root server what this does is recursively tries to find the Top level Domain(TLD) of the requested server (.com,.org,.in,.dev..etc are some common top level domains) now for this example it is .com so the Recursive DNS server sends the request to that TLD , Now the TLD checks the request and send it to a Authoritative DNS Server which has the IP of the requested server example.com the IP is then sent directly to your browser through your IP address present in the Headers of the request. Then your Browser request it to the given IP and you website appears.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feabolo92x5nb0253r7ny.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feabolo92x5nb0253r7ny.png" alt="Flow of the Request through DNS" width="800" height="405"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This might feels like a long process but it all depends on the networking speed of your device and your network . So , the next time you try to browse a website remember this is the process your request has to go through. All though it’s speed is negligible sometimes it can lag up.&lt;/p&gt;

&lt;p&gt;You can also check that out using a  dig command. Which is avaliable in Linux or WSL(Windows Subsystem for Linux) if you are on windows.&lt;/p&gt;

&lt;p&gt;To check follow these steps:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="err"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;apt&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;install&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;bind&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="err"&gt;-dnsutils&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="err"&gt;dig&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;google.com&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fonbl13s8z1b6spfal04v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fonbl13s8z1b6spfal04v.png" alt="dig command" width="800" height="452"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you can see the highlighted section is the IP address of &lt;a href="http://example.com" rel="noopener noreferrer"&gt;example.com&lt;/a&gt; (changes overtime)&lt;/p&gt;

&lt;p&gt;and just below that is SERVER which is the DNS server which was used to query and find the IP address and ass you can see the query time is 44 msec(average for their time but) is almost negligible to a normal human.&lt;/p&gt;

&lt;p&gt;There are also other commands like&lt;/p&gt;

&lt;p&gt;dig &lt;a href="http://example.com" rel="noopener noreferrer"&gt;example.com&lt;/a&gt; NS : Shows all the Name servers it has (these servers contains which authoratative server holds the domain’s IP)&lt;/p&gt;

&lt;p&gt;dig &lt;a href="http://example.com" rel="noopener noreferrer"&gt;example.com&lt;/a&gt; ANY : Shows Every Record of IP address for the server example.com&lt;/p&gt;

&lt;p&gt;dig &lt;a href="http://example.com" rel="noopener noreferrer"&gt;example.com&lt;/a&gt; +short : shows the IP in a single line &lt;/p&gt;

&lt;p&gt;and there are many more you can checkout&lt;/p&gt;

&lt;p&gt;Summary,&lt;/p&gt;

&lt;p&gt;Your request —&amp;gt; DNS recursive server —&amp;gt; Root server or TLD —&amp;gt; Authoratative server (has the IP) —&amp;gt; you browser —&amp;gt; requested server &lt;/p&gt;

&lt;p&gt;This is my understanding of the DNS server and how it works.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>computerscience</category>
      <category>networking</category>
      <category>web</category>
    </item>
    <item>
      <title>Networking devices ,Firewalls ,Load Balancers (Connected?)</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Sat, 24 Jan 2026 16:34:52 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/networking-devices-firewalls-load-balancers-connected-46fj</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/networking-devices-firewalls-load-balancers-connected-46fj</guid>
      <description>&lt;p&gt;So hoping you read this blog &lt;a href="https://dev.to/rahul_kumarparida_6c16f5/some-fundamental-networking-devices-4gpm"&gt;Networking Devices&lt;/a&gt; we will continue with the rest . If not recommended for the context else read this you will get the idea of how it works.&lt;/p&gt;

&lt;p&gt;So as we know how the devices connect with each other on the devices level which is the physical level let’s understand what are the steps taken to keep this networks up and running Ready-to-use.&lt;/p&gt;

&lt;p&gt;Ok we know that routers are used to direct the data packets from your computer to your friends over the internet which is a open connection everyone having a internet connection device can access it , Which means that the signals you are sending is open to everyone which means your data can be interpreted and altered this is a type of network attack which can occur if  a third device except your friend’s device knows your IP address the packets can be interpreted and altered so how it is prevented, for that there exists a firewall for each of the network devices including your and your friend’s and the routers which checks on with hop(router transferring data packets from one network or switch to another to reach the destination) these firewalls check and verify each of the data packets HEADERS they don’t check the data only headers and check the source and destination IP of the packet and for each it checks the hop where the data came from and is it a valid network to pass through if not it blocks that specific network from accessing other packets so whenever other data packets transfer they don’t travel through that route also when some data packets are send to your computer they pass through the firewall to check the integrity which is if the data is safe to load on the device , These firewalls in the latest(2026) are weak alone so we use hooks like TLS and SSL(nowadays) which secures the data transfers maintaining the integrity and confidentiality to specific user having the access and that’s how firewall come in hand for network securing you data and your computer from getting any malware .&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy373wy6nhn5w5xkl62n8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy373wy6nhn5w5xkl62n8.png" alt="Flow of the data Packets " width="800" height="301"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But how  do they handle this much network and how does it happens that it doesn't lag the network how is it so fast even with so many routes to pass through how can you read this blog upon clicking the link or probably the post on this website that’s where load balancers come in these balancers divide and pass multiple requests into diffrent routers which  then directs them to there networks. for example: let say you are browsing multiple websites at once like 100 tabs (not possible but just for an example) and you are sending like 30-50 requests from your network  to other servers or devices these is where network load balancers come in they receive your requests  divide the requests and direct it to different routers  each of them vary one can be slow one can be fast and one can fail (these states a request can go into) these network load balancers work is to divide the network request into different routers or switches which decreases the load from a single router or switch significantly so that it can handle load of networks and work efficiently&lt;/p&gt;

&lt;p&gt;And that’s how Firewalls and Load balancers come in hand with the network so that you can enjoy your online services , there’s a lot more to know about this network but this is my understanding of how networking works.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>learning</category>
      <category>networking</category>
      <category>security</category>
    </item>
    <item>
      <title>Some Fundamental Networking Devices</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Wed, 21 Jan 2026 16:39:51 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/some-fundamental-networking-devices-4gpm</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/some-fundamental-networking-devices-4gpm</guid>
      <description>&lt;p&gt;Networking devices have you ever wondered how our devices communicate with each other or with the internet which  you are using to read this blog traditionally there were a lot of large devices were added together to communicate with diffrent devices &lt;/p&gt;

&lt;p&gt;Let’s take you through an example before understanding what they are , Suppose you and a friends wants to communicate to each other over the internet you connect to each other, so when  you send a message to your friend what happens is the message is first converted to binary(0s and 1s)on your device and then sent to the modem which converts these digital signals to analog signals and sends over to the ISP(Internet service provider)  then ISP uses routers to route those signals to the destination device , and vice versa the communication moves left to right.&lt;/p&gt;

&lt;p&gt;Let’s understand modem and router in details:&lt;/p&gt;

&lt;p&gt;Modem&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Works as the medium between you and the internet&lt;/li&gt;
&lt;li&gt;Modem work is to convert digital to analog signals and vice versa &lt;/li&gt;
&lt;li&gt;Modem sends request to the nearest ISP.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Routers&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Routers are as the name suggests are used for direction of those signals sent by the modem.&lt;/li&gt;
&lt;li&gt;Routers maintain a routing table record which they can later refer when they check the headers of the data packets and refer to the routing table to find the address they have to send the data packets to.&lt;/li&gt;
&lt;li&gt;Routers route millions of data packets to their destination in a second&lt;/li&gt;
&lt;li&gt;Routing tables are divided into two types: 
a. Static routing table in this the network admin engraves routes manually and is manually updated only the path of the routes are fixed doesn’t matter if they are fast are slow.
b. Dynamic routing is more efficient than static because it uses routing protocols to determine the fastest and the slowest path to reach a destination network and updates it's route dynamically when it finds a faster route.&lt;/li&gt;
&lt;li&gt;There are various protocols to find there way to the destination first 
a.  IP(Internet Protocol) the router checks IP headers of the data packets to find out where they came from and where they have to go and redirects them as required.
b.  BGP(Broader gateway protocol) is a dynamic routing table which tells  who controls which IP in other words have the complete knowledge of which ip address directs to which network destination to determine and use it dynamically , we use 2methods
    i.  OSPF (open shortest path first ): This one dynamically determines the fastest and the slowest path to reach the network 
    ii. RIP (routing information protocols):  This one uses hop count which is checks how many routers it has to jump or go through to reach the destination and finds the shortest path to the destination.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;And this is how you communicate with your friend &lt;/p&gt;

&lt;p&gt;Ok now what about how you communicate with a server let say &lt;a href="http://google.com" rel="noopener noreferrer"&gt;google.com&lt;/a&gt; how do you browser know and how do they get the address of the required domain , Now am not going to explain DNS on this blog but I’ll make sure to make one for that&lt;/p&gt;

&lt;p&gt;So let say you now know how you communicated with your friend on a LAN(local area network) what about how you connect to different servers that are built far far away how do you connect with them &lt;/p&gt;

&lt;p&gt;Traditionally we used Hub’s which is now replaced by Switches which are much more faster and less energy taking than Hubs , let’s understand the difference&lt;/p&gt;

&lt;p&gt;Then vs Now,&lt;/p&gt;

&lt;p&gt;Hubs they were very popular in early 90s and were broadly used to connect it to people across the globe so how they were used were exactly,&lt;/p&gt;

&lt;p&gt;So think of hub as a docking station for all the networks that were avaliable near you so what happend was when you sent a message to your friend who live far from you what happens is the signals from the routers pass it on the signals to the nearest hub and the hub send it to all the devices connected to it only the destination device accepts the message and the rest reject it so this was how message was sent but this also had some capacity because sending a message to someone means you have to go through all and it increases the bandwidth the so what happened was bridge was created what it does is it saves the MAC address(a type of unique address for a device)  of destination that is asked and later it could be accessed and sent directly now if we put this process inside a box that is a switch . Switch directs the request to the requested server but also keeps log  or you can say maintains a dairy which have the route and addresses saved so switch doesn’t makes request to anybody it directly sends it to the destined device this reduces the bandwidth significantly and it able to communicate to other switches and that’s how the network all over is connected using multiple switches and routers. &lt;/p&gt;

&lt;p&gt;and that’s my friend is how the Internet works and how you can communicate with a friend far far from you.&lt;/p&gt;

&lt;p&gt;I might not have covered all the devices but this are the basic requirements or used-to-be requirements for establishing a connection over a network&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>computerscience</category>
      <category>learning</category>
      <category>networking</category>
    </item>
    <item>
      <title>Inside Git ? How it works and what is inside .git?</title>
      <dc:creator>Rahul kumar parida</dc:creator>
      <pubDate>Tue, 20 Jan 2026 15:38:20 +0000</pubDate>
      <link>https://dev.to/rahul_kumarparida_6c16f5/inside-git-how-it-works-and-what-is-inside-git-cjk</link>
      <guid>https://dev.to/rahul_kumarparida_6c16f5/inside-git-how-it-works-and-what-is-inside-git-cjk</guid>
      <description>&lt;p&gt;if you reading this means I will assume you know  what exactly git is for!! , We will not talk about how push or commit here we will talk about what happens  when you commit or push the code.&lt;/p&gt;

&lt;p&gt;All of this starts from  the command git init which initializes the repo gets the .git file ready  to use.&lt;br&gt;
Once you have committed  the first commit , you will see a .git folder in the working directory , Before knowing what is inside it let's first understand what it is and how it operates. Think of .git as the database storing the entire history of commits along with the data(code)  in form of objects it used to retrieve and store data pretty differently than previous Version Control Systems(VCS) which follow traditional method of storing the entire file structure that has been changed unlike other VCSs , Git helps to store data pretty efficiently and effectively and reduces space significantly.&lt;/p&gt;

&lt;p&gt;So what  happens inside that when you get inside the .git folder you see multiple folders inside it&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzvt2rov9hdqefmjvccm6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzvt2rov9hdqefmjvccm6.png" alt="inside .git" width="631" height="514"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you see multiple folders inside the .git folder each have it's own work but for now let's focus on the objects/ folder when you get inside that you will see 3 folders since you have committed the first time and two folders named info/ and pack/.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fosecrrreijkew7z961eb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fosecrrreijkew7z961eb.png" alt="inside the objects folder" width="607" height="723"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ignore this two let's focus on other  folders , each of the folders named a numbers like 01/ 02/ 03/ or anything else. Now we comeback to our terminal check that when you run  &lt;code&gt;git log&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb6zhtrdonn406elzvd8l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb6zhtrdonn406elzvd8l.png" alt="git log" width="800" height="147"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This will log the commit you did with a random hash value(gibberish mixture of letters and numbers) , and meta data about your commit (who did it and when) as you can see on the image.&lt;br&gt;
Now you may want to notice that the first two digits of the hashvalue is the name of one of the folders inside the .git/objects/  directory if you open that folder you will see the rest of the hashvalue as a file stored there&lt;br&gt;
Ex: complete hashvalue : 4834726f1da14527eb539cf75be80db8f6f286ae&lt;br&gt;
Now look at it this way :48 / 34726f1da14527eb539cf75be80db8f6f286ae&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fay8y046rcmjjqaq77llg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fay8y046rcmjjqaq77llg.png" alt="Inside a commit folder" width="800" height="153"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now what is this file and what is it doing here&lt;/p&gt;

&lt;p&gt;ok before that let me give you some information about what exactly is stored in this objects folder as you saw it contains multiple folders if we ignore those other 2(info/ , pack/)&lt;br&gt;
What are these folders?&lt;/p&gt;

&lt;p&gt;So what happens is  . Git divides your commits into three parts&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Commit : contains the metadata about the commit made including all the info of who and when also a hashvalue which redirects to tree folder.&lt;/li&gt;
&lt;li&gt;Tree : contains the directory structure at that point of time when committed and may or maynot connects to another trees which contains the blobs of the previous versions with no change in code.&lt;/li&gt;
&lt;li&gt;Blob: This actually stores the code snippets (the changes you made the actual data and lines of code) which is connected from the tree to get those version of data
These are the 3 pillars of .git which help it work as database for your commits.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Now, the 48 is the commit folder that we know what is the hash value given if you check inside using the &lt;code&gt;git cat-file hashid&lt;/code&gt; you will see it will show the metadata and another hashvalue with title tree this hashvalue points to the tree folder and the hashvalue named file similar to what we gave example for commit (48 / awdada ) , if you peak into it you will see that it is pointing to some other directories it can either be a blog or another tree containing different blogs it is like tree hierarchy structure each commit put on top of other connecting each other when required or creating blobs if necessary&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbgwge088f3ktbp4d8tyh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbgwge088f3ktbp4d8tyh.png" alt="git cat-file" width="768" height="180"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now let's think it redirects to a blob let's explore that&lt;br&gt;
blob is also found in similar method filename/hashvalue&lt;br&gt;
If you peak into it each blob contains some gibberish stuff which actually are the changes made each time in each file this is where the code snippets live and are hashed using SHA-1 algo.&lt;br&gt;
And that is how the &lt;code&gt;git commit&lt;/code&gt; —&amp;gt;store  works&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F765gw798elysmk7dol3i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F765gw798elysmk7dol3i.png" alt="Inside a blob" width="800" height="195"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What happens when we retrieve a previous version or commit , when we do  &lt;code&gt;git checkout #hashid&lt;/code&gt; of the commit what git does is the thing first it retrieves the commit file from the objects folder then retrieves the tree structure with the hashvalue present at that file and once git fetches all the tree files and blobs it reflects it to the working directory of the user pretty simple right  ;|&lt;/p&gt;

&lt;p&gt;This is what my understanding .git folder is its amazing how it is storing data and the way of &lt;strong&gt;retrieving&lt;/strong&gt; it&lt;/p&gt;

&lt;p&gt;if you like this you might like to read this too &lt;a href="https://dev.to/rahul_kumarparida_6c16f5/what-is-git-1a72"&gt;What is git?&lt;/a&gt;&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>git</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
