<?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: Munish Kumar sharma</title>
    <description>The latest articles on DEV Community by Munish Kumar sharma (@munish_kumarsharma_c7d83).</description>
    <link>https://dev.to/munish_kumarsharma_c7d83</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%2F3740243%2F9865a00b-d480-48b2-b110-b76140497b45.png</url>
      <title>DEV Community: Munish Kumar sharma</title>
      <link>https://dev.to/munish_kumarsharma_c7d83</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/munish_kumarsharma_c7d83"/>
    <language>en</language>
    <item>
      <title>How to Install and Set Up MySQL on Windows 11, Linux, and macOS (2026 Complete Guide)</title>
      <dc:creator>Munish Kumar sharma</dc:creator>
      <pubDate>Tue, 03 Mar 2026 06:34:38 +0000</pubDate>
      <link>https://dev.to/munish_kumarsharma_c7d83/how-to-install-and-set-up-mysql-on-windows-11-linux-and-macos-2026-complete-guide-344p</link>
      <guid>https://dev.to/munish_kumarsharma_c7d83/how-to-install-and-set-up-mysql-on-windows-11-linux-and-macos-2026-complete-guide-344p</guid>
      <description>&lt;p&gt;Setting up a database locally is a &lt;strong&gt;fundamental backend skill&lt;/strong&gt;. Whether you're building with Node.js, PHP, Python, or Java — understanding how to install and configure MySQL properly gives you real control over your development environment.&lt;/p&gt;

&lt;p&gt;In this 2026 updated guide, you’ll learn:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;How to install MySQL on Windows 11&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How to install MySQL on Linux (Ubuntu/Debian)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How to install MySQL on macOS&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How to secure your installation&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How to verify everything works&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you prefer video learning, I’ve also created a full step-by-step walkthrough here:&lt;/p&gt;

&lt;p&gt;🎥 &lt;strong&gt;Watch the complete installation tutorial:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
👉 &lt;a href="https://youtu.be/vm5GjZ28MSU" rel="noopener noreferrer"&gt;https://youtu.be/vm5GjZ28MSU&lt;/a&gt;&lt;/p&gt;


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

&lt;p&gt;MySQL is one of the world’s most popular open-source relational database management systems (RDBMS). It stores data in structured tables and is widely used in modern web development.&lt;/p&gt;

&lt;p&gt;It works seamlessly with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Node.js&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PHP&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Python&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Java&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;.NET&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MERN / MEAN Stack&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you're learning backend development in 2026, MySQL is still highly relevant.&lt;/p&gt;


&lt;h1&gt;
  
  
  Install MySQL on Windows 11 (2026)
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.w3schools.com%2Fmysql%2Fimg_win_install1.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.w3schools.com%2Fmysql%2Fimg_win_install1.png%2520align%3D" alt="https://www.w3schools.com/mysql/img_win_install1.png" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.tutorials24x7.com%2Fsites%2Fdefault%2Ffiles%2Finline-images%2Fstep6_1.jpg%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.tutorials24x7.com%2Fsites%2Fdefault%2Ffiles%2Finline-images%2Fstep6_1.jpg%2520align%3D" alt="https://www.tutorials24x7.com/sites/default/files/inline-images/step6_1.jpg" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.javaguicodexample.com%2Fmysqldetailedconfiguration_files%2Fmysqlwindetailinstall001.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.javaguicodexample.com%2Fmysqldetailedconfiguration_files%2Fmysqlwindetailinstall001.png%2520align%3D" alt="https://www.javaguicodexample.com/mysqldetailedconfiguration_files/mysqlwindetailinstall001.png" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4&lt;/p&gt;
&lt;h3&gt;
  
  
  Step 1: Download MySQL Installer
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Visit the official MySQL website.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Download &lt;strong&gt;MySQL Installer for Windows&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose either:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;*   Web Installer (small file)

*   Full Installer (offline version)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;For most developers, the Web Installer is sufficient.&lt;/p&gt;


&lt;h3&gt;
  
  
  Step 2: Run the Installer
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Open the downloaded file.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose setup type:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;*   **Developer Default (Recommended)**

*   Server Only

*   Custom
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;If you're coding, choose &lt;strong&gt;Developer Default&lt;/strong&gt;.&lt;/p&gt;


&lt;h3&gt;
  
  
  Step 3: Configure MySQL Server
&lt;/h3&gt;

