<?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: Zaynaib (Ola) Giwa</title>
    <description>The latest articles on DEV Community by Zaynaib (Ola) Giwa (@zaynaib).</description>
    <link>https://dev.to/zaynaib</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%2F258312%2F89f856b9-2974-437d-af03-7728dac0a2d2.png</url>
      <title>DEV Community: Zaynaib (Ola) Giwa</title>
      <link>https://dev.to/zaynaib</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/zaynaib"/>
    <language>en</language>
    <item>
      <title>Tidy Tuesday — Tuition Data</title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Tue, 29 Mar 2022 17:51:22 +0000</pubDate>
      <link>https://dev.to/zaynaib/tidy-tuesday-tuition-data-17g4</link>
      <guid>https://dev.to/zaynaib/tidy-tuesday-tuition-data-17g4</guid>
      <description>&lt;h3&gt;
  
  
  Tidy Tuesday — Tuition Data
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/rfordatascience/tidytuesday"&gt;Tidy Tuesday&lt;/a&gt; is a weekly mini data science challenge. Its a great way to practice your data analytics skills without feeling overwhelmed. The data sites are published on Monday and on Tuesday people share what they have done on Twitter with the #tidytuesdays. I’ve seen people share some amazing graphics. Even though it’s associated with the R community you are free to use any tech stack you want.&lt;/p&gt;

&lt;p&gt;In this blog post, I’m going to analyze the US Tuition Costs tuition dataset which was published in the repo in 2018. Before I begin you should know the characteristics of a tidy dataset.&lt;/p&gt;

&lt;p&gt;A reminder of these characteristics&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Each variable must have its own column.&lt;/li&gt;
&lt;li&gt;Each observation must have its own row.&lt;/li&gt;
&lt;li&gt;Each value must have its own cell.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you want a deeper dive into getting started on doing tidy analyzes please read my previous&lt;a href="https://zaynaibg.medium.com/how-to-get-started-in-r-3de13fd7fca8"&gt; blog&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Before I write a line of code I like to get to know the dataset. Each tidy Tuesday data set comes with a link to its source and an article. So I review the article beforehand. Next, it's time to import the data and look at the data structure.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;library('tidyverse')
library('readxl')
library('here')
tuition &amp;lt;- read_excel('us_avg_tuition.xlsx')

glimpse(tuition)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BGyd6oeO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/889/1%2AmX5bsXpNo6Tlll6QuLovCw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BGyd6oeO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/889/1%2AmX5bsXpNo6Tlll6QuLovCw.png" alt="" width="880" height="317"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is a quick glimpse of the data frame. It has 50 rows representing each state in the US and columns that represent years from 2004- 2016. This dataset is not tidy dataset. This data sets breaks the first rule of being tidy.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Each variable must have its own column.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The years of the dataset should be in one column. It should not be spread out in multiple columns. We will pivot this table in order to accomplish this. Also, notice how the year column is labeled &lt;strong&gt;&lt;em&gt;2004–05.&lt;/em&gt;&lt;/strong&gt; It will be a pain in the butt to reference this column this way. So let's take away the dash and the last two digits of the year using some regex. If you want to learn more about regex please look at my blog post &lt;a href="https://zaynaibg.medium.com/regex-101-f6dec927f64b"&gt;REGEX 101&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;tidy_tuition &amp;lt;- tuition %&amp;gt;%
  pivot_longer(-State,names_to="year",values_to="cost") %&amp;gt;% 
  mutate(year = gsub("\\-\\d+$","",year))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dj-9NGUd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/892/1%2A0pJCHvQ0DvUrTvGAaHqDTw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dj-9NGUd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/892/1%2A0pJCHvQ0DvUrTvGAaHqDTw.png" alt="" width="880" height="130"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--IsAyE31B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/284/1%2A94ax96Dvyia7o0dT9CLVOw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--IsAyE31B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/284/1%2A94ax96Dvyia7o0dT9CLVOw.png" alt="" width="284" height="128"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Year is now of type string. I prefer it to be of an integer data type.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;tidy_tuition$year &amp;lt;-as.integer(tidy_tuition$year)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--w1JJnjSE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/881/1%2AC4l4FtfXQRK6VmGAq9FMzQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--w1JJnjSE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/881/1%2AC4l4FtfXQRK6VmGAq9FMzQ.png" alt="" width="880" height="114"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, this is a tidy dataset. We can now use functions from the tidyverse in order to conduct our analysis. Next, I come up with questions.&lt;/p&gt;

&lt;h1&gt;
  
  
  Questions
&lt;/h1&gt;

&lt;h1&gt;
  
  
  Which state had the cheapest tuition in 2015?
&lt;/h1&gt;

&lt;h1&gt;
  
  
  Which state had the most expensive tuition in 2015?
&lt;/h1&gt;

&lt;h1&gt;
  
  
  What is Illinois tuition from 2004 -2016
&lt;/h1&gt;

&lt;h1&gt;
  
  
  Can I make a linear regression model to accurately predict tuition in the state of Illinois
&lt;/h1&gt;

&lt;p&gt;Let's see if I can answer my questions.&lt;/p&gt;

&lt;h4&gt;
  
  
  Which state had the cheapest tuition in 2015?
&lt;/h4&gt;

&lt;h4&gt;
  
  
  Which state had the most expensive tuition in 2015?
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;latest_cost &amp;lt;- tidy_tuition %&amp;gt;%
  filter(year == 2015)

latest_cost[which.min(latest_cost$cost),]

