<?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>Forem: CHINTAMANI PALA</title>
    <description>The latest articles on Forem by CHINTAMANI PALA (@chintamani_pala).</description>
    <link>https://forem.com/chintamani_pala</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%2F1547775%2F765861d4-96fc-4db7-aed1-a1e6cc513538.jpg</url>
      <title>Forem: CHINTAMANI PALA</title>
      <link>https://forem.com/chintamani_pala</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/chintamani_pala"/>
    <language>en</language>
    <item>
      <title>History of Node.js</title>
      <dc:creator>CHINTAMANI PALA</dc:creator>
      <pubDate>Sat, 21 Sep 2024 14:26:57 +0000</pubDate>
      <link>https://forem.com/chintamani_pala/history-of-nodejs-321n</link>
      <guid>https://forem.com/chintamani_pala/history-of-nodejs-321n</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foz402gu4xnkw56569i9f.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foz402gu4xnkw56569i9f.jpg" alt="Image description" width="" height=""&gt;&lt;/a&gt;&lt;strong&gt;Today, I’m excited to share what I’ve learned about the history of Node.js from &lt;a href="https://namastedev.com" rel="noopener noreferrer"&gt;NamasteDev.com&lt;/a&gt; Special thanks to &lt;a href="https://www.linkedin.com/in/akshaymarch7/" rel="noopener noreferrer"&gt;Akshay Saini 🚀&lt;/a&gt; for breaking it down in Namaste NodeJS - Episode 1.&lt;br&gt;
I took a deep dive into how Node.js revolutionized web development, and here are some fascinating highlights from its journey! 🌐&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;em&gt;🔍 The Journey of Node.js:&lt;/em&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;📅 2009:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Ryan Dahl created Node.js to overcome the limitations of the blocking Apache HTTP server. It was first built using Firefox’s SpiderMonkey engine, but within two days, Ryan switched to Chrome’s V8 engine!&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Node.js made it possible to run JavaScript outside the browser, featuring event-driven architecture and asynchronous I/O, making it highly efficient. Fun fact: Ryan originally named it Web.js, as it was designed for server creation.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Around the same time, Joyent, a company working on non-blocking servers, noticed Ryan’s work and funded further Node.js development.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;📅 2010:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;npm (Node Package Manager) was introduced by Isaac Z. Schlueter (a Joyent employee), creating a registry for managing packages.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;📅 2011:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft collaborated with Joyent to make Node.js compatible with Windows, as it was initially built for macOS and Linux.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;📅 2012:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;By 2012, Ryan Dahl stepped away from Node.js, and Isaac Z. Schlueter, creator of npm, took over as the leader of Node.js.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;📅 2014:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;With Node.js development slowing down, Fedor Indutny forked the project and created io.js. In 2015, the two projects merged, forming the Node.js Foundation.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;📅 2019:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In 2019, the JavaScript Foundation and Node.js Foundation merged and developed the OpenJS Foundation, uniting the broader JavaScript ecosystem.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxvta0ejnpql04hucvldh.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxvta0ejnpql04hucvldh.jpg" alt="Image description" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  ✨ Key Features of Node.js:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Cross-platform and open-source, running on Windows, Linux, macOS, and more.&lt;/li&gt;
&lt;li&gt;Enables JavaScript to run outside the browser.&lt;/li&gt;
&lt;li&gt;Event-driven architecture with asynchronous I/O for improved efficiency.&lt;/li&gt;
&lt;li&gt;Single language (JavaScript) for both client and server development. 🎯&lt;/li&gt;
&lt;li&gt;Supported by a massive open-source community! 🤝&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Follow me on linked: &lt;a href="https://www.linkedin.com/in/chintamani-pala/" rel="noopener noreferrer"&gt;https://www.linkedin.com/in/chintamani-pala/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Node.js has had an incredible journey, and learning about it has inspired me to explore its potential even further! 💡&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>node</category>
      <category>javascript</category>
      <category>programming</category>
    </item>
    <item>
      <title>What is the difference between Library and Framework</title>
      <dc:creator>CHINTAMANI PALA</dc:creator>
      <pubDate>Fri, 21 Jun 2024 20:04:21 +0000</pubDate>
      <link>https://forem.com/chintamani_pala/what-is-the-difference-between-library-and-framework-1b8g</link>
      <guid>https://forem.com/chintamani_pala/what-is-the-difference-between-library-and-framework-1b8g</guid>
      <description>&lt;p&gt;While the terms "&lt;strong&gt;framework&lt;/strong&gt;" and "&lt;strong&gt;library&lt;/strong&gt;" are usually used interchangeably in software development, they relate to two concepts that serve different purposes, with distinctly different implications for their usage in a project. Here are the major differences:&lt;/p&gt;

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

&lt;h2&gt;
  
  
  Framework
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Inversion of Control :&lt;/strong&gt;&lt;br&gt;
Definition: A framework dictates the structure and flow of an application. It calls the user-written individual code rather than the reverse.&lt;br&gt;
Example: When using a framework, you normally follow its conventions and integrate your code into the lifecycle of the framework. Suppose you were writing a web application with Django or Ruby on Rails. You would define classes for models, views, and controllers in a way that the framework prescribes, and then the framework is responsible for how all of the pieces interact.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Structure and Convention :&lt;/strong&gt;&lt;br&gt;
Definition: Guidance in the form of predefined structures for your application, together with best practices, design patterns, and conventions.&lt;br&gt;
For example, it is the Angular framework that gives guidance regarding how to structure your code with modules, components, and services. This helps in keeping the uniformity and makes the application more scalable.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Fully Functional :&lt;/strong&gt;&lt;br&gt;
Definition: More often, frameworks host a wide extent of built-in functionalities covering all aspects of application development, from database handling to user authentication.&lt;br&gt;
An example would be that Spring Framework for Java provides embeddable features for web, security, and database interaction. This means you won't need to integrate various libraries to a greater extent. In this regard, a library is defined as a collection of functions or class libraries that you can call at will to perform certain tasks. You are in control of when and how to use it.&lt;br&gt;
Example: If you are using a library, you would write the main flow of your application and call library functions as needed. In fact, you call utility functions inline in your code in many cases when you use Lodash for JavaScript.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Focused Functionality :&lt;/strong&gt;&lt;br&gt;
Definition: Almost all libraries are focused on narrow ranges of functionality. Thus, they can provide tools to help you do certain specific things:.&lt;br&gt;
Example: React, a JavaScript library to build user interfaces, is only concerned with rendering UI components. It enforces no application architecture or handles any other concerns like routing or state management—unless you include other libraries like React Router or Redux, that is.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Loose Coupling :&lt;/strong&gt;&lt;br&gt;
Definition: It refers to when libraries, in their use, are utilised independently of an application and thus loosely coupled with it. They allow the use of multiple libraries if need be.&lt;br&gt;
An example of this might be that a Node.js application could have Express for routing, Mongoose for MongoDB, and Passport for authentication. All these have some form of specified role, and none operate based on strict enforcement of structure. Summary Framework: It guides the general structure and flow and enforces conventions generally, including broad comprehensive functionality. You plug your code into the framework.&lt;br&gt;
Library: It provides certain functionality, called directly from your code, which enables more control over the structure and flow of applications.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>angular</category>
      <category>javascriptlibraries</category>
    </item>
  </channel>
</rss>