&lt;p&gt;During setup:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Configuration Type → Development Machine&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Port → Keep default (3306)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Authentication → Use strong password authentication&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Set root password (important)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Complete the configuration process.&lt;/p&gt;


&lt;h3&gt;
  
  
  Step 4: Verify Installation
&lt;/h3&gt;

&lt;p&gt;Open Command Prompt and run:&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;p&gt;If it shows the version number, installation is successful.&lt;/p&gt;

&lt;p&gt;You can also open &lt;strong&gt;MySQL Workbench&lt;/strong&gt; to manage databases visually.&lt;/p&gt;




&lt;h1&gt;
  
  
  Install MySQL on Linux (Ubuntu/Debian)
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.cherryservers.com%2Fv3%2Fassets%2Fblog%2F2023-11-06%2F04.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.cherryservers.com%2Fv3%2Fassets%2Fblog%2F2023-11-06%2F04.png%2520align%3D" alt="https://www.cherryservers.com/v3/assets/blog/2023-11-06/04.png" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimages.openai.com%2Fstatic-rsc-1%2FosJLieeFqHd2Ld4ygRLHe-Aj-S2X9gVnVnFVAj3dlyJNykX17iWULDOkHP4pvmkgeeKy8t_cD5NDlMueyRDfYRIjjxZj3xGLvtjcjRN85i5np_cyp4rWm6tvjZATicWzOhUTjUzgkHtJMT8R24TibA%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimages.openai.com%2Fstatic-rsc-1%2FosJLieeFqHd2Ld4ygRLHe-Aj-S2X9gVnVnFVAj3dlyJNykX17iWULDOkHP4pvmkgeeKy8t_cD5NDlMueyRDfYRIjjxZj3xGLvtjcjRN85i5np_cyp4rWm6tvjZATicWzOhUTjUzgkHtJMT8R24TibA%2520align%3D" alt="https://i.sstatic.net/2hXQi.png" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.netikus.net%2Fdocuments%2FMySQLServerInstallation%2Fsetrootpassword.jpg%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwww.netikus.net%2Fdocuments%2FMySQLServerInstallation%2Fsetrootpassword.jpg%2520align%3D" alt="https://www.netikus.net/documents/MySQLServerInstallation/setrootpassword.jpg" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Update System
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt update
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step 2: Install MySQL Server
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt install mysql-server
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step 3: Secure Installation
&lt;/h3&gt;



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

&lt;/div&gt;



&lt;p&gt;Follow the prompts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Set root password&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Remove anonymous users&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Disallow remote root login&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Remove test database&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Choose &lt;strong&gt;Yes&lt;/strong&gt; for most security options.&lt;/p&gt;




&lt;h3&gt;
  
  
  Step 4: Start and Enable MySQL
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo systemctl start mysql
sudo systemctl enable mysql
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Check status:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo systemctl status mysql
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo mysql -u root -p
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  Install MySQL on macOS (2026)
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.mysql.com%2Fdoc%2Fmysql-installation-excerpt%2F5.7%2Fen%2Fimages%2Fmac-installer-dmg-introduction.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.mysql.com%2Fdoc%2Fmysql-installation-excerpt%2F5.7%2Fen%2Fimages%2Fmac-installer-dmg-introduction.png%2520align%3D" alt="https://dev.mysql.com/doc/mysql-installation-excerpt/5.7/en/images/mac-installer-dmg-introduction.png" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.mysql.com%2Fdoc%2Fmysql-installation-excerpt%2F5.7%2Fen%2Fimages%2Fmac-installer-summary.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.mysql.com%2Fdoc%2Fmysql-installation-excerpt%2F5.7%2Fen%2Fimages%2Fmac-installer-summary.png%2520align%3D" alt="https://dev.mysql.com/doc/mysql-installation-excerpt/5.7/en/images/mac-installer-summary.png" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.mysql.com%2Fdoc%2Fmysql-macos-excerpt%2F5.7%2Fen%2Fimages%2Fmac-installer-preference-pane-location.png%2520align%3D" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.mysql.com%2Fdoc%2Fmysql-macos-excerpt%2F5.7%2Fen%2Fimages%2Fmac-installer-preference-pane-location.png%2520align%3D" alt="https://dev.mysql.com/doc/mysql-macos-excerpt/5.7/en/images/mac-installer-preference-pane-location.png" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4&lt;/p&gt;

&lt;h2&gt;
  
  
  Method 1: Using DMG Installer (Recommended)
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Download the macOS &lt;code&gt;.dmg&lt;/code&gt; installer from the official MySQL website.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Open the file.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Follow installation steps.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Set root password.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MySQL will appear in System Settings.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  Method 2: Using Homebrew
&lt;/h2&gt;