latest_cost[which.max(latest_cost$cost),]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Wyoming has the cheapest tuition in the year 2015 with a cost of $4,891.&lt;/p&gt;

&lt;p&gt;New Hampshire has the highest cost of tuition in 2015 with the cost of tuition being $15,160.&lt;/p&gt;

&lt;h4&gt;
  
  
  What is Illinois tuition from 2009 -2015?
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;illinois_cost &amp;lt;- tidy_tuition %&amp;gt;%
  filter(State == "Illinois")

ggplot(illinois_cost,aes(x=year,y=cost)) +geom_line()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8lEbCgWx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/417/1%2AwgdsG6R9e0RIklTrCla02w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8lEbCgWx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/417/1%2AwgdsG6R9e0RIklTrCla02w.png" alt="" width="417" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Can I make a linear regression model to accurately predict tuition in the state of Illinois?
&lt;/h4&gt;

&lt;p&gt;We are going to make a linear regression model from the Illinois subset of the tidy_tuition data set.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;future_cost &amp;lt;- lm(cost ~ year, data = illinois_cost)
summary(future_cost)

predicted_cost &amp;lt;- predict(future_cost, illinois_cost)

illinois_cost %&amp;gt;% mutate(prediction = predicted_cost)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;future_cost variable is our linear regression model.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PBe9acVK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/748/1%2A5QvWYrdSrYXCThXzGvfZSg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PBe9acVK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/748/1%2A5QvWYrdSrYXCThXzGvfZSg.png" alt="" width="748" height="416"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Overall year is a pretty significant variable that determines the cost of tuition in Illinois. Each that passes it seems to be about a $469.10 increase with tuition cost.&lt;/p&gt;

&lt;p&gt;Now let's compare the actual cost with the predicted cost.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--LgCiaPdo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/561/1%2A1n-swm4M_6VBFsCpz862RA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--LgCiaPdo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/561/1%2A1n-swm4M_6VBFsCpz862RA.png" alt="" width="561" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Visually the prediction of the model is not too far off from the actual cost.&lt;/p&gt;

</description>
      <category>datascience</category>
    </item>
    <item>
      <title>Digital Minimalism in Data Science</title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Wed, 09 Feb 2022 08:40:31 +0000</pubDate>
      <link>https://dev.to/zaynaib/digital-minimalism-in-data-science-3ge2</link>
      <guid>https://dev.to/zaynaib/digital-minimalism-in-data-science-3ge2</guid>
      <description>&lt;p&gt;At the beginning of the New Year, I did something that was cliche. I read books about productivity. These books were Cal Newport's Digital Minimalism and James Clear Atomic Habits. I realized I was just &lt;a href="https://jamesclear.com/taking-action"&gt;busy but not getting the results that I wanted.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So, I decided to do an experiment this month. Practice digital minimalism while improving my data science skills. I’m not using R or Python this month. Only going to rely on books or journal articles to learn about how to work with data.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get your reps in&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In order to get better at something, you have to get your reps in. Whether you are training to get a six-pack or learning how to play the guitar. In order to get better at something you just need to do it a lot. One lesson that I learned from Atomic Habits is that if you want to create a habit make it attractive. So, I’m going to review my statistic fundamentals with The Humongous Book of Statistics Problems by Michael Kelley. It's not a dense book and it has a lot of practice problems inside of it. I’m also going to use Schaum’s Outline of Beginning Statistics for additional practice.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Just want to strip things to their core&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Right, I feel like I’m more worried about the syntax of my R or Python code than understanding what the data is saying. It's like I’m trying to learn how to write before learning how to read. Yes, it is possible to write before learning how to read. But at the end of the day, it would be just lines on a piece of paper. Not you conveying an idea to someone else. Yes, I can wrangle data using select, filter, arrange, mutate, and summarise. Whats the point of knowing those functions if you don’t know when to use Anova or a chi-square.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to get started performing Tidy Analysis in R</title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Sat, 06 Nov 2021 01:53:59 +0000</pubDate>
      <link>https://dev.to/zaynaib/how-to-get-started-in-r-34n</link>
      <guid>https://dev.to/zaynaib/how-to-get-started-in-r-34n</guid>
      <description>&lt;h4&gt;
  
  
  Statistics is the science of learning from data
&lt;/h4&gt;

&lt;p&gt;This is the foundation of the field. Data is numbers with a context and we need to understand the context if we are to make sense of the numbers. Without understanding the data there is no analysis. Whenever I look at a data set I ask the 5 Ws and 1 H from storytelling.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Who&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Where&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;These question words help me understand the full scope of the data.&lt;/p&gt;

&lt;p&gt;After reading in the data into R and making sure the column’s data types are correct. I start by asking questions.&lt;/p&gt;

&lt;p&gt;What is the purpose of this dataset?&lt;/p&gt;

&lt;p&gt;How many columns does this dataset contain?&lt;/p&gt;

&lt;p&gt;Next, I do some summary statistics on the columns I am interested in. Then move on to study the relationships between columns.&lt;/p&gt;

&lt;h4&gt;
  
  
  If you are going to use R you have to learn the philosophy of Tidy Data.
&lt;/h4&gt;

&lt;p&gt;The term Tidy Data is coined by statistician Hadley Wickham. He is best known for creating the tidyverse, a collection of R packages such as ggplot2 and dplyr. He is kind of like the Stan Lee of the R world. If the Loki Series have taught me anything with multiversal universes there are rules.&lt;/p&gt;

