<?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: Priyanshu mundra</title>
    <description>The latest articles on DEV Community by Priyanshu mundra (@spyder15).</description>
    <link>https://dev.to/spyder15</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%2F791912%2F22e1f7f7-d739-4f4f-81d0-415d8a1e2eff.png</url>
      <title>DEV Community: Priyanshu mundra</title>
      <link>https://dev.to/spyder15</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/spyder15"/>
    <language>en</language>
    <item>
      <title>Developer Tutorial on Umi</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Sat, 07 Oct 2023 21:01:50 +0000</pubDate>
      <link>https://dev.to/spyder15/developer-tutorial-on-umi-2g45</link>
      <guid>https://dev.to/spyder15/developer-tutorial-on-umi-2g45</guid>
      <description>&lt;p&gt;&lt;strong&gt;Umi: Building Enterprise-Class React Applications&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Umi is a powerful React application framework tailored to help developers build robust, enterprise-class applications. It offers a range of features facilitating the development and maintenance of large-scale applications:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Routing:&lt;/strong&gt; Umi boasts a robust routing system that simplifies the creation of intricate routing patterns.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Code Splitting:&lt;/strong&gt; Umi automatically divides your code into separate bundles, enhancing application performance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Internationalization:&lt;/strong&gt; Umi integrates built-in support for internationalization, streamlining the translation of your application into multiple languages.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Testing:&lt;/strong&gt; Umi provides various features for easy application testing, including unit testing, integration testing, and end-to-end testing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Plugins:&lt;/strong&gt; Umi offers a plugin system, making it effortless to extend Umi's functionality. Numerous plugins are available to augment Umi with features like different CSS preprocessors and JavaScript libraries.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Getting Started with Umi&lt;/strong&gt;&lt;br&gt;
To begin using Umi, start by installing the Umi CLI globally using the following npm command:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install -g @umijs/cli&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Once the CLI is installed, create a new Umi project with:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;umijs create my-umi-project&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This command will initialize a new Umi project in the &lt;code&gt;"my-umi-project"&lt;/code&gt; directory.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Running Your Umi Application&lt;/strong&gt;&lt;br&gt;
You can run your Umi application using the following command:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm start&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This command launches a development server on your local machine. Open your web browser and navigate to &lt;code&gt;http://localhost:3000&lt;/code&gt; to view your application.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Building Your Umi Application&lt;/strong&gt;&lt;br&gt;
To build your Umi application for production, execute:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm run build&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This will generate a production build of your application in the "build" directory.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Deploying Your Umi Application&lt;/strong&gt;&lt;br&gt;
After building your Umi application, deploy it to any production environment that supports Node.js.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Code Snippet&lt;/strong&gt;&lt;br&gt;
Here's a simple Umi application represented in a code snippet:&lt;/p&gt;

&lt;p&gt;javascript&lt;/p&gt;

&lt;p&gt;&lt;code&gt;import React from 'react';&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;import { BrowserRouter as Router, Route, Link } from 'react-router-dom';&lt;br&gt;
const Home = () =&amp;gt; (&lt;br&gt;
  &amp;lt;div&amp;gt;&lt;br&gt;
    &amp;lt;h1&amp;gt;Welcome to Umi!&amp;lt;/h1&amp;gt;&lt;br&gt;
    &amp;lt;Link to="/about"&amp;gt;About&amp;lt;/Link&amp;gt;&lt;br&gt;
  &amp;lt;/div&amp;gt;&lt;br&gt;
);&lt;br&gt;
const About = () =&amp;gt; (&lt;br&gt;
  &amp;lt;div&amp;gt;&lt;br&gt;
    &amp;lt;h1&amp;gt;About Umi&amp;lt;/h1&amp;gt;&lt;br&gt;
    &amp;lt;p&amp;gt;Umi is a React application framework designed to assist developers in building enterprise-class applications.&amp;lt;/p&amp;gt;&lt;br&gt;
  &amp;lt;/div&amp;gt;&lt;br&gt;
);&lt;br&gt;
const App = () =&amp;gt; (&lt;br&gt;
  &amp;lt;Router&amp;gt;&lt;br&gt;
    &amp;lt;div&amp;gt;&lt;br&gt;
      &amp;lt;Route path="/" exact component={Home} /&amp;gt;&lt;br&gt;
      &amp;lt;Route path="/about" component={About} /&amp;gt;&lt;br&gt;
    &amp;lt;/div&amp;gt;&lt;br&gt;
  &amp;lt;/Router&amp;gt;&lt;br&gt;
);&lt;br&gt;
export default App;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This code showcases a basic Umi application using React components and routing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In summary&lt;/strong&gt;&lt;br&gt;
 Umi stands out as a robust React application framework, engineered to assist developers in crafting enterprise-grade applications. Its rich feature set simplifies the development and upkeep of extensive applications, encompassing functionalities like routing, code splitting, internationalization, testing, and extensible plugins.&lt;/p&gt;

&lt;p&gt;For those seeking a React application framework conducive to constructing enterprise-class applications, I highly suggest exploring Umi.&lt;/p&gt;

</description>
      <category>solana</category>
      <category>blockchain</category>
      <category>fullstack</category>
      <category>umi</category>
    </item>
    <item>
      <title>Solana Mobile Stack (SMS) Tutorial for Flutter Developers</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Sat, 07 Oct 2023 19:52:52 +0000</pubDate>
      <link>https://dev.to/spyder15/solana-mobile-stack-sms-tutorial-for-flutter-developers-59jl</link>
      <guid>https://dev.to/spyder15/solana-mobile-stack-sms-tutorial-for-flutter-developers-59jl</guid>
      <description>&lt;p&gt;The Solana Mobile Stack (SMS) is a powerful toolkit for building mobile applications on the Solana blockchain. In this tutorial, we will walk you through the process of integrating SMS into your mobile app, with a focus on using the Flutter SDK. By the end of this guide, you will have a solid understanding of how to leverage SMS to create decentralized mobile applications on the Solana network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;br&gt;
Before we begin, make sure you have the following prerequisites:&lt;/p&gt;

&lt;p&gt;Flutter installed on your development machine.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Basic knowledge of Solana blockchain concepts.&lt;/li&gt;
&lt;li&gt;Familiarity with mobile app development.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Setting Up Your Development Environment&lt;/strong&gt;&lt;br&gt;
Let’s start by setting up our development environment.&lt;/p&gt;

