<?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: Bala Murugan</title>
    <description>The latest articles on DEV Community by Bala Murugan (@bala_murugan_).</description>
    <link>https://dev.to/bala_murugan_</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%2F3689423%2F44a7af24-50e6-4639-90bc-de906d6b849f.png</url>
      <title>DEV Community: Bala Murugan</title>
      <link>https://dev.to/bala_murugan_</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/bala_murugan_"/>
    <language>en</language>
    <item>
      <title>React Unlocked: A Beginner’s Guide to Concepts, Tools &amp; Modern Development</title>
      <dc:creator>Bala Murugan</dc:creator>
      <pubDate>Fri, 17 Apr 2026 23:06:25 +0000</pubDate>
      <link>https://dev.to/bala_murugan_/react-unlocked-a-beginners-guide-to-concepts-tools-modern-development-1fdp</link>
      <guid>https://dev.to/bala_murugan_/react-unlocked-a-beginners-guide-to-concepts-tools-modern-development-1fdp</guid>
      <description>&lt;p&gt;What is React?&lt;/p&gt;

&lt;p&gt;React is a JavaScript library used to build user interfaces (UI), especially for single-page applications (SPA).&lt;/p&gt;

&lt;p&gt;It was created by Facebook (Meta).&lt;/p&gt;

&lt;p&gt;In simple words:&lt;br&gt;
React helps you build fast and interactive websites like Instagram, Facebook, Netflix, etc.&lt;/p&gt;

&lt;p&gt;Why use React?&lt;/p&gt;

&lt;p&gt;React is popular because:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fast performance (uses Virtual DOM)&lt;/li&gt;
&lt;li&gt;Reusable components (write once, use anywhere)
*Easy state management
*Builds modern web apps easily&lt;/li&gt;
&lt;li&gt;Huge community support&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;p&gt;Instead of writing same button code again and again, React lets you create a Button component and reuse it everywhere.&lt;/p&gt;

&lt;p&gt;What is Library and Framework?&lt;/p&gt;

&lt;p&gt;Library:&lt;/p&gt;

&lt;p&gt;*A library is a collection of pre-written code that you call when needed.&lt;/p&gt;

&lt;p&gt;*You are in control.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
React (UI library)&lt;br&gt;
jQuery&lt;/p&gt;

&lt;p&gt;*You decide when to use it.&lt;/p&gt;

&lt;p&gt;Framework :&lt;/p&gt;

&lt;p&gt;*A framework is a complete structure where the framework controls your code flow.&lt;/p&gt;

&lt;p&gt;Framework is in control.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
Angular&lt;br&gt;
Django (Python framework)&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;         Difference between Library and Framework
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Library&lt;/th&gt;
&lt;th&gt;Framework&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Control&lt;/td&gt;
&lt;td&gt;You control&lt;/td&gt;
&lt;td&gt;Framework controls&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Flexibility&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Less flexible&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Usage&lt;/td&gt;
&lt;td&gt;Specific task&lt;/td&gt;
&lt;td&gt;Full application structure&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Example&lt;/td&gt;
&lt;td&gt;React&lt;/td&gt;
&lt;td&gt;Angular&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;What is SPA ?&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;*SPA (Single Page Application)

 *A SPA loads only ONE HTML page and updates content dynamically.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Example:&lt;/p&gt;

&lt;p&gt;Gmail&lt;br&gt;
Facebook&lt;br&gt;
Instagram&lt;/p&gt;

&lt;p&gt;How it works:&lt;/p&gt;

&lt;p&gt;*Page does NOT reload&lt;br&gt;
  *Only content changes&lt;br&gt;
  *Faster user experience&lt;/p&gt;

&lt;p&gt;MPA (Multi Page Application)?&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  A MPA loads a new page every time you click something.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Example:&lt;br&gt;
Amazon&lt;br&gt;
Traditional websites&lt;/p&gt;

&lt;p&gt;How it works:&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; *Every click loads a new HTML page
 *Full page refresh happens
 *Slower compared to SPA

              SPA vs MPA ?
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;SPA&lt;/th&gt;
&lt;th&gt;MPA&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Pages&lt;/td&gt;
&lt;td&gt;One page&lt;/td&gt;
&lt;td&gt;Multiple pages&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Speed&lt;/td&gt;
&lt;td&gt;Fast&lt;/td&gt;
&lt;td&gt;Slower&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Reload&lt;/td&gt;
&lt;td&gt;No reload&lt;/td&gt;
&lt;td&gt;Full reload&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Example&lt;/td&gt;
&lt;td&gt;React apps&lt;/td&gt;
&lt;td&gt;Traditional websites&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;What is Create React App (CRA)?&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   *Create React App (CRA) is a tool to set up a React project quickly.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx create-react-app my-app
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Problem:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Slow startup
*Heavy build system
*CRA is now less popular.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What is Vite?&lt;/p&gt;

&lt;p&gt;*Vite is a modern build tool for React (and other frameworks).&lt;/p&gt;