&lt;p&gt;There are three rules to determine if a dataset is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Each variable must have its own column.&lt;/li&gt;
&lt;li&gt;Each observation must have its own row.&lt;/li&gt;
&lt;li&gt;Each value must have its own cell.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;From &amp;lt;&lt;a href="https://r4ds.had.co.nz/tidy-data.html"&gt;https://r4ds.had.co.nz/tidy-data.html&lt;/a&gt;&amp;gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/z8yYEX4pE3lkc/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/z8yYEX4pE3lkc/giphy.gif" alt="Taylor Swift Wat" width="500" height="240"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Observations are the objects described in the set of data. There are usually nouns so an observation is usually a person, place, or thing.&lt;/p&gt;

&lt;p&gt;Variables are any characteristics that describe an observation for example weight, height. Let’s take a look at a dataset that is tidy.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---PqCrrRI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/547/1%2AgNdmMLSrPX_TyrnONaBYJQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---PqCrrRI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/547/1%2AgNdmMLSrPX_TyrnONaBYJQ.png" alt="" width="547" height="324"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We have 4 variables country, year, cases, and population. Each individual row is an observation. Take a look at the first row it describes the number of cases and population of Afghanistan in the year 1999. Same with the other rows in the data set.&lt;/p&gt;

&lt;p&gt;Let's take a look at a messy data set.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7TurpmnE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/1024/1%2AFfdFrzuAcT6fzZggxpDPdA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7TurpmnE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/1024/1%2AFfdFrzuAcT6fzZggxpDPdA.png" alt="" width="880" height="259"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This dataset breaks the second rule of the tidyverse, each variable has its own column. We have two different variables in one column. Each column represents the year and the cost of each state. If we try to do any analysis on this dataset using tidyverse tools it will be very difficult to do so. So in order to make our lives easier, we will have to reshape the data into something like this.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--853BDpLS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/215/1%2AwvPLdE6QWGZI4FxDioWbWA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--853BDpLS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/215/1%2AwvPLdE6QWGZI4FxDioWbWA.png" alt="" width="215" height="285"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Year and cost variables are represented in their own columns. There are many different types of messy data and recipes to turn them into tidy data. The examples are in the Tidy Data paper referenced. It’s a bit old since its before the creating of the tidyverse was created but the theories still hold true.&lt;/p&gt;

&lt;h4&gt;
  
  
  Practice by doing it
&lt;/h4&gt;

&lt;p&gt;The only way to become great at any skill is to practice.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/3oEjI105rmEC22CJFK/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/3oEjI105rmEC22CJFK/giphy.gif" alt="Iverson Practice man" width="480" height="478"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Doing online classes and watching code alongs on Youtube is great to get your toe in the water. But this can lead to a sense of false mastery. The best way to practice is to apply your skills to problems you have never seen before. I am a huge advocate for tidy Tuesdays. When I try to apply what I learn from class to a new situation I get immediate feedback if I actually mastered the skill. Things that I thought would take me 30 minutes to do have taken me hours to figure out. Getting an immediate assessment of my skills has made me a better learner.&lt;/p&gt;

&lt;h4&gt;
  
  
  Steal Like an Artist — Watch other people solve problems
&lt;/h4&gt;

&lt;p&gt;The R community is open and collaborative. That’s why this community has a special place in my heart. So many people put up their code online for everyone to see. There are so many tricks and tips that I did not know existed if I did not go through someone’s github repo or watched someone’s Youtube channel and studied their code. Steal from other people’s code, revamp their code to fit your needs, and always give credit to the O G.s&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Youtube Channels to Check out&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/channel/UCE2WK5bvNtDblu4NO9PGtJA"&gt;Jesse Mostipak&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/c/NickWan/featured"&gt;Nick Wan&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/user/safe4democracy"&gt;David Robinson&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;R Resources to Learn&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://rviews.rstudio.com/2021/11/04/bookdown-org/"&gt;R Community Public Library&lt;/a&gt;&lt;/p&gt;

</description>
      <category>r</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Day 2 - 66 Days of Data Science</title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Wed, 03 Feb 2021 01:43:50 +0000</pubDate>
      <link>https://dev.to/zaynaib/day-3-66-days-of-data-science-15on</link>
      <guid>https://dev.to/zaynaib/day-3-66-days-of-data-science-15on</guid>
      <description>&lt;p&gt;Yesterday I learned that the first step of mastering statistics is to master the art of exploring data.&lt;/p&gt;

&lt;h2&gt;
  
  
  Exploring Data Types
&lt;/h2&gt;

&lt;p&gt;Categorical data is data that can be in groups. They are labels. In the R programming language, they are called factors. Generally categorical data you will use a bar chart or pie chart to explore data. The distribution of categorical data are counts, frequency, or percentage. &lt;/p&gt;

&lt;p&gt;For quantitative data, you would use a histogram, line chart, or stem plot ( only if the data is small).&lt;/p&gt;

&lt;h2&gt;
  
  
  Exploratory Data Analysis (EDA) workflow
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Study each individual variable&lt;/li&gt;
&lt;li&gt;Study the relationships between two variables&lt;/li&gt;
&lt;li&gt;Create graphs of the distribution of variables&lt;/li&gt;
&lt;li&gt;Last, add numerical summaries of specific aspects of data&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Four things to measure the distribution of a variable shape, center, spread, and outliers.&lt;/p&gt;

&lt;p&gt;Measures of center - mean and median&lt;br&gt;
Measures of spread- quantile ranges&lt;/p&gt;

&lt;p&gt;spread + center gives useful information about the distribution of the data.&lt;br&gt;
shape- the data can have a normal distribution like a bell curve, or can be skewed to the right or left&lt;/p&gt;

