<?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: PHILIP KAPLONG</title>
    <description>The latest articles on DEV Community by PHILIP KAPLONG (@sirphilip).</description>
    <link>https://dev.to/sirphilip</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3708628%2Feb8b9f32-1807-45e7-a199-1e68a7cd93f0.png</url>
      <title>DEV Community: PHILIP KAPLONG</title>
      <link>https://dev.to/sirphilip</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sirphilip"/>
    <language>en</language>
    <item>
      <title>What I Learned About Version Control: Git &amp; GitHub</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Mon, 13 Jul 2026 06:57:30 +0000</pubDate>
      <link>https://dev.to/sirphilip/what-i-learned-about-version-control-git-github-57dg</link>
      <guid>https://dev.to/sirphilip/what-i-learned-about-version-control-git-github-57dg</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Last week i had the chance of a attending a version control class and this is what i learnt.Before Git and GitHub, people used to save multiple copies of the same project whenever I made changes.The folders would quickly fill up with files like &lt;code&gt;project_final&lt;/code&gt;, &lt;code&gt;project_final_v2&lt;/code&gt;, and &lt;code&gt;project_final_latest&lt;/code&gt;. This approach worked for small projects, but it became confusing and inefficient as projects grew.&lt;/p&gt;

&lt;p&gt;I discovered that version control is not just for professional software developers—it is an essential skill for anyone writing code, analyzing data, or collaborating on projects. In this article, I share the major concepts I learned and why they matter.&lt;/p&gt;

&lt;h2&gt;
  
  
  Understanding Version Control
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Version control&lt;/strong&gt; is a system that records changes made to files over time. Instead of creating multiple copies of the same project, it keeps a history of every change, making it easy to review previous versions or restore them if something goes wrong.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Git&lt;/strong&gt; is a version control system that runs on your computer. It tracks changes, records project history, and allows you to manage different versions of your files.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GitHub&lt;/strong&gt;, on the other hand, is an online platform that hosts Git repositories. It allows developers to store their projects in the cloud, collaborate with others, and back up their work.&lt;/p&gt;

&lt;p&gt;In simple terms, Git manages your project's history, while GitHub provides a place to share and collaborate on that history.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting Started with Git
&lt;/h2&gt;

&lt;p&gt;Setting up Git was straightforward. After installing Git, I configured my username and email so that every commit would be associated with my identity.&lt;/p&gt;

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

&lt;p&gt;I also learned how to navigate the terminal using basic commands to create folders, move between directories, and list files. Although using the command line felt unfamiliar at first, it quickly became a faster way to work with projects.&lt;/p&gt;

&lt;p&gt;Creating my first repository using &lt;code&gt;git init&lt;/code&gt; helped me understand that Git starts tracking a project from the moment it is initialized.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Git Workflow
&lt;/h2&gt;

&lt;p&gt;The Git workflow was one of the most important concepts I learned.&lt;/p&gt;

&lt;p&gt;Every change follows a simple process:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First, I make changes to files in my working directory.&lt;/li&gt;
&lt;li&gt;Next, I stage the changes using &lt;code&gt;git add&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Finally, I save a snapshot of those changes using &lt;code&gt;git commit&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Commands such as &lt;code&gt;git status&lt;/code&gt; became extremely useful because they showed which files had been modified, staged, or were ready to be committed.&lt;/p&gt;

&lt;p&gt;Understanding this workflow made Git much less intimidating and helped me appreciate how organized version control can be.&lt;/p&gt;

&lt;h2&gt;
  
  
  Working with GitHub
&lt;/h2&gt;

&lt;p&gt;After learning Git locally, I connected my repository to GitHub. This allowed me to upload my projects and access them from anywhere.&lt;/p&gt;

&lt;p&gt;I also learned the difference between &lt;strong&gt;pushing&lt;/strong&gt; and &lt;strong&gt;pulling&lt;/strong&gt; changes. &lt;strong&gt;Pushing&lt;/strong&gt; uploads my local commits to GitHub, while &lt;strong&gt;pulling&lt;/strong&gt; downloads the latest updates from GitHub to my local machine.&lt;/p&gt;

&lt;p&gt;Another concept that initially confused me was the difference between &lt;strong&gt;forking&lt;/strong&gt; and &lt;strong&gt;cloning&lt;/strong&gt;. I eventually understood that &lt;strong&gt;forking&lt;/strong&gt; creates my own copy of someone else's repository on GitHub, while &lt;strong&gt;cloning&lt;/strong&gt; downloads a repository from GitHub onto my computer so I can work on it locally.&lt;/p&gt;

&lt;h2&gt;
  
  
  Branches and Collaboration
&lt;/h2&gt;

&lt;p&gt;Branches introduced me to a safer way of developing projects.&lt;/p&gt;

&lt;p&gt;Instead of making changes directly to the main branch, I can create a separate branch for a new feature or experiment. Once everything works correctly, the branch can be merged back into the main project.&lt;/p&gt;

&lt;p&gt;This approach reduces the risk of breaking existing code and allows multiple people to work on different features simultaneously.&lt;/p&gt;

&lt;p&gt;Although merge conflicts can happen when two people edit the same part of a file, Git provides tools to resolve them and continue working.&lt;/p&gt;

&lt;h2&gt;
  
  
  Essential Git Commands
&lt;/h2&gt;

&lt;p&gt;Throughout my learning journey, several commands became part of my daily workflow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;git init&lt;/code&gt; – Create a new Git repository.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;git status&lt;/code&gt; – Check the current state of the repository.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;git add&lt;/code&gt; – Stage changes.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;git commit&lt;/code&gt; – Save changes to the repository history.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;git log&lt;/code&gt; – View previous commits.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;git clone&lt;/code&gt; – Copy a repository from GitHub to a local machine.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;git push&lt;/code&gt; – Upload local commits to GitHub.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;git pull&lt;/code&gt; – Download the latest changes from GitHub.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;git branch&lt;/code&gt; – View or create branches.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;git merge&lt;/code&gt; – Combine changes from different branches.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Key terms that i Learnt
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Repository (repo)&lt;/strong&gt; - A project folder that Git is tracking&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Commit&lt;/strong&gt; - a saved snapshot of your project at point in time, with a message describing what you changed &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Staging area&lt;/strong&gt; - “waiting room” where you choose exactly which changes will go into the next commit &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Remote&lt;/strong&gt; - a copy of your repo hosted somewhere (GitHub) &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Clone&lt;/strong&gt; - downloading a copy of a remote repo to your computer &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Branch&lt;/strong&gt; - a separate, parallel line of work. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pull&lt;/strong&gt; - downloading new changes from Github (remote) into your computer&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Push&lt;/strong&gt; - Uploading your commits from your computer to GitHub &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pull request (PR)&lt;/strong&gt; - is a request to merge your branch’s changes into another branch, with a chance for other to review first &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Merge&lt;/strong&gt; - combining the changes from one branch into another.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Key Takeaways
&lt;/h2&gt;

&lt;p&gt;Learning Git and GitHub has been one of the most valuable steps in my software development journey. I now understand how to track changes, organize projects, collaborate with others, and safely experiment without worrying about losing my work.&lt;/p&gt;

&lt;p&gt;The biggest lesson I learned is that version control is not just about saving code it is about building a reliable workflow. Whether working alone or with a team, Git and GitHub make project management more efficient, organized, and professional.&lt;/p&gt;

&lt;p&gt;As I continue learning  data analytics, I know that Git and GitHub will remain essential tools in every project I build.&lt;/p&gt;