&lt;p&gt;*It is much faster than CRA.&lt;/p&gt;

&lt;p&gt;Why Vite is popular:&lt;/p&gt;

&lt;p&gt;*Very fast startup&lt;br&gt;
*Instant hot reload&lt;br&gt;
*Lightweight setup&lt;br&gt;
*Better developer experience.&lt;/p&gt;

&lt;p&gt;Command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm create vite@latest my-app
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

&lt;/div&gt;

&lt;p&gt;*React = UI library for building web apps&lt;br&gt;
*Library = you control flow&lt;br&gt;
*Framework = full structure controls you&lt;br&gt;
*SPA = single page, no reload&lt;br&gt;
*MPA = multiple pages, reload happens&lt;br&gt;
*CRA = old React setup tool&lt;br&gt;
*Vite = modern, fast React tool&lt;/p&gt;

&lt;p&gt;What is Node.js?&lt;/p&gt;

&lt;p&gt;Node.js is a JavaScript runtime environment.&lt;/p&gt;

&lt;p&gt;Node.js allows you to run JavaScript outside the browser (like in your computer terminal).&lt;/p&gt;

&lt;p&gt;JavaScript runs only in the browser (Chrome, Firefox)&lt;/p&gt;

&lt;p&gt;JavaScript can run on your system like Python or Java.&lt;/p&gt;

&lt;p&gt;Why was Node.js created?&lt;/p&gt;

&lt;p&gt;Before Node.js:&lt;/p&gt;

&lt;p&gt;*JavaScript was only used for frontend (browser)&lt;/p&gt;

&lt;p&gt;After Node.js:&lt;/p&gt;

&lt;p&gt;*JavaScript can be used for backend, tools, servers, build systems.&lt;/p&gt;

&lt;p&gt;Why Node.js is needed for React?&lt;/p&gt;

&lt;p&gt;React does NOT run directly in the browser during development in raw form.&lt;/p&gt;

&lt;p&gt;React code needs to be:&lt;/p&gt;

&lt;p&gt;compiled&lt;br&gt;
bundled&lt;br&gt;
optimized&lt;/p&gt;

&lt;p&gt;That’s where Node.js comes in.&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;      Main reasons Node.js is needed for React:
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;*Package Manager (npm / npx)&lt;/p&gt;

&lt;p&gt;*Node.js comes with npm (Node Package Manager).&lt;/p&gt;

&lt;p&gt;React needs npm to install libraries like:&lt;/p&gt;

&lt;p&gt;react&lt;br&gt;
   react-dom&lt;br&gt;
   vite&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install &lt;/span&gt;react
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Without Node.js → no npm → no React setup.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Why Promises Are Better Than Callbacks</title>
      <dc:creator>Bala Murugan</dc:creator>
      <pubDate>Sun, 29 Mar 2026 17:51:30 +0000</pubDate>
      <link>https://dev.to/bala_murugan_/why-promises-are-better-than-callbacks-2124</link>
      <guid>https://dev.to/bala_murugan_/why-promises-are-better-than-callbacks-2124</guid>
      <description>&lt;p&gt;What is a Callback:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    A callback is a function that is passed as an argument to another function and executed later.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;greet&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;callback&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello &lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="nf"&gt;callback&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;sayBye&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Bye!&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nf"&gt;greet&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Bala&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sayBye&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="nl"&gt;Output&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;

&lt;span class="nx"&gt;Hello&lt;/span&gt; &lt;span class="nx"&gt;Bala&lt;/span&gt;
&lt;span class="nx"&gt;Bye&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;What is Callback Hell:&lt;/p&gt;

&lt;p&gt;When callbacks are nested inside other callbacks many times, it becomes hard to read and maintain. This is called Callback Hell.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Step 1&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Step 2&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

    &lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Step 3&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

      &lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Step 4&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
      &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

    &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This code looks like a pyramid shape.&lt;br&gt;
This is called Callback Hell or Pyramid of Doom.&lt;/p&gt;

&lt;p&gt;Problems in Callback Hell:&lt;br&gt;
*Hard to read&lt;br&gt;
*Hard to debug&lt;br&gt;
*Hard to maintain&lt;br&gt;
*Error handling is difficult&lt;/p&gt;

&lt;p&gt;What is a Promise:&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;A Promise is used to handle asynchronous operations in a better way.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;A Promise has 3 states:&lt;/p&gt;

&lt;p&gt;Pending&lt;br&gt;
Resolved (Success)&lt;br&gt;
Rejected (Error)&lt;/p&gt;

&lt;p&gt;Promise Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;promise&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Promise&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;resolve&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;reject&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;success&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;success&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nf"&gt;resolve&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Task completed&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nf"&gt;reject&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Task failed&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="nx"&gt;promise&lt;/span&gt;
  &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;then&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;})&lt;/span&gt;
  &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;catch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;error&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;Callback Hell vs Promise:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Callback Hell&lt;/th&gt;