&lt;p&gt;Tools for finding outliers&lt;br&gt;
standard deviation - measures how much a data point is away from the mean&lt;/p&gt;

</description>
      <category>devjournal</category>
    </item>
    <item>
      <title>Day 1 - 66 Days of Data Science</title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Mon, 01 Feb 2021 07:15:38 +0000</pubDate>
      <link>https://dev.to/zaynaib/day-1-of-66-days-of-data-science-9ka</link>
      <guid>https://dev.to/zaynaib/day-1-of-66-days-of-data-science-9ka</guid>
      <description>&lt;p&gt;For the 66 days of data science journey, I am going back to the basics and relearning statistics. I am using a textbook titled Introduction to The Practice of Statistics Sixth Edition - Moore, McCabe Craig. Here is what I learned so far.&lt;/p&gt;

&lt;p&gt;Data are numbers with context. Before you do any statistical calculation and create data visualizations you need to start with the habit of forming a question. "What does the data tell me?"&lt;br&gt;
The starting point to any statistical analysis is to master the art of examining data.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Person&lt;/th&gt;
&lt;th&gt;Age&lt;/th&gt;
&lt;th&gt;Weight&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Buttercup&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;td&gt;110&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bubbles&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;td&gt;105&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Blossom&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;td&gt;107&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;This is a table that contains data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Individuals&lt;/strong&gt; also known as cases, observations, and rows. If you are into programming you can think of rows as objects. Each object is like a noun that describes a (person, place, or thing). Objects have characteristics called variables.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Variables&lt;/strong&gt; are also known as columns.&lt;/p&gt;

&lt;p&gt;When you plan to do an exploratory data analysis(EDA) ask yourself the following questions.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Why? Is there a specific question that I want to be answered by looking at this data? What is the purpose of this data?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Who? What population does this data describe?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What? How many columns does this data set have? How are these variables defined?&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>devjournal</category>
    </item>
    <item>
      <title>Starting my #66DaysofData Journey 
</title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Sun, 31 Jan 2021 04:59:40 +0000</pubDate>
      <link>https://dev.to/zaynaib/starting-my-66daysofdata-journey-1156</link>
      <guid>https://dev.to/zaynaib/starting-my-66daysofdata-journey-1156</guid>
      <description>&lt;p&gt;At the beginning of the year, I stumbled upon the hashtag #66DaysofData on Twitter. After doing some investigation it's the same concept as #100DaysofCode but a couple of days shorter. The goal of 66 Days of Data is to make learning about data science a habit. How long you study each day is up to you. But the minimum time limit for the challenge is 5 minutes. &lt;br&gt;
I attempted #100DaysofCode many times. (6 times but whose counting) The longest streak I have gotten is 21 days. So, I'm going to learn from the past in order to succeed with this challenge.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Make a Plan&lt;/li&gt;
&lt;li&gt;Set small benchmarks&lt;/li&gt;
&lt;li&gt;Work on mini projects.&lt;/li&gt;
&lt;li&gt;Teach concepts to others&lt;/li&gt;
&lt;li&gt;Positive mindset&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Make A Plan and ##Set small benchmarks
&lt;/h2&gt;

&lt;p&gt;Whenever I attempted to do 100 days of code I had no clear vision of what I wanted to accomplish. When I tried to sit down and code for 1 hour I had no clear anchor holding me to this commitment. The longest streak that I had which was 21 days is when I focused on learning only one thing. I focused on learning D3.js framework. It was a clear and small enough goal that I did not feel overwhelmed and I automatically knew what steps I needed to take to accomplish this one goal.&lt;/p&gt;

&lt;p&gt;When you go to the grocery store with a list you are less likely to wander around. The same concept can be applied to coding challenges. Have a list of things you want to accomplish keeps you grounded.&lt;/p&gt;

&lt;h1&gt;
  
  
  Work on mini projects
&lt;/h1&gt;

&lt;p&gt;I am a project-based learner. At the beginning of my tech journey, I use to watch a lot of code alongs and online courses. When I try to do a project on my own I would become completely lost on what to do. In order to get better with technical skills, I have to try them out in the wild.&lt;br&gt;
 It like someone who wants to become a basketball player and all they do is read books on how to play the game but never attempted to shoot a ball. A great way to learn is by doing. During the challenge, I will use the skills that I learn to explore datasets from the &lt;a href="https://github.com/rfordatascience/tidytuesday"&gt;tidy tuesday&lt;/a&gt; Github repo.&lt;/p&gt;

&lt;h1&gt;
  
  
  Teach concepts to others
&lt;/h1&gt;

&lt;p&gt;There are several benefits to teach others. Teaching others helps solidify concepts. It also helps you become a better communicator. I learn from life the more you put yourself out there and give to others. That energy will return to you.&lt;br&gt;
 &lt;/p&gt;

&lt;h1&gt;
  
  
  Positive mindset
&lt;/h1&gt;

&lt;p&gt;Learning a new skill is uncomfortable. Whether you are learning how callbacks work in Javascript, joining two tables in SQL, or learning how to play the F chord on a guitar. Learning is awkward and painful at times but having a positive mindset makes it slightly less uncomfortable.&lt;br&gt;
Negative thoughts are powerful. When you tell yourself "That I am not good at this." You will find evidence that this is true. This is creating more resistance, keeping away from your goal. Even if you do not believe in the power of positive thinking. Try not to talk down to yourself. Instead of saying "I am bad at this" Try saying " I will get better." Your mind will find ways to find evidence.&lt;/p&gt;