</description>
      <category>github</category>
      <category>git</category>
      <category>learning</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How I Connected Power BI to Local SQL Server and Aiven PostgreSQL with SSL</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Sun, 05 Jul 2026 17:10:56 +0000</pubDate>
      <link>https://dev.to/sirphilip/how-i-connected-power-bi-to-local-sql-server-and-aiven-postgresql-with-ssl-49kn</link>
      <guid>https://dev.to/sirphilip/how-i-connected-power-bi-to-local-sql-server-and-aiven-postgresql-with-ssl-49kn</guid>
      <description>&lt;p&gt;Before connecting Power BI to both a local SQL Server and a cloud-hosted Aiven PostgreSQL database, you'll need a few tool with each playing a specific role in making the setup secure.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Power BI Desktop&lt;/strong&gt; – The business intelligence tool used to connect to databases, transform data, and create interactive dashboards and reports.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Aiven Account&lt;/strong&gt; – Hosts your PostgreSQL database in the cloud and provides the connection details needed to access it remotely.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Aiven SSL Certificate&lt;/strong&gt; – Encrypts the connection between Power BI and the Aiven PostgreSQL database, ensuring your data is transferred securely.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PostgreSQL&lt;/strong&gt; – The database management system used to store and manage your data. In this guide, you'll work with both a local PostgreSQL installation and an Aiven-hosted PostgreSQL database.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;DBeaver&lt;/strong&gt; – A free database management tool that lets you create, view, and manage your databases before connecting them to Power BI.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With these tools installed and configured, you're ready to connect Power BI to both local and cloud-based databases .&lt;/p&gt;

&lt;h2&gt;
  
  
  Difference Between Local SQL Server and Aiven PostgreSQL with SSL
&lt;/h2&gt;

&lt;p&gt;A &lt;strong&gt;local database&lt;/strong&gt; runs on your own computer or within your local network, so Power BI can connect to it directly using the server and database name. In contrast, &lt;strong&gt;an Aiven PostgreSQL database&lt;/strong&gt; is hosted in the cloud and accessed over the internet. Because the connection travels across public networks, SSL (Secure Sockets Layer) encryption is required to protect your data and verify the identity of the server. While both connections allow Power BI to retrieve and analyze data, the cloud connection requires a few extra security steps to ensure your data remains safe during transmission.&lt;/p&gt;

&lt;h2&gt;
  
  
  Connecting Power BI to a Local SQL Server Database
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Open Power BI Desktop&lt;/strong&gt;&lt;br&gt;
Launch Power BI Desktop and select &lt;strong&gt;Get Data&lt;/strong&gt; from the Home tab.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7uhnqpcjyfo1f769sae1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7uhnqpcjyfo1f769sae1.png" alt=" " width="800" height="424"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Step 2: Choose SQL Server&lt;/strong&gt;&lt;br&gt;
Search for &lt;strong&gt;PostgreSQL Database&lt;/strong&gt;, select it, and click &lt;strong&gt;Connect&lt;/strong&gt;.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Step 3: Enter the Server Details&lt;/strong&gt;&lt;br&gt;
Type your SQL Server name . Optionally,you can enter the database name if you want to connect directly to a specific database.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Step 4: Select the Authentication Method&lt;/strong&gt;&lt;br&gt;
Choose either &lt;strong&gt;Windows Authentication&lt;/strong&gt; or &lt;strong&gt;Database Authentication&lt;/strong&gt;, depending on how your SQL Server is configured.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Connect to the Database&lt;/strong&gt;&lt;br&gt;
Click &lt;strong&gt;Connect&lt;/strong&gt;. Power BI will establish a connection and display the available tables and views.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Step 6: Load or Transform the Data&lt;/strong&gt;&lt;br&gt;
Select the tables you need, then click &lt;strong&gt;Load&lt;/strong&gt; to import the data or &lt;strong&gt;Transform Data&lt;/strong&gt; to clean and shape it before loading.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Step 7: Start Building Reports&lt;/strong&gt;&lt;br&gt;
Once the data is loaded, you're ready to create visualizations, dashboards, and reports in Power BI.&lt;/p&gt;

&lt;h2&gt;
  
  
  Connecting Power BI to an Aiven PostgreSQL Database with SSL
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Download the Aiven SSL Certificate&lt;/strong&gt;&lt;br&gt;
From your Aiven project, download the &lt;strong&gt;CA Certificate (&lt;code&gt;ca.pem&lt;/code&gt;)&lt;/strong&gt; needed for SSL authentication.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Step 2: Install the PostgreSQL Driver&lt;/strong&gt;&lt;br&gt;
Ensure the &lt;strong&gt;Npgsql&lt;/strong&gt; PostgreSQL driver is installed so Power BI can connect to PostgreSQL databases.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Step 3: Open Power BI Desktop&lt;/strong&gt;&lt;br&gt;
Launch Power BI Desktop and click &lt;strong&gt;Get Data&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Select PostgreSQL Database&lt;/strong&gt;&lt;br&gt;
Search for &lt;strong&gt;PostgreSQL Database&lt;/strong&gt;, select it, and click &lt;strong&gt;Connect&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Enter the Connection Details&lt;/strong&gt;&lt;br&gt;
Enter the &lt;strong&gt;host name&lt;/strong&gt;, &lt;strong&gt;port&lt;/strong&gt;, and &lt;strong&gt;database name&lt;/strong&gt; provided by Aiven.Simply just copy paste the details in the right dockets.The keys windows+V come in handy in this place.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Step 6: Configure SSL&lt;/strong&gt;&lt;br&gt;
First search manager user certificate on your search bar, click on it,then click on the drop down of Trusted Root Certification ,right click on the certificate option, then click on All Tasks ,then click on import ,click on the option Next and then browse on the  downloaded &lt;strong&gt;&lt;code&gt;ca.pem&lt;/code&gt;&lt;/strong&gt; certificate, and ensure the connection uses SSL encryption.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7: Enter Your Credentials&lt;/strong&gt;&lt;br&gt;
Provide your Aiven &lt;strong&gt;username&lt;/strong&gt; and &lt;strong&gt;password&lt;/strong&gt;, then click &lt;strong&gt;Connect&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 8: Load or Transform the Data&lt;/strong&gt;&lt;br&gt;
Choose the tables you want to use, then click &lt;strong&gt;Load&lt;/strong&gt; or &lt;strong&gt;Transform Data&lt;/strong&gt; to prepare the data before importing it into Power BI.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 9: Build Your Reports&lt;/strong&gt;&lt;br&gt;
Once the data is loaded, you can begin creating dashboards, charts, and reports using your cloud-hosted PostgreSQL data.&lt;/p&gt;

</description>
      <category>database</category>
      <category>beginners</category>
      <category>postgres</category>
      <category>sql</category>
    </item>
    <item>
      <title>My Journey Learning Power BI: Lessons Beyond Building Dashboards(week 4)</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Sun, 28 Jun 2026 16:51:41 +0000</pubDate>
      <link>https://dev.to/sirphilip/my-journey-learning-power-bi-lessons-beyond-building-dashboards-2fem</link>
      <guid>https://dev.to/sirphilip/my-journey-learning-power-bi-lessons-beyond-building-dashboards-2fem</guid>
      <description>&lt;p&gt;For the last two weeks  i embarked on a journey of learning how power BI works for for data analysis.At first i thought it was just another tool for creating charts and dashboards but turns the deeper I went, the more I realized that Power BI is really about understanding data, asking better questions, and turning raw information into decisions.&lt;/p&gt;

&lt;p&gt;Here are my biggest lessons I've learned so far about this powerful tool&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Data Cleaning Takes More Time Than Building Dashboards
&lt;/h2&gt;

&lt;p&gt;Most of my time i spent fixing null values, correcting data types, removing duplicates, and standardizing inconsistent data which doesn't sound alt of work but trust it is and not forgetting it is one of the major steps in getting quality data and also the foundation of every good report.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Data Modeling Is the Real Superpower
&lt;/h2&gt;

&lt;p&gt;At first, relationships between tables seemed confusing. Learning about primary keys, foreign keys, cardinality, and star schemas completely changed how I approached projects and how i view raw data.It was ata this step i discovered that a well designed data model makes everything else easier.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Relationships Matter More Than I Expected
&lt;/h2&gt;

&lt;p&gt;Understanding one-to-many, many-to-one, and one-to-one and others  helped me understand why some visuals worked while others returned incorrect results.If your relationships are wrong, your analysis will be wrong.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Power Query Is Where Most of the Work Happens
&lt;/h2&gt;

&lt;p&gt;I initially focused on visuals, but I soon realized that Power Query is where datasets are prepared. Learning transformations, merges, replacing values, and creating custom columns have to become  your essential skills for you to work with this tool effectively.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. DAX Is About Logic, Not Memorization
&lt;/h2&gt;