&lt;th&gt;Promise&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Nested callbacks&lt;/td&gt;
&lt;td&gt;Chain using &lt;code&gt;.then()&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hard to read&lt;/td&gt;
&lt;td&gt;Easy to read&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hard to maintain&lt;/td&gt;
&lt;td&gt;Easy to maintain&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Error handling difficult&lt;/td&gt;
&lt;td&gt;Error handling easy with &lt;code&gt;.catch()&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Promise States Diagram:&lt;/p&gt;

&lt;p&gt;Draw a simple flow:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;         [Pending]
       /   \
      /     \
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;[Resolved]   &lt;a href="https://dev.toSuccess"&gt;Rejected&lt;/a&gt;      (Error)&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;              Real-World Example Diagram:

Use a food order example
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;CallbackHell:&lt;/p&gt;

&lt;p&gt;Order Food&lt;br&gt;
  ↓&lt;br&gt;
Prepare Food&lt;br&gt;
  ↓&lt;br&gt;
Pack Food&lt;br&gt;
  ↓&lt;br&gt;
Deliver Food&lt;/p&gt;

&lt;p&gt;Promise:&lt;/p&gt;

&lt;p&gt;Order → Prepare → Pack → Deliver&lt;/p&gt;

&lt;p&gt;You can end your blog like this:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;",Callback Hell makes code messy. Promises make code clean, readable, and easy to manage."
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>learning</category>
      <category>beginners</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Behind the Scenes of JavaScript: Synchronous vs Asynchronous Explained Simply</title>
      <dc:creator>Bala Murugan</dc:creator>
      <pubDate>Sat, 28 Mar 2026 05:38:07 +0000</pubDate>
      <link>https://dev.to/bala_murugan_/behind-the-scenes-of-javascript-synchronous-vs-asynchronous-explained-simply-ici</link>
      <guid>https://dev.to/bala_murugan_/behind-the-scenes-of-javascript-synchronous-vs-asynchronous-explained-simply-ici</guid>
      <description>&lt;p&gt;What is Synchronous JavaScript&lt;/p&gt;

&lt;p&gt;Synchronous means code runs line by line, one after another.&lt;br&gt;
Next line waits until the previous line finishes.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Start&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;slowTask&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="nx"&gt;e9&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{}&lt;/span&gt; &lt;span class="c1"&gt;// takes time&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Task Done&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nf"&gt;slowTask&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;End&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="nl"&gt;Output&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="nx"&gt;Start&lt;/span&gt;
&lt;span class="nx"&gt;Task&lt;/span&gt; &lt;span class="nx"&gt;Done&lt;/span&gt;
&lt;span class="nx"&gt;End&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Explanation:&lt;/p&gt;

&lt;p&gt;Here, End waits until slowTask finishes. This is Synchronous.&lt;/p&gt;

&lt;p&gt;What is Asynchronous JavaScript?&lt;/p&gt;

&lt;p&gt;Asynchronous means code does NOT wait.&lt;br&gt;
It runs tasks in background and continues next lines.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Start&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Task Done&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;2000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;End&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="nl"&gt;Output&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="nx"&gt;Start&lt;/span&gt;
&lt;span class="nx"&gt;End&lt;/span&gt;
&lt;span class="nx"&gt;Task&lt;/span&gt; &lt;span class="nx"&gt;Done&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Explanation:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Here, End does NOT wait → This is Asynchronous.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Why Asynchronous is Needed :&lt;/p&gt;

&lt;p&gt;Because JavaScript is single-threaded (one task at a time).&lt;br&gt;
Async helps to handle:&lt;/p&gt;

&lt;p&gt;API calls&lt;br&gt;
Database calls&lt;br&gt;
File reading&lt;br&gt;
Timers&lt;br&gt;
User actions&lt;/p&gt;

&lt;p&gt;Without async → Website will freeze.&lt;/p&gt;

&lt;p&gt;Asynchronous Methods in JavaScript:&lt;/p&gt;

&lt;p&gt;There are 3 main ways:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Method&lt;/th&gt;
&lt;th&gt;Use&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Callback&lt;/td&gt;
&lt;td&gt;Old method&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Promise&lt;/td&gt;
&lt;td&gt;Better&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Async/Await&lt;/td&gt;
&lt;td&gt;Best &amp;amp; modern&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Callback Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;fetchData&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;callback&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Data fetched&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nf"&gt;callback&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
  &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;2000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nf"&gt;fetchData&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Process data&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Async/Await Example (Best Method):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;fetchData&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Promise&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;resolve&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="nf"&gt;resolve&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Data fetched&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;2000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;async&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;getData&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;data&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nf"&gt;fetchData&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nf"&gt;getData&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Simple Difference Table&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;| Synchronous       | Asynchronous             |&lt;br&gt;
| ----------------- | ------------------------ |&lt;br&gt;
| Runs line by line | Runs in background       |&lt;br&gt;
| Waits             | Does not wait            |&lt;br&gt;
| Blocking          | Non-blocking             |&lt;br&gt;
| Slow              | Fast                     |&lt;br&gt;
| Example: for loop | Example: setTimeout, API |&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real Life Example&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Synchronous:&lt;br&gt;
        *You stand in line and wait for tea → then go to next work.&lt;/p&gt;

