<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: stephen Githinji</title>
    <description>The latest articles on Forem by stephen Githinji (@stephen_githinji_).</description>
    <link>https://forem.com/stephen_githinji_</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3708622%2F3cd2a1ba-306f-4675-8727-03eff8d6e639.png</url>
      <title>Forem: stephen Githinji</title>
      <link>https://forem.com/stephen_githinji_</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/stephen_githinji_"/>
    <language>en</language>
    <item>
      <title>Power BI: Turning messy data into actionable insights</title>
      <dc:creator>stephen Githinji</dc:creator>
      <pubDate>Tue, 10 Feb 2026 11:02:15 +0000</pubDate>
      <link>https://forem.com/stephen_githinji_/power-bi-turning-messy-data-into-actionable-insights-4776</link>
      <guid>https://forem.com/stephen_githinji_/power-bi-turning-messy-data-into-actionable-insights-4776</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Within organizations, data analysts have the crucial task of deriving meaning from various data sets. In its true form, data does not provide substantial insights that can be used to drive meaningful change within organizations. Here is where data analysts come in to clean and analyze the data and to visualize their findings. To carry out these tasks, analysts employ various analytics tools. One of the widely used tools in the industry is &lt;a href="https://www.microsoft.com/en-us/power-platform/products/power-bi" rel="noopener noreferrer"&gt;&lt;strong&gt;Power BI&lt;/strong&gt;&lt;/a&gt;. This article aims to demonstrate how data analysts and data professionals at large use Power BI to translate messy data into action, while touching on concepts such as data transformation with Power Query, analysis with DAX, and creating visuals and dashboards.&lt;/p&gt;

&lt;h2&gt;
  
  
  Power BI Overview
&lt;/h2&gt;

&lt;p&gt;Power BI is a business analytics and intelligence tool, which is part of Microsoft's &lt;a href="https://www.microsoft.com/en-us/power-platform/try-free" rel="noopener noreferrer"&gt;Power Platform&lt;/a&gt;, used to analyze data and create interactive visual reports and dashboards. Power BI can be downloaded directly from the Microsoft Store. &lt;br&gt;
Click the following link to download: &lt;a href="https://apps.microsoft.com/detail/9ntxr16hnw1t?hl=en-US&amp;amp;gl=US" rel="noopener noreferrer"&gt;Download Power BI.&lt;/a&gt; &lt;br&gt;
The Power BI window contains the following components:&lt;/p&gt;
&lt;h6&gt;
  
  
  Menu Bar
&lt;/h6&gt;

&lt;p&gt;Located at the top of the window and it is organized into tabs such as Home, Insert, Modeling, View, Optimize, and Help.&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.amazonaws.com%2Fuploads%2Farticles%2Fzga2l1b8hnjf5aeylq41.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%2Fzga2l1b8hnjf5aeylq41.png" alt="menu bar" width="800" height="384"&gt;&lt;/a&gt;&lt;/p&gt;
 menu bar 


&lt;h6&gt;
  
  
  View Selector / navigation pane
&lt;/h6&gt;

&lt;p&gt;Found on the left hand side and it contains the reports view, table view, model view, and the Dax query and TMDL view.&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.amazonaws.com%2Fuploads%2Farticles%2Fkcj8vzsoi8b47drg0fly.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%2Fkcj8vzsoi8b47drg0fly.png" alt="view selector" width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;
 view selector 


&lt;h6&gt;
  
  
  Visualizations Pane
&lt;/h6&gt;

&lt;p&gt;Lets you choose different visual types (bar chart, line chart, map, table, etc.) and includes options to format visuals and manage visual-level filters&lt;/p&gt;
&lt;h6&gt;
  
  
  Data Pane
&lt;/h6&gt;

&lt;p&gt;Displays tables, columns, and measures from the loaded dataset&lt;/p&gt;
&lt;h6&gt;
  
  
  Filters Pane
&lt;/h6&gt;

&lt;p&gt;Used to apply filters at different levels(Visual-level filters, Page-level filters, Report-level filters)&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.amazonaws.com%2Fuploads%2Farticles%2Flnm19ew5wvjzt2t0qqam.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%2Flnm19ew5wvjzt2t0qqam.png" alt="Visualization, Data, and Filter panes " width="800" height="399"&gt;&lt;/a&gt;&lt;/p&gt;
 Visualization, Data, and Filter panes 