&lt;p&gt;If you want to learn more about 66 days of data check out Ken Jee Youtube video &lt;a href="https://www.youtube.com/watch?v=qV_AlRwhI3I"&gt;What is the #66DaysofData&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;If you want an example of a self-learning plan check out &lt;a href="https://github.com/sophi-li/OKRs-self-learning"&gt;Sophia Li's (OKR)&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>devjournal</category>
    </item>
    <item>
      <title>How do APIs work? </title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Thu, 20 Feb 2020 20:06:44 +0000</pubDate>
      <link>https://dev.to/zaynaib/how-do-apis-work-notes-2h2g</link>
      <guid>https://dev.to/zaynaib/how-do-apis-work-notes-2h2g</guid>
      <description>&lt;p&gt;TLDR;  This is a mental model of how APIs work and a brief overview of how the internet works.&lt;/p&gt;

&lt;p&gt;Growing up in the '90s, I often heard the internet is referred to as the "information highway." I never truly understood what that meant until I started learning about until I started creating full-stack applications. The purpose of the World Wide Web is to retrieve and send information from one device to another.  A device can be a computer, cell phone, refrigerator anything that can connect to the internet. When you think about it the purpose of most apps is to organize and share information. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is an API?&lt;/strong&gt;&lt;br&gt;
An API allows you to interact with data from an application. &lt;br&gt;
That's it. That's all an API is used for. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why use an API?&lt;/strong&gt;&lt;br&gt;
We use an API because it gives your program a level of abstraction. (Learn more about abstraction in my &lt;a href="https://dev.to/zaynaib/what-is-object-oriented-programming-5bl0"&gt;Object Oriented Programming article&lt;/a&gt;). Doing so protects your program data from users that might have malicious intentions. This also makes it easier for users to interact with your program.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Terminology&lt;/em&gt;:&lt;br&gt;
Client  - The computer you are using to interact with an application&lt;br&gt;
Server -  A computer or computer program which manages access to  data&lt;/p&gt;

&lt;p&gt;&lt;em&gt;How it works&lt;/em&gt;:&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2F6%2F69%2FClient-server_model.svg%2F512px-Client-server_model.svg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2F6%2F69%2FClient-server_model.svg%2F512px-Client-server_model.svg.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://commons.wikimedia.org/wiki/Main_Page" rel="noopener noreferrer"&gt;Wikimedia Commons&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The client sends a request to the API server&lt;/li&gt;
&lt;li&gt;The API server interprets the request&lt;/li&gt;
&lt;li&gt;The server performs the action in the request&lt;/li&gt;
&lt;li&gt;The server formats the response and sends it back to the client&lt;/li&gt;
&lt;li&gt;The client displays the response &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Think about it this way.&lt;/p&gt;

&lt;p&gt;Real-World Analogy: &lt;/p&gt;

&lt;p&gt;Let's say that Cindy is at Burger King and wants to order a whopper meal. &lt;br&gt;
Cindy goes to the cashier and tells the food service worker her order. The food service worker fulfills Cindy's request and gives Cindy her meal.&lt;/p&gt;

&lt;p&gt;In the scenario above Cindy is the "client". The food service worker is the "server" interpreting Cindy's request and checking if it can be fulfilled. The food service worker(server) responses to Cindy's(client) request by giving her food.&lt;/p&gt;

&lt;p&gt;Now you have a high-level overview and mental model of how APIs work. &lt;/p&gt;

</description>
      <category>todayilearned</category>
    </item>
    <item>
      <title>Learning How to Code For Self Taught Developers</title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Mon, 03 Feb 2020 04:58:41 +0000</pubDate>
      <link>https://dev.to/zaynaib/learning-how-to-code-3j9</link>
      <guid>https://dev.to/zaynaib/learning-how-to-code-3j9</guid>
      <description>&lt;p&gt;Being a self-taught programmer can be daunting. There is so much information out there from articles, Youtube channels, MOOCs, and more. The world of programming is massive and it's constantly changing.  It is great to have so many resources to learn but it's hard to be able to process all of this information into your own skill. To have some sort of mastery over the subject.  I feel like I improved my skills through brute force i.e. staring at code and repetition. I don't want anyone else to go through what I went through. So here is my advice on learning how to code.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Check out Barbara Oakley's course/book &lt;a href="https://www.coursera.org/learn/learning-how-to-learn" rel="noopener noreferrer"&gt;Learning How to Learn&lt;/a&gt;  This course will give you a toolbox of techniques that you need to learn any subject.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Learn some computer science subjects. Whatever language you are you are using it's going to change. If you are a JavaScript developer you know this truth all too well. The human mind is not built for memorizing so much content. Learning a little bit of CS will give you a higher-level understanding of programming. Having this conceptual map makes it easier to understand niche subjects. &lt;a href="https://teachyourselfcs.com/" rel="noopener noreferrer"&gt;Teach yourself cs&lt;/a&gt;  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You can't study theory or watch videos without writing a line of code. When I was in college I would watch code along videos. Whenever I tried to sit down and code on my own I was completely lost. Somewhere along the way, I did not understand what I was learning. Now I spend no more than 30 minutes reading or watching a video. Then I try to duplicate what I learned without looking at the answer. Once I duplicated the exercise I try to apply what I learned to a fun assignment i.e &lt;a href="https://codepen.io/OG/pen/ReVVxa" rel="noopener noreferrer"&gt;CSS images&lt;/a&gt;. To get better at programming you need to give yourself constant knowledge assessments. Create things that spark joy.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;"If you steal from one author, its plagiarism; if you steal from many its art" Learn from others. I spend a lot of time online reading other people's blogs, websites and looking at code on GitHub. I take elements that I like and apply them to my own projects.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Take notes. Taking notes re-enforces what I learned for that day. If I can't put what I learned in my own words then I know that I don't understand the subject. You can create a log similar to &lt;a href="https://www.100daysofcode.com/" rel="noopener noreferrer"&gt;100 days of code&lt;/a&gt; to keep track of what you are learning. Or you can make a private commitment by starting a &lt;a href="https://opensource.com/article/19/4/what-developer-journal" rel="noopener noreferrer"&gt;developer journal&lt;/a&gt;. If you are more of a visual person then try sketching out a concept map. &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/http%3A%2F%2Ffiles.software-carpentry.org%2Ftraining-course%2F2013%2F08%2FOOP-1024x817.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/http%3A%2F%2Ffiles.software-carpentry.org%2Ftraining-course%2F2013%2F08%2FOOP-1024x817.jpeg" alt="software carpentry"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;source: &lt;a href="http://swcarpentry.github.io/training-course/2013/08/concept-map-object-oriented-programming-basics/" rel="noopener noreferrer"&gt;Software Carpentry&lt;/a&gt; &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Do projects. Whenever someone gives me this advice I get intimidated. In my head doing a project means to recreate Facebook from the ground up. A "Project" can be writing code based on what you learned for that entire week. A "Capstone Project/Portfolio" is what I would put in my portfolio. It's an accumulation of what I've learned so far.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I know the grind of being a self-taught developer is rough. Don't be afraid to share your story.&lt;/p&gt;