&lt;p&gt;I used to think DAX was just formulas. Over time, I learned it's more about thinking logically and solving business problems than memorizing syntax.For best result one has to understand the problem before writing the formula&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Every Dashboard Should Tell a Story
&lt;/h2&gt;

&lt;p&gt;I learned that dashboards aren't meant to display every chart possible. They're meant to answer questions and help people make decisions.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Small Data Quality Issues Create Big Problems
&lt;/h2&gt;

&lt;p&gt;Something as simple as inconsistent dates, missing IDs, or mixed text formats can completely change the results of an analysis.&lt;/p&gt;

&lt;h2&gt;
  
  
  8. Progress Comes From Building Projects
&lt;/h2&gt;

&lt;p&gt;Watching tutorials kinda helped, but i want lean much more on building real datasets. Every project should introduce a new challenge and strengthen my understanding. Practice will forever beat theory&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Learning Power BI has  has changed the way I think about data, problem-solving, and decision-making. I still have a lot to learn, but every practice makes me more confident and reminds me that becoming good at data analytics is a journey, not a destination.&lt;/p&gt;

</description>
      <category>data</category>
      <category>datascience</category>
      <category>beginners</category>
      <category>learning</category>
    </item>
    <item>
      <title>Modeling, Joins, Relationships and Different Schemas In Power BI</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Wed, 24 Jun 2026 13:00:22 +0000</pubDate>
      <link>https://dev.to/sirphilip/modeling-joins-relationships-and-different-schemas-in-power-bi-28ho</link>
      <guid>https://dev.to/sirphilip/modeling-joins-relationships-and-different-schemas-in-power-bi-28ho</guid>
      <description>&lt;p&gt;In my 4th week of learning about data, Power Bi was one of the tools i had to learn how to use and the more dug into learning it, the more it got more interesting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Power BI&lt;/strong&gt; is simply a tool that turns boring spreadsheets and business data into easy-to-understand charts, dashboards, and reports so people can quickly see what's happening and make better decision.&lt;/p&gt;

&lt;p&gt;The best segment was learning about different types of schemas and how they are constructed,how to model your data so different pieces of information can work together,what are joins and diffrent types of joins and also different types of relatioships.&lt;/p&gt;

&lt;p&gt;At 1st they seem like normal words but when you dig into the technical part on what they do everything changes to magic.&lt;/p&gt;

&lt;h2&gt;
  
  
  SCHEMAS
&lt;/h2&gt;

&lt;p&gt;When it comes to data modelling ,a schema is the way tables are organised and connected.&lt;/p&gt;

&lt;h1&gt;
  
  
  1.STAR SCHEMA
&lt;/h1&gt;

&lt;p&gt;A star schema simply has one central table(&lt;strong&gt;Fact table&lt;/strong&gt;) that is connected to several smaller tables(&lt;strong&gt;Dimension table&lt;/strong&gt;)&lt;br&gt;
This tables are connected using the foreign keys and primary keys.A &lt;strong&gt;Primary Key&lt;/strong&gt; is a unique ID that identifies each record in a table, while a &lt;strong&gt;Foreign Key&lt;/strong&gt; is that same ID stored in another table to create a connection between the two tables.&lt;/p&gt;

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

&lt;h1&gt;
  
  
  2.SNOWFLAKE SCHEMA
&lt;/h1&gt;

&lt;p&gt;A snowflake schema is similar to a schema but dimensiuon tables are split into smaller related tables&lt;br&gt;
It always good for reducing data duplication but is more complex as compared to a star schema &lt;/p&gt;

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

&lt;h2&gt;
  
  
  JOINS
&lt;/h2&gt;

&lt;p&gt;Joins is simply a way of linking tables together so related information can be viewed in one place.&lt;/p&gt;

&lt;p&gt;Different types of Joins in Power BI:&lt;/p&gt;

&lt;p&gt;1.&lt;strong&gt;Inner Join&lt;/strong&gt; - Only rows that exist in BOTH tables.&lt;br&gt;
2.&lt;strong&gt;Left Outer Join&lt;/strong&gt; - All rows from left table plus matching rows from right table.&lt;br&gt;
3.&lt;strong&gt;Right Outer Join&lt;/strong&gt; - All rows from right table plus matching rows from left table.&lt;br&gt;
4.&lt;strong&gt;Full Outer Join&lt;/strong&gt; - All rows from BOTH tables regardless of match.&lt;br&gt;
5.&lt;strong&gt;Left Anti Join&lt;/strong&gt;-Returns rows from the left table only where no matching row exists in the right table.&lt;br&gt;
6.&lt;strong&gt;Right Anti Join&lt;/strong&gt;-Returns rows from the right table only where no matching row exists in the left table.&lt;/p&gt;

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

&lt;h2&gt;
  
  
  Relationships
&lt;/h2&gt;

&lt;p&gt;A relationship in Power BI is a connection between two tables using a common column, allowing data from both tables to work together&lt;/p&gt;

&lt;p&gt;Power BI Relationship Types (One-Liners)&lt;br&gt;
1.&lt;strong&gt;One-to-One (1:1)&lt;/strong&gt; – One record in Table A matches exactly one record in Table B.&lt;br&gt;
2.&lt;strong&gt;One-to-Many (1:*)&lt;/strong&gt;– One record in Table A can match many records in Table B.&lt;br&gt;
3.&lt;strong&gt;Many-to-One (*:1)&lt;/strong&gt; – Many records in Table A can match one record in Table B.&lt;br&gt;
4.&lt;strong&gt;Many-to-Many (:)&lt;/strong&gt; – Many records in Table A can match many records in Table B.&lt;/p&gt;

&lt;p&gt;1.One-to-one (1:1) Relationship&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqqwc6ns58wpt6tumhuai.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqqwc6ns58wpt6tumhuai.png" alt=" " width="800" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2.One-to-Many (1:*) Relationship&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3lv1upyls6t76o1micmu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3lv1upyls6t76o1micmu.png" alt=" " width="800" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

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

</description>
      <category>beginners</category>
      <category>discuss</category>
      <category>datascience</category>
      <category>data</category>
    </item>
    <item>
      <title>My Journey Learning Excel for Data Analysis</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Tue, 16 Jun 2026 18:17:22 +0000</pubDate>
      <link>https://dev.to/sirphilip/my-journey-learning-excel-for-data-analysis-1n7j</link>
      <guid>https://dev.to/sirphilip/my-journey-learning-excel-for-data-analysis-1n7j</guid>
      <description>&lt;p&gt;When I first opened Excel, I saw rows and columns.......nothing more.Over the past two weeks ,I have discovered that Excel is a gateway  to understanding data, and it's completely transformed how I think about any information that comes across me .&lt;/p&gt;

&lt;p&gt;My biggest discovery came when I realized that  Excel is a thinking tool  and that is because  every function that i learnt taught me how to ask better questions of my data.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Functions That Changed Everything
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;SUM and AVERAGE&lt;/strong&gt; were my first steps. I used SUM to find total salary  across a quarter and AVERAGE to find the mean performance score of employees. Simple, but suddenly numbers meant something. They told stories.&lt;/p&gt;

&lt;p&gt;Then came &lt;strong&gt;COUNTIF&lt;/strong&gt;—a game-changer. When I needed to count how many employees had been promoted after certain period of time , COUNTIF did it instantly. In real business decisions, this becomes powerful: "How many students scored above 80%?" or "Which months had sales below target?" becomes answerable in seconds.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;IF statements&lt;/strong&gt; taught me logic.To some point using IF statement made me feel like i was programming......... just differently.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;VLOOKUP and XLOOKUP&lt;/strong&gt; were humbling. I spent hours getting these wrong, but once they clicked, they unlocked a superpower: matching data across tables.I remember usin it to a match employee performance to trhe payroll&lt;/p&gt;