&lt;p&gt;In addition to its intuitive navigation, one of the beauties of Power BI is that it allows analysts to load and work with files in various formats, for example: CSV, text, Excel, Dataflow, Dataverse, etc. To see all these formats, go to the &lt;em&gt;menu bar &amp;gt;Home&amp;gt;Data&amp;gt;Get data.&lt;/em&gt;&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.amazonaws.com%2Fuploads%2Farticles%2Fqa7uet0cvsrphz38k8ah.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%2Fqa7uet0cvsrphz38k8ah.png" alt="data formats" width="800" height="412"&gt;&lt;/a&gt;&lt;/p&gt;
Data formats acceptable in Power BI


&lt;h2&gt;
  
  
  Transforming Data Using Power Query
&lt;/h2&gt;

&lt;p&gt;Data obtained in an organization often contains inconsistencies, missing values, duplicates, or errors. Data transformation refers to the process of cleaning, reshaping, and preparing this data so that it is accurate, consistent, and suitable for analysis and reporting. Power BI provides access to another Power Platform tool referred to as &lt;a href="https://learn.microsoft.com/en-us/power-query/power-query-what-is-power-query" rel="noopener noreferrer"&gt;Power Query&lt;/a&gt;, whose sole purpose is to prepare and transform data before analysis. To access Power Query within Power BI go to &lt;em&gt;menu bar&amp;gt;Home&amp;gt;Queries&amp;gt;Transform Data.&lt;/em&gt; This will open up a separate window for the Power Query editor.&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.amazonaws.com%2Fuploads%2Farticles%2F87uzvftcoocik0lqsj0h.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%2F87uzvftcoocik0lqsj0h.png" alt="Accessing Power Query" width="800" height="192"&gt;&lt;/a&gt;&lt;/p&gt;
Accessing Power Query



&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%2F0uq1xx3arl4d2ctgl7py.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%2F0uq1xx3arl4d2ctgl7py.png" alt="power query" width="800" height="410"&gt;&lt;/a&gt;&lt;/p&gt;
Power Query window



&lt;p&gt;By simply selecting the rows and columns you want to modify and navigating to the editor's menu bar to find the action(s) you want to perform(for example: remove, split, merge, change data type, etc.), you can make all the necessary and desired transformations for your data. Once done with the transformations, you can click the &lt;em&gt;Close&amp;gt;click and apply changes&lt;/em&gt; button to ensure the changes in Power Query are updated in Power BI.&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.amazonaws.com%2Fuploads%2Farticles%2Fm4b55bo9ikl6slp809cu.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%2Fm4b55bo9ikl6slp809cu.png" alt="Applying changes to power BI" width="640" height="167"&gt;&lt;/a&gt;&lt;/p&gt;
Applying changes to power BI


&lt;h2&gt;
  
  
  Data Analysis
&lt;/h2&gt;

&lt;p&gt;After satisfactorily transforming or cleaning the dataset, the next step is analysis. It involves examining data to discover patterns, trends, and insights that will ultimately support decision-making. It involves the implementation of statistical techniques, logical reasoning, and analytical tools to convert raw data into meaningful information. It is through analysis that analysts are able to extract meaning from data. In Power BI, analysis is done mainly by using the Data Analysis Expressions (DAX) tool.&lt;/p&gt;
&lt;h5&gt;
  
  
  Data Analysis Expressions (DAX)
&lt;/h5&gt;

&lt;p&gt;&lt;a href="https://learn.microsoft.com/en-us/dax/dax-function-reference" rel="noopener noreferrer"&gt;DAX&lt;/a&gt; is a formula language for Power BI to perform calculations on data. There are 5 main DAX function categories:&lt;br&gt;
&lt;code&gt;Aggregate&lt;/code&gt;: Summarize data, similar (Sum, Average, AverageX, SumX)&lt;br&gt;
&lt;code&gt;Logical&lt;/code&gt;: Test conditions and return TRUE/FALSE&lt;br&gt;
&lt;code&gt;Calculate and Filter&lt;/code&gt;: Calculate dynamically based on filters or context.&lt;br&gt;
&lt;code&gt;Text&lt;/code&gt;: Manipulate text columns.&lt;br&gt;
&lt;code&gt;Date and Time&lt;/code&gt;: Handles dates and periods&lt;br&gt;
In Power BI, DAX expressions are written in the formula bar, which is just below the menu bar.&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.amazonaws.com%2Fuploads%2Farticles%2Fjkdc5r4n0swy6v9xtjaz.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%2Fjkdc5r4n0swy6v9xtjaz.png" alt="formula bar" width="800" height="176"&gt;&lt;/a&gt;&lt;/p&gt;
formular bar



