<?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: Zawadi Mwikali</title>
    <description>The latest articles on Forem by Zawadi Mwikali (@zawadi_mwikali_f3257dcf58).</description>
    <link>https://forem.com/zawadi_mwikali_f3257dcf58</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%2F3831488%2F281fcaf8-c5ca-4cba-a18d-f97b90f4b097.png</url>
      <title>Forem: Zawadi Mwikali</title>
      <link>https://forem.com/zawadi_mwikali_f3257dcf58</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/zawadi_mwikali_f3257dcf58"/>
    <language>en</language>
    <item>
      <title>Publishing and Embedding a Power BI Report.</title>
      <dc:creator>Zawadi Mwikali</dc:creator>
      <pubDate>Sun, 05 Apr 2026 10:07:40 +0000</pubDate>
      <link>https://forem.com/zawadi_mwikali_f3257dcf58/publishing-and-embedding-a-power-bi-report-a-complete-guide-714</link>
      <guid>https://forem.com/zawadi_mwikali_f3257dcf58/publishing-and-embedding-a-power-bi-report-a-complete-guide-714</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Power BI is a powerful business intelligence and data visualization tool developed by Microsoft that enables users to transform raw data into meaningful insights through interactive reports and dashboards. It is widely used by data analysts, business professionals and organizations to monitor performance, uncover patterns and support data-driven decision-making.&lt;br&gt;
This article provides a step-by-step guide on how to publish a Power BI report and embed it into a website. It covers the entire process from creating a workspace to generating an embed code and integrating the report into a web page.&lt;br&gt;
Through the Power BI Service, users can make their reports accessible online and even embed them into websites, allowing for broader accessibility and seamless integration into digital platforms.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Publishing a Power BI report involves the following key steps:&lt;br&gt;
*&lt;/em&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Creating a workspace in Power BI Service&lt;/li&gt;
&lt;li&gt;Uploading and publishing your report&lt;/li&gt;
&lt;li&gt;Generating an embed code&lt;/li&gt;
&lt;li&gt;Embedding the report on a website&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  1: Creating a Workspace
&lt;/h2&gt;

&lt;p&gt;A workspace in Power BI Service is used as a collaborative environment where reports, dashboards and datasets are stored and managed. Before publishing your report, you need to create a workspace where it will reside.&lt;/p&gt;

