<?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: Elijah Wandimi</title>
    <description>The latest articles on DEV Community by Elijah Wandimi (@elijah_datanerd).</description>
    <link>https://dev.to/elijah_datanerd</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%2F1174015%2F725c8d0d-4869-48eb-9889-e5b0230ba00c.png</url>
      <title>DEV Community: Elijah Wandimi</title>
      <link>https://dev.to/elijah_datanerd</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/elijah_datanerd"/>
    <language>en</language>
    <item>
      <title>Data Engineering for Beginners: A Step-by-Step Guide</title>
      <dc:creator>Elijah Wandimi</dc:creator>
      <pubDate>Thu, 09 Nov 2023 13:07:09 +0000</pubDate>
      <link>https://dev.to/elijah_datanerd/data-engineering-for-beginners-a-step-by-step-guide-11hp</link>
      <guid>https://dev.to/elijah_datanerd/data-engineering-for-beginners-a-step-by-step-guide-11hp</guid>
      <description>&lt;p&gt;There has been an increase in popularity for data engineering, yet it remains a vague field. What is this data engineering? Data engineering is the process of designing, building, and maintaining data pipelines that collect, transform, and deliver data for various purposes, such as analysis, visualisation, machine learning, and reporting. Data engineering is a crucial component of data science, as it enables data scientists to access and manipulate high-quality and reliable data.&lt;/p&gt;

&lt;p&gt;In this article, we will introduce you to the basics of data engineering, including the skills, tools, and concepts that you need to know to become a successful data engineer. By the end of this article, you will have a clear understanding of what data engineering is, why it is important, and how you can get started in this exciting and rewarding field.&lt;/p&gt;

&lt;p&gt;Skills for Data Engineering&lt;br&gt;
Data engineering is a multidisciplinary field that requires a combination of technical, analytical, and communication skills. Some of the most important skills that a data engineer needs to have are:&lt;/p&gt;

&lt;p&gt;• Programming: Data engineers need to be proficient in at least one programming language, such as Python, Java, Scala, or R, that can be used to write scripts, applications, and algorithms for data processing and analysis. Programming skills also include the ability to use various libraries, frameworks, and APIs that can facilitate data engineering tasks, such as NumPy, Pandas, Spark, TensorFlow, and more.&lt;/p&gt;

&lt;p&gt;• Database: Data engineers need to be familiar with various types of databases, such as relational, non-relational, distributed, and cloud-based, that can store and manage large volumes of structured and unstructured data. Database skills also include the ability to use query languages, such as SQL, NoSQL, and Hive, that can retrieve and manipulate data from different sources and formats.&lt;/p&gt;

&lt;p&gt;• Data Pipeline: Data engineers need to be able to design, build, and maintain data pipelines that can collect, transform, and deliver data for various purposes, such as analysis, visualisation, machine learning, and reporting. Data pipeline skills also include the ability to use various tools and platforms, such as Airflow, Luigi, Kafka, AWS, and Azure, that can automate, orchestrate, and monitor data flows and workflows.&lt;/p&gt;

&lt;p&gt;• Data Quality: Data engineers need to be able to ensure the quality and reliability of data by applying various techniques and methods, such as data validation, data cleaning, data integration, data deduplication, and data governance. Data quality skills also include the ability to use various tools and frameworks, such as Great Expectations, Databricks, and Data Quality Services, that can help data engineers assess, improve, and maintain data quality.&lt;/p&gt;

&lt;p&gt;• Data Analysis: Data engineers need to be able to perform basic data analysis and exploration using various tools and methods, such as descriptive statistics, data visualisation, and hypothesis testing. Data analysis skills also include the ability to use various tools and libraries, such as Matplotlib, Seaborn, and Plotly, that can help data engineers create and present insightful and interactive data visualisations.&lt;/p&gt;

&lt;p&gt;• Communication: Data engineers need to be able to communicate effectively with various stakeholders, such as data scientists, business analysts, and managers, who have different needs and expectations from data. Communication skills also include the ability to use various tools and formats, such as Jupyter notebooks, Markdown, and PowerPoint, that can help data engineers document, explain, and showcase their data engineering projects and results.&lt;/p&gt;

&lt;p&gt;These are some of the key skills that a data engineer needs to have. Of course, there are many more skills that can be useful and beneficial for data engineering, depending on the specific domain, industry, and project. However, these skills can provide a solid foundation and a good starting point for anyone who wants to learn and practise data engineering.&lt;/p&gt;

&lt;p&gt;Tools for Data Engineering&lt;br&gt;
Data engineering involves working with various types of data, such as structured, unstructured, streaming, and batch, that can come from different sources and formats, such as web, mobile, social media, sensors, and more. To handle the complexity and diversity of data, data engineers need to use various tools and platforms that can help them collect, store, process, analyse, and deliver data efficiently and effectively. Some of the most popular and widely used tools and platforms for data engineering are:&lt;/p&gt;