&lt;p&gt;Once these calculations are carried out, they can either be recorded as a new measure or a new column. Therefore, before carrying out any DAX function, select whether the new values should be recorded as a measure or column, depending on the function you want to use. This can be done by going to &lt;em&gt;menu bar&amp;gt;calculations&amp;gt;new measure/new column.&lt;/em&gt;&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.amazonaws.com%2Fuploads%2Farticles%2F6uol0924xphb4awcbmks.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%2F6uol0924xphb4awcbmks.png" alt="DAX calculations" width="682" height="153"&gt;&lt;/a&gt;&lt;/p&gt;
DAX calculations


&lt;h6&gt;
  
  
  Aggregate functions
&lt;/h6&gt;

&lt;p&gt;The most common include:&lt;br&gt;
&lt;code&gt;SUM&lt;/code&gt;: Adds all the numbers in a column.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sum of column = sum(table_name[column_name](unit_of_measurement))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;AVERAGE&lt;/code&gt;: Returns the average of a column&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;average of column = average(table_name[column_name](unit_of_measurement))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;SUMX&lt;/code&gt;: Adds up an expression for each row in a table.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sum of expression = sumx(table_name, expression)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;AVERAGEX&lt;/code&gt;: Calculates an average based on an expression per row.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;average of expression = averagex(table_name, expression)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;MAX&lt;/code&gt;: Retrieves the largest value in a column&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;max of column = max(table_name[column_name](unit_of_measurement))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;MIN&lt;/code&gt;: Retrieves the smallest value in a column&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;min of column = sum(table_name[column_name](unit_of_measurement))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;Expressions are calculations performed between 2 or more columns of a table.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h6&gt;
  
  
  Logical functions
&lt;/h6&gt;

&lt;p&gt;The most common include:&lt;br&gt;
&lt;code&gt;IF&lt;/code&gt;: Returns one value if a condition is true, and another if false.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Result = IF(condition, "value if true", "value if false")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;AND&lt;/code&gt;: Returns TRUE if all conditions are true.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Result = IF(AND(comma separated conditions) "value if true", "value if false")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;OR&lt;/code&gt;: Returns TRUE if at least one condition is true.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Result = IF(OR(comma separated conditions) "value if true", "value if false")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;NOT&lt;/code&gt;: Reverses a logical value.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Result = IF(NOT(condition) "value if true", "value if false")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;To use more than 2 conditions in &lt;code&gt;AND&lt;/code&gt; and &lt;code&gt;OR&lt;/code&gt; functions, use the &lt;code&gt;IF&lt;/code&gt; function together with &lt;code&gt;&amp;amp;&amp;amp;&lt;/code&gt; (ampersand operator) and &lt;code&gt;||&lt;/code&gt; (double pipe) respectively.&lt;/p&gt;

&lt;p&gt;A nested if statement (multiple if statements meshed together) can be provides more than 2 possible results (multiple results). However, it can only be used to evaluate only one column.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h6&gt;
  
  
  Calculate and Filter functions
&lt;/h6&gt;

&lt;p&gt;&lt;code&gt;calculate&lt;/code&gt; : changes the filter context of a calculation and then evaluates an expression under those new filters. Only done for one column at a time.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;result = Calculate(Expression, condition)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;Filter&lt;/code&gt; : Returns a table that contains only rows that meet a condition.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;new table = Filter(source_table, condition)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h6&gt;
  
  
  Text functions
&lt;/h6&gt;