&lt;p&gt;If you use Homebrew:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;brew update
brew install mysql
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Start MySQL:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;brew services start mysql
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

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

&lt;/div&gt;






&lt;h1&gt;
  
  
  Secure Your MySQL Installation
&lt;/h1&gt;

&lt;p&gt;Always run:&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;p&gt;This improves security by:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Removing anonymous users&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Disabling remote root login&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Removing test databases&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Strengthening password setup&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Security should never be skipped.&lt;/p&gt;




&lt;h1&gt;
  
  
  Test Your MySQL Setup
&lt;/h1&gt;

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

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mysql -u root -p
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Create a test database:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;CREATE DATABASE testdb;
SHOW DATABASES;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If it appears in the list, your installation works perfectly.&lt;/p&gt;




&lt;h1&gt;
  
  
  Common MySQL Installation Errors (2026)
&lt;/h1&gt;

&lt;h3&gt;
  
  
  MySQL Not Recognized as Command
&lt;/h3&gt;

&lt;p&gt;Add MySQL &lt;code&gt;bin&lt;/code&gt; folder to your system PATH.&lt;/p&gt;

&lt;p&gt;Windows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Search "Environment Variables"&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Add MySQL bin directory to PATH&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;macOS/Linux:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export PATH="/usr/local/mysql/bin:$PATH"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  Port 3306 Already in Use
&lt;/h3&gt;

&lt;p&gt;Edit MySQL configuration file (&lt;code&gt;my.ini&lt;/code&gt; or &lt;code&gt;my.cnf&lt;/code&gt;) and change the port number.&lt;/p&gt;




&lt;h1&gt;
  
  
  Why Installing MySQL Locally Still Matters in 2026
&lt;/h1&gt;

&lt;p&gt;Yes, cloud databases like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;AWS RDS&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PlanetScale&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Supabase&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;are powerful.&lt;/p&gt;

&lt;p&gt;But if you don’t understand:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Local configuration&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Services&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Authentication&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ports&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Security&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You’ll struggle when debugging real production systems.&lt;/p&gt;

&lt;p&gt;Strong backend developers know their environment inside out.&lt;/p&gt;




&lt;h1&gt;
  
  
  Final Thoughts
&lt;/h1&gt;

&lt;p&gt;Installing MySQL isn’t just a setup task. It’s foundational backend knowledge.&lt;/p&gt;

&lt;p&gt;If you're serious about web development, master these basics before jumping into cloud abstractions.&lt;/p&gt;

&lt;p&gt;Again, if you prefer video guidance, watch the complete walkthrough here:&lt;/p&gt;

&lt;p&gt;🎥 &lt;a href="https://youtu.be/vm5GjZ28MSU" rel="noopener noreferrer"&gt;https://youtu.be/vm5GjZ28MSU&lt;/a&gt;&lt;/p&gt;

</description>
      <category>backend</category>
      <category>beginners</category>
      <category>database</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>🚀 I Started Learning Java &amp; DSA From Books Instead of Tutorials — Here’s What Happened</title>
      <dc:creator>Munish Kumar sharma</dc:creator>
      <pubDate>Sun, 15 Feb 2026 13:43:48 +0000</pubDate>
      <link>https://dev.to/munish_kumarsharma_c7d83/i-started-learning-java-dsa-from-books-instead-of-tutorials-heres-what-happened-4ahm</link>
      <guid>https://dev.to/munish_kumarsharma_c7d83/i-started-learning-java-dsa-from-books-instead-of-tutorials-heres-what-happened-4ahm</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Building strong Java fundamentals through books, deep thinking, and deliberate practice.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Most developers start Java with YouTube tutorials.&lt;/p&gt;

&lt;p&gt;I decided to slow down.&lt;/p&gt;

&lt;p&gt;Instead of binge-watching courses at 2x speed, I started learning &lt;strong&gt;Java and Data Structures &amp;amp; Algorithms (DSA)&lt;/strong&gt; primarily through books — and the difference has been powerful.&lt;/p&gt;