&lt;p&gt;• Apache Hadoop: Apache Hadoop is an open-source framework that allows data engineers to store and process large-scale data sets across clusters of computers using simple programming models. Hadoop consists of four main components: Hadoop Distributed File System (HDFS), which is a distributed file system that provides high-throughput access to data; MapReduce, which is a programming model that enables parallel processing of data; YARN, which is a resource manager that allocates and manages resources for applications; and Hadoop Common, which is a set of utilities that support the other components. Hadoop also supports a variety of projects and tools that extend its functionality, such as Hive, Pig, Spark, HBase, and more.&lt;/p&gt;

&lt;p&gt;• Apache Spark: Apache Spark is an open-source framework that provides a unified platform for data engineering, data science, and machine learning. Spark supports various types of data processing, such as batch, streaming, interactive, and graph, using a high-level API that supports multiple languages, such as Python, Scala, Java, and R. Spark also offers various libraries and modules that enable data engineers to perform various tasks, such as Spark SQL, which is a module that supports structured and semi-structured data processing; Spark Streaming, which is a module that supports real-time data processing; Spark MLlib, which is a library that supports machine learning algorithms; and Spark GraphX, which is a library that supports graph processing.&lt;/p&gt;

&lt;p&gt;• Apache Kafka: Apache Kafka is an open-source platform that provides a distributed and scalable messaging system for data engineering. Kafka enables data engineers to publish and subscribe to streams of data, such as events, logs, and transactions, that can be processed in real-time or later. Kafka consists of three main components: Kafka Producer, which is an application that sends data to Kafka; Kafka Broker, which is a server that stores and manages data; and Kafka Consumer, which is an application that receives data from Kafka. Kafka also supports various tools and connectors that integrate with other systems and platforms, such as Hadoop, Spark, Storm, and more.&lt;/p&gt;

&lt;p&gt;• Amazon Web Services (AWS): Amazon Web Services (AWS) is a cloud computing platform that provides a variety of services and solutions for data engineering. AWS enables data engineers to store, process, analyse, and deliver data using various tools and technologies, such as Amazon S3, which is a service that provides scalable and durable object storage; Amazon EMR, which is a service that provides managed clusters of Hadoop, Spark, and other frameworks; Amazon Redshift, which is a service that provides a fast and scalable data warehouse; Amazon Kinesis, which is a service that provides real-time data streaming and processing; and more.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Other cloud services include Google Cloud Platform, Microsoft Azure, Confluent, etc&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;• Snowflake: Snowflake is a cloud-based data platform that provides a data warehouse as a service. Snowflake enables data engineers to store and query structured and semi-structured data using standard SQL without the need to manage any infrastructure or scale. Snowflake also supports various features and integrations that enhance data engineering, such as data sharing, data lakes, data pipelines, data governance, and more.&lt;/p&gt;

&lt;p&gt;• dbt: dbt is an open-source tool that enables data engineers to transform data in their warehouse using SQL. dbt allows data engineers to write modular, reusable, and testable SQL code that can be executed and orchestrated using various platforms, such as Airflow, Dagster, Prefect, and more. dbt also supports various features and integrations that improve data engineering, such as documentation, version control, data quality, and more.&lt;/p&gt;

&lt;p&gt;• Fivetran: Fivetran is a cloud-based data integration platform that provides a fully managed and automated service for data engineering. Fivetran enables data engineers to connect and sync data from various sources, such as databases, applications, files, and events, to their destination, such as a data warehouse or a data lake, without the need to write any code or maintain any infrastructure. Fivetran also supports various features and integrations that simplify data engineering, such as schema management, data transformation, data monitoring, and more.&lt;/p&gt;

&lt;p&gt;These are some of the most common and useful tools and platforms that a data engineer needs to use. Of course, there are many more tools and platforms that can be helpful and relevant for data engineering, depending on the specific domain, industry, and project. However, these tools and platforms can provide a good overview and a good starting point for anyone who wants to learn and practise data engineering.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Exploratory Data Analysis using Data Visualization Techniques</title>
      <dc:creator>Elijah Wandimi</dc:creator>
      <pubDate>Fri, 13 Oct 2023 18:57:23 +0000</pubDate>
      <link>https://dev.to/elijah_datanerd/exploratory-data-analysis-using-data-visualization-techniques-50c</link>
      <guid>https://dev.to/elijah_datanerd/exploratory-data-analysis-using-data-visualization-techniques-50c</guid>
      <description>&lt;p&gt;Data visualisation is one of the most popular and useful method of data analysis. It gives a visual representation of the variables and their relations unearthing more information that could have easily been missed or difficult to derive form just looking at the data. Variables can be numerical or categorical. The choice of visualisation techniques depend on the type of variable(s) in question and the goal of the visualisation. There are a lot fancy colors that can be used in visualisations, some are give the visual more clarity but others obscure the results. Clarity above aesthetics is the rule of visualisation. There are three main type of analysis:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Univariate analysis - this is the analysis of a single variable. Some of the most commonly used visualisations for these are;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Histograms&lt;/li&gt;