&lt;p&gt;The common function include:&lt;br&gt;
&lt;code&gt;CONCATENATE&lt;/code&gt; : Joins two text values together.&lt;br&gt;
&lt;code&gt;CONCATENATEX&lt;/code&gt; : Concatenates text from a column or table with a delimiter.&lt;br&gt;
&lt;code&gt;LEN&lt;/code&gt; : Counts the number of characters in text.&lt;br&gt;
&lt;code&gt;UPPER&lt;/code&gt; and &lt;code&gt;LOWER&lt;/code&gt; : Converts text to uppercase and lowercase respectively&lt;br&gt;
&lt;code&gt;PROPER&lt;/code&gt; : Capitalizes the first letter of each word.&lt;br&gt;
&lt;code&gt;TRIM&lt;/code&gt; : Removes extra spaces from text (except single spaces between words).&lt;/p&gt;
&lt;h6&gt;
  
  
  Data and Time functions
&lt;/h6&gt;

&lt;p&gt;The most common functions include:&lt;br&gt;
&lt;code&gt;TODAY&lt;/code&gt; : Returns current date&lt;br&gt;
&lt;code&gt;NOW&lt;/code&gt; : Returns current date and time&lt;br&gt;
&lt;code&gt;DATE&lt;/code&gt; : Creates a date&lt;br&gt;
&lt;code&gt;DAY&lt;/code&gt; : Extracts day&lt;br&gt;
&lt;code&gt;MONTH&lt;/code&gt; : Extracts month number&lt;br&gt;
&lt;code&gt;DATEDIFF&lt;/code&gt; : Difference between dates&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;DATEDIFF(lower_date, higher_date, DAY)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;DATEADD&lt;/code&gt; : Shift date context by either a month, day, or year.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;shifted_date = DATEADD(date_column, operation, DAY/MONTH/YEAR)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;operation&lt;/code&gt; refers to the number of days/months/years you want to shift the date (e.g., +1, +3, -4, -5)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Data Visualization
&lt;/h2&gt;

&lt;p&gt;Visualization involves the graphical representation of data using visual elements such as charts, graphs, tables, maps, and dashboards to communicate information clearly and effectively. After generating the measures using DAX, it is possible to visualize your calculations thanks to the reports view tool in the view selector.&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.amazonaws.com%2Fuploads%2Farticles%2Feqqnupjjjtjheriglcxm.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%2Feqqnupjjjtjheriglcxm.png" alt="view selection" width="800" height="382"&gt;&lt;/a&gt;&lt;/p&gt;
 report view 



&lt;p&gt;To visualize a measure, you first select the visual on the &lt;strong&gt;visualization pane&lt;/strong&gt; you want to use, then locate the measure you want to represent on the &lt;strong&gt;data pane&lt;/strong&gt;. You can apply some filters from the filters pane, depending on how you want your visual to appear and how to represent your data.&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%2F1371wqohyfx42o2u162i.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%2F1371wqohyfx42o2u162i.png" alt="select the visual" width="800" height="246"&gt;&lt;/a&gt;&lt;/p&gt;
 select the visual 



&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%2Fbw8ly77yfz40scixcb9w.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%2Fbw8ly77yfz40scixcb9w.png" alt="locate and select your measure" width="800" height="243"&gt;&lt;/a&gt;&lt;/p&gt;
 locate and select your measure 



&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%2F4en4c5lsmvznfu7j8j41.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%2F4en4c5lsmvznfu7j8j41.png" alt="visual of a card" width="800" height="434"&gt;&lt;/a&gt;&lt;/p&gt;
 visual of a card 



&lt;p&gt;Power BI supports various visuals to represent data and they can all be located on the visualization pane. Some of the most popular visuals include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Card - Displays a single key value, such as total sales or profit.&lt;/li&gt;
&lt;li&gt;Bar Chart - Uses horizontal bars to compare values across categories.&lt;/li&gt;
&lt;li&gt;Column Chart - Uses vertical bars to show data changes across categories or time.&lt;/li&gt;
&lt;li&gt;Line Chart-Shows trends over time using connected data points.&lt;/li&gt;
&lt;li&gt;Pie Chart - Displays proportions of a whole.&lt;/li&gt;
&lt;li&gt;Donut Chart - A variation of the pie chart with a hollow center.&lt;/li&gt;
&lt;li&gt;Map - Visualizes data based on geographic location.&lt;/li&gt;
&lt;li&gt;Treemap-Displays hierarchical data using nested rectangles.&lt;/li&gt;
&lt;li&gt;Scatter Chart - Plots values using two numeric axes to show relationships.&lt;/li&gt;
&lt;li&gt;Slicer-Acts as an interactive filter for reports.&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;Bars, lines, and scatter plots within the accompanying visuals can also serve as interactive slicers.&lt;/p&gt;
&lt;/blockquote&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%2Fnew09uacj1xk9kyddilz.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%2Fnew09uacj1xk9kyddilz.png" alt="visual 1" width="800" height="448"&gt;&lt;/a&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%2F620knjptycba0q4karyv.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%2F620knjptycba0q4karyv.png" alt="visual 2" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;
Examples of visuals in Power BI