&lt;p&gt;Asynchronous:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   *You order tea → while tea is preparing, you do another work → then drink tea.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Event Loop Diagram&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;      ┌───────────────┐
    │   Call Stack   │
    └───────────────┘
            ↑
            │
    ┌───────────────┐
    │   Event Loop   │
    └───────────────┘
            ↑
            │
    ┌───────────────┐
    │ Callback Queue │
    └───────────────┘
            ↑
            │
    ┌───────────────┐
    │   Web APIs     │
    │ setTimeout     │
    │ API Calls      │
    │ DOM Events     │
    └───────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Explanation:&lt;/p&gt;

&lt;p&gt;*Call Stack → Executes code&lt;br&gt;
  *Web APIs → Handle async work&lt;br&gt;
  *Callback Queue → Stores completed async tasks&lt;br&gt;
  *Event Loop → Moves task to Call Stack&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>learning</category>
      <category>beginners</category>
    </item>
    <item>
      <title>JavaScript Closures Explained Simply with Examples</title>
      <dc:creator>Bala Murugan</dc:creator>
      <pubDate>Fri, 27 Mar 2026 05:48:54 +0000</pubDate>
      <link>https://dev.to/bala_murugan_/javascript-closures-explained-simply-with-examples-5g4e</link>
      <guid>https://dev.to/bala_murugan_/javascript-closures-explained-simply-with-examples-5g4e</guid>
      <description>&lt;p&gt;&lt;strong&gt;What is a Closure:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; A closure is a function that remembers the variables from its outer function even after the outer function has finished executing.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;outer&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Bala&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;inner&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;inner&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;myFunction&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;outer&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nf"&gt;myFunction&lt;/span&gt;&lt;span class="p"&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 plaintext"&gt;&lt;code&gt;Output:
Bala
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;step by step Explanation:&lt;/strong&gt;&lt;br&gt;
1.outer() function runs&lt;br&gt;
2.Variable name is created&lt;br&gt;
3.inner() function is returned&lt;br&gt;
4.Even after outer() finishes, inner() still remembers name&lt;br&gt;
5.This is called closure&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;       **Why Do We Use Closures in JavaScript**
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Data privacy
*To remember values
*To avoid global variables
*To maintain state
*For callbacks and timers&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Data Privacy (Real-World Example: Password):&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;We use closures to hide private data.&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;createPassword&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;password&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;12345&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;password&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;getPassword&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;createPassword&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nf"&gt;getPassword&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// 12345&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Maintaining State (Real-World Example: Counter)&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; Closures help to remember previous value.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;counter&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;count&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;c&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;counter&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nf"&gt;c&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// 1&lt;/span&gt;
&lt;span class="nf"&gt;c&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// 2&lt;/span&gt;
&lt;span class="nf"&gt;c&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// 3&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Used in setTimeout / Callbacks&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;greet&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello &lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;2000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nf"&gt;greet&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Bala&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&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 plaintext"&gt;&lt;code&gt;       **How Closure Works (Lexical Scope)**
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;What is Lexical Scope&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; A function can access variables from its parent (outer) function based on where the function is written in the code.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;simple:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; * Inner function → can access outer variables.

 * Outer function → cannot access inner variables.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Example : Lexical Scope?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;outer&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Bala&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;inner&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="nf"&gt;inner&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nf"&gt;outer&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Merits of Closures&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;*Data privacy&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;State management
*Avoid global variables
*Used in callbacks
*Used in real-world applications&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>frontend</category>
      <category>programming</category>
    </item>
    <item>
      <title>Learning HTML &amp; CSS Portfolio Header Part</title>
      <dc:creator>Bala Murugan</dc:creator>
      <pubDate>Tue, 06 Jan 2026 19:50:28 +0000</pubDate>
      <link>https://dev.to/bala_murugan_/learning-html-css-portfolio-header-part-2oo7</link>
      <guid>https://dev.to/bala_murugan_/learning-html-css-portfolio-header-part-2oo7</guid>
      <description>&lt;p&gt;*&lt;em&gt;Portfolio Webpage *&lt;/em&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  This HTML page is a basic portfolio website structure.

 A portfolio website is used to show your personal details, skills, and projects in one place.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;This page uses HTML for structure and CSS for styling. &lt;/p&gt;

&lt;p&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;br&gt;
&lt;/p&gt;