&lt;h2&gt;
  
  
  Beyond Formulas
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Pivot Tables&lt;/strong&gt; deserve their own moment. My first pivot table made me pause—rows became columns, data collapsed into summaries, and patterns appeared that were buried in 900 rows. Suddenly, I could answer: "Who are  the best performing employees by region?" without manual sorting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sorting and Filtering&lt;/strong&gt; saved me from drowning in data. Filtering to show only Q4 sales, then sorting by revenue, transformed chaos into clarity. It taught me that context matters—the same data tells different stories depending on how you view it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conditional Formatting&lt;/strong&gt; was about communication. Highlighting cells above a threshold in green and below in red makes reports readable. I learned that data analysis isn't just about finding answers—it's about helping others see them too.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Charts&lt;/strong&gt; brought it home. A bar chart showing quarterly trends is worth a hundred rows of numbers. Pie charts, line graphs, scatter plots—each reveals different truths. Choosing the right chart became about understanding your message.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Bigger Picture
&lt;/h2&gt;

&lt;p&gt;Learning Excel taught me something unexpected: data lives everywhere. Every spreadsheet has a story. Every number is context waiting to be uncovered. I went from someone who couldn't extract meaning from a dataset to someone who asks questions first, then uses Excel to find answers.&lt;/p&gt;

&lt;p&gt;Excel became my bridge from curiosity to competence. It's not just about salary calculations or tracking inventory—it's about empowerment. It's about transforming raw information into decisions that matter.&lt;/p&gt;

&lt;p&gt;As I move forward in data analysis, I carry this lesson: master the fundamentals, stay curious, and remember that every formula is a question waiting to be asked. Excel was my first teacher, and it prepared me to see data not as numbers, but as possibilities.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>datascience</category>
      <category>learning</category>
      <category>microsoft</category>
    </item>
    <item>
      <title>Why Excel Is Still King in Data Analysis</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Mon, 08 Jun 2026 07:00:44 +0000</pubDate>
      <link>https://dev.to/sirphilip/why-excel-is-still-king-in-data-analysis-1459</link>
      <guid>https://dev.to/sirphilip/why-excel-is-still-king-in-data-analysis-1459</guid>
      <description>&lt;p&gt;Excel is a computer program built by Microsoft that lets you organize information in a grid of rows and columns (called a spreadsheet), it is just like a digital notebook for numbers and data.&lt;/p&gt;

&lt;p&gt;It is widely used by various organisations around the world in organizing and analyzing of their data inorder to come up with various insights.&lt;/p&gt;

&lt;h3&gt;
  
  
  Real-World Uses of Excel
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;1. Business Decision-Making&lt;/strong&gt;&lt;br&gt;
Through the data the organisation have they are able to track sales and inventory and are able to see which products sell best and when to reorder stock.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2.Financial Reporting&lt;/strong&gt;&lt;br&gt;
Creation of  budgets becomes easy and also with excel most organisations are able to track their spending on various things.With this the organisations are able to  calculate profit and loss weekly,monthly and yearly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3.Marketing Performance Analysis&lt;/strong&gt;&lt;br&gt;
With this the organisation are able to measure /monitor the their campaign results by tracking email opens, clicks, and sales from ads which in helps them to know their target audience and where to target next for their product or service &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4.Data Cleaning &amp;amp; Analysis&lt;/strong&gt;&lt;br&gt;
Most times when the data is collected it needs to be cleaned by sorting, filter, and organize  the messy data.After the cleaning of the data the data analyst can now  find patterns, remove duplicates, and prepare data for analysis.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5.Dashboards &amp;amp; Reporting&lt;/strong&gt;&lt;br&gt;
The best part about excel is that an analyst can create visual charts and graphs to present different metrics to leadership and decision makers.This  shows trends in real-time.&lt;/p&gt;

&lt;h3&gt;
  
  
  Excel Features and Formulas
&lt;/h3&gt;

&lt;p&gt;Excel as a tool has various features and formulas that assist an analyst on working on a given data.I am going to mention just a few &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.Basic Formulas&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SUM() – Adds a range of numbers.&lt;/li&gt;
&lt;li&gt;AVERAGE() – Finds the mean value.&lt;/li&gt;
&lt;li&gt;COUNT() – Counts cells containing numbers.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2.Logical Functions&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;IF() – Returns different results based on a condition.&lt;/li&gt;
&lt;li&gt;AND() – Checks if multiple conditions are true.&lt;/li&gt;
&lt;li&gt;OR() – Checks if at least one condition is true.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Data Analysis Features&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Conditional Formatting – Highlights important values automatically.&lt;/li&gt;
&lt;li&gt;Data Validation – Restricts the type of data users can enter.&lt;/li&gt;
&lt;li&gt;Text to Columns – Splits data into separate columns.&lt;/li&gt;
&lt;li&gt;Remove Duplicates – Eliminates repeated records.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Learning Excel has changed the way I see data because I now understand that data is more than just numbers. Instead of looking at raw information as something confusing, I can organize it and make sense of it using Excel. It has shown me how simple tools like formulas and tables can turn raw data into useful insights. I also now see how businesses rely on Excel to analyze information and make better decisions based on facts rather than guesses.&lt;/p&gt;

</description>
      <category>datascience</category>
      <category>beginners</category>
      <category>data</category>
      <category>datastructures</category>
    </item>
    <item>
      <title>SQL Joins and Window Functions- Ultimate Guide</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Tue, 03 Mar 2026 11:25:15 +0000</pubDate>
      <link>https://dev.to/sirphilip/sql-joins-and-window-functions-ultimate-guide-2c1k</link>
      <guid>https://dev.to/sirphilip/sql-joins-and-window-functions-ultimate-guide-2c1k</guid>
      <description>&lt;h1&gt;
  
  
  SQL JOINS
&lt;/h1&gt;

&lt;h2&gt;
  
  
  What is a JOIN?
&lt;/h2&gt;

&lt;p&gt;A JOIN is used to &lt;strong&gt;combine data from two or more tables&lt;/strong&gt; based on a related column. Think of it like connecting two lists: one of employees, another of departments. You use a common field (like &lt;code&gt;department_id&lt;/code&gt;) to link them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Types of Joins
&lt;/h2&gt;

&lt;h3&gt;
  
  
  INNER JOIN
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Returns &lt;strong&gt;only the rows that have matching values&lt;/strong&gt; in both tables.&lt;/li&gt;
&lt;li&gt;Example: Only employees assigned to a department will appear; employees without a department are ignored.&lt;/li&gt;
&lt;li&gt;Syntax:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;department_name&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;
&lt;span class="k"&gt;INNER&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;
&lt;span class="k"&gt;ON&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;department_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;department_id&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  LEFT JOIN
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Returns &lt;strong&gt;all rows from the left table&lt;/strong&gt;, and matching rows from the right table.&lt;/li&gt;
&lt;li&gt;If there’s no match in the right table, it returns NULL.&lt;/li&gt;
&lt;li&gt;Example: All employees appear, even if they don’t belong to any department.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;department_name&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;
&lt;span class="k"&gt;LEFT&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;
&lt;span class="k"&gt;ON&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;department_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;department_id&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  RIGHT JOIN
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Returns &lt;strong&gt;all rows from the right table&lt;/strong&gt;, and matching rows from the left table.&lt;/li&gt;
&lt;li&gt;If there’s no match in the left table, it returns NULL.&lt;/li&gt;
&lt;li&gt;Example: All departments appear, even if no employee is assigned.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;department_name&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;
&lt;span class="k"&gt;RIGHT&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;
&lt;span class="k"&gt;ON&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;department_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;department_id&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  FULL OUTER JOIN
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Returns &lt;strong&gt;all rows from both tables&lt;/strong&gt;, filling in NULLs where no match exists.&lt;/li&gt;
&lt;li&gt;Example: Employees without departments and departments without employees will all appear.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;department_name&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;
&lt;span class="k"&gt;FULL&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;
&lt;span class="k"&gt;ON&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;department_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;department_id&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  CROSS JOIN
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Returns &lt;strong&gt;every possible combination&lt;/strong&gt; of rows from both tables.&lt;/li&gt;
&lt;li&gt;Example: 3 employees × 3 departments = 9 rows.&lt;/li&gt;
&lt;li&gt;Use with caution as it can create very large results.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;
&lt;span class="k"&gt;CROSS&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  NATURAL JOIN
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Automatically joins tables using &lt;strong&gt;all columns with the same name&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;You don’t write the &lt;code&gt;ON&lt;/code&gt; condition.&lt;/li&gt;
&lt;li&gt;Example: Employees and departments both have &lt;code&gt;department_id&lt;/code&gt;. SQL will join them automatically using this column.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;
&lt;span class="k"&gt;NATURAL&lt;/span&gt; &lt;span class="k"&gt;JOIN&lt;/span&gt; &lt;span class="n"&gt;departments&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Warning:&lt;/strong&gt; If a new column with the same name is added later, the join might change results unexpectedly. Use explicit joins in real systems for safety.&lt;/p&gt;