&lt;h4&gt;
  
  
  The Dashboard
&lt;/h4&gt;

&lt;p&gt;A dashboard is a single-page visual display that presents key information needed to monitor performance and support quick decision-making. It is formed by bringing together and arranging key visuals that are deemed crucial (depending on the goals of the analysis) on a single view. &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%2Fgbuguuwmthrtarjhhr9j.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%2Fgbuguuwmthrtarjhhr9j.png" alt="Dashboard" width="800" height="447"&gt;&lt;/a&gt;&lt;/p&gt;
A simple Dashboard in PowerBI



&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Regardless of the field and type of data, data analysts are capable of deriving meaning from the data presented by following several steps with the help of various tools. Power BI is one of the most sought-after tools by data analysts, given its intuitive interface, support for various data types, and its vast array of technical, analytical, and visualization capabilities. From carrying out transformations using Power Query to using DAX for calculations and analysis, and creating visualizations from the visualization pane, Power BI is definitely a powerful tool for any data analyst or professional seeking to derive meaning from their data.&lt;/p&gt;

</description>
      <category>analytics</category>
      <category>datascience</category>
      <category>microsoft</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Schemas and Data Modelling in Power BI</title>
      <dc:creator>stephen Githinji</dc:creator>
      <pubDate>Mon, 02 Feb 2026 14:56:21 +0000</pubDate>
      <link>https://forem.com/stephen_githinji_/schemas-and-data-modelling-in-power-bi-5ho2</link>
      <guid>https://forem.com/stephen_githinji_/schemas-and-data-modelling-in-power-bi-5ho2</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;In Power BI, &lt;strong&gt;Data modelling&lt;/strong&gt; is the process of creating visual representations of the relationships between data structures, including information about the individual attributes within those structures. These visual representations are referred to as &lt;strong&gt;schemas.&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%2F7hdnlzkgqo5oq77kmph1.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%2F7hdnlzkgqo5oq77kmph1.png" alt="Power BI schemas" width="601" height="520"&gt;&lt;/a&gt;&lt;/p&gt;
An example of a Power BI schema



&lt;p&gt;2 main schemas are employed in Power BI, and they are: &lt;strong&gt;Star&lt;/strong&gt; and &lt;strong&gt;Snowflake.&lt;/strong&gt;&lt;br&gt;
In Power BI, schemas can be found under the &lt;strong&gt;fields/data pane&lt;/strong&gt;, located on the right-hand side of the Power BI window, under &lt;strong&gt;model view.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The star schema
&lt;/h2&gt;

&lt;p&gt;A star schema is one where a single fact table is surrounded by multiple-dimension tables. The &lt;a href="https://www.geeksforgeeks.org/computer-networks/difference-between-fact-table-and-dimension-table/" rel="noopener noreferrer"&gt;&lt;strong&gt;fact table&lt;/strong&gt;&lt;/a&gt; contains the numeric measures or facts of the data model, while the &lt;a href="//www.geeksforgeeks.org/computer-networks/difference-between-fact-table-and-dimension-table"&gt;&lt;strong&gt;dimension tables&lt;/strong&gt;&lt;/a&gt; contain descriptive attributes or dimensions of the data model. Just as the name suggests, the visual &lt;strong&gt;resembles a star&lt;/strong&gt;⭐&lt;/p&gt;

&lt;h2&gt;
  
  
  The Snowflake schema
&lt;/h2&gt;