&lt;br&gt;&lt;br&gt;
    &lt;br&gt;&lt;br&gt;
    &lt;br&gt;&lt;br&gt;
    portFolio&lt;br&gt;&lt;br&gt;
    &amp;lt;br&amp;gt;&lt;br&gt;
        *{&amp;lt;br&amp;gt;&lt;br&gt;
            padding: 0;&amp;lt;br&amp;gt;&lt;br&gt;
            margin: 0&amp;lt;br&amp;gt;&lt;br&gt;
        }&amp;lt;br&amp;gt;&lt;br&gt;
        h1 {&amp;lt;br&amp;gt;&lt;br&gt;
            text-align: center;&amp;lt;br&amp;gt;&lt;br&gt;
            color: white;&amp;lt;br&amp;gt;&lt;br&gt;
            margin: 0 0 10px 0;&amp;lt;br&amp;gt;&lt;br&gt;
        }&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;      nav{
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    text-align: center;
  }
  header{
    background-color: black;
    padding: 20px;

  }
  a{
    color: white;
    text-decoration: none;
    margin-right: 10px;
  }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;&amp;amp;lt;/style&amp;amp;gt;&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;&amp;lt;/head&amp;gt;&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;&amp;lt;body&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
    &amp;lt;header&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
        &amp;lt;h1&amp;gt;BalaMurugan&amp;lt;/h1&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
        &amp;lt;nav&amp;gt; &amp;lt;br&amp;gt;&lt;br&gt;
            &amp;lt;a href=""&amp;gt;About Me&amp;lt;/a&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
            &amp;lt;a href=""&amp;gt;Projects&amp;lt;/a&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
            &amp;lt;a href=""&amp;gt;contact&amp;lt;/a&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
            &amp;lt;a href=""&amp;gt;Login page&amp;lt;/a&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
        &amp;lt;/nav&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
    &amp;lt;/header&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;&amp;amp;lt;section class="about"&amp;amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;amp;lt;/section&amp;amp;gt;&lt;br&gt;
&amp;amp;lt;section class="project"&amp;amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;amp;lt;/section&amp;amp;gt;&lt;br&gt;
&amp;amp;lt;section class="contact"&amp;amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;amp;lt;/section&amp;amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;amp;lt;footer&amp;amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;amp;lt;/footer&amp;amp;gt;&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;&amp;lt;/html&amp;gt;&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;*&amp;lt;em&amp;gt;HTML Structure&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt; HTML is used to create the structure of the webpage.&lt;/p&gt;

&lt;p&gt;The page starts with &amp;amp;lt;!DOCTYPE html&amp;amp;gt; which tells the browser that this is an HTML5 document.&lt;/p&gt;

&lt;p&gt;The &amp;amp;lt;html&amp;amp;gt; tag wraps the entire page. Inside it, there are two main parts&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;          &amp;amp;amp;lt;head&amp;amp;amp;gt; and &amp;amp;amp;lt;body&amp;amp;amp;gt;.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;Head Section&amp;lt;/strong&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt; &amp;amp;lt;head&amp;amp;gt; ---&amp;amp;gt; The section contains important information about the page.&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;&amp;lt;meta charset="UTF-8"&amp;gt; &amp;lt;br&amp;gt;&lt;br&gt;
       Allows the page to support all characters.&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;&amp;lt;meta name="viewport"&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
       makes the page responsive on mobile devices.&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;&amp;lt;title&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
      sets the page title shown in the browser tab as portFolio.&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;&amp;lt;style&amp;gt; &amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;    contains internal CSS used to design the page.&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;What is href ?&amp;lt;/strong&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;href means Hypertext Reference.&lt;/p&gt;

&lt;p&gt;It tells the browser where the link should go when the user clicks it.&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;Syntax&amp;lt;/strong&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;         &amp;amp;lt;a href="link"&amp;amp;gt;Link Text&amp;amp;lt;/a&amp;amp;gt;&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;&amp;lt;a&amp;gt; → Anchor tag&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;href → Destination address&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;Link Text → Text shown on the webpage  &amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;                          &lt;strong&gt;Css overveiw&lt;/strong&gt;&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;1*&amp;lt;em&amp;gt;.Inline Css:&amp;lt;/em&amp;gt;*&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;      Inline CSS is a way to apply CSS styles directly inside an HTML tag.&lt;/p&gt;

&lt;p&gt;The style is written using the style attribute.&lt;/p&gt;

&lt;p&gt;Inline CSS affects only one element and is used for quick styling.&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;syntax :&amp;lt;br&amp;gt;&lt;br&gt;
       &amp;lt;p style="color: red;"&amp;gt;This is a red paragraph&amp;lt;/p&amp;gt;&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;Example:&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;&amp;lt;p&amp;gt; → HTML tag&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;style → attribute used for CSS&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;color → CSS property&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;red → value&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;Internal CSS&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;   Internal CSS is used to style a webpage by writing CSS code inside the &amp;amp;lt;style&amp;amp;gt; tag, which is placed inside the &amp;amp;lt;head&amp;amp;gt; section of an HTML file.&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; Internal CSS is useful when you want to apply styles to one single webpage.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;Internal CSS Syntax&amp;lt;/strong&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;selector {&lt;br&gt;
property: value;&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;}&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;Internal css with example class &amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;CSS Styling&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;    CSS is used to make the page look good.&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;ul&amp;gt;&lt;br&gt;
&amp;lt;li&amp;gt;{ padding: 0; margin: 0; } &lt;br&gt;
      removes default spacing from all elements.&amp;lt;/li&amp;gt;&lt;br&gt;