&lt;p&gt;A. Create a new Flutter project:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;flutter create my_solana_mobile_app&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;B. Navigate to your project directory:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;cd my_solana_mobile_app&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;C. Add the Solana Mobile Stack (SMS) dependency to your &lt;code&gt;pubspec.yaml&lt;/code&gt; file:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;dependencies: &lt;br&gt;
solana_mobile_stack: ^1.0.0&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;D. Run &lt;code&gt;flutter pub get&lt;/code&gt; to fetch the SMS package.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Initializing Solana Wallet&lt;/strong&gt;&lt;br&gt;
To interact with the Solana blockchain, you’ll need a wallet. SMS provides an easy way to initialize and manage wallets.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;import ‘package:solana_mobile_stack/&lt;br&gt;
solana_mobile_stack.dart’;&lt;br&gt;
void main() {&lt;br&gt;
// Initialize Solana wallet &lt;br&gt;
final wallet = SolanaWallet(); &lt;br&gt;
wallet.initialize();&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Sending Transactions&lt;/strong&gt;&lt;br&gt;
Now, let’s send a transaction on the Solana blockchain.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;import ‘package:solana_mobile_stack/&lt;br&gt;
solana_mobile_stack.dart’; &lt;br&gt;
void main() {&lt;br&gt;
final wallet = SolanaWallet();&lt;br&gt;
wallet.initialize();&lt;br&gt;
// Create a Solana transaction &lt;br&gt;
final transaction = &lt;br&gt;
SolanaTransaction(&lt;br&gt;
feePayer: wallet.publicKey,&lt;br&gt;
recentBlockhash: ‘your_recent_blockhash’,&lt;br&gt;
);&lt;br&gt;
// Add instructions to the &lt;br&gt;
transaction (e.g., token transfer)&lt;br&gt;
// …&lt;br&gt;
// Sign and send the transaction&lt;br&gt;
wallet.signAndSendTransaction(transaction);&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Retrieving Data&lt;/strong&gt;&lt;br&gt;
Fetching data from Solana is straightforward with SMS.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;import ‘package:solana_mobile_stack/solana_mobile_stack.dart’; &lt;br&gt;
void main() {final wallet = SolanaWallet(); wallet.initialize();&lt;br&gt;
// Create a connection to the Solana &lt;br&gt;
cluster &lt;br&gt;
final connection = &lt;br&gt;
SolanaConnection(network:&lt;br&gt;
NetworkType.devnet);&lt;br&gt;
// Fetch account balance&lt;br&gt;
final balance = await&lt;br&gt;
connection.getAccountBalance(wallet.pu&lt;br&gt;
blicKey);&lt;br&gt;
print(‘Account Balance: $balance &lt;br&gt;
SOL’);&lt;br&gt;
// Fetch token balances&lt;br&gt;
// …&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Building the UI&lt;/strong&gt;&lt;br&gt;
Integrate the Solana Mobile Stack into your Flutter UI as needed. You can use widgets provided by SMS to display wallet information, transaction history, and more.&lt;/p&gt;

&lt;p&gt;Conclusion&lt;br&gt;
In this tutorial, we’ve covered the basics of integrating the Solana Mobile Stack (SMS) into a Flutter mobile app. You’ve learned how to initialize a wallet, send transactions, retrieve data from Solana, and build a user interface. With this knowledge, you can start building powerful decentralized mobile applications on the Solana network.&lt;/p&gt;

&lt;p&gt;For a complete example codebase, check out our GitHub repository: [&lt;a href="https://github.com/Spyder15/Solana-mobile-stack"&gt;https://github.com/Spyder15/Solana-mobile-stack&lt;/a&gt;].&lt;/p&gt;

&lt;p&gt;Feel free to explore SMS further and build innovative Solana-powered mobile apps.&lt;/p&gt;

&lt;p&gt;Good luck with your Solana Mobile Stack development journey! 🚀 &lt;/p&gt;

</description>
      <category>solana</category>
      <category>blockchain</category>
      <category>flutter</category>
      <category>developers</category>
    </item>
    <item>
      <title>Vite: The Next Generation Build Tool for Modern Web Applications</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Sun, 05 Mar 2023 09:48:10 +0000</pubDate>
      <link>https://dev.to/spyder15/vite-the-next-generation-build-tool-for-modern-web-applications-3m8m</link>
      <guid>https://dev.to/spyder15/vite-the-next-generation-build-tool-for-modern-web-applications-3m8m</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;What is Vite?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Vite is a modern build tool for web development that emphasizes speed and simplicity. It uses native ES modules to deliver lightning-fast performance during development and leverages features like hot module replacement and tree shaking to optimize the size and performance of your production builds. Vite is designed to be easy to use, with a simple configuration and a low learning curve, making it an ideal tool for web developers who want to build fast and efficient web applications without getting bogged down in complex configuration and setup.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Getting Started&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Getting started with Vite is a breeze. All you need to do is run a few commands.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm create vite@latest app-name
yarn create vite app-name

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

&lt;/div&gt;



&lt;p&gt;Then go ahead and select the template you want. For example, we want to create a react project with JavaScript. Go ahead and select react and then JavaScript + SWC.&lt;/p&gt;

&lt;p&gt;This will create an empty project with no dependencies installed. You need to do it manually.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# go to project directory
cd app-name

# install dependencies
npm ci
yarn
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you are good to go.&lt;/p&gt;

&lt;h2&gt;
  
  
  Development Server
&lt;/h2&gt;

&lt;p&gt;When you're working on your application during development, you'll typically use a development server to serve your files. The development server is designed to make it easy to test your code as you're writing it. To start your development server in Vite, all you have to do is run &lt;code&gt;npm run dev&lt;/code&gt; or&lt;code&gt;yarn dev&lt;/code&gt;. Here are some of the key features of the development server:&lt;/p&gt;

&lt;h2&gt;
  
  
  Fast Build Times
&lt;/h2&gt;

&lt;p&gt;The development server can build and serve your application quickly, so you can test your changes in real-time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hot Module Replacement
&lt;/h2&gt;

&lt;p&gt;Hot module replacement (HMR) is a technique used to improve the developer experience by allowing you to see your changes in real-time without having to refresh the page.&lt;/p&gt;

&lt;p&gt;Traditionally, when you make changes to your code, you need to refresh the page to see the updates. This can be time-consuming and disruptive to your workflow. With HMR, the changes you make to your code are automatically injected into the running application, without the need for a page refresh.&lt;/p&gt;

&lt;p&gt;HMR works by detecting which modules in your code have changed and then updating them in the running application. This means that you can see your changes instantly, without losing your current state or having to navigate back to where you were in the application.&lt;/p&gt;

&lt;p&gt;HMR is especially useful in larger applications, where navigating to a specific page or state can take time. With HMR, you can make changes to your code and see the results in real-time, without having to spend time navigating back to the relevant page or state.&lt;/p&gt;

&lt;h2&gt;
  
  
  Debugging Tools:
&lt;/h2&gt;

&lt;p&gt;The development server often comes with built-in debugging tools, like error messages and console logs, to help you find and fix issues in your code.&lt;/p&gt;

&lt;p&gt;The development server is not intended for use in a production environment, as it is optimized for speed and ease-of-use, rather than performance and security.&lt;/p&gt;

&lt;h2&gt;
  
  
  Production Build
&lt;/h2&gt;

&lt;p&gt;When you're ready to deploy your application to a live environment, you'll typically use a production build. A production build is a version of your application that has been optimized for performance and security.&lt;/p&gt;

&lt;p&gt;To create your production build, run the command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# create your production build (for vite)
npm run build
yarn build

# start a server for viewing your production build
npm run preview
yarn preview
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Here are some of the key features of a production build:&lt;/p&gt;

&lt;h2&gt;
  
  
  Minified Code
&lt;/h2&gt;

&lt;p&gt;The code in a production build is typically minified. This is done by removing comments and blank spaces. It also changes function names and variable names to something smaller. This is done to reduce the bundle size and make it load faster in the browser.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/* ORIGINAL CODE*/
// this function prints a message to the console
const printMessage = (message) =&amp;gt; {
    console.log(message);
}
/* MINIFIED CODE */
const p=s=&amp;gt;{console.log(s)};

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  Tree Shaking
&lt;/h2&gt;

&lt;p&gt;Tree shaking is a technique used to remove unused code from your application, also known as dead code elimination. The term "tree shaking" comes from the idea of shaking a tree to remove dead leaves or branches.&lt;/p&gt;

&lt;p&gt;When you build a web application, you typically include a lot of code that you don't actually need. This could be code that you wrote but never ended up using, or code that you imported from a library but only used a small portion of. This unused code takes up space in your application, which can slow down its performance.&lt;/p&gt;

&lt;p&gt;Tree shaking works by analyzing your code to determine which parts are actually being used. It then removes the unused code from your application, resulting in a smaller and more efficient codebase. This process can dramatically reduce the size of your application, leading to faster load times and improved performance.&lt;/p&gt;

&lt;p&gt;Tree shaking is typically done as part of the build process for your application. Many modern module bundlers, such as Webpack and Rollup, include built-in support for tree shaking (Vite uses Rollup under the hood). When you run your application through one of these tools, it will automatically analyze your code and remove any unused portions.&lt;/p&gt;

&lt;p&gt;It's important to note that not all code can be tree shaken. Some code may be dynamically loaded at runtime or may have complex dependencies that make it difficult to determine whether it's being used. In these cases, you may need to manually remove unused code or optimize your application in other ways.&lt;/p&gt;

&lt;h2&gt;
  
  
  Caching
&lt;/h2&gt;

&lt;p&gt;The assets in a production build are often cached by the browser, which means that they can be loaded more quickly for returning visitors.&lt;/p&gt;

&lt;p&gt;A production build is designed to be used in a live environment, where performance and security are top priorities. Vite configures all of these for you so you don't have to worry about manually configuring it.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is SWC?
&lt;/h2&gt;

&lt;p&gt;SWC is a rust-based compiler that claims to be "20x faster than Babel on a single thread and 70x faster on four cores". If you want to use babel instead, just select JavaScript + SWC or TypeScript + SWC.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Keep in mind that meta-frameworks like Next and tools like Parcel and Deno use SWC.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Module Bundlers - Quick Introduction
&lt;/h2&gt;

&lt;p&gt;Vite is designed to be easy to use and configure, but this simplicity can also be a disadvantage if you need more fine-grained control over your build process. Some developers may find that Vite's configuration options are too limited for their needs. If you want more fine-grained control, you need to use module bundlers.&lt;/p&gt;

&lt;p&gt;Module bundlers are tools used in web development to combine multiple modules of JavaScript code into a single file, known as a bundle. This process is commonly referred to as "bundling". Some popular module bundlers for web development include Webpack, Rollup and Snowpack. Keep in mind Vite uses Rollup under the hood.&lt;/p&gt;

</description>
      <category>developer</category>
      <category>webdev</category>
      <category>javascript</category>
      <category>community</category>
    </item>
    <item>
      <title>Blockchain-101</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Sat, 18 Feb 2023 07:10:59 +0000</pubDate>
      <link>https://dev.to/spyder15/blockchain-101-5ccc</link>
      <guid>https://dev.to/spyder15/blockchain-101-5ccc</guid>
      <description>&lt;p&gt;&lt;strong&gt;Blockchain is a revolutionary technology that is transforming the way we do business and interact with each other online. It is essentially a decentralized, distributed ledger that is used to record transactions securely and transparently. In this blog post, we will provide a Blockchain 101 overview, including its history, how it works, and its current and potential applications.&lt;/strong&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;History of Blockchain :-&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--YO0aASRE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ykt914q6ia0drhgvubko.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--YO0aASRE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ykt914q6ia0drhgvubko.jpeg" alt="Image description" width="474" height="296"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The concept of a blockchain was first introduced in 2008 by an unknown person or group using the pseudonym Satoshi Nakamoto. Nakamoto published a white paper titled &lt;em&gt;&lt;strong&gt;"Bitcoin: A Peer-to-Peer Electronic Cash System,"&lt;/strong&gt;&lt;/em&gt; which described a decentralized, digital currency that was based on blockchain technology.&lt;/p&gt;

&lt;p&gt;Blockchain technology was initially used as the underlying technology for Bitcoin, which is the first and most well-known cryptocurrency. However, since its inception, blockchain has been used in various applications beyond just digital currencies, including supply chain management, voting systems, and more.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;How Blockchain Works :-&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TvpSrjhi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w4tran2zkdwtkiazrjbm.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TvpSrjhi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w4tran2zkdwtkiazrjbm.jpeg" alt="Image description" width="474" height="274"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At its core, blockchain is a digital ledger that records transactions in a way that is secure, transparent, and decentralized. Each block in the blockchain contains a set of transactions, and once a block is added to the chain, it cannot be altered. This makes blockchain an immutable record of all transactions that have taken place on the network.&lt;/p&gt;

&lt;p&gt;To ensure that the transactions are secure and transparent, blockchain uses a process called consensus. In order to add a block to the blockchain, a network of computers must first validate the transactions in the block. This validation process is called mining, and it involves solving complex mathematical equations in order to add a new block to the chain.&lt;/p&gt;

&lt;p&gt;Once a block has been added to the chain, it becomes a permanent part of the blockchain, and cannot be altered without changing all subsequent blocks in the chain. This makes blockchain an incredibly secure way of storing and transmitting data, as it is virtually impossible to manipulate or hack the data once it has been added to the chain.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Applications of Blockchain :-&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cE-I02Kc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yhwvon9v3ddzz7jhg4bl.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cE-I02Kc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yhwvon9v3ddzz7jhg4bl.jpeg" alt="Image description" width="474" height="306"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Blockchain technology has numerous potential applications, including:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1) Cryptocurrencies:&lt;/strong&gt; Bitcoin and other digital currencies use blockchain technology to securely record transactions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2) Supply chain management:&lt;/strong&gt; Blockchain can be used to track the movement of goods throughout the supply chain, providing transparency and security.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3) Voting systems:&lt;/strong&gt; Blockchain can be used to create secure and transparent voting systems that are resistant to fraud.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5) Healthcare:&lt;/strong&gt; Blockchain can be used to securely store and share medical records and other sensitive healthcare data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6) Real estate:&lt;/strong&gt; Blockchain can be used to create a secure and transparent system for buying and selling real estate.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Conclusion :-&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;Blockchain is a revolutionary technology that has the potential to transform the way we do business and interact with each other online. Its decentralized, distributed ledger provides a secure, transparent, and immutable record of all transactions that take place on the network. While blockchain is still a relatively new technology, it is already being used in a variety of applications, and its potential uses are virtually limitless. As the technology continues to evolve and mature, it will undoubtedly play an increasingly important role in our digital lives.&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>ai</category>
      <category>crypto</category>
      <category>community</category>
    </item>
    <item>
      <title>Open source &amp; Opportunities</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Sun, 05 Feb 2023 08:42:42 +0000</pubDate>
      <link>https://dev.to/spyder15/open-source-opportunities-3fad</link>
      <guid>https://dev.to/spyder15/open-source-opportunities-3fad</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;Open-source software is a type of software with source code that anyone can inspect, modify, or enhance. This approach to software development has gained widespread popularity in recent years, and has become a cornerstone of modern technology. The open-source movement is driven by a community of developers who collaborate on projects and contribute their time, knowledge, and skills to create high-quality software that is free for anyone to use.&lt;/strong&gt;
&lt;/h2&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;Open source software offers numerous opportunities for individuals and organizations alike. Here are some of the most notable benefits and opportunities associated with open source:&lt;/strong&gt;
&lt;/h3&gt;

&lt;h3&gt;
  
  
  1.  &lt;strong&gt;Cost savings:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;One of the primary advantages of open source is that it is free to use and distribute. This eliminates the need to pay for expensive software licenses and reduces the overall cost of technology ownership.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. &lt;strong&gt;Flexibility:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Open-source software is highly customizable and adaptable to specific needs. This allows organizations to modify and enhance the software to fit their unique requirements and workflow processes.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. &lt;strong&gt;Collaboration:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Open-source projects are collaborative efforts that bring together a diverse community of developers, users, and stakeholders. This collaboration leads to the creation of innovative and high-quality software that benefits everyone involved.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. &lt;strong&gt;Security:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Open source software is often more secure than proprietary software because it is openly available for review and audit. This increased transparency helps to identify and address security vulnerabilities more quickly, making open source software more secure in the long run.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. &lt;strong&gt;Innovation:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Open source drives innovation by allowing developers to experiment and iterate on new ideas. This leads to the creation of new and innovative software that benefits everyone involved.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. &lt;strong&gt;Career development:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Participating in open source projects is a great way to develop new skills, build a portfolio, and network with other developers. This can be a valuable opportunity for individuals to grow their careers and increase their earning potential.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. &lt;strong&gt;Community building:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Open source software has a strong community component, with developers, users, and stakeholders coming together to collaborate and support each other. This sense of community can be a powerful motivator and provides opportunities for individuals to make meaningful connections with others in the industry.&lt;/p&gt;

&lt;h3&gt;
  
  
  8. &lt;strong&gt;Improved quality:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Open source software is often of higher quality than proprietary software due to the large number of people who contribute to it and the transparent development process. This leads to more stable, reliable, and bug-free software that is better suited to meet the needs of users.&lt;/p&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;There are many examples of successful open-source projects, including the Linux operating system, the Apache web server, and the Python programming language. These projects have become industry standards and have had a significant impact on technology and society as a whole.&lt;/strong&gt;
&lt;/h3&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;In conclusion, open source software offers numerous benefits and opportunities for individuals and organizations. Whether you are a developer, user, or stakeholder, participating in open source projects can lead to new skills, increased earning potential, and a sense of community and connection. The open-source movement is driven by a passion for innovation and a commitment to collaboration, and will continue to play a critical role in shaping the technology landscape for years to come.&lt;/strong&gt;
&lt;/h3&gt;

</description>
      <category>developer</category>
      <category>opensource</category>
      <category>community</category>
      <category>openapi</category>
    </item>
    <item>
      <title>15 Best Terminal Commands That You Should Know</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Tue, 11 Oct 2022 17:40:03 +0000</pubDate>
      <link>https://dev.to/spyder15/15-best-terminal-commands-that-you-should-know-22ae</link>
      <guid>https://dev.to/spyder15/15-best-terminal-commands-that-you-should-know-22ae</guid>
      <description>&lt;p&gt;&lt;strong&gt;List of Best Commands For Terminal&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;PWD(present working directory)&lt;/li&gt;
&lt;li&gt;cd(change directory)&lt;/li&gt;
&lt;li&gt;ls&lt;/li&gt;
&lt;li&gt;mkdir(make directory)&lt;/li&gt;
&lt;li&gt;echo&lt;/li&gt;
&lt;li&gt;touch&lt;/li&gt;
&lt;li&gt;cat&lt;/li&gt;
&lt;li&gt;diff&lt;/li&gt;
&lt;li&gt;head&lt;/li&gt;
&lt;li&gt;tail&lt;/li&gt;
&lt;li&gt;rm(remove directory)&lt;/li&gt;
&lt;li&gt;clear&lt;/li&gt;
&lt;li&gt;Redirection operators (&amp;gt; &amp;amp; &amp;gt;&amp;gt;)&lt;/li&gt;
&lt;li&gt;cp&lt;/li&gt;
&lt;li&gt;mv&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;1. PWD - best command for terminal&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;PWD command stands for present working directories from your computer device. It reflects your prevailing location to the file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Syntax of PWD:
pwd -L: Prints the symbolic path.
pwd -P: Prints the actual path.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;2. CD - best command for windows&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;CD command stands for changing your directory from your current location.&lt;/p&gt;

&lt;p&gt;It is used to change your current location on the computer by selecting a different part in your pc. But you want to define the particular part below to change your location. It's one of the best commands for terminal.&lt;/p&gt;

&lt;p&gt;And there are some tricks to go back and ahead. If you want to go back simply type the .. for it and you want back multiple times you add in it / sign.&lt;br&gt;
Syntax of CD:&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;3. 1s&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;1s gives you a content listof current directory. Similar to this command already exists, its used to get the more longer list of your current directory's content by using -1.&lt;br&gt;
Syntax of 1s:&lt;br&gt;
&lt;/p&gt;

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

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;4. MkDir - Best Command For Windows&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;MkDir command is used to make directories in the computers. It is also known as make directory in terminal. You can also create multiple directories using this command, it takes permission accepted by you.&lt;br&gt;
Syntax of MKDIR:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mkdir [options...] [directories ...]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;5. echo - Best Command in PHP&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;By using echo you can print anything as you want. It prints strings/parameter also for best outputs. To print a string you need to assign $ sign before the variable to print.&lt;br&gt;
Synyax of echo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;echo [option] [string]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;6. touch - Most used command in terminal&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Mostly touch command is used to create a file in pc. It also used for change file access and modification time of particular file. If the file is not available in directory then it create new file.&lt;br&gt;
Syntax of touch:&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;7. cat - best shortest command in terminal&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;cat command is used to concatenate the strings and variable to get the best outputs. It is generally used for combine code in single line.&lt;br&gt;
Syntax of cat:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$cat filename
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;8. diff - Best command to compare strings&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;diff command is used to compare lines or strings and get the difference between each file. Let's see the syntax of diff command. It's one of the best commands in terminal.&lt;br&gt;
Syntax of diff:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;diff [OPTION]... FILES
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;9. head - Best command to print content in terminal&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;head command is used to print the content of file from beginning. It is used to print headings in a file. Its one of the best commands in terminal.&lt;br&gt;
Syntax of head:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;head [OPTION]... [FILE]...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;10. tail - Best commands for terminal&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;tail command is used to print content of file from the end. It is generally used to print the conclusions or massages. It's one of the most used commands in terminal.&lt;br&gt;
Syntax of tail:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;tail [OPTION]... [FILE]...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;11. RM - Best commands for windows&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;rm command is used to delete directory from file in pc. You need to just define part of directory and then it removed by the using command. Let's see the syntax of the command.&lt;br&gt;
Syntax of rm:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rm -i mydir
rm -i mydir/*
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;12. clear - Most used commands for terminal&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;This command is used to clear the screen of pc. It is used to clear out the current terminal window and takes back the prompt to the top position of the terminal window.&lt;br&gt;
Syntax of clear:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Ctrl+L
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;13. Redirection Operators&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;is used to redirect the output from command to pass the another file. It will overwrite the content of file. Its one of the best commands for terminal.&lt;/p&gt;

&lt;p&gt;is used to redirect the output from a command to be passed to another file. This will append to the content of the file.&lt;br&gt;
Syntax of operator:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ls -al &amp;gt; listings

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;14. cp - Best command for terminal &amp;amp; windows users&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;cp command is used to copy file from one directory to another one.&lt;br&gt;
Syntax of cp:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cp [OPTION] Source Destination
cp [OPTION] Source Directory
cp [OPTION] Source-1 Source-2 Source-3 Source-n Directory
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;strong&gt;15. mv - Most used commands for terminal&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;mv command is used to move file in one directory to another directory. Its one of the most used commands in terminal.&lt;br&gt;
Syntax of mv:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ mv [options] source dest&lt;/code&gt;&lt;/p&gt;

</description>
      <category>github</category>
      <category>opensource</category>
      <category>developer</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Hacktoberfest 2022 : A Complete Guide</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Wed, 05 Oct 2022 16:21:05 +0000</pubDate>
      <link>https://dev.to/spyder15/hacktoberfest-2022-a-complete-guide-35b5</link>
      <guid>https://dev.to/spyder15/hacktoberfest-2022-a-complete-guide-35b5</guid>
      <description>&lt;p&gt;Hacktoberfest is an annual event that occurs in October. It is created by DigitalOcean. Thousands of developers participate in this event across the globe.&lt;/p&gt;

&lt;p&gt;This article explains what Hacktoberfest is, how you can participate, and more!&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;What is Hacktoberfest?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;As mentioned in the introduction, Hacktoberfest occurs every year during October. It encourages developers to contribute to open source projects and practice programming by participating in solving problems across projects.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Who Can Participate in Hacktoberfest?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;All developers of different levels and backgrounds can participate in Hacktoberfest. Whether you're a beginner or an expert, or a junior or a senior, you can participate in Hacktoberfest.&lt;/p&gt;

&lt;p&gt;There are two ways to participate in Hacktoberfest: as a contributor or as a maintainer.&lt;/p&gt;

&lt;p&gt;A contributor is someone that helps open source projects resolve issues they have opened. Whereas a maintainer manages an open source project and presents issues that they need help with.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;New in Hacktoberfest 2022&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Hacktoberfest 2022 encourages low-code and non-code contributions, which can be done through blog posts, translating content, graphic design, and more. The contributions must be tracked through GitHub Pull Requests (PRs) as other types of contributions.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;How to Participate in Hacktoberfest 2022?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Registration to &lt;a href="https://hacktoberfest.com/"&gt; Hacktoberfest&lt;/a&gt;&lt;br&gt;
Registration to Hacktoberfest opens on September 26th. When you register, you'll be able to choose whether you're participating as a contributor or as a maintainer.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Participating as a Contributor&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;As a contributor, during October you must have four PRs that either:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Are merged into a participating repository;&lt;/li&gt;
&lt;li&gt;Or have the &lt;code&gt;hacktoberfest-accepted&lt;/code&gt; label;&lt;/li&gt;
&lt;li&gt;Or have an approving review, but not closed or draft.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A participating repository is a repository that has the hacktoberfest topic. Participation can be done through GitHub or GitLab.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Participating as a Maintainer&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;To participate as a maintainer, you must facilitate participation for contributors. The first step is to either:&lt;/p&gt;

&lt;p&gt;Add the hacktoberfest topic to your repository;&lt;br&gt;
Or add the &lt;code&gt;hacktoberfest-accepted&lt;/code&gt; label into your repository to be used on pull requests.&lt;/p&gt;

&lt;p&gt;Then, you must merge four PRs into your repository during October. If you decide to use the second option mentioned in the first step, make sure to add the &lt;code&gt;hacktoberfest-accepted&lt;/code&gt; label into these PRs.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Rules&lt;/strong&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;For PRs to be counted into your participation in Hacktoberfest, they must be merged between October 1st and October 31st.&lt;/li&gt;
&lt;li&gt;Contributions must be made to public repositories.&lt;/li&gt;
&lt;li&gt;If a PR has a label that contains the word spam in it, the PR will not be counted. Also, if a participant has 2 or more spam PRs, they'll be disqualified from Hacktoberfest.&lt;/li&gt;
&lt;li&gt;If a PR has a label that contains the word invalid, it will not be counted. The exception for this is if the PR also has the label hacktoberfest-accepted.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Unwritten Rules&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;This section covers rules that aren't necessarily covered by Hacktoberfest, but, from personal experience, are highly recommended to follow for both contributors and maintainers.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;For Contributors&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Do not spam any maintainer:&lt;/strong&gt;&lt;br&gt;
Hacktoberfest is a busy season for maintainers, so they'll highly likely take time to take a look at your PR. Spamming maintainers does not speed up the process and only ruins the experience for maintainers.&lt;br&gt;
&lt;strong&gt;2. Make valuable contributions:&lt;/strong&gt; During Hacktoberfest, many repositories are created with the purpose of participating in Hacktoberfest but without providing any value. For example, repositories where you just contribute by adding your name to a list. A lot of these repositories are caught by Hacktoberfest eventually, are disqualified, and contributions from them are labeled as invalid. There's no point in wasting time on this.&lt;br&gt;
Give back to your favorite projects: There are many projects out there that you have benefitted from throughout the year. Take this time to give back to these projects by helping them with the issues they have.&lt;br&gt;
&lt;strong&gt;3. Follow rules set by each project:&lt;/strong&gt; Projects should have contributing guidelines that explain how you can contribute to them. Make sure you read those first before you contribute.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;For Maintainers&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Create contributing guidelines:&lt;/strong&gt; Whether you have a small or big project, contributing guidelines make it easier for your contributors to know how they can contribute to your project.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Welcome all developers:&lt;/strong&gt;&lt;br&gt;
 Many beginner developers participate in Hacktoberfest. They may lack experience when it comes to contributing, but they're eager to do it. Make sure to be welcoming to all developers of different experiences. If possible, try creating issues of different levels of expertise.&lt;/p&gt;

</description>
      <category>hacktoberfest</category>
      <category>webdev</category>
      <category>opensource</category>
      <category>developer</category>
    </item>
    <item>
      <title>How to start as an Open Source Developer</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Tue, 27 Sep 2022 04:59:04 +0000</pubDate>
      <link>https://dev.to/spyder15/how-to-start-as-an-open-source-developer-54ae</link>
      <guid>https://dev.to/spyder15/how-to-start-as-an-open-source-developer-54ae</guid>
      <description>&lt;p&gt;&lt;strong&gt;What's an open source project ?&lt;/strong&gt;&lt;br&gt;
The tech world is moving according to the economic shift. There’s no company or startup which is ready to risk a lot of funds for the software project while there’s an alternative for that. What a company needs is to get a service up and running regardless if the software was built from scratch or as an open source project.&lt;/p&gt;

&lt;p&gt;At an individual level, open source saves time and money too. By the way, what reward do you get after building your project from scratch ? Why build something which already exists and you can get it for free ? Would love to hear your thoughts :)&lt;/p&gt;

&lt;p&gt;But what is an open source project ? It is a software project which is publicly free for anyone. That is, you can edit the source codes, change it to how you want. You can build your “big idea project” just on top of open source software. You can also release your sweet project to the community as an open source by allowing other developers to manipulate your codes. Sounds caring, right ?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Jump into open source project as a beginner&lt;/strong&gt;&lt;br&gt;
Step into open source projects as a newbie might be a challenge at first, however getting the right foot to start with can solve overheads. There are things you should know before starting contributing or building your application on top of an open source project.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here’s the list of things you should consider first:&lt;br&gt;
Able to use Git and Github comfortably.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clone a project from Github (or any other VC)&lt;/li&gt;
&lt;li&gt;Branching models (master, develop, feature)&lt;/li&gt;
&lt;li&gt;Push the project&lt;/li&gt;
&lt;li&gt;Raise and resolve issue&lt;/li&gt;
&lt;li&gt;Write good commit&lt;/li&gt;
&lt;li&gt;Tag and versioning the project.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can learn the basics from Github documentation...&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Learn how to write a good “README”.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A README in a Github serves as a brief documentation of a particular project. Writing a precise document about the project helps another developer to jump straight into the project and manipulate on whatever he wishes.&lt;/p&gt;

&lt;p&gt;On another hand, learning how to document your own project will help you to easily read and follow along with the docs. of other projects. While writing, there are a number of online tools to heavy-lift the job. I normally use dillinger to write the README before shipping it into Github. It has some placeholders which you can just change to fit your headings and contents. It supports markdown language as that used in Github.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Learn how to write clean codes.&lt;/strong&gt;&lt;br&gt;
By "clean codes" I mean the codes which are precise and easy to read. Don't just focus on the working codes, but the codes that another developer can read them and scale the project. Write the code while thinking about another person who'll come to read them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here are the tips for writing clean codes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Master the domain language of a given project. That is, if the software is about Health, then the naming convention and your variables will all align to the health context.&lt;/li&gt;
&lt;li&gt;Clear naming convention. Be very clean in naming the variables, methods and classes. Don't let your code become unequivocal just for laziness reasons.&lt;/li&gt;
&lt;li&gt;Use comments only where required.&lt;/li&gt;
&lt;li&gt;Obey DRY principle. Only define once and just reuse it where needed. Don't Repeat Yourself !&lt;/li&gt;
&lt;li&gt;Well structured file tree. Your files should be in an organized manner. Don't just write the codes anywhere! Also, specify your main file (entry-point file). This will help another contributor to easily know where your software starts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;What's next ?&lt;/strong&gt;&lt;br&gt;
If you're comfortable with the tips above then it's a right time for you to try out doing something handy.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pick one open source project of your choice. I'll write on sample open source projects for beginner.&lt;/li&gt;
&lt;li&gt;Read the project codes and documentation&lt;/li&gt;
&lt;li&gt;Contribute. I will upload soon the article on how to contribute as a pro.&lt;/li&gt;
&lt;li&gt;Or build your software on top of it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Thanks for reading this!&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>programming</category>
      <category>codenewbie</category>
      <category>developer</category>
    </item>
    <item>
      <title>Tailwind CSS</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Sun, 18 Sep 2022 10:06:09 +0000</pubDate>
      <link>https://dev.to/spyder15/tailwind-css-15kf</link>
      <guid>https://dev.to/spyder15/tailwind-css-15kf</guid>
      <description>&lt;p&gt;&lt;strong&gt;Tailwind CSS&lt;/strong&gt; can be used to make websites in the fastest and the easiest way.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tailwind CSS&lt;/strong&gt; is basically a utility-first CSS framework for rapidly building custom user interfaces. It is a highly customizable, low-level CSS framework that gives you all of the building blocks you need to build bespoke designs without any annoying opinionated styles you have to fight to override. &lt;/p&gt;

&lt;p&gt;The beauty of this thing called tailwind is it doesn’t impose design specification or how your site should look like, you simply bring tiny components together to construct a user interface that is unique. What Tailwind simply does is take a ‘raw’&lt;/p&gt;

&lt;p&gt;CSS file, processes this CSS file over a configuration file, and produces an output.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Tailwind CSS?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; The faster UI building process&lt;br&gt;
&lt;strong&gt;2.&lt;/strong&gt; It is a utility-first CSS framework which means we can use utility classes to build custom designs without writing CSS as in the traditional approach. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Advantages of Tailwind CSS:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; No more silly names for CSS classes and Ids.&lt;br&gt;
&lt;strong&gt;2.&lt;/strong&gt; Minimum lines of Code in CSS file.&lt;br&gt;
&lt;strong&gt;3.&lt;/strong&gt; We can customize the designs to make the components.&lt;br&gt;
&lt;strong&gt;4.&lt;/strong&gt; Makes the website responsive.&lt;br&gt;
&lt;strong&gt;5.&lt;/strong&gt; Makes the changes in the desired manner. &lt;br&gt;
&lt;strong&gt;6.&lt;/strong&gt; CSS is global in nature and if make changes in the file the property is changed in all the HTML files linked to it. But with the help of Tailwind CSS, we can use utility classes and make local changes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=hdGsFpZ0J2E"&gt;Why Should you use Tailwind CSS ?&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;❤️ Thank you very much for reading ❤️&lt;br&gt;
  Like | Share | Follow&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>css</category>
      <category>tailwindcss</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>🛑Git, its commands and GitHub.........</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Mon, 18 Jul 2022 08:17:28 +0000</pubDate>
      <link>https://dev.to/spyder15/git-its-commands-and-github-i7k</link>
      <guid>https://dev.to/spyder15/git-its-commands-and-github-i7k</guid>
      <description>&lt;p&gt;What if I tell you that you have a mistake at beginning of the project now your website is crashing and you can not reverse the changes. Devastating, Right!&lt;/p&gt;

&lt;p&gt;This was the feeling of every developer before Git came into existence. Still, most developers were not using Git because it was difficult to create servers to save source code. To solve this problem, a person name Tom Peterson created an online place to store source code without creating a server and called this online place GitHub.&lt;/p&gt;

&lt;p&gt;Most people confuse Git with GitHub, but both are far different from each other. Git is software that helps you store the history of progress that you made on source code. Whereas, GitHub is a place on the internet where you store your source code using git commands.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pros&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Easy to learn and start working&lt;/li&gt;
&lt;li&gt;You can easily reverse your mistakes&lt;/li&gt;
&lt;li&gt;You can quickly store your data on the internet.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Cons&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Fewer opportunities only for this field.&lt;br&gt;
It can not handle big files, you have to use the LTS version.&lt;br&gt;
It is had to debug errors, and hard to understand some concepts.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>github</category>
      <category>githunt</category>
      <category>git</category>
    </item>
    <item>
      <title>🛑WEB DESIGNING ROAD MAP.........🛑</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Tue, 07 Jun 2022 18:56:20 +0000</pubDate>
      <link>https://dev.to/spyder15/web-designing-road-map-1a16</link>
      <guid>https://dev.to/spyder15/web-designing-road-map-1a16</guid>
      <description>&lt;p&gt;Building websites is most often considered a technical job but the truth is far different from reality. most modern websites are first designed by web designers and then developed by web developers which means building a website includes creative as well as technical work.&lt;/p&gt;

&lt;p&gt;Web designing is the work of creating digital art which can show information in an easy and fun way so that people on the internet can easily understand it.&lt;/p&gt;

&lt;p&gt;Pros:-&lt;br&gt;
Website designing is easy to learn,&lt;br&gt;
It helps you to build beautiful websites,&lt;br&gt;
There are a lot of free tools to design a website,&lt;br&gt;
A lot of high paying internships and job opportunities,&lt;br&gt;
you can do freelancing projects and earn money in a short time.&lt;/p&gt;

&lt;p&gt;Cons:-&lt;br&gt;
You have to use many tools to complete a project.&lt;br&gt;
You have to work longer to create something creative.&lt;br&gt;
You have to do a lot of meetings to get feedback and improve the design.&lt;br&gt;
It highly competitive market and you have to do many projects to gain an advantage.&lt;/p&gt;

&lt;p&gt;Why web developers should learn web designing?&lt;br&gt;
Building a website can become very confusing if you have designs of a website then you can build a website faster. Not only that it is very creative work, you can work at any company or start a business.&lt;/p&gt;

&lt;p&gt;Web designing is divided into parts:&lt;/p&gt;

&lt;p&gt;User experience (UX): In this part, you have to research about project and its users and then design a rough diagram of the website on paper or computer which shows the workflow of the website.&lt;/p&gt;

&lt;p&gt;User Interface (UI): This part is the actual design that shows colours, patterns, size, and images which you can use to develop the website.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Roadmap to Full-Stack Development</title>
      <dc:creator>Priyanshu mundra</dc:creator>
      <pubDate>Sat, 04 Jun 2022 12:17:27 +0000</pubDate>
      <link>https://dev.to/spyder15/roadmap-to-full-stack-development-fg0</link>
      <guid>https://dev.to/spyder15/roadmap-to-full-stack-development-fg0</guid>
      <description>&lt;p&gt;📌 &lt;strong&gt;Who is a Full-Stack Developer?&lt;/strong&gt;&lt;br&gt;
A full-stack developer is an engineer who can handle all the work of databases, servers, systems engineering, and clients. Depending on the project, what customers need may be a mobile stack, a Web stack, or a native application stack&lt;/p&gt;

&lt;p&gt;📌 &lt;strong&gt;Why become a Full-Stack Developer?&lt;/strong&gt;&lt;br&gt;
As a full-stack developer, you know of multiple technologies. Whether it's about adding images to a web page or creating a database, you'd be familiar with all of them. This gives you an edge over other developers because you can make technical decisions faster and see the big picture.&lt;/p&gt;

&lt;p&gt;📌 &lt;strong&gt;Roles of Full-Stack Developer:&lt;/strong&gt;&lt;br&gt;
The primary responsibility of a Full Stack Developer includes designing user interactions on websites, developing servers and databases for website functionality, and coding for mobile platforms.&lt;/p&gt;

&lt;p&gt;📌 &lt;strong&gt;Particular responsibilities often include:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt;  Developing front-end website architecture.&lt;br&gt;
&lt;strong&gt;2.&lt;/strong&gt;  Designing user interactions on web pages.&lt;br&gt;
&lt;strong&gt;3.&lt;/strong&gt;  Developing back-end website applications.&lt;br&gt;
&lt;strong&gt;4.&lt;/strong&gt;  Creating servers and databases for functionality.&lt;br&gt;
&lt;strong&gt;5.&lt;/strong&gt;  Ensuring cross-platform optimization for mobile phones.&lt;br&gt;
&lt;strong&gt;6.&lt;/strong&gt;  Ensuring responsiveness of applications.&lt;br&gt;
&lt;strong&gt;7.&lt;/strong&gt;  Working alongside graphic designers for web design &lt;br&gt;
        features.&lt;br&gt;
&lt;strong&gt;8.&lt;/strong&gt;  Seeing through a project from conception to finished product.&lt;br&gt;
&lt;strong&gt;9.&lt;/strong&gt;  Designing and developing APIs.&lt;br&gt;
&lt;strong&gt;10.&lt;/strong&gt; Meeting both technical and consumer needs.&lt;br&gt;
&lt;strong&gt;11.&lt;/strong&gt; Staying a breast of developments in web applications and &lt;br&gt;
        programming languages.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;📌 Tech-Stack for a Full-Stack Developer&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;🚩 &lt;strong&gt;Basic Tech (Building blocks &amp;amp; All are important)&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;1.&lt;/strong&gt; HTML: Defines the structure of the application&lt;br&gt;
&lt;strong&gt;2.&lt;/strong&gt; CSS: Defines how the application will be presented&lt;br&gt;
&lt;strong&gt;3.&lt;/strong&gt; JavaSript: Defines the functionality of the application&lt;/p&gt;

&lt;p&gt;🚩 &lt;strong&gt;Back-End Technology (Any one of the following)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java&lt;/li&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;C#&lt;/li&gt;
&lt;li&gt;Ruby&lt;/li&gt;
&lt;li&gt;Php&lt;/li&gt;
&lt;li&gt;Node.js (Easy and Latest)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🚩 &lt;strong&gt;DataBases (Any one of each category)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; SQL&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; MySQL (Preferrable)&lt;/li&gt;
&lt;li&gt;    SQL Server&lt;/li&gt;
&lt;li&gt;    Oracle&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2.&lt;/strong&gt; NoSQL&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;MongoDB (Preferrable)&lt;/li&gt;
&lt;li&gt;CouchDB&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;🚩 Version Control&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Git&lt;/li&gt;
&lt;li&gt;GitHub (Preferrable) / GitLab / BitBucket&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;🚩 Cloud Services (Any one of the following)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Google Cloud Platform (GCP)&lt;/li&gt;
&lt;li&gt;Microsoft Azure&lt;/li&gt;
&lt;li&gt;Amazon Web Services (AWS)&lt;/li&gt;
&lt;li&gt;Heroku&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;🚩 Containers&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;li&gt;Kubernetes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;📌 Common terms for Full-Stack Development&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;MEAN Stack Developer&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mongo DB&lt;/li&gt;
&lt;li&gt;Express Js&lt;/li&gt;
&lt;li&gt;Angular Js&lt;/li&gt;
&lt;li&gt;Node Js&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;p&gt;MERN Stack Developer&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mongo DB&lt;/li&gt;
&lt;li&gt;Express Js&lt;/li&gt;
&lt;li&gt;React Js&lt;/li&gt;
&lt;li&gt;Node Js
You can use this blog as a checklist in your journey&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;❤️ Thank you very much for reading ❤️&lt;/strong&gt;&lt;br&gt;
Like | Share | Follow&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>discuss</category>
      <category>learn</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