&lt;p&gt;On the other hand, a snowflake schema is a type of schema that &lt;strong&gt;extends the star schema&lt;/strong&gt; by normalizing dimension tables. In other words, one central fact table connects to multiple dimension tables, but one or more of those dimension tables are further divided into multiple related sub-dimension tables. &lt;br&gt;
This ultimately results in a structure that &lt;strong&gt;resembles a snowflake&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%2Fjozgjx9vxtnzlt19lmqp.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%2Fjozgjx9vxtnzlt19lmqp.png" alt=" " width="514" height="270"&gt;&lt;/a&gt;&lt;/p&gt;
A star vs a snowflake schema



&lt;h2&gt;
  
  
  Relationships in Star and Snowflake Schemas
&lt;/h2&gt;

&lt;p&gt;How fact tables and dimension tables connect is what is defined as a relationship. They are basically defined by the use of &lt;strong&gt;Primary Keys(PK)&lt;/strong&gt; and &lt;strong&gt;Foreign Keys(FK).&lt;/strong&gt; &lt;br&gt;
&lt;code&gt;PK&lt;/code&gt; : A unique identifier for every row in a table&lt;br&gt;
&lt;code&gt;FK&lt;/code&gt; : A column in one table that references the Primary Key           of another table, creating a link between them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Importance of Good Data Modelling Practices for Performance and Accurate Reporting
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Performance&lt;/th&gt;
&lt;th&gt;Reporting&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Optimized query speed&lt;/td&gt;
&lt;td&gt;Single source of truth&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Reduced complexity and resource usage&lt;/td&gt;
&lt;td&gt;Data integrity&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;scalability&lt;/td&gt;
&lt;td&gt;contextual understanding&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Faster processing&lt;/td&gt;
&lt;td&gt;Fewer errors&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>analytics</category>
      <category>database</category>
      <category>dataengineering</category>
      <category>microsoft</category>
    </item>
    <item>
      <title>Introduction to Linux For Data Engineers, Including Practical use for Vi and Nano</title>
      <dc:creator>stephen Githinji</dc:creator>
      <pubDate>Mon, 26 Jan 2026 02:15:11 +0000</pubDate>
      <link>https://forem.com/stephen_githinji_/introduction-to-linux-for-data-engineers-including-practical-use-for-vi-and-nano-2moa</link>
      <guid>https://forem.com/stephen_githinji_/introduction-to-linux-for-data-engineers-including-practical-use-for-vi-and-nano-2moa</guid>
      <description>&lt;h1&gt;
  
  
  Overview
&lt;/h1&gt;

&lt;p&gt;Data Engineers (DEs) are involved in building and maintaining systems that collect, store, and prepare data for data scientists and analysts to use. To be able to achieve this, they employ various techniques and tools, and one of these tools is &lt;a href="https://www.linux.org" rel="noopener noreferrer"&gt;Linux&lt;/a&gt;.&lt;br&gt;
Linux is an operating system (OS) which is open-sourced and is based on the &lt;a href="https://unix.org" rel="noopener noreferrer"&gt;Unix system&lt;/a&gt;. It contains several &lt;a href="https://en.wikipedia.org/wiki/List_of_Linux_distributions" rel="noopener noreferrer"&gt;distributions &lt;/a&gt;such as &lt;a href="https://ubuntu.com" rel="noopener noreferrer"&gt;Ubuntu&lt;/a&gt;, &lt;a href="https://www.fedoraproject.org" rel="noopener noreferrer"&gt;Fedora&lt;/a&gt;, &lt;a href="https://www.debian.org" rel="noopener noreferrer"&gt;Debian&lt;/a&gt;, and many others, all of which use the &lt;a href="https://www.geeksforgeeks.org/operating-systems/what-is-command-line-interface-cli/" rel="noopener noreferrer"&gt;command line interface&lt;/a&gt;. Linux is especially known for its versatility and security, characteristics that make the OS more desirable to work with for technical professionals such as Data Engineers.&lt;/p&gt;