&amp;lt;/ul&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;&amp;lt;h1&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;Is centered, colored white, and given some bottom margin.&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;
&amp;lt;p&amp;gt;header has a black background and padding to create space.&amp;lt;/p&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;p&amp;gt;&amp;lt;nav&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;
&amp;lt;div class="highlight"&amp;gt;&amp;lt;pre class="highlight plaintext"&amp;gt;&amp;lt;code&amp;gt;     A ligns links to the center.&lt;/p&gt;

&lt;p&gt;a styles the links with white color, no underline, and spacing between them.&lt;br&gt;
&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/div&amp;gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Learning HTML &amp; CSS Portfolio Header Part</title>
      <dc:creator>Bala Murugan</dc:creator>
      <pubDate>Tue, 06 Jan 2026 19:40:02 +0000</pubDate>
      <link>https://dev.to/bala_murugan_/learning-html-css-portfolio-header-part-ep4</link>
      <guid>https://dev.to/bala_murugan_/learning-html-css-portfolio-header-part-ep4</guid>
      <description>&lt;p&gt;*&lt;em&gt;Portfolio Webpage *&lt;/em&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; This HTML page is a basic portfolio website structure.

A portfolio website is used to show your personal details, skills, and projects in one place.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;This page uses HTML for structure and CSS for styling. &lt;/p&gt;

&lt;p&gt;code:&lt;/p&gt;

&lt;p&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;br&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;br&gt;
    &lt;br&gt;
    &lt;br&gt;
    Portfolio
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;style&amp;gt;
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    header {
        background-color: black;
        padding: 20px;
    }

    h1 {
        color: white;
        text-align: center;
        margin-bottom: 10px;
    }

    nav {
        text-align: center;
    }

    nav a {
        color: white;
        text-decoration: none;
        margin: 0 15px;   /* proper spacing */
        font-size: 16px;
    }

    nav a:hover {
        text-decoration: underline;
    }

    section {
        padding: 40px;
        text-align: center;
    }

    .about {
        background-color: #f2f2f2;
    }

    .project {
        background-color: #e0e0e0;
    }

    .contact {
        background-color: #d0d0d0;
    }

    footer {
        background-color: black;
        color: white;
        text-align: center;
        padding: 15px;
    }
&amp;lt;/style&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;header&amp;gt;
    &amp;lt;h1&amp;gt;BalaMurugan&amp;lt;/h1&amp;gt;
    &amp;lt;nav&amp;gt;
        &amp;lt;a href="#"&amp;gt;About Me&amp;lt;/a&amp;gt;
        &amp;lt;a href="#"&amp;gt;Projects&amp;lt;/a&amp;gt;
        &amp;lt;a href="#"&amp;gt;Contact&amp;lt;/a&amp;gt;
        &amp;lt;a href="#"&amp;gt;Login Page&amp;lt;/a&amp;gt;
    &amp;lt;/nav&amp;gt;
&amp;lt;/header&amp;gt;

&amp;lt;section class="about"&amp;gt;
    &amp;lt;h2&amp;gt;About Me&amp;lt;/h2&amp;gt;
    &amp;lt;p&amp;gt;This section is for personal details.&amp;lt;/p&amp;gt;
&amp;lt;/section&amp;gt;

&amp;lt;section class="project"&amp;gt;
    &amp;lt;h2&amp;gt;Projects&amp;lt;/h2&amp;gt;
    &amp;lt;p&amp;gt;This section will show my projects.&amp;lt;/p&amp;gt;
&amp;lt;/section&amp;gt;

&amp;lt;section class="contact"&amp;gt;
    &amp;lt;h2&amp;gt;Contact&amp;lt;/h2&amp;gt;
    &amp;lt;p&amp;gt;This section contains contact information.&amp;lt;/p&amp;gt;
&amp;lt;/section&amp;gt;

&amp;lt;footer&amp;gt;
    &amp;lt;p&amp;gt;© 2026 BalaMurugan&amp;lt;/p&amp;gt;
&amp;lt;/footer&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;*&lt;em&gt;HTML Structure&lt;/em&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; HTML is used to create the structure of the webpage.

 The page starts with &amp;lt;!DOCTYPE html&amp;gt; which tells the browser that this is an HTML5 document.

   The &amp;lt;html&amp;gt; tag wraps the entire page. Inside it, there are two main parts

              &amp;lt;head&amp;gt; and &amp;lt;body&amp;gt;.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Head Section&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; &amp;lt;head&amp;gt; ---&amp;gt; The section contains important information about the page.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt; &lt;br&gt;
       Allows the page to support all characters.&lt;/p&gt;

&lt;p&gt;&lt;br&gt;
       makes the page responsive on mobile devices.&lt;/p&gt;


&lt;br&gt;
      sets the page title shown in the browser tab as portFolio.

 

        contains internal CSS used to design the page.