&lt;li&gt;Countplot&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Bivariate analysis - this entails the investigation of two variables on how they interact. Some of the most commonly used visualisations for these are;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Scatter plot&lt;/li&gt;
&lt;li&gt;Boxplot&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Multivariate analysis - this is the analysis of more than two variables and their interactions. Some of the most commonly used visualisations for these are;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Heatmap&lt;/li&gt;
&lt;li&gt;Pairwise plot&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;They are many more ways of visualising data, some of which cut across the 3 methods eg barplots can be used in any of the analysis with categorical variables. Remember the choice of visualisation is heavily governed by the type of variable and intended goal of the analysis. Some variable could be numerical representations of geographical locations and as such using a countplot would produce little information eg frequency of a location which is barely any information. in this kind of scenario, a map would be the most ideal visualisation, coupled with other variables would be very informative. The most important thing to remembe during visualisation is to try and be as clear as possible, let the visualisation tell pass the information as concisely and effortlessly as possible.&lt;/p&gt;

&lt;p&gt;Happy visualising!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>The Way of Data, Science: For Beginners 2023</title>
      <dc:creator>Elijah Wandimi</dc:creator>
      <pubDate>Sun, 01 Oct 2023 20:41:02 +0000</pubDate>
      <link>https://dev.to/elijah_datanerd/the-way-of-data-science-for-beginners-2023-5a72</link>
      <guid>https://dev.to/elijah_datanerd/the-way-of-data-science-for-beginners-2023-5a72</guid>
      <description>&lt;p&gt;Want to venture into the world of data? While there is no specific path that must be follwed, some knowledge and skills must be gained along the way. Let's start with the most important;&lt;/p&gt;

&lt;p&gt;The prerequisites:&lt;br&gt;
Mathematics &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;understanding the basics of statistics and probability will save you a lot of headaches down the road. There are a lot of free resources available for this in youtube and publications. Understanding calculus and linear algebra is also crucial sepecially when you want to dive in the areas of machine learning later on.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Programming&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;having problem solving skills using programming is another tool one must master to be successful in data science. The most popular language for this is Python (recommended for beginners) and it's pretty easy to pick. R, Java, Scala are also options for data science with the last two mostly used in building of data platforms and pipelines.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Data definition and manipulation using SQL &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;most of the data you will be dealing with will be stored in a database. Now, this isn't always relational databases, but even the NoSQL database tend to have an interface where SQL can be used to query data. This makes the knowledge of how to interact with storage systems using SQL invaluable for a data scientist.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once you have mastered this, the most interesting part of the journey begins, specific knowledge of data science. This includes the following steps; &lt;/p&gt;

&lt;p&gt;Data collection and cleaning &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;consolidate data from various sources cleaning it, removing outliers and transforming it into a format that can be used in the chosen analytical tools.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Data understanding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;exploratory data analysis: is the process of visually and statistically summarizing, interpreting, and understanding the main characteristics of a dataset. It involves generating summary statistics, visualizing the data distribution, identifying patterns, and uncovering relationships or anomalies. EDA helps data scientists gain insights into the underlying structure of the data and informs decisions about further analysis or modeling.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;descriptive statistics: involve using numerical summaries to describe the main features of a dataset. This includes measures of central tendency (mean, median, mode) and measures of variability (range, variance, standard deviation). Descriptive statistics provide a high-level overview of the dataset, helping to understand the typical values, spread, and distribution of the data.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Data visualisation&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Interact with tools for transforming data into visually appealing and understandable representations which can be used to communicate findings to stakeholders.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Data modelling&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iEIRmW-v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v0dxwu2gqrq4vrctv2s4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iEIRmW-v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v0dxwu2gqrq4vrctv2s4.png" alt="Commander Data (Star Trek)" width="385" height="263"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Machine learning falls in this phase. It allows computers to learn from data without being explicitly programmed. This involves fitting models to data to identify patterns in the data and make predictions and recommenditions based on the learned knowledge of the data.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dashboard and deployment &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A dashboard is a visual representation of data that provides a quick, clear, and concise overview of key performance indicators (KPIs) or metrics relevant to a particular business or process. &lt;/li&gt;
&lt;li&gt;Deployment in data science refers to the process of taking a machine learning model or an analytical solution and making it available for use in a production environment. This could involve integrating the model into a web application, making it accessible through an API, or incorporating it into a larger software system.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Reporting &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;This is the communication of your findings to the stakeholders. Data science relies heavily on communication to drive business needs with a data oriented approach. A data scientist must be able to share their findings and their relevance to the decision makers to extract value from data and data operations.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One these basics are a part of you, make sure you build projects to reinforce this knowledge and showcase your skills. Enough words have been said, time to actually put in the work. Good luck&lt;/p&gt;

</description>
      <category>datascience</category>
    </item>
  </channel>
</rss>