&lt;p&gt;DEs prefer to use Linux due to the following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Most servers and &lt;a href="https://www.vmware.com/topics/virtual-machine" rel="noopener noreferrer"&gt;Virtual Machines&lt;/a&gt; (VMs) run Linux.&lt;/li&gt;
&lt;li&gt;Easier &lt;a href="https://datascientest.com/en/all-about-script-automation" rel="noopener noreferrer"&gt;automation and scripting&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;High compatibility with &lt;a href="https://dev.to/ezinne_anne/containers-what-is-containerization-and-container-orchestration-38pe"&gt;Containerization and orchestration&lt;/a&gt; tools.&lt;/li&gt;
&lt;li&gt;Resource control&lt;/li&gt;
&lt;li&gt;Troubleshooting and monitoring&lt;/li&gt;
&lt;li&gt;High compatibility with &lt;a href="https://www.geeksforgeeks.org/data-engineering/10-best-data-engineering-tools-for-big-data-processing/" rel="noopener noreferrer"&gt;big-data tooling&lt;/a&gt; &lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;
  
  
  Basic Linux Commands for Data Engineers
&lt;/h1&gt;

&lt;p&gt;For a DE to be able to use the command-line interface in the Linux OS seamlessly, it is essential to understand some of the basic commands in Linux.&lt;br&gt;
Some of the commands that are deemed basic for a DE are:&lt;br&gt;
&lt;code&gt;ls&lt;/code&gt; : To list files and directories.&lt;br&gt;
&lt;code&gt;pwd&lt;/code&gt;: To print the current working directory.&lt;br&gt;
&lt;code&gt;cd&lt;/code&gt; : To change to a different directory.&lt;br&gt;
&lt;code&gt;cp&lt;/code&gt; : To copy a file to a different directory while still maintaining the original copy.&lt;br&gt;
&lt;code&gt;mv&lt;/code&gt; : To move a file to a different directory and delete the original copy.&lt;br&gt;
&lt;code&gt;rm&lt;/code&gt; : To delete a file.&lt;br&gt;
&lt;code&gt;ssh&lt;/code&gt;: To connect to a remote server.&lt;br&gt;
&lt;code&gt;tar&lt;/code&gt;, &lt;code&gt;zip&lt;/code&gt;: For Creating archives and compressions&lt;br&gt;
&lt;code&gt;chmod&lt;/code&gt;: For changing access permissions of files and directories.&lt;/p&gt;
&lt;h1&gt;
  
  
  Practical Usage of Vi and Nano
&lt;/h1&gt;
&lt;h3&gt;
  
  
  Introduction
&lt;/h3&gt;

&lt;p&gt;Vi and Nano are the most common text editors (tools that are used in creating, viewing, and manipulating texts in files) found in Linux.&lt;br&gt;
DEs use text editors for writing and editing code, editing configuration files, creating scripts and automations, and writing documentation.&lt;/p&gt;
&lt;h3&gt;
  
  
  Vi
&lt;/h3&gt;

&lt;p&gt;It is a modal, keyboard-driven editor found on almost all Linux systems. Modal implies that the editor operates in different modes, where the same key does different things depending on the current mode. One mode is used for typing (insert mode) while the other is used for commands to navigate, delete, copy, and search (Normal mode). To change what your keystrokes can do, one is obligated to switch modes.&lt;br&gt;
Vi is found in many servers and it is adopted by DEs to edit files on remote servers over SSH.&lt;br&gt;
To open a Vi text editor, use the Linux command:&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;p&gt;Some Key commands that are used in the Vi text editor:&lt;br&gt;
&lt;code&gt;:w&lt;/code&gt; - To write (save) the contents of the buffer to the file without exiting the editor.&lt;br&gt;
&lt;code&gt;:q&lt;/code&gt; - Quit Vi.&lt;br&gt;
&lt;code&gt;:wq&lt;/code&gt; - Save and quit.&lt;br&gt;
&lt;code&gt;:q!&lt;/code&gt; - Force quit without saving.&lt;br&gt;
&lt;code&gt;i&lt;/code&gt;- To write on the document&lt;br&gt;
&lt;code&gt;Esc&lt;/code&gt;- To transition between modes.&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%2Fgoerbgtj0wwvn7uyu4fm.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%2Fgoerbgtj0wwvn7uyu4fm.png" alt="A Vi interface" width="800" height="423"&gt;&lt;/a&gt; &lt;em&gt;Example of a vi text editor&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Nano
&lt;/h3&gt;