&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;p&gt;&lt;a href="http://swcarpentry.github.io/training-course/2013/08/concept-map-object-oriented-programming-basics/" rel="noopener noreferrer"&gt;Software Carpentry training Course&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dbader.org/blog/keep-journals-to-become-a-better-developer" rel="noopener noreferrer"&gt;Keep Journals to become a better developer&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.rit.edu/academicaffairs/tls/course-design/teaching-elements/classroom-assessment-techniques" rel="noopener noreferrer"&gt;Classroom Assessment Test&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=g1ib43q3uXQ&amp;amp;list=PLcGKfGEEONaCToXJZ4Uk1NVW70U3C-Im-&amp;amp;index=2&amp;amp;t=0s" rel="noopener noreferrer"&gt;"How to teach programming (and other things)?" by Felienne Hermans&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://opensource.com/article/19/4/what-developer-journal" rel="noopener noreferrer"&gt;What is a developer journal&lt;/a&gt;&lt;/p&gt;

</description>
      <category>codenewbie</category>
    </item>
    <item>
      <title>Running a successful tech study group (Help) </title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Sun, 26 Jan 2020 00:59:19 +0000</pubDate>
      <link>https://dev.to/zaynaib/running-a-successful-tech-study-group-help-1obd</link>
      <guid>https://dev.to/zaynaib/running-a-successful-tech-study-group-help-1obd</guid>
      <description>&lt;p&gt;Hi everyone,&lt;/p&gt;

&lt;p&gt;I was wondering if anyone on the platform has any experience cultivating a tech community. I tried to follow a format somewhat similar to &lt;a href="https://www.p2pu.org/en/"&gt;Peer 2 Peer University Learning Group&lt;/a&gt;. Basically you find a MOOC and invite people to come study with you. &lt;/p&gt;

&lt;p&gt;Over the summer I created a Javascript learning group where we just followed the FreeCodeCamp curriculum. I'm glad the people showed up consistently but no one retained knowledge of anything from the curriculum. People were just going through the material and they did not know how to apply it to their own projects. I want to try doing it again this summer. I was hoping anyone could give me advice on how to become a better facilitator/teacher? I guess that's what I'm trying to say.  &lt;/p&gt;

</description>
      <category>help</category>
    </item>
    <item>
      <title>Long Data Vs. Wide Data</title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Tue, 14 Jan 2020 16:35:58 +0000</pubDate>
      <link>https://dev.to/zaynaib/long-data-vs-wide-data-2668</link>
      <guid>https://dev.to/zaynaib/long-data-vs-wide-data-2668</guid>
      <description>&lt;p&gt;So, lately I have had my hands on some raw unclean data for an assignment for school. Originally I thought that messy data was about cleaning up blank values, formatting text, numbers, and strings in the right form, etc. But as I proceed to analyze my data in R I found out that it could not be handled. There was a key concept that I was missing when it comes to setting up data the right way: Wide and Long Data&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Wide Data?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In the wide data (also known as unstacked) is when each variable attribute for a subject is in a separate column.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Person&lt;/th&gt;
&lt;th&gt;Age&lt;/th&gt;
&lt;th&gt;Weight&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Buttercup&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;td&gt;110&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bubbles&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;td&gt;105&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Blossom&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;td&gt;107&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;What is Long Data?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Narrow (stacked) data is presented with one column containing all the values and another column listing the context of the value&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Person&lt;/th&gt;
&lt;th&gt;Variable&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Buttercup&lt;/td&gt;
&lt;td&gt;Age&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Buttercup&lt;/td&gt;
&lt;td&gt;Weight&lt;/td&gt;
&lt;td&gt;110&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bubbles&lt;/td&gt;
&lt;td&gt;Age&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bubbles&lt;/td&gt;
&lt;td&gt;Weight&lt;/td&gt;
&lt;td&gt;105&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Blossom&lt;/td&gt;
&lt;td&gt;Age&lt;/td&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Blossom&lt;/td&gt;
&lt;td&gt;Weight&lt;/td&gt;
&lt;td&gt;107&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;It is easier for r to do analysis in the Long data form. This concept might seem weird at first. We are use to seeing and analyzing data in Wide data form but with practice it gets easier over time. R has an awesome package called reshape2 to convert your data from wide to long.&lt;/p&gt;

