<?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: logamill</title>
    <description>The latest articles on DEV Community by logamill (@logamill).</description>
    <link>https://dev.to/logamill</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%2F859991%2F185fb8f3-beb4-42af-8f73-ecd1cdae8c85.jpeg</url>
      <title>DEV Community: logamill</title>
      <link>https://dev.to/logamill</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/logamill"/>
    <language>en</language>
    <item>
      <title>Pt. 1 of Utilizing Spotify's API with RSpotify In a React/Rails Environment</title>
      <dc:creator>logamill</dc:creator>
      <pubDate>Wed, 13 Jul 2022 21:38:02 +0000</pubDate>
      <link>https://dev.to/logamill/pt-1-of-utilizing-spotifys-api-with-rspotify-in-a-reactrails-environment-4p5o</link>
      <guid>https://dev.to/logamill/pt-1-of-utilizing-spotifys-api-with-rspotify-in-a-reactrails-environment-4p5o</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ta2AnRzH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/40sz0do24qqy3cwd77ap.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ta2AnRzH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/40sz0do24qqy3cwd77ap.png" alt="Image description" width="880" height="264"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As many developers probably know by now - Spotify does a great job at giving access to their API and all of the neat features that come with it. I've spent the past few weeks working on a project which focuses on taking advanced user analytics from Spotify and matching people based on similar taste. &lt;/p&gt;

&lt;p&gt;In order to get my project off the ground I needed to learn how Spotify chooses to authenticate its users - which turns out to be OAuth if you're pursuing more in-depth information. &lt;/p&gt;

&lt;p&gt;Below is a chart that illustrates the authentication process that Spotify wants you to put your users through in order to access their data.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZWB4Wjkm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xfc4z2655efl61bo51m4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZWB4Wjkm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xfc4z2655efl61bo51m4.png" alt="Image description" width="880" height="799"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This looks really complicated and if you're someone like me who grew up in the 21st century, reading is not my strong-suit so even though I've probably looked at this flow-chart ~400 times I still don't think I've ever actually read it to completion. &lt;/p&gt;

&lt;p&gt;Regardless... the important things that you should take note of if you want to use Spotify's API is that your Client_id, Client_secret and Redirect_uri need to match EXACTLY. There is a place on the developer dashboard where you can access all of this information and put it into your .env file or wherever you store your secret info (only the client_secret really needs to be kept hidden though). &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;One really important thing that I think Spotify leaves out of its documentation is that you actually need to whitelist users in order to have other users sign-in and use your app.&lt;/strong&gt; This is done on the dashboard under "Users and Access". &lt;em&gt;Make sure that the name and email you put here are an exact match to your user's name (not username) and email.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In part 2 I'll detail a bit about the amazing RSpotify wrapper gem made by guilhermesad on github!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>My Experience With React</title>
      <dc:creator>logamill</dc:creator>
      <pubDate>Mon, 09 May 2022 17:31:39 +0000</pubDate>
      <link>https://dev.to/logamill/my-experience-with-react-1aai</link>
      <guid>https://dev.to/logamill/my-experience-with-react-1aai</guid>
      <description>&lt;p&gt;After spending the past three weeks learning the 'ins and outs' of javascript, HTML, and CSS at Flatiron School (the coding bootcamp I'm currently attending) - &lt;em&gt;we finally began our journey into React&lt;/em&gt;. For a little background information, I have a few friends who have been in the web dev industry for the past few years and as I began coding on my own and learning different languages, &lt;strong&gt;they all told me that React was something that I should definitely take a look at&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Fast forward a few months and I have finally decided to attend a coding bootcamp to pursue my goal of becoming a web developer. While going through the options - Flatiron School stood out to me as it was the only one I found offering in-person teaching at the time as well as React as a focal point. &lt;/p&gt;

&lt;p&gt;I had seen a few examples of React from templates as well as some demonstrations on YouTube, etc. but it was a totally different experience trying to absorb all of the features and hooks as well as really understanding how to conceptualize what your website and its components should look like. However, after spending a few weeks working through countless examples and tests, &lt;strong&gt;I feel like I'm really beginning to break into what makes React so amazing&lt;/strong&gt;. The organization of components, fetching info from API's with useEffect, understanding state and how to best utilize it to fit your needs - &lt;em&gt;each new feature you learn seems to add another layer of understanding to web development&lt;/em&gt; and just how far you can take it.&lt;/p&gt;

</description>
      <category>react</category>
      <category>node</category>
      <category>beginners</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