&lt;p&gt;Nano, on the other hand, is modeless, as it uses one mode for commands and typing. Keys are used to insert texts, while commands employ shortcuts like Ctrl and Alt. DEs prefer nano when carrying out minute text edits on documents.&lt;br&gt;
To open the nano text editor, use the command:&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;p&gt;Once within the text editor, the following commands can be used to manipulate the file:&lt;br&gt;
&lt;code&gt;Ctr+O&lt;/code&gt; - save the file&lt;br&gt;
&lt;code&gt;Ctr+X&lt;/code&gt; - exit&lt;br&gt;
&lt;code&gt;Ctr+K&lt;/code&gt; - Cut the current line&lt;br&gt;
&lt;code&gt;Ctr+U&lt;/code&gt; - Paste&lt;br&gt;
&lt;code&gt;Ctr+W&lt;/code&gt; - search&lt;br&gt;
&lt;code&gt;Ctr+\&lt;/code&gt; - replace&lt;br&gt;
&lt;code&gt;Ctr+G&lt;/code&gt; - help&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%2Fv78xo5aq9tck26nc2k6p.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%2Fv78xo5aq9tck26nc2k6p.png" alt="A nano text editor" width="800" height="428"&gt;&lt;/a&gt; &lt;em&gt;Example of a nano text editor&lt;/em&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>dataengineering</category>
      <category>linux</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Pushing and Pulling Code From GitHub</title>
      <dc:creator>stephen Githinji</dc:creator>
      <pubDate>Sun, 18 Jan 2026 10:12:44 +0000</pubDate>
      <link>https://forem.com/stephen_githinji_/pushing-and-pulling-code-from-github-409</link>
      <guid>https://forem.com/stephen_githinji_/pushing-and-pulling-code-from-github-409</guid>
      <description>&lt;h1&gt;
  
  
  Overview on GitHub
&lt;/h1&gt;

&lt;p&gt;&lt;a href="http://github.com" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; is among the most popular websites that provides teams the ability to carry out version control (VC). It is built on git, a popular decentralized version control system. &lt;/p&gt;

&lt;p&gt;In software development, &lt;a href="https://git-scm.com" rel="noopener noreferrer"&gt;Git&lt;/a&gt; tracks changes made to the source code, hence enabling developers to collaborate and manage different versions of their product. GitHub provides an interface for hosting git repositories.&lt;/p&gt;

&lt;h1&gt;
  
  
  GitHUb Operations
&lt;/h1&gt;

&lt;p&gt;Various operations in GitHub allow developers to host their git repositories and track their changes. The most common operations are commit, push, and pull.&lt;/p&gt;

&lt;h2&gt;
  
  
  Commit
&lt;/h2&gt;

&lt;p&gt;Committing your code entails recording a snapshot of the changes to one or more files in your project.&lt;br&gt;
First, one needs to add the file(s) they need to make changes to by invoking the command:&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;p&gt;This places them to the staging area.&lt;br&gt;
To commit your changes use the command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git commit -m "Message describing your changes."
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Push
&lt;/h2&gt;

&lt;p&gt;The other operation is push. It used to upload your local repository content to a remote repository (such as GitHub).&lt;br&gt;
To do so, use the command:&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;p&gt;In case you have a branch, use the command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git push &amp;lt;remote-name&amp;gt; &amp;lt;branch-name&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  prerequisites before pushing
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;You must have a local Git repository with committed changes on your computer.&lt;/li&gt;
&lt;li&gt;A remote repository (like GitHub) linked to your local one. You can check your configured remote repos using the command:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; git remote -v
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;The necessary permissions to write to the remote repository. &lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Pull
&lt;/h2&gt;

&lt;p&gt;Pulling is aimed at updating your current local working branch with the latest changes from a remote repository.&lt;br&gt;
Use the command:&lt;br&gt;
&lt;/p&gt;

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

&lt;/div&gt;



&lt;p&gt;In case your are pulling from a specific remote branch, use:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git pull &amp;lt;remote_name&amp;gt; &amp;lt;branch_name&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;Hint:&lt;/code&gt; Always ensure that you are always on the correct branch. You can use the command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git checkout &amp;lt;branch_name&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>beginners</category>
      <category>git</category>
      <category>github</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