&lt;h1&gt;
  
  
  WINDOW FUNCTIONS
&lt;/h1&gt;

&lt;h2&gt;
  
  
  What is a Window Function?
&lt;/h2&gt;

&lt;p&gt;A window function performs calculations &lt;strong&gt;across rows related to the current row&lt;/strong&gt; while keeping all original rows intact. Unlike &lt;code&gt;GROUP BY&lt;/code&gt;, which reduces rows to summaries, window functions &lt;strong&gt;add new computed columns without removing data&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Basic Syntax
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;FUNCTION&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="n"&gt;OVER&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="k"&gt;PARTITION&lt;/span&gt; &lt;span class="k"&gt;BY&lt;/span&gt; &lt;span class="k"&gt;column&lt;/span&gt;
    &lt;span class="k"&gt;ORDER&lt;/span&gt; &lt;span class="k"&gt;BY&lt;/span&gt; &lt;span class="k"&gt;column&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;OVER()&lt;/code&gt; → indicates a window function.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;PARTITION BY&lt;/code&gt; → divides data into groups.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ORDER BY&lt;/code&gt; → sets the order of rows within each group.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Ranking Functions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  ROW_NUMBER()
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Assigns a unique number to each row in the result.&lt;/li&gt;
&lt;li&gt;No ties are allowed; every row is unique.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
       &lt;span class="n"&gt;ROW_NUMBER&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="n"&gt;OVER&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;ORDER&lt;/span&gt; &lt;span class="k"&gt;BY&lt;/span&gt; &lt;span class="n"&gt;salary&lt;/span&gt; &lt;span class="k"&gt;DESC&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;row_num&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  RANK()
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Assigns the same rank to ties, but skips numbers for the next rank.&lt;/li&gt;
&lt;li&gt;Example: Two employees with the same salary share rank 1, next rank becomes 3.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
       &lt;span class="n"&gt;RANK&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="n"&gt;OVER&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;ORDER&lt;/span&gt; &lt;span class="k"&gt;BY&lt;/span&gt; &lt;span class="n"&gt;salary&lt;/span&gt; &lt;span class="k"&gt;DESC&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;rank&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  DENSE_RANK()
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Assigns the same rank to ties but does &lt;strong&gt;not skip numbers&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Example: Two employees share rank 1, next rank is 2.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
       &lt;span class="n"&gt;DENSE_RANK&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="n"&gt;OVER&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;ORDER&lt;/span&gt; &lt;span class="k"&gt;BY&lt;/span&gt; &lt;span class="n"&gt;salary&lt;/span&gt; &lt;span class="k"&gt;DESC&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;dense_rank&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  SUM() OVER() — Running Totals
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Calculates cumulative totals while keeping all rows.&lt;/li&gt;
&lt;li&gt;Example: Adding salaries cumulatively for a payroll report.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
       &lt;span class="n"&gt;salary&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
       &lt;span class="k"&gt;SUM&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;salary&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;OVER&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;ORDER&lt;/span&gt; &lt;span class="k"&gt;BY&lt;/span&gt; &lt;span class="n"&gt;employee_id&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;running_total&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  PARTITION + ORDER TOGETHER
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;You can rank or sum values &lt;strong&gt;within a group&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Example: Ranking employees &lt;strong&gt;per department&lt;/strong&gt; by salary.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
       &lt;span class="n"&gt;department_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
       &lt;span class="n"&gt;salary&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
       &lt;span class="n"&gt;RANK&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="n"&gt;OVER&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
           &lt;span class="k"&gt;PARTITION&lt;/span&gt; &lt;span class="k"&gt;BY&lt;/span&gt; &lt;span class="n"&gt;department_id&lt;/span&gt;
           &lt;span class="k"&gt;ORDER&lt;/span&gt; &lt;span class="k"&gt;BY&lt;/span&gt; &lt;span class="n"&gt;salary&lt;/span&gt; &lt;span class="k"&gt;DESC&lt;/span&gt;
       &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;AS&lt;/span&gt; &lt;span class="n"&gt;dept_rank&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt; &lt;span class="n"&gt;employees&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Ranking resets for each department.&lt;/li&gt;
&lt;li&gt;Useful for finding top performers per group.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  When to Use What
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;JOINS&lt;/strong&gt; → Combine multiple tables for connected data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GROUP BY&lt;/strong&gt; → Summarize data, reduces rows.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;WINDOW FUNCTIONS&lt;/strong&gt; → Keep rows and perform calculations like ranking, running totals, or comparisons within groups.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Key Takeaways
&lt;/h1&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Joins&lt;/strong&gt; connect tables:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;INNER → only matching rows&lt;/li&gt;
&lt;li&gt;LEFT → keep all left rows&lt;/li&gt;
&lt;li&gt;RIGHT → keep all right rows&lt;/li&gt;
&lt;li&gt;FULL → keep everything&lt;/li&gt;
&lt;li&gt;NATURAL → automatic join on same-named columns&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;GROUP BY&lt;/strong&gt; → reduces rows to summary data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Window Functions&lt;/strong&gt; → keep all rows, add extra calculations:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;PARTITION BY → group rows inside the function&lt;/li&gt;
&lt;li&gt;ORDER BY → controls calculation order&lt;/li&gt;
&lt;li&gt;ROW_NUMBER / RANK / DENSE_RANK → ranking functions&lt;/li&gt;
&lt;li&gt;SUM() OVER → running totals&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>data</category>
      <category>analytics</category>
      <category>sqlserver</category>
      <category>database</category>
    </item>
    <item>
      <title>How Analysts Turn Messy Data into Clear Answers with Power BI</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Mon, 09 Feb 2026 17:34:40 +0000</pubDate>
      <link>https://dev.to/sirphilip/how-analysts-turn-messy-data-into-clear-answers-with-power-bi-2pl9</link>
      <guid>https://dev.to/sirphilip/how-analysts-turn-messy-data-into-clear-answers-with-power-bi-2pl9</guid>
      <description>&lt;p&gt;Imagine your data is a pile of papers on a messy office desk, reports, all mixed up. A data analyst’s job is to tidy that desk, find the important information, and use it to tell a story that helps a company make good decisions. Power BI is one of the favorite tool for doing exactly that.&lt;/p&gt;

&lt;p&gt;Let’s break down the three-step magic trick they perform: cleaning data, using a special language called &lt;strong&gt;DAX&lt;/strong&gt;, and building dashboards.&lt;/p&gt;

&lt;h1&gt;
  
  
  Step 1: Taming the "Messy Data"
&lt;/h1&gt;

&lt;p&gt;Real-world data is rarely perfect. It comes from different places like spreadsheets, databases, and websites. You might have duplicates, misspelled names, blank cells, or dates formatted wrong. This is what we call &lt;em&gt;"messy data."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In Power BI, the first stop is usually &lt;strong&gt;Power Query Editor&lt;/strong&gt;. Think of this as a data cleaning workshop. Here, the analyst can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Remove duplicates (like the same sales entry listed twice).&lt;/li&gt;
&lt;li&gt;Fill in blanks or remove empty rows.&lt;/li&gt;
&lt;li&gt;Standardize text &lt;/li&gt;
&lt;li&gt;Split columns (like separating a full name into "First Name" and "Last Name").
This process is called &lt;strong&gt;data transformation&lt;/strong&gt;. The goal is to turn that messy pile into a neat, organized table that Power BI can understand and work with efficiently.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Step 2: The Superpower of DAX (Data Analysis Expressions)
&lt;/h1&gt;