**What is href ?**

    href means Hypertext Reference.

     It tells the browser where the link should go when the user clicks it.

**Syntax**

             &amp;lt;a href="link"&amp;gt;Link Text&amp;lt;/a&amp;gt;

&amp;lt;a&amp;gt; → Anchor tag

href → Destination address

Link Text → Text shown on the webpage  



Section Elements

    • &amp;lt;section class="about"&amp;gt; 
             For personal information.

    • &amp;lt;section class="project"&amp;gt;

             To show projects.

    • &amp;lt;section class="contact"&amp;gt;

              For contact details.


                              **Css overveiw**


1**.Inline Css:**

          Inline CSS is a way to apply CSS styles directly inside an HTML tag.

      The style is written using the style attribute.
 
       Inline CSS affects only one element and is used for quick styling.


 syntax :
       &amp;lt;p style="color: red;"&amp;gt;This is a red paragraph&amp;lt;/p&amp;gt;

Example:

&amp;lt;p&amp;gt; → HTML tag

style → attribute used for CSS

color → CSS property

red → value


Internal CSS

       Internal CSS is used to style a webpage by writing CSS code inside the &amp;lt;style&amp;gt; tag, which is placed inside the &amp;lt;head&amp;gt; section of an HTML file.

         Internal CSS is useful when you want to apply styles to one single webpage.

**Internal CSS Syntax**
  
    selector {
    property: value;
}


**Internal css with example class 
**
     &amp;lt;style&amp;gt;
    .box {
        background-color: lightgray;
        padding: 15px;
        text-align: center;
    }


Hello World

&lt;p&gt;*&lt;em&gt;Internal CSS with ID Example&lt;br&gt;
*&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;&amp;lt;br&amp;gt;
    #title {&amp;lt;br&amp;gt;
        color: green;&amp;lt;br&amp;gt;
        text-align: center;&amp;lt;br&amp;gt;
    }&amp;lt;br&amp;gt;
&lt;/p&gt;

&lt;h1 id="title"&gt;Internal CSS Title&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;What is External CSS&lt;/strong&gt;   (to be discussed)&lt;/p&gt;

&lt;pre class="highlight plaintext"&gt;&lt;code&gt; External CSS is used to style a webpage by writing CSS code in a separate .css file.

 This CSS file is then linked to the HTML file.