&lt;p&gt;First install the r package and load the library.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;install.packages("reshape2")&lt;br&gt;
library(reshape2)&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Using the wide table above we will split our variables into two groups &lt;strong&gt;identifiers&lt;/strong&gt; and &lt;strong&gt;measured&lt;/strong&gt; variables.&lt;/p&gt;

&lt;p&gt;Identifier variable:Person&lt;br&gt;
Measured variable: Age, weight&lt;/p&gt;

&lt;p&gt;In order to transform this wide data into long data we will have to use the melt method. You “melt” data so that each row is a unique id-variable combination.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;df
 Person Age Weight
1 Buttercup 24 110
2 Bubbles 24 105
3 Blossom 24 107

ppg &amp;lt;-melt(df,id=c("Person"),measured=c("Age","Weight"))
 ppg
 Person variable value
1 Buttercup Age 24
2 Bubbles Age 24
3 Blossom Age 24
4 Buttercup Weight 110
5 Bubbles Weight 105
6 Blossom Weight 107
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;p&gt;For official documentation about the &lt;a href="http://had.co.nz/reshape/introduction.pdf"&gt;reshape library&lt;/a&gt; from its creator Hadley Wickham. &lt;/p&gt;

&lt;p&gt;More about Wide vs. Long data check out &lt;a href="http://www.theanalysisfactor.com/wide-and-long-data/"&gt;The Analysis Factor&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;More information about cleaning and shaping data from messy data to tidy data check out &lt;a href="http://vita.had.co.nz/papers/tidy-data.pdf"&gt;Hadley Wickham’s paper Tidy Data&lt;/a&gt;&lt;/p&gt;

</description>
      <category>todayilearned</category>
    </item>
    <item>
      <title>What is Object-Oriented Programming </title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Sat, 04 Jan 2020 07:40:31 +0000</pubDate>
      <link>https://dev.to/zaynaib/what-is-object-oriented-programming-5bl0</link>
      <guid>https://dev.to/zaynaib/what-is-object-oriented-programming-5bl0</guid>
      <description>&lt;p&gt;What Is Object-Oriented Programming?&lt;/p&gt;

&lt;p&gt;Object-Oriented Programming(OOP) is a programming paradigm to organize code on the concepts of objects. An Object is when you bundle data properties and behaviors(functions/methods) together.&lt;/p&gt;

&lt;p&gt;Why use OOP?&lt;br&gt;
OOP allows you to create large-scale applications with modules that are independent of one another. &lt;/p&gt;

&lt;p&gt;Key terms&lt;/p&gt;

&lt;p&gt;Classes and Instances&lt;/p&gt;

&lt;p&gt;A Class is a blueprint for objects.&lt;/p&gt;

&lt;p&gt;An object is an instance of a class.&lt;/p&gt;

&lt;p&gt;Key Concepts to OOP &lt;/p&gt;

&lt;p&gt;APIE - Abstraction, polymorphism, Inheritance, encapsulation &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Abstraction&lt;/strong&gt; - Is the overall essence of an object. What qualities/features trigger the overall association of the object. &lt;/p&gt;

&lt;p&gt;For example when I say the word &lt;code&gt;dog&lt;/code&gt;. You automatically know what I'm talking about.&lt;/p&gt;

&lt;p&gt;I did not have to name a specific example of dog i.e. Golden Retriever to make you understand that I'm just talking about dogs in general. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Encapsulation&lt;/strong&gt; - Is when you hide or restrict access to data in your program. Many people use the term &lt;em&gt;black boxing&lt;/em&gt;. A user is only focused on the input and output of a machine and is not concerned with how the machine works. &lt;/p&gt;

&lt;p&gt;We use black boxing every day of our lives. For example, when you drive your car. Do you need to know how your engine works in order to drive a car? No. All you need to know is that you need gas and you stick the key in the ignition in order to make the car move forward. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Inheritance&lt;/strong&gt; - Is when a class receives attributes and functions from another class. It's similar to us humans. You inherited characteristics from your parents but you are not a total clone of your mother or father. &lt;/p&gt;

&lt;p&gt;To test that two classes have inheritance relationship use the &lt;code&gt;IS-A&lt;/code&gt; test. &lt;/p&gt;

&lt;p&gt;Let's say we have a parent class(superclass) called Toy Dogs. A chihuahua &lt;em&gt;IS-A&lt;/em&gt; toy dog. A Pug &lt;em&gt;IS-A&lt;/em&gt; toy dog. A Great Dane &lt;em&gt;IS-NOT&lt;/em&gt; a toy dog.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.dailymail.co.uk%2Fi%2Fpix%2F2014%2F03%2F24%2Farticle-2588177-1C8944BB00000578-801_964x519.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.dailymail.co.uk%2Fi%2Fpix%2F2014%2F03%2F24%2Farticle-2588177-1C8944BB00000578-801_964x519.jpg" alt="Toy Dog Chart"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.dailymail.co.uk/sciencetech/article-2588177/The-family-tree-DOGS-From-tiny-chihuahuas-great-danes-infographic-reveals-single-breed-related.html" rel="noopener noreferrer"&gt;Image Source&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A concept similar to inheritance is composition. Composition is when two or more objects make another object. The relationship is one of ownership. Use the test &lt;em&gt;HAS-A&lt;/em&gt; to check if its a composition.&lt;/p&gt;