&lt;p&gt;Once the data is clean, the analyst needs to calculate things. Basic math like sums and averages is easy. But what if you need to answer a specific question like, "How much did sales grow from last month?" or "What is the year-to-date total for each salesperson?"&lt;/p&gt;

&lt;p&gt;This is where DAX comes in. DAX is a simple formula language used in Power BI. It looks a lot like Excel formulas, but it’s built for analyzing relationships between data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DAX in Simple Terms:&lt;/strong&gt;&lt;br&gt;
Let’s say you have a Sales table. A simple DAX formula to calculate total sales would be:&lt;br&gt;
&lt;code&gt;Total Sales = SUM(Sales[Amount])&lt;/code&gt;&lt;br&gt;
This creates a new measure called "Total Sales" that adds up every number in the Amount column.&lt;/p&gt;

&lt;p&gt;A more powerful DAX formula might calculate sales from the previous month:&lt;br&gt;
&lt;code&gt;Sales Last Month = CALCULATE([Total Sales]&lt;/code&gt;, PREVIOUSMONTH('Date'[Date]))`&lt;br&gt;
This formula takes our "Total Sales" measure but changes the "filter" to look at the previous month automatically.&lt;/p&gt;

&lt;p&gt;DAX is the analyst’s tool for creating the custom metrics that answer the business’s most important questions. You don’t need to be a programmer to learn basic DAX—it’s about learning to ask the data the right questions.&lt;/p&gt;

&lt;h1&gt;
  
  
  Step 3: Building the "Single Source of Truth" Dashboard
&lt;/h1&gt;

&lt;p&gt;Clean data and smart calculations are useless if no one can understand them. The final step is visualization—building the dashboard.&lt;/p&gt;

&lt;p&gt;A Power BI dashboard is a one-page summary of your most important metrics, often called &lt;em&gt;KPIs (Key Performance Indicators)&lt;/em&gt;. It uses simple, powerful visuals:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;Bar/Column Charts:&lt;/em&gt; To compare things (e.g., sales by region).&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Line Charts:&lt;/em&gt; To show trends over time (e.g., monthly website visitors).&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Gauges &amp;amp; KPI Cards:&lt;/em&gt; To show a number and its target (e.g., Current Revenue vs. Goal).&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Slicers:&lt;/em&gt; These are like interactive filters. Click "Q2" on a slicer, and every chart on the page instantly updates to show only data from the second quarter.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The magic here is &lt;strong&gt;interactivity&lt;/strong&gt;. A good dashboard isn’t a static report. A manager can click on a bar for "Product A" and instantly see which customers bought it and which salesperson sold it. They can drill down from a yearly summary to a weekly view.&lt;/p&gt;

&lt;p&gt;This turns the dashboard into a conversation tool. Instead of asking, "Can you get me the Q3 report for the Midwest?" and waiting days, the user can find the answer in seconds by clicking on the dashboard.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;From Action to Impact&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So, how does this translate into action?&lt;/p&gt;

&lt;p&gt;1.Clean Data provides trust. Decision-makers can be confident they’re looking at accurate information.&lt;br&gt;
2.DAX Measures provide insight. They answer the "why" and "what’s next" by showing trends, growth, and performance against goals.&lt;br&gt;
3.The Interactive Dashboard provides clarity and speed. It puts insights in front of the right people in an understandable way, enabling fast, informed decisions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real-World Example:&lt;/strong&gt; A store manager sees on their daily Power BI dashboard that a specific product’s sales have suddenly dropped in one location. With a few clicks, they drill down and see a spike in customer returns for that item at that store. They immediately call the store, discovering a damaged shipment. They can then stop the sale, address the quality issue, and protect customer satisfaction—all within minutes.&lt;/p&gt;

&lt;p&gt;In short, Power BI analysts are translators. They take the messy, technical language of raw data and translate it into a clear, visual story that anyone in the company can understand and act upon. They bridge the gap between information and action, helping businesses move from asking "What happened?" to knowing "What should we do next?"&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>datascience</category>
      <category>beginners</category>
      <category>analyst</category>
    </item>
    <item>
      <title>Schemas and Data Modeling in Power BI: The Complete Beginner-to-Intermediate Guide</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Sun, 01 Feb 2026 17:42:33 +0000</pubDate>
      <link>https://dev.to/sirphilip/schemas-and-data-modeling-in-power-bi-the-complete-beginner-to-intermediate-guide-1956</link>
      <guid>https://dev.to/sirphilip/schemas-and-data-modeling-in-power-bi-the-complete-beginner-to-intermediate-guide-1956</guid>
      <description>&lt;p&gt;If you want your Power BI dashboards to be fast, accurate, and scalable, you must understand schemas and data modeling.&lt;/p&gt;

&lt;p&gt;Many beginners jump straight into visuals and DAX, but the real power of Power BI lies in how well your data is structured behind the scenes.&lt;/p&gt;

&lt;p&gt;This article breaks down schemas and data modeling in a simple, practical way—with real examples and best practices.&lt;/p&gt;

&lt;h1&gt;
  
  
  1. Understanding Schemas in Power BI
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;What is a Schema?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;schema&lt;/strong&gt; is the logical structure of your data. It defines:&lt;/p&gt;

&lt;p&gt;What tables exist&lt;/p&gt;

&lt;p&gt;What columns each table contains&lt;/p&gt;

&lt;p&gt;How tables are connected&lt;/p&gt;

&lt;p&gt;Think of a schema as the &lt;strong&gt;blueprint of a building&lt;/strong&gt;. Without a good blueprint, the building may stand—but it will be weak, slow, and unreliable.&lt;/p&gt;

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

&lt;h1&gt;
  
  
  2. What is Data Modeling?
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Definition&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data modeling&lt;/strong&gt; is the process of designing how data is structured, stored, and related so it can be analyzed efficiently.&lt;/p&gt;

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

&lt;p&gt;Identifying fact and dimension tables&lt;/p&gt;

&lt;p&gt;Defining relationships&lt;/p&gt;

&lt;p&gt;Optimizing structure for performance&lt;/p&gt;

&lt;p&gt;Preparing data for reporting and DAX calculations&lt;/p&gt;

&lt;p&gt;In Power BI, data modeling happens mainly in the &lt;strong&gt;Model View.&lt;/strong&gt;&lt;/p&gt;

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

&lt;h1&gt;
  
  
  3. Fact Tables vs Dimension Tables
&lt;/h1&gt;

&lt;p&gt;Before understanding schemas, you must understand these two core concepts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fact Tables&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;fact table&lt;/strong&gt; stores measurable, numeric data.&lt;/p&gt;

&lt;p&gt;Examples of facts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Sales amount&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Quantity sold&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Profit&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Discounts&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;strong&gt;Sales Fact Table&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;OrderID&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;CustomerID&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ProductID&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;DateID&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Quantity&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Revenue&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Profit&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Characteristics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Very large&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Contains foreign keys&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Stores transactional data&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;h1&gt;
  
  
  4. Types of Schemas in Business Intelligence
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;4.1 Star Schema&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;star schema&lt;/strong&gt; is the most common data model in Power BI.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Structure:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;One central fact table&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Multiple dimension tables connected directly to it&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The layout looks like a star&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;strong&gt;Fact Table:&lt;/strong&gt; Sales&lt;/p&gt;

&lt;p&gt;OrderID, CustomerID, ProductID, DateID, Revenue, Quantity&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dimension Tables:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Customer, Product, Date, Geography&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Benefits:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Fast performance&lt;/p&gt;

&lt;p&gt;Simple to understand&lt;/p&gt;

&lt;p&gt;Works well with DAX&lt;/p&gt;

&lt;p&gt;Recommended by Microsoft&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4.2 Snowflake Schema&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;snowflake schema&lt;/strong&gt; is a more complex version of the star schema where dimensions are split into multiple related tables.&lt;/p&gt;

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

&lt;p&gt;Customer → City → Region → Country&lt;/p&gt;

&lt;p&gt;Product → Category → Department&lt;/p&gt;

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

&lt;p&gt;Reduces redundancy&lt;/p&gt;

&lt;p&gt;Saves storage&lt;/p&gt;

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

&lt;p&gt;More complex&lt;/p&gt;

&lt;p&gt;Slower queries&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4.3 Galaxy Schema&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;galaxy schema&lt;/strong&gt; has multiple fact tables sharing the same dimensions.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Fact tables: Sales, Inventory, Finance&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Shared dimensions: Date, Product, Customer&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  5. Power BI Data Modeling Best Practices
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Prefer star schema&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Use a dedicated date table&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Avoid many-to-many relationships&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Remove unnecessary columns&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Use clear naming (e.g., DimCustomer, FactSales)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  6. Why Data Modeling Matters
&lt;/h1&gt;

&lt;p&gt;Good data modeling leads to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Faster dashboards&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Accurate insights&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scalable models&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Easy-to-use reports&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Simply put:&lt;br&gt;
&lt;strong&gt;A strong model = powerful analytics.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>analytics</category>
      <category>database</category>
      <category>datascience</category>
    </item>
    <item>
      <title>How I Started Doing Data Analysis with MS Excel</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Sun, 25 Jan 2026 12:13:29 +0000</pubDate>
      <link>https://dev.to/sirphilip/how-i-started-doing-data-analysis-with-ms-excel-i4g</link>
      <guid>https://dev.to/sirphilip/how-i-started-doing-data-analysis-with-ms-excel-i4g</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1hn8ee2248zcx0ufpuve.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1hn8ee2248zcx0ufpuve.png" alt=" " width="300" height="168"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let me be honest.&lt;/p&gt;

&lt;p&gt;I didn’t wake up one day and say &lt;strong&gt;“Yeah, today I become a data analyst.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It started with Excel. Just rows. Columns. Confusion. And a LOT of scrolling.&lt;/p&gt;

&lt;p&gt;But somewhere between cleaning messy data and making my first chart, I realized something wild:&lt;strong&gt;&lt;em&gt;Excel is basically data analysis in disguise.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you’re a beginner and Excel feels scary, relax you’re exactly where you’re supposed to be. In this article, I’ll walk you through how &lt;strong&gt;MS Excel can be used for basic data analysis&lt;/strong&gt;, using simple language, real-life vibes, and practical examples.&lt;/p&gt;

&lt;h1&gt;
  
  
  1. Understanding Data in Excel (The Foundation)
&lt;/h1&gt;

&lt;p&gt;Before analysis, there must be &lt;em&gt;data&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;In Excel, data usually lives in:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Rows → individual records (one person, one sale, one day)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Columns → variables (name, age, salary, date, etc.)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Think of Excel like a table in real life:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Each &lt;em&gt;row&lt;/em&gt; is one story&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Each &lt;em&gt;column&lt;/em&gt; is one detail about that story&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Row 2 = Bongo’s details&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Column C = everyone’s salary&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fazle04l2k75sxg66zh60.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fazle04l2k75sxg66zh60.jpg" alt="A Simple Excel Table with Headers" width="784" height="1168"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💡 Rule of thumb:&lt;/p&gt;

&lt;p&gt;If your data has clear headers and no empty random rows, you’re already winning.&lt;/p&gt;

&lt;h1&gt;
  
  
  2. Cleaning Data (Because Real Data Is Always Messy)
&lt;/h1&gt;

&lt;p&gt;Nobody talks about this part enough.&lt;/p&gt;

&lt;p&gt;Real data is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Misspelled&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Has extra spaces&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Mixed uppercase and lowercase&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sometimes straight-up wrong&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Before analysis, we clean.&lt;/p&gt;

&lt;h1&gt;
  
  
  Common cleaning tasks in Excel:
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Removing extra spaces using &lt;code&gt;TRIM()&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Making text consistent using &lt;code&gt;UPPER()&lt;/code&gt;, &lt;code&gt;LOWER()&lt;/code&gt;, or &lt;code&gt;PROPER()&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Removing duplicates&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fixing date and number formats&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;code&gt;"  bongo lala  " → "Bongo Lala"&lt;/code&gt;&lt;/p&gt;

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

&lt;p&gt;Story moment: The first time I cleaned data, I thought I was doing something wrong because the numbers suddenly made sense. Turns out… that’s the point.&lt;/p&gt;

&lt;h1&gt;
  
  
  3. Sorting and Filtering (Finding Meaning Fast)
&lt;/h1&gt;

&lt;p&gt;Imagine having 500 rows of data and trying to “just look” for answers.&lt;/p&gt;

&lt;p&gt;Yeah… no.&lt;/p&gt;

&lt;p&gt;That’s where Sort and Filter save your life.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sorting helps you:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Arrange salaries from highest to lowest&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Order dates from oldest to newest&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Rank scores&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Filtering helps you:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;See only Sales department&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;View employees above age 30&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Focus on specific categories&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkpkar8d87g0x4tegk0gl.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkpkar8d87g0x4tegk0gl.jpg" alt="An Image Showing Sorting and Filters " width="784" height="1168"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💡 Beginner win: If you can filter data, you can already answer real business questions.&lt;/p&gt;

&lt;h1&gt;
  
  
  4. Using Simple Formulas (Excel Starts Thinking for You)
&lt;/h1&gt;

&lt;p&gt;This is where Excel stops being a table and starts being smart.&lt;/p&gt;

&lt;p&gt;Basic formulas used in data analysis:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;SUM()&lt;/code&gt; → total values&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;AVERAGE()&lt;/code&gt; → mean&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;COUNT()&lt;/code&gt; → number of entries&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;MAX() / MIN()&lt;/code&gt; → highest &amp;amp; lowest values&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Example questions Excel can answer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;What is the total salary paid?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What is the average age?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Who earns the most?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwnz841gr6egnpsfahimh.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwnz841gr6egnpsfahimh.jpg" alt="A Formula Bar with Sum,Average,Count..." width="784" height="1168"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  5. Conditional Formatting (Let Excel Highlight the Story)
&lt;/h1&gt;

&lt;p&gt;Data doesn’t always speak.&lt;/p&gt;

&lt;p&gt;So we highlight it.&lt;/p&gt;

&lt;p&gt;Conditional Formatting lets you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Highlight high or low values&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Color-code performance&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Spot patterns instantly&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Salaries above 100,000 → green&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Low scores → red&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;Why this matters*: Your eyes understand colors faster than numbers.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  6. Pivot Tables (Summary Without Stress)
&lt;/h1&gt;

&lt;p&gt;Pivot Tables sound scary.&lt;/p&gt;

&lt;p&gt;They’re not.&lt;/p&gt;

&lt;p&gt;Think of a Pivot Table as:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;A summary button for large data&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;With Pivot Tables, you can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Count employees per department&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sum sales per month&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Compare categories easily&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And the best part? No formulas needed.&lt;/p&gt;

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

&lt;h1&gt;
  
  
  7. Charts and Visuals (Making Data Human)
&lt;/h1&gt;

&lt;p&gt;Numbers are cool.&lt;/p&gt;

&lt;p&gt;But visuals? They hit different.&lt;/p&gt;

&lt;p&gt;Excel charts help you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Compare values&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;See trends over time&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Explain data to other humans&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Common beginner charts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Column charts&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Bar charts&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Line charts&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Pie charts&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Pro tip: If someone understands your chart in 5 seconds, you did it right.&lt;/p&gt;

&lt;h1&gt;
  
  
  Final Thoughts: Excel Is the Gateway Drug
&lt;/h1&gt;

&lt;p&gt;Most people think data analysis starts with Python, SQL, or Power BI.&lt;/p&gt;

&lt;p&gt;But for many of us? It starts with Excel.&lt;/p&gt;

&lt;p&gt;Excel teaches you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;How data is structured&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How to ask questions&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;How to find answers&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And once that clicks… everything else becomes easier.&lt;/p&gt;

&lt;p&gt;So if you’re learning Excel right now — keep going. You’re not just learning a tool.&lt;/p&gt;

&lt;p&gt;You’re learning how to think with data.&lt;/p&gt;

&lt;p&gt;If this helped you, feel free to share it or drop your Excel learning story. We’re all just one spreadsheet away from greatness.&lt;/p&gt;

</description>
      <category>data</category>
      <category>analytics</category>
      <category>beginners</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Introduction to Git Bash and GitHub for Beginners</title>
      <dc:creator>PHILIP KAPLONG</dc:creator>
      <pubDate>Sun, 18 Jan 2026 10:13:33 +0000</pubDate>
      <link>https://dev.to/sirphilip/introduction-to-git-bash-and-github-for-beginners-43on</link>
      <guid>https://dev.to/sirphilip/introduction-to-git-bash-and-github-for-beginners-43on</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9ixjj29a8lnyc8br8cl8.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9ixjj29a8lnyc8br8cl8.jpg" alt=" " width="304" height="166"&gt;&lt;/a&gt;#What is Git?&lt;br&gt;
&lt;strong&gt;Git&lt;/strong&gt; is a free, open-source &lt;strong&gt;version control system&lt;/strong&gt; that tracks changes in your code (or any files) over time. It lets developers work on projects of any size, revert to previous versions if needed, experiment safely with branches, and collaborate with others without overwriting each other's work.&lt;/p&gt;

&lt;h1&gt;
  
  
  What is Git Bash?
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Bash&lt;/strong&gt; is the default command-line shell on Linux and macOS&lt;br&gt;
Git Bash is a lightweight application for Windows that brings a Bash-like Unix-style terminal environment, including Git commands. It allows Windows users to run Git and many Unix commands seamlessly in a familiar shell.&lt;br&gt;
Git Bash is installed locally on your computer.&lt;/p&gt;

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

&lt;h1&gt;
  
  
  What is GitHub?
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;GitHub&lt;/strong&gt; is a cloud-based hosting platform built on top of Git. It lets you store your Git repositories online, share code with others, collaborate in teams, review changes via pull requests, and discover open-source projects.&lt;/p&gt;

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

&lt;h1&gt;
  
  
  Installing Git Bash (Windows)
&lt;/h1&gt;

&lt;ol&gt;
&lt;li&gt;Go to the official Git website: &lt;a href="https://git-scm.com/downloads" rel="noopener noreferrer"&gt;https://git-scm.com/downloads&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Download the Windows installer (it includes Git Bash).&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the downloaded &lt;code&gt;.exe&lt;/code&gt; file and follow the setup wizard.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Accept defaults for most options (they work well for beginners).
-Choose your preferred text editor (e.g., Notepad++ or VS Code if installed).
-Keep line ending conversion enabled for cross-platform compatibility.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Complete the installation.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Verify installation&lt;/strong&gt;&lt;br&gt;
Open Git Bash (search for "Git Bash" in the Start menu) and run:bash&lt;/p&gt;

&lt;p&gt;&lt;code&gt;git --version&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;You should see something like &lt;code&gt;git version 2.XX.X.windows.X.&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Initial Git Configuration&lt;/strong&gt;&lt;br&gt;
Set your name and email (these appear in your commits):bash&lt;/p&gt;

&lt;p&gt;&lt;code&gt;git config --global user.name "Your Full Name"&lt;/code&gt;&lt;br&gt;
&lt;code&gt;git config --global user.email "your.email@example.com"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Use the same email you have on your GitHub account.&lt;/p&gt;

&lt;h1&gt;
  
  
  Linking Git Bash to Your GitHub Account (Using SSH)
&lt;/h1&gt;

&lt;p&gt;SSH keys provide secure, password-less authentication for pushing/pulling code.&lt;br&gt;
1.&lt;strong&gt;Generate a new SSH key&lt;/strong&gt; (in Git Bash)&lt;br&gt;
&lt;code&gt;ssh-keygen -t ed25519 -C&lt;/code&gt;"&lt;a href="mailto:your.email@example.com"&gt;your.email@example.com&lt;/a&gt;"`&lt;/p&gt;