&lt;p&gt;How to Create a Workspace&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open your web browser and navigate to the Power BI Service (&lt;a href="https://app.powerbi.com" rel="noopener noreferrer"&gt;https://app.powerbi.com&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Sign in using your Microsoft account&lt;/li&gt;
&lt;li&gt;On the left-hand navigation pane, locate and click on Workspaces&lt;/li&gt;
&lt;li&gt;Click the Create a workspace button&lt;/li&gt;
&lt;li&gt;Enter the following details:&lt;/li&gt;
&lt;li&gt;Workspace Name (e.g., Sales Dashboard Workspace)&lt;/li&gt;
&lt;li&gt;Description (optional but recommended)&lt;/li&gt;
&lt;li&gt;Configure advanced settings if necessary (optional)&lt;/li&gt;
&lt;li&gt;Click Save&lt;/li&gt;
&lt;/ol&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%2Fu0708rnl1gsd19uoxo8y.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%2Fu0708rnl1gsd19uoxo8y.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2: Uploading and Publishing Your Report
&lt;/h2&gt;

&lt;p&gt;After creating your workspace, the next step is to upload and publish your Power BI report.&lt;/p&gt;

&lt;p&gt;Publishing from Power BI Desktop&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open your .pbix file in Power BI Desktop&lt;/li&gt;
&lt;li&gt;Review your report to ensure all visuals and data are accurate&lt;/li&gt;
&lt;li&gt;Click the Publish button located in the top-right corner&lt;/li&gt;
&lt;li&gt;If prompted, sign in to your Power BI account&lt;/li&gt;
&lt;li&gt;Select the workspace you created earlier&lt;/li&gt;
&lt;li&gt;Click Select to confirm&lt;/li&gt;
&lt;/ol&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%2Fmsfjnhvpjriqs9tnh1hq.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%2Fmsfjnhvpjriqs9tnh1hq.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3: Generating the Embed Code
&lt;/h2&gt;

&lt;p&gt;Power BI allows users to embed reports into websites using an iframe. This is done through the Publish to web feature.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note that:&lt;/strong&gt;&lt;br&gt;
Using Publish to web makes your report publicly accessible. Anyone with the link can view it, so avoid using this option for sensitive or confidential data.&lt;/p&gt;

&lt;p&gt;Steps to Generate the Embed Code&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open your report in Power BI Service&lt;/li&gt;
&lt;li&gt;From the top menu, click File&lt;/li&gt;
&lt;li&gt;Select Embed report&lt;/li&gt;
&lt;li&gt;Click Publish to web&lt;/li&gt;
&lt;li&gt;A prompt will appear—click Create embed code&lt;/li&gt;
&lt;li&gt;Power BI will generate:&lt;/li&gt;
&lt;li&gt;A public URL&lt;/li&gt;
&lt;li&gt;An iframe embed code&lt;/li&gt;
&lt;li&gt;Copy the iframe code for use on your website&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This code allows your report to be displayed interactively on any web page.&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%2F0385r2fi3kam5v59kezo.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%2F0385r2fi3kam5v59kezo.png" alt=" " width="800" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  4: Embedding the Report on a Website
&lt;/h2&gt;

&lt;p&gt;Once you have the embed code, the final step is to integrate it into a website.&lt;/p&gt;

&lt;p&gt;This iframe acts as a container that displays your Power BI report within a webpage.&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%2Fei84ng4wi9ci4w1f6673.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%2Fei84ng4wi9ci4w1f6673.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Embed the Report
&lt;/h2&gt;

&lt;p&gt;Open your website’s HTML file (e.g., index.html)&lt;br&gt;
Identify where you want the report to appear&lt;br&gt;
Paste the iframe code into that section of the HTML&lt;br&gt;
Save the file&lt;br&gt;
Open the file in a browser or deploy it to a hosting platform&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%2F7h9fnnb2kuw2p48jydph.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%2F7h9fnnb2kuw2p48jydph.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once embedded, the report will appear directly on the webpage and users will be able to interact with it just as they would in Power BI Service.&lt;/p&gt;

</description>
      <category>powerfuldevs</category>
    </item>
    <item>
      <title>Understanding Data Modeling in Power BI</title>
      <dc:creator>Zawadi Mwikali</dc:creator>
      <pubDate>Sun, 29 Mar 2026 14:06:37 +0000</pubDate>
      <link>https://forem.com/zawadi_mwikali_f3257dcf58/understanding-data-modeling-in-power-bi-nae</link>
      <guid>https://forem.com/zawadi_mwikali_f3257dcf58/understanding-data-modeling-in-power-bi-nae</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;br&gt;
Power Bi is a powerful tool that I have recently been undertaking that has challenged me and opened my eyes differently. Slowly by slowly a few things have greatly stood out to me right from the basics to a couple of advanced concepts. &lt;br&gt;
Before Power BI can draw a chart or a visualization, it must understand how tables relate. &lt;br&gt;
That structure is the data model. A strong model produces fast, accurate insights a weak model leads to wrong results. Power BI works in three layers: Power Query (clean), Data Model (relate) and Report View (visualize). &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Joins&lt;/strong&gt; (Power Query) &lt;br&gt;
A join physically combines rows from two tables based on a shared column. In Power BI, joins live inside Power Query, accessed via Home→Merge Queries. The join type you select determines exactly which rows survive the merge. For any join: open Power Query, select your first table, go to Merge Queries→Merge as New, choose the second table, click the matching key column in each, then pick a join. &lt;br&gt;
Common types: Inner join (matches only), Left join (all left and matches), Right join, Full join and Anti joins for finding missing data. &lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Relationships *&lt;/em&gt;(Model View) &lt;br&gt;
Joins physically merge tables. Relationships are different, they keep tables separate but tell Power BI how they logically connect. When you build a visual, Power BI follows these relationship lines to pull the right numbers from the right rows automatically. &lt;br&gt;
Create relationships two ways: visually in Model View by dragging a column from one table onto the matching column in another or precisely via Home→Manage Relationships→New, where you select both tables, click matching columns, set cardinality and cross-filter direction and click OK. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cross- filter direction&lt;/strong&gt; controls which direction filters flow across a relationship. Single means filters travel from the "one" side (dimension) to the "many" side (fact) — selecting a Customer filters the Orders table, but not vice versa. Both allows &lt;br&gt;
filtering in both directions, which can cause circular dependencies and unexpected DAX &lt;br&gt;
results. Leave it as Single unless you have a specific need to change it. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cardinality&lt;/strong&gt;: one to many is best practice. Avoid many-to-many unless necessary. Cross-filter &lt;br&gt;
direction should usually remain single to prevent ambiguity. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Remember&lt;/strong&gt;- Joins combine data during refresh, increasing size. Relationships link tables when querying, making models efficient. &lt;/p&gt;

&lt;p&gt;**Fact &amp;amp; Dimension Tables &lt;br&gt;
**Fact tables store numeric data (e.g., sales). Dimension tables store descriptive attributes (e.g., customers, dates). Fact tables sit on the many side while dimensions on the one side. &lt;/p&gt;

&lt;p&gt;****Star Schema &lt;br&gt;
**This is the most recommended schema to use. It contains a central fact table that connects to multiple dimension tables. This structure is fast, scalable and DAX-friendly. &lt;/p&gt;

&lt;p&gt;**Before vs After Modeling &lt;br&gt;
**Flat table: duplicated data, large size, slow performance. Star schema has a clean structure, smaller size and faster queries. It reduces a lot of redundancy and repetition and formats trickle &lt;br&gt;
down throughout the tables that are in the schema. &lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Common Issues to look out for while working with data *&lt;/em&gt;&lt;br&gt;
• Wrong totals: duplicate keys you can fix this by removing duplicates. &lt;br&gt;
• No filtering is tied to a missing relationship. &lt;br&gt;
• Slow model has too many text columns in the fact table. &lt;/p&gt;

</description>
      <category>analytics</category>
      <category>beginners</category>
      <category>data</category>
      <category>microsoft</category>
    </item>
    <item>
      <title>How Linux is Used in Real-World Data Engineering</title>
      <dc:creator>Zawadi Mwikali</dc:creator>
      <pubDate>Tue, 24 Mar 2026 12:38:35 +0000</pubDate>
      <link>https://forem.com/zawadi_mwikali_f3257dcf58/how-linux-is-used-in-real-world-data-engineering-3aad</link>
      <guid>https://forem.com/zawadi_mwikali_f3257dcf58/how-linux-is-used-in-real-world-data-engineering-3aad</guid>
      <description>&lt;p&gt;Getting into data engineering as a beginner you quickly realize the importance of grasping Linux. Most systems run on Linux therefore it is compulsory to learn to navigate your way around the terminal which makes your work cleaner and faster.&lt;/p&gt;

&lt;h2&gt;
  
  
  Importance of Linux to Data Engineers.
&lt;/h2&gt;

&lt;p&gt;As a data engineer, you will work with:&lt;/p&gt;

&lt;p&gt;Servers and cloud machines - AWS, GCP, Azure&lt;br&gt;
Databases - Postgres, MySQl&lt;br&gt;
Data pipelines - ETL / ELT Tools&lt;br&gt;
Big data tools - Spark, Kafka, Airflow&lt;br&gt;
Almost all of these run on Linux servers.&lt;/p&gt;

&lt;p&gt;Linux helps you:&lt;/p&gt;

&lt;p&gt;Work directly on production servers&lt;br&gt;
Automate tasks using scripts&lt;br&gt;
Debug issues quickly&lt;br&gt;
Handle large files efficiently&lt;br&gt;
Understand how data flows at system level &lt;/p&gt;

&lt;h2&gt;
  
  
  Understanding commands in the Linux terminal.
&lt;/h2&gt;

&lt;p&gt;The terminal is just a way to talk to your computer using commands instead of clicking buttons.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Networking and data transfer.&lt;br&gt;
When getting into cloud servers.&lt;br&gt;
&lt;code&gt;ssh&lt;/code&gt; &lt;br&gt;
To download information from the internet&lt;br&gt;
&lt;code&gt;wget&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Navigation and file management.&lt;br&gt;
List files &lt;br&gt;
&lt;code&gt;ls&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This shows the current directory. &lt;br&gt;
&lt;code&gt;pwd&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To create a folder use &lt;br&gt;
&lt;code&gt;mkdir&lt;/code&gt; 'folder_name'&lt;/p&gt;

&lt;p&gt;Move between folders&lt;br&gt;
&lt;code&gt;cd 'folder_name'&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To go back&lt;br&gt;
&lt;code&gt;cd&lt;/code&gt; ..&lt;/p&gt;

&lt;p&gt;Go home:&lt;br&gt;
cd ~&lt;/p&gt;

&lt;p&gt;To create files&lt;br&gt;
&lt;code&gt;touch&lt;/code&gt; 'file_name'&lt;/p&gt;

&lt;p&gt;To move files without leaving a copy behind&lt;br&gt;
&lt;code&gt;mv&lt;/code&gt; 'destination_location'&lt;/p&gt;

&lt;p&gt;To move a file while leaving a copy behind&lt;br&gt;
&lt;code&gt;cp&lt;/code&gt; 'source_file' 'destination_file'&lt;/p&gt;

&lt;p&gt;Permanently removing a file&lt;br&gt;
&lt;code&gt;rm&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;Permanently removing a folder&lt;br&gt;
&lt;code&gt;rm -r&lt;/code&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;File viewing and editing
Creating and editing a file using the vi editor, nano can also be used.
&lt;code&gt;vi&lt;/code&gt; 'file_name'&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Viewing file content&lt;br&gt;
&lt;code&gt;cat&lt;/code&gt; 'file_name'&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Permissions and user management.
File ownership is an important component of Unix that provides a secure method for storing files. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Owner permissions − The owner's permissions determine what actions the owner of the file can perform on the file.&lt;/p&gt;

&lt;p&gt;Group permissions − The group's permissions determine what actions a user, who is a member of the group that a file belongs to, can perform on the file.&lt;/p&gt;

&lt;p&gt;Other permissions − The permissions for others indicate what action all other users can perform on the file.&lt;/p&gt;

&lt;p&gt;To check permissions for files&lt;br&gt;
&lt;code&gt;ls -l&lt;/code&gt;&lt;br&gt;
The basic building blocks of permissions are the read, write and execute permissions&lt;/p&gt;

&lt;p&gt;Changing the owner of a file&lt;br&gt;
&lt;code&gt;chown&lt;/code&gt; 'user_name plus file_name'&lt;/p&gt;

&lt;p&gt;Changing the group of a file&lt;br&gt;
&lt;code&gt;chgrp&lt;/code&gt; 'name_group or group_ID plus the file_name'&lt;/p&gt;

&lt;p&gt;At first its confusing when trying to grasp all these at a go but eventually they sink in, hang in there!&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