&lt;p&gt;A car &lt;em&gt;HAS-A&lt;/em&gt; engine. &lt;br&gt;
A Jedi &lt;em&gt;HAS-A&lt;/em&gt; lightsaber.&lt;br&gt;
A pokemon trainer &lt;em&gt;HAS-A&lt;/em&gt; Pokeball.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Polymorphism&lt;/strong&gt; - is the ability to take several forms. In oop we use overriding and overloading to achieve this.&lt;/p&gt;

&lt;p&gt;Overriding is when a subclass changes the functionality of a method with the same name.&lt;/p&gt;

&lt;p&gt;Overloading is when a class has multiple methods of the same name.&lt;/p&gt;

&lt;p&gt;Other OO* terms&lt;/p&gt;

&lt;p&gt;|OOA | Object-Oriented Analysis | Understanding your problem&lt;br&gt;
|OOD | Object-Oriented Design   | Create/ Design your solution to the problem&lt;br&gt;
|OOP  | Object-Oriented Programming | Programming your solution&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Further Reading and Resources&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Object-Oriented Programming for Python by Dusty Phillips&lt;br&gt;
UML Distilled by Martin Fowler&lt;br&gt;
Head First Object-Oriented Programming and Analysis&lt;br&gt;
&lt;a href="https://www.freecodecamp.org/news/2019-web-developer-roadmap/" rel="noopener noreferrer"&gt;How to learn Software Development and Architecture - a Roadmap&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.freecodecamp.org/news/software-design/" rel="noopener noreferrer"&gt;FreeCode Camp 2019 Web Developer Roadmap&lt;/a&gt;&lt;br&gt;
&lt;a href="https://realpython.com/python3-object-oriented-programming/#what-is-object-oriented-programming-oop" rel="noopener noreferrer"&gt;What is object-Oriented Programming-Real Python&lt;/a&gt;&lt;/p&gt;

</description>
      <category>todayilearned</category>
    </item>
    <item>
      <title>It's better to code with friends</title>
      <dc:creator>Zaynaib (Ola) Giwa</dc:creator>
      <pubDate>Thu, 26 Dec 2019 13:50:30 +0000</pubDate>
      <link>https://dev.to/zaynaib/it-s-better-to-code-with-friends-4llg</link>
      <guid>https://dev.to/zaynaib/it-s-better-to-code-with-friends-4llg</guid>
      <description>&lt;p&gt;The journey of being a software developer is a never-ending journey of learning. This journey can be daunting if you are going about it on your own. So my advice to anyone who is beginner their journey or a well seasoned veteran start coding with your friends.&lt;/p&gt;

&lt;p&gt;I graduated from a coding bootcamp over a year ago and my progression kind of hit paused. That structure of bootcamp was gone and I got stuck in what is known as tutorial purgatory. It's when a person goes through coding tutorials step by step but when it comes to doing projects from scratch it's hard to do. I stumbled upon Chingu Cohorts, a community of developers that improve their skills by doing project-based work. I thought that this would be a good way to learn how to work on a team, meet some new people, distract me from the fact that I don't have a job, and pick up some new skills along the way. &lt;/p&gt;

&lt;p&gt;I got put in a team with three awesome people&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://medium.com/@mingyong"&gt;Ming Yong&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://medium.com/@sophiali124"&gt;Sophi Li&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/rafaeldavish/"&gt;Rafael D. Hernandez&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We decided to reverse engineer the &lt;a href="https://momentumdash.com/"&gt;Momentum App&lt;/a&gt;. By the end of the 6 weeks, we accomplished our goal &lt;a href="https://moto-toucans03.netlify.com/"&gt;Check it out here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Here are a couple of skills that I picked up during my time with my cohort.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Project Management&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;I learned how to coordinate schedules from people in different time zones.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Used &lt;a href="https://medium.com/chingu/a-short-introduction-to-the-scrum-methodology-7a23431b9f17"&gt;Agile&lt;/a&gt; development methodology to keep track of our progress and used a tool called Zen Hub that is integrated with GitHub.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;We created a user story in order to determine our most viable product(MVP).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;I learned how to do Code Reviews&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Git Skills&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Learned how to merge git branches via terminal&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Learned how to create pull requests and how to use them to keep track of an issue&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Javascript Skills&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Learned how to call an API using async/fetch&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Learned how to use ES6 modules&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Practiced &lt;a href="https://medium.com/mindorks/how-to-write-clean-code-lessons-learnt-from-the-clean-code-robert-c-martin-9ffc7aef870c"&gt;clean code&lt;/a&gt; practice by creating meaningful variable names and using single responsibility rule for creating functions&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;TLDR;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I feel like I lucked out with my team members. They showed up and showed out. I learned how to work on a team, learned essential soft skills and improved my understanding of vanilla JavaScript. I can't wait to join another voyage. If you are interested in reading detail weekly accounts of this voyage checkout &lt;a href="https://dev.to/rafaeldavish/blog-6-chingu-voyage-log-moto-is-alive-ngf"&gt;Rafael's dev.to articles&lt;/a&gt; which links sprints 1 - 6 written by other members of the team.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>chingu</category>
      <category>webdev</category>
      <category>codenewbie</category>
    </item>
  </channel>
</rss>