&lt;p&gt;-Press Enter to accept the default file location (&lt;code&gt;~/.ssh/id_ed25519&lt;/code&gt;).&lt;br&gt;
   -Optionally set a passphrase (recommended for extra security).&lt;/p&gt;

&lt;p&gt;2.&lt;strong&gt;Start the SSH agent&lt;/strong&gt; and add your key:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;eval "$(ssh-agent -s)"&lt;br&gt;
ssh-add ~/.ssh/id_ed25519&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;3.&lt;strong&gt;Copy your public key to the clipboard:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;cat ~/.ssh/id_ed25519.pub&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;(Select and copy the output starting with &lt;code&gt;ssh-ed25519 ...&lt;/code&gt;)&lt;/p&gt;

&lt;p&gt;4.&lt;strong&gt;Add the key to GitHub:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Log in to GitHub → Click your profile picture → Settings → SSH and GPG keys → New SSH key.&lt;/li&gt;
&lt;li&gt;Give it a title (e.g., "My Windows PC").&lt;/li&gt;
&lt;li&gt;Paste the key and click &lt;strong&gt;Add SSH key&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Test the connection:&lt;br&gt;
&lt;code&gt;ssh -T git@github.com&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;You should see: &lt;code&gt;Hi username! You've successfully authenticated...&lt;/code&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Pulling and Pushing Code
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;git pull&lt;/strong&gt;&lt;br&gt;
Fetches changes from the remote repository (e.g., GitHub) and merges them into your local branch.&lt;br&gt;
&lt;code&gt;git pull origin main&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;(&lt;code&gt;git pull&lt;/code&gt; = &lt;code&gt;git fetch&lt;/code&gt; + &lt;code&gt;git merge&lt;/code&gt;)&lt;br&gt;
Always pull before starting work to avoid conflicts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;git push&lt;/strong&gt;&lt;br&gt;
Uploads your local commits to the remote repository.&lt;br&gt;
&lt;code&gt;git push origin main&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;origin&lt;/code&gt; = default name for your GitHub remote.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;main&lt;/code&gt; = default branch name (some older repos use &lt;code&gt;master&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If it's your first push to a new repo, you may need to set upstream:&lt;br&gt;
&lt;code&gt;git push -u origin main&lt;/code&gt;&lt;/p&gt;

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

&lt;h1&gt;
  
  
  Tracking Changes – The Core Workflow
&lt;/h1&gt;

&lt;p&gt;Use these three commands in almost every session:&lt;br&gt;
1.&lt;strong&gt;git status&lt;/strong&gt;&lt;br&gt;
Shows what's changed, staged, or untracked.&lt;br&gt;
&lt;code&gt;git status&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;2.&lt;strong&gt;git add&lt;/strong&gt;&lt;br&gt;
Stages changes (prepares them for commit).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Stage one file: &lt;code&gt;git add filename.txt&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Stage all changes: &lt;code&gt;git add&lt;/code&gt; . or &lt;code&gt;git add -A&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;3.&lt;strong&gt;git commit&lt;/strong&gt;&lt;br&gt;
Saves staged changes permanently with a message.&lt;br&gt;
&lt;code&gt;git commit -m "Add new feature: user login page"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Good commit messages are short, descriptive, and in present tense (e.g., "Fix bug in login form").&lt;/p&gt;

&lt;p&gt;Typical workflow:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;git status          # Check what's changed&lt;br&gt;
  #Edit files...&lt;br&gt;
git add .           # Stage everything&lt;br&gt;
git commit -m "Your message here"&lt;br&gt;
git pull origin main  # Get latest changes first!&lt;br&gt;
git push origin main  # Send to GitHub&lt;/code&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  What is Version Control and Why It Matters
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Version control&lt;/strong&gt; records every change to files over time so you can recall specific versions later.&lt;br&gt;
Key benefits:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Full history of who changed what and why.&lt;/li&gt;
&lt;li&gt;Branching &amp;amp; merging: Work on features/bug fixes in isolation, then combine safely.&lt;/li&gt;
&lt;li&gt;Easy rollback if something breaks.&lt;/li&gt;
&lt;li&gt;Collaboration: Multiple people work on the same project without chaos.&lt;/li&gt;
&lt;li&gt;Backup: Your code lives safely on GitHub.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Master these basics, and you'll be ready to create repositories, clone projects, create branches, and contribute to open source!&lt;br&gt;
Happy coding! &lt;br&gt;
Feel free to practice by creating a simple repo on GitHub and pushing a "Hello World" file.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>learning</category>
      <category>git</category>
      <category>datascience</category>
    </item>
  </channel>
</rss>