External CSS is best for real websites and multiple pages.
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;*&lt;em&gt;syntax&lt;br&gt;
*&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;body {&lt;br&gt;
    background-color: #f2f2f2;&lt;br&gt;
    font-family: Arial, sans-serif;&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;h1 {&lt;br&gt;
    color: darkblue;&lt;br&gt;
    text-align: center;&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;p {&lt;br&gt;
    color: black;&lt;br&gt;
    font-size: 16px;&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;CSS Styling&lt;/p&gt;

&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    CSS is used to make the page look good.
&lt;/code&gt;&lt;/pre&gt;

&lt;ul&gt;
&lt;li&gt;{ padding: 0; margin: 0; } 
      removes default spacing from all elements.&lt;/li&gt;
&lt;/ul&gt;


&lt;h1&gt;
&lt;br&gt;
    Is centered, colored white, and given some bottom margin.

&lt;/h1&gt;
&lt;p&gt;header has a black background and padding to create space.&lt;/p&gt;



&lt;pre class="highlight plaintext"&gt;&lt;code&gt;     A ligns links to the center.

 a styles the links with white color, no underline, and spacing between them.
&lt;/code&gt;&lt;/pre&gt;

</description>
      <category>css</category>
      <category>html</category>
      <category>webdev</category>
      <category>portfolio</category>
    </item>
    <item>
      <title>Getting started with gitlab</title>
      <dc:creator>Bala Murugan</dc:creator>
      <pubDate>Tue, 06 Jan 2026 18:34:19 +0000</pubDate>
      <link>https://dev.to/bala_murugan_/getting-started-with-gitlab-4iak</link>
      <guid>https://dev.to/bala_murugan_/getting-started-with-gitlab-4iak</guid>
      <description>&lt;p&gt;&lt;strong&gt;what is git&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   Git is a distributed version control system used to track changes in source code during software development.

   It allows multiple developers to work on the same projec.

    complete history of changes, and helps manage different versions of code efficiently.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;version control system&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    A Version Control System (VCS) is a tool that tracks and manages changes to files over time.

     Allowing users to view history, revert to previous versions.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Types of version controlsystem&lt;/strong&gt; :&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   1.local version control system:

             stores version on one computer

   2.centralized  version control system :

        centralized version control system stores all versions 
    files.

        one central server accessed by multiple users.

      ex : SVN

  3.Distributed version control system:

          A Distributed Version Control System is a system where each developer has a complete copy of the repository, including the full version history, on their local machine.

      Ex : Git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;what is Gitlab&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  GitLab is a web-based DevOps platform that uses Git for version control and provides tools to manage the entire software development lifecycle.

   Including code hosting, collaboration, CI/CD, and project management.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;*&lt;em&gt;How to push file in Gitlab *&lt;/em&gt;&lt;/p&gt;

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

     cd extension file
 step 2:

       Git init
     #check git status
 Step 3:

       Git add filename
       Git add . ----&amp;gt; all files

Step 4:

    Git commit - m "message"
step 5:

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

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;what is repositery&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; A repositery is a storage location  stores to source code files and folders.

  supporting and collabration to the developers

  history of changes
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;HOSTING :&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Hosting provides server space and resources to make a website or application available online. 

They can be accessed over the internet.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;local hosting&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Local hosting is the process of running a website or application on a local computer instead of an internet server.

    It is used to development, testing, and learning purposes.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;hostig tools: XAMPP , WAMP, MAMP &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SERVER&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   A server is a computer or system that provides resources, data, or services .

 request respose model and  handle the client requests.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;EX : webserver, fileserver, databaserver, application server.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Getting started with gitlab</title>
      <dc:creator>Bala Murugan</dc:creator>
      <pubDate>Sat, 03 Jan 2026 19:42:05 +0000</pubDate>
      <link>https://dev.to/bala_murugan_/getting-started-with-gitlab-g8e</link>
      <guid>https://dev.to/bala_murugan_/getting-started-with-gitlab-g8e</guid>
      <description>&lt;p&gt;&lt;strong&gt;what is git&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   Git is a distributed version control system used to track changes in source code during software development.

   It allows multiple developers to work on the same projec.

    complete history of changes, and helps manage different versions of code efficiently.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;version control system&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    A Version Control System (VCS) is a tool that tracks and manages changes to files over time.

     Allowing users to view history, revert to previous versions.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Types of version controlsystem&lt;/strong&gt; :&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   1.local version control system:

             stores version on one computer

   2.centralized  version control system :

        centralized version control system stores all versions 
    files.

        one central server accessed by multiple users.

      ex : SVN

  3.Distributed version control system:

          A Distributed Version Control System is a system where each developer has a complete copy of the repository, including the full version history, on their local machine.

      Ex : Git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;what is Gitlab&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  GitLab is a web-based DevOps platform that uses Git for version control and provides tools to manage the entire software development lifecycle.

   Including code hosting, collaboration, CI/CD, and project management.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;*&lt;em&gt;How to push file in Gitlab *&lt;/em&gt;&lt;/p&gt;

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

     cd extension file
 step 2:

       Git init
     #check git status
 Step 3:

       Git add filename
       Git add . ----&amp;gt; all files

Step 4:

    Git commit - m "message"
step 5:

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

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;what is repositery&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; A repositery is a storage location  stores to source code files and folders.

  supporting and collabration to the developers

  history of changes
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;HOSTING :&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Hosting provides server space and resources to make a website or application available online. 

They can be accessed over the internet.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;local hosting&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Local hosting is the process of running a website or application on a local computer instead of an internet server.

    It is used to development, testing, and learning purposes.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;hostig tools: XAMPP , WAMP, MAMP &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SERVER&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   A server is a computer or system that provides resources, data, or services .

 request respose model and  handle the client requests.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;EX : webserver, fileserver, databaserver, application server.&lt;/p&gt;

</description>
      <category>git</category>
      <category>gitlab</category>
      <category>webdev</category>
      <category>learning</category>
    </item>
    <item>
      <title>Frontend Getting with HTML</title>
      <dc:creator>Bala Murugan</dc:creator>
      <pubDate>Sat, 03 Jan 2026 08:49:28 +0000</pubDate>
      <link>https://dev.to/bala_murugan_/froentend-html-day-1-13me</link>
      <guid>https://dev.to/bala_murugan_/froentend-html-day-1-13me</guid>
      <description>&lt;p&gt;HTML - Hypertext markup language&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Html ?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;HTML (HyperText Markup Language) is the standard markup language used to create and structure web pages. It defines the layout of content on the web using elements like headings, paragraphs, images, links, tables, and forms. &lt;/p&gt;

&lt;p&gt;It is not a programming language.&lt;/p&gt;

&lt;p&gt;It forms the foundation of web development&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why do we use HTml ?&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  * structured web content
  * Enable link between pages
  * Build to web app and application
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Markup language&lt;/strong&gt;&lt;br&gt;
     A markup language is a system used to annotate or structure text by using tags so that computers can understand how the content should be displayed or processed&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; but it does not perform logic like a programming language.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Types of markup language&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; 1.Presentational Markup Language ...&amp;gt;  HTML (older versions)
 2.Procedural Markup Language   .....&amp;gt;  TeX, PostScript
 3.Descriptive (Semantic) Markup Language...&amp;gt; HTML5, XML, SGML 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Referance : &lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTML" rel="noopener noreferrer"&gt;https://developer.mozilla.org/en-US/docs/Web/HTML&lt;/a&gt;&lt;/p&gt;

</description>
      <category>html</category>
      <category>frontend</category>
      <category>webdev</category>
      <category>payilagam</category>
    </item>
  </channel>
</rss>