&lt;p&gt;This is my structured approach and why I believe reading &amp;gt; watching (if you're serious).&lt;/p&gt;




&lt;h2&gt;
  
  
  📚 The Books I'm Using
&lt;/h2&gt;

&lt;p&gt;I’m currently studying these two books in parallel:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Head First Java&lt;/strong&gt; by Kathy Sierra &amp;amp; Bert Bates
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Java: The Complete Reference&lt;/strong&gt; by Herbert Schildt
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And yes — I’m implementing everything in VS Code as I go.&lt;/p&gt;




&lt;h2&gt;
  
  
  📘 1️⃣ Head First Java — For Concept Clarity
&lt;/h2&gt;

&lt;p&gt;This book feels different.&lt;/p&gt;

&lt;p&gt;It’s not just syntax.&lt;br&gt;
It forces you to think.&lt;/p&gt;

&lt;p&gt;What I like about it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Brain-friendly explanations
&lt;/li&gt;
&lt;li&gt;Strong focus on OOP fundamentals
&lt;/li&gt;
&lt;li&gt;Concept-driven learning
&lt;/li&gt;
&lt;li&gt;Practical mental models
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Even though it’s based on older JDK versions, core concepts like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Classes
&lt;/li&gt;
&lt;li&gt;Objects
&lt;/li&gt;
&lt;li&gt;Inheritance
&lt;/li&gt;
&lt;li&gt;Polymorphism
&lt;/li&gt;
&lt;li&gt;Encapsulation
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;…are timeless.&lt;/p&gt;

&lt;p&gt;If your fundamentals are strong, version updates don’t scare you.&lt;/p&gt;




&lt;h2&gt;
  
  
  📕 2️⃣ Java: The Complete Reference — For Depth
&lt;/h2&gt;

&lt;p&gt;This one is more traditional and structured.&lt;/p&gt;

&lt;p&gt;It gives:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Detailed explanations
&lt;/li&gt;
&lt;li&gt;Language internals
&lt;/li&gt;
&lt;li&gt;API coverage
&lt;/li&gt;
&lt;li&gt;Advanced concepts
&lt;/li&gt;
&lt;li&gt;Strong technical precision
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If &lt;em&gt;Head First&lt;/em&gt; builds intuition, this book builds authority.&lt;/p&gt;

&lt;p&gt;Reading them together helps me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Understand visually
&lt;/li&gt;
&lt;li&gt;Reinforce technically
&lt;/li&gt;
&lt;li&gt;Implement practically
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🎥 Books vs Tutorials — The Honest Comparison
&lt;/h2&gt;

&lt;p&gt;Let’s be real.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tutorials &amp;amp; Courses:
&lt;/h3&gt;

&lt;p&gt;✔ Fast&lt;br&gt;&lt;br&gt;
✔ Easy to consume&lt;br&gt;&lt;br&gt;
✔ Great for starting&lt;br&gt;&lt;br&gt;
❌ Passive learning&lt;br&gt;&lt;br&gt;
❌ Easy to binge without retention&lt;br&gt;&lt;br&gt;
❌ Creates illusion of productivity  &lt;/p&gt;




&lt;h3&gt;
  
  
  Books:
&lt;/h3&gt;

&lt;p&gt;✔ Deep understanding&lt;br&gt;&lt;br&gt;
✔ Better retention&lt;br&gt;&lt;br&gt;
✔ Structured knowledge&lt;br&gt;&lt;br&gt;
✔ Builds real problem-solving ability&lt;br&gt;&lt;br&gt;
❌ Slower&lt;br&gt;&lt;br&gt;
❌ Requires focus&lt;br&gt;&lt;br&gt;
❌ No spoon-feeding  &lt;/p&gt;




&lt;h2&gt;
  
  
  🔥 My Conclusion: Reading &amp;gt; Watching (If You’re Serious)
&lt;/h2&gt;

&lt;p&gt;If your goal is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cracking top tech companies
&lt;/li&gt;
&lt;li&gt;Mastering DSA
&lt;/li&gt;
&lt;li&gt;Thinking like a programmer
&lt;/li&gt;
&lt;li&gt;Writing clean, structured code
&lt;/li&gt;
&lt;li&gt;Understanding &lt;em&gt;why&lt;/em&gt; something works
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Books win.&lt;/p&gt;

&lt;p&gt;But here’s the real formula:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;📖 Read → 💻 Implement → 🎥 Watch only for doubts → 🔁 Repeat&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Courses are tools.&lt;br&gt;
Books are foundation builders.&lt;/p&gt;




&lt;h2&gt;
  
  
  💻 My Current Learning Plan
&lt;/h2&gt;

&lt;p&gt;Right now I’m focusing on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Core Java (OOP, memory basics, JVM concepts)&lt;/li&gt;
&lt;li&gt;Starting DSA in Java (arrays, recursion, linked lists)&lt;/li&gt;
&lt;li&gt;Writing every example manually&lt;/li&gt;
&lt;li&gt;No skipping chapters&lt;/li&gt;
&lt;li&gt;No rushing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Consistency &amp;gt; Motivation.&lt;/p&gt;




&lt;h2&gt;
  
  
  🧠 Why I Chose This Path
&lt;/h2&gt;

&lt;p&gt;Most people want shortcuts.&lt;/p&gt;

&lt;p&gt;But programming is a craft.&lt;/p&gt;

&lt;p&gt;And crafts are built slowly — with depth.&lt;/p&gt;

&lt;p&gt;I don’t just want to “know Java.”&lt;/p&gt;

&lt;p&gt;I want to understand it properly.&lt;/p&gt;




&lt;h2&gt;
  
  
  What About You?
&lt;/h2&gt;

&lt;p&gt;Do you prefer learning from books or tutorials?&lt;/p&gt;

&lt;p&gt;If you're also learning Java or DSA, let’s connect and grow together 🚀&lt;/p&gt;

</description>
      <category>java</category>
      <category>dsa</category>
      <category>programming</category>
      <category>beginners</category>
    </item>
    <item>
      <title>I Shipped My First VS Code Extension — Here’s What I Learned</title>
      <dc:creator>Munish Kumar sharma</dc:creator>
      <pubDate>Sat, 07 Feb 2026 18:18:06 +0000</pubDate>
      <link>https://dev.to/munish_kumarsharma_c7d83/i-shipped-my-first-vs-code-extension-heres-what-i-learned-3mkn</link>
      <guid>https://dev.to/munish_kumarsharma_c7d83/i-shipped-my-first-vs-code-extension-heres-what-i-learned-3mkn</guid>
      <description>&lt;p&gt;Every developer has faced this.&lt;/p&gt;

&lt;p&gt;You clone a project.&lt;br&gt;
Open it in VS Code.&lt;br&gt;
And then… pause.&lt;/p&gt;

&lt;p&gt;“How do I run this?”&lt;/p&gt;

&lt;p&gt;You skim the README.&lt;br&gt;
Try one command.&lt;br&gt;
It fails.&lt;br&gt;
Try another.&lt;/p&gt;

&lt;p&gt;npm run dev&lt;br&gt;
npm start&lt;br&gt;
flask run&lt;br&gt;
python manage.py runserver&lt;br&gt;
uvicorn main:app --reload&lt;/p&gt;

&lt;p&gt;Different projects.&lt;br&gt;
Different frameworks.&lt;br&gt;
Same confusion.&lt;/p&gt;

&lt;p&gt;After switching between JavaScript and Python projects for a while, I realized the problem wasn’t skill.&lt;/p&gt;

&lt;p&gt;It was friction.&lt;/p&gt;

&lt;p&gt;The Hidden Cost of Context Switching&lt;/p&gt;

&lt;p&gt;Modern dev work isn’t hard because frameworks are bad.&lt;br&gt;
It’s hard because every framework chooses its own startup ritual.&lt;/p&gt;

&lt;p&gt;React (Vite) → npm run dev&lt;/p&gt;

&lt;p&gt;Next.js → npm run dev&lt;/p&gt;

&lt;p&gt;Angular → npm start&lt;/p&gt;

&lt;p&gt;Flask → flask run&lt;/p&gt;

&lt;p&gt;Django → python manage.py runserver&lt;/p&gt;

&lt;p&gt;FastAPI → uvicorn main:app --reload&lt;/p&gt;

&lt;p&gt;If you work across stacks, your brain becomes a lookup table for commands.&lt;/p&gt;

&lt;p&gt;That’s wasted mental energy.&lt;/p&gt;

&lt;p&gt;Computers are better at pattern detection than humans —&lt;br&gt;
so why are humans doing this work?&lt;/p&gt;

&lt;p&gt;The Idea: Let the Editor Handle It&lt;/p&gt;

&lt;p&gt;Instead of memorizing commands, I asked:&lt;/p&gt;

&lt;p&gt;What if VS Code could detect the project and run it automatically?&lt;/p&gt;

&lt;p&gt;That question became my first VS Code extension: WebRun.&lt;/p&gt;

&lt;p&gt;The idea is simple:&lt;/p&gt;

&lt;p&gt;Open a project&lt;/p&gt;

&lt;p&gt;Click ▶️&lt;/p&gt;

&lt;p&gt;The correct dev server starts&lt;/p&gt;

&lt;p&gt;No configuration.&lt;br&gt;
No cloud services.&lt;br&gt;
No tracking.&lt;/p&gt;

&lt;p&gt;Just automation for something developers repeat every day.&lt;/p&gt;

&lt;p&gt;How It Works (No AI, No Magic)&lt;/p&gt;

&lt;p&gt;WebRun doesn’t guess.&lt;br&gt;
It looks for signals, the same ones developers rely on subconsciously.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;package.json&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Dependencies and scripts clearly indicate:&lt;/p&gt;

&lt;p&gt;Vite&lt;/p&gt;

&lt;p&gt;Next.js&lt;/p&gt;

&lt;p&gt;CRA&lt;/p&gt;

&lt;p&gt;NestJS&lt;/p&gt;

&lt;p&gt;Express / Fastify&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Framework config files&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Files like:&lt;/p&gt;

&lt;p&gt;vite.config.js&lt;/p&gt;

&lt;p&gt;next.config.js&lt;/p&gt;

&lt;p&gt;angular.json&lt;/p&gt;

&lt;p&gt;Frameworks announce themselves if you listen.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Python project clues&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;manage.py → Django&lt;/p&gt;

&lt;p&gt;requirements.txt + app.py → Flask&lt;/p&gt;

&lt;p&gt;main.py → FastAPI&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Folder structure&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Common full-stack layouts:&lt;/p&gt;

&lt;p&gt;frontend / backend&lt;br&gt;
client / server&lt;br&gt;
web / api&lt;/p&gt;

&lt;p&gt;If both are detected, WebRun starts two servers in parallel.&lt;/p&gt;

&lt;p&gt;What WebRun Supports&lt;/p&gt;

&lt;p&gt;Right now, WebRun supports:&lt;/p&gt;

&lt;p&gt;Frontend: React, Next.js, Vue, Angular, Svelte, Astro&lt;/p&gt;

&lt;p&gt;Backend (Node): Express, Fastify, NestJS&lt;/p&gt;

&lt;p&gt;Backend (Python): Flask, Django, FastAPI&lt;/p&gt;

&lt;p&gt;Static HTML/CSS/JS&lt;/p&gt;

&lt;p&gt;Full-stack projects&lt;/p&gt;

&lt;p&gt;All triggered with one click inside VS Code.&lt;/p&gt;

&lt;p&gt;Lessons from Shipping My First Extension&lt;/p&gt;

&lt;p&gt;Building was the easy part.&lt;br&gt;
Shipping taught me everything else.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Distribution beats perfection&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A perfect tool with zero users doesn’t exist.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Documentation is the product&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If people can’t understand it quickly, they uninstall.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Automation &amp;gt; configuration&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Every setting you expose is a chance for drop-off.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open source builds trust fast&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Clear scope + MIT license = healthy contributions.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Small tools actually ship&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;WebRun does one job:&lt;/p&gt;

&lt;p&gt;run the project&lt;/p&gt;

&lt;p&gt;That focus made shipping possible.&lt;/p&gt;

&lt;p&gt;Open Source &amp;amp; Links&lt;/p&gt;

&lt;p&gt;WebRun is completely open source and MIT licensed.&lt;/p&gt;

&lt;p&gt;VS Code Marketplace:&lt;br&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=codewithmishu.webrun" rel="noopener noreferrer"&gt;https://marketplace.visualstudio.com/items?itemName=codewithmishu.webrun&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;GitHub Repository:&lt;br&gt;
&lt;a href="https://github.com/CodeWithMishu/WebRun" rel="noopener noreferrer"&gt;https://github.com/CodeWithMishu/WebRun&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Feedback, issues, and contributions are welcome.&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;WebRun isn’t trying to replace the terminal.&lt;br&gt;
It’s trying to remove unnecessary thinking from daily workflows.&lt;/p&gt;

&lt;p&gt;If developers repeat something every day,&lt;br&gt;
computers should automate it.&lt;/p&gt;

&lt;p&gt;If you’re building developer tools:&lt;/p&gt;

&lt;p&gt;Ship early&lt;/p&gt;

&lt;p&gt;Learn in public&lt;/p&gt;

&lt;p&gt;Iterate based on real usage&lt;/p&gt;

&lt;p&gt;That mindset is how WebRun came to life.&lt;/p&gt;

</description>
      <category>vscode</category>
      <category>opensource</category>
      <category>webdev</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
