<?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: salcasta</title>
    <description>The latest articles on DEV Community by salcasta (@salcasta).</description>
    <link>https://dev.to/salcasta</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%2F1118566%2F55d0929f-d473-4064-8f65-2ac4a00b3291.png</url>
      <title>DEV Community: salcasta</title>
      <link>https://dev.to/salcasta</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/salcasta"/>
    <language>en</language>
    <item>
      <title>My Mini Project</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Tue, 08 Aug 2023 22:19:02 +0000</pubDate>
      <link>https://dev.to/salcasta/my-mini-project-3aaa</link>
      <guid>https://dev.to/salcasta/my-mini-project-3aaa</guid>
      <description>&lt;p&gt;It has been an insightful, fun, challenging road through DPI's Tech Prep course. I have finally made it and completed the last section, which is the mini project section. I wanted to write about my thoughts while completing the mini project.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My first idea&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;My first idea for my API web application was to create a page that used a U.S. state data API. It would be a fun site with useless facts about any state the user entered. Unfortunately the JSON file I wanted would cost me $20/month. To avoid any hassles with canceling my plan at the end of the month and giving a company I do not know about my credit card information I pivoted and went with a free lorem ipsum API. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My lorem ipsum idea&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Now that I had access to a free working API, it was time to get to work. The lorem ipsum API I was using had a lot of options for the user. The user could decide between the length of the paragraphs, headers, unordered/ordered list, description list, and block quotes. While working through that I found out that there was a bacon ipsum API as well and a hipster ipsum API. I decided I would have all 3 options available for my user. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My first hiccup&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I was progressing through my form section with little problems. I decided to use checkboxes instead of text boxes, it would be easier for the user and look better. Unfortunately when I switched the text boxes to checkboxes it broke my app. When the checkbox was clicked everything went well. The problem was when the user was selective with the options. A "key not found" error would appear. I tried everything, from adding a value attribute to the input tag to using if statements with a nil option when not selected. Nothing seemed to work and since I did not know how to properly write my problem down in google. I could not successfully troubleshoot through my problem. Luckily text boxes worked perfectly fine so I decided to move forward with them. Once the main page was completed with the regular lorem ipsum, the two other ipsum pages were very identical. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Overall&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Overall I am happy with my web app and when I styled the app it solidified my feelings. I would have liked to work with an API that required a private key and had layers in the JSON file to really understand what it is like working with API's. As a result I have reviewed the API material and taken detailed notes so, that when I have to work with a more complicated API I will be prepared. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://loripsum-api-miniproject-techprep.onrender.com"&gt;Here is a link to my mini project&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Please allow ~30 seconds for render to kick start and host my site&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>ruby</category>
      <category>programming</category>
    </item>
    <item>
      <title>My Initial Thoughts On Sinatra</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Wed, 02 Aug 2023 06:21:46 +0000</pubDate>
      <link>https://dev.to/salcasta/my-initial-thoughts-on-sinatra-5ap7</link>
      <guid>https://dev.to/salcasta/my-initial-thoughts-on-sinatra-5ap7</guid>
      <description>&lt;p&gt;As of this writing I have completed the &lt;em&gt;Omnicalc1&lt;/em&gt; assignment and wanted to share my initial thoughts on Sinatra.&lt;/p&gt;

&lt;p&gt;Before DPI's Tech Prep began I was hoping the programming language used in the course was going to be JavaScript. I am familiar with JavaScript and knew it was the most popular language and was the most in demand language for job seekers. &lt;/p&gt;

&lt;p&gt;Much to my dismay once I found out it was going to be Ruby I was upset. I felt it was better to stick to one programming language. &lt;/p&gt;

&lt;p&gt;Boy was I wrong!!!&lt;/p&gt;

&lt;p&gt;Ruby has been a blessing in disguise. Ruby makes a lot of things way easier than JavaScript like looping through arrays. Once I began the Sinatra module I saw the true power of Ruby. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Gems&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I have only scratched the surface with the gems available, but I am already impressed with the &lt;em&gt;BetterError&lt;/em&gt; gem. It makes coding a lot easier when an error is displayed in an easy to understand message. &lt;/p&gt;

&lt;p&gt;The ease of downloading a gem as well as all the dependencies it requires with the command &lt;em&gt;bundle install&lt;/em&gt; is truly amazing! &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Routing and Layouts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sinatra truly makes routing your website an effortless process. That is not even factoring the fact that dynamic routing is easy to do with Sinatra. A general layout is so simple to implement with a views folder and &lt;em&gt;layout.erb&lt;/em&gt; file. Separating the HTML and Ruby and linking them together with erb files is done with ease.&lt;/p&gt;

&lt;p&gt;I can't wait to learn more about Sinatra and the other gems available. Moving forward I am going to continue with Ruby and seek jobs that require Ruby experience. Hopefully I will be admitted to the apprenticeship program and be paid to learn Ruby. I am extremely excited for that opportunity. &lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>ruby</category>
    </item>
    <item>
      <title>My Time in the Ruby Gym</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Tue, 01 Aug 2023 05:30:29 +0000</pubDate>
      <link>https://dev.to/salcasta/my-time-in-the-ruby-gym-27nn</link>
      <guid>https://dev.to/salcasta/my-time-in-the-ruby-gym-27nn</guid>
      <description>&lt;p&gt;I completed the ruby gym over the weekend and wanted to document my thoughts on the challenges. Some were easy, others were hard, but fun. So, let us begin...&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Think fast&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;At first glance I thought it was going to be easy, but I did run into a lot of syntax errors. Once they were resolved the rest fell into place. Overall it was a fun challenge.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Twofer&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This was the easiest of all the challenges. Once I went with &lt;em&gt;.length&lt;/em&gt; to determine if the array gave a name or an empty string the rest was standard.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dice Roll&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Another straight forward challenge, but when trying to pass the test an error kept coming up. I had to switch the placement of my guess and roll variables. Once I did that, the last test passed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Leap Year&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This was the hardest of all the challenges. I took a simple approach, but once I accepted that a more complex approach was needed I finally started to make some progress. I needed to do some more research on how leap years are calculated. Google was a big help in solving this challenge.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Secret Encoder &amp;amp; Secret Decoder&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;These two challenges are pretty much the same. Looking back I could have made things a lot easier using &lt;em&gt;.each&lt;/em&gt; to loop through the array created by using &lt;em&gt;.split("")&lt;/em&gt; Through trial and error I was able to solve this challenge. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sum Odd Integers&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This was a fun challenge that required a game plan to solve. Similar to the encoder and decoder challenges I should have used &lt;em&gt;.each&lt;/em&gt; to loop through the array to make things easier. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Raindrops&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This challenge required a lot of thinking before actually writing any code. My biggest time waster was trying to solve this challenge using one if statement. Once I abandoned that idea and went with 3 separate if statements I was able to solve it quickly. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Character Types&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For this challenge I needed to read more about regexp and how to use it. Scanning the string if 0-9 is present to differentiate between a word character and a number character. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Count "the"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Similar to the last challenge, my success depended on my knowledge of regexp. Once I was able to use the right notation to scan for all the "the"s without triggering "the" inside of words like "them" or "they" I was able to solve it. Regexp is a powerful tool so, I was happy to read up on it and expand my knowledge. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Final Thoughts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It felt good to solve coding challenges again. I look forward to solving more ruby challenges to expand my ruby knowledge in the future. If I make the final cut into the DPI program I hope to do one ruby challenge a day during the 3 month training. Become a lean mean problem solving machine!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>ruby</category>
    </item>
    <item>
      <title>Ruby Class Review</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Mon, 31 Jul 2023 00:38:02 +0000</pubDate>
      <link>https://dev.to/salcasta/ruby-class-review-5al6</link>
      <guid>https://dev.to/salcasta/ruby-class-review-5al6</guid>
      <description>&lt;p&gt;Here I will talk about some of the new things I learned and key takeaways while completing the Ruby class section.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;String Class&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;.gsub("", "")&lt;/em&gt; replace any occurrence in a string with the first argument with the second argument. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Integer Class &amp;amp; Float Class&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When working with large numbers you can use an underscore as a comma for better readability.&lt;/p&gt;

&lt;p&gt;ex. 1_000_000&lt;/p&gt;

&lt;p&gt;&lt;em&gt;.odd?&lt;/em&gt; and &lt;em&gt;even?&lt;/em&gt; will come in useful when solving if conditionals.&lt;/p&gt;

&lt;p&gt;Using &lt;em&gt;rand()&lt;/em&gt; will give you a number from 0 to one less designated number. &lt;/p&gt;

&lt;p&gt;Using &lt;em&gt;rand(1..6)&lt;/em&gt; will replicate a die roll&lt;/p&gt;

&lt;p&gt;Only one number in your equation needs to be a float number for your output to be a float. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Date Class&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To use the built-in date methods in ruby you must first place &lt;em&gt;require "date"&lt;/em&gt; above your code&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Date.today&lt;/em&gt; gives you current date YYYY-MM-DD&lt;/p&gt;

&lt;p&gt;To extract the year, month, or day use &lt;em&gt;.year&lt;/em&gt;, &lt;em&gt;.month&lt;/em&gt;, &lt;em&gt;.day&lt;/em&gt; This will only give you the numerical value back.&lt;/p&gt;

&lt;p&gt;Finding the number of days between two dates can be helpful and with ruby it is easy...&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="nb"&gt;require&lt;/span&gt; &lt;span class="s2"&gt;"date"&lt;/span&gt;
&lt;span class="n"&gt;number_of_days&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="no"&gt;Date&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;today&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="no"&gt;Date&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;parse&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"July 4, 1776"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;pp&lt;/span&gt; &lt;span class="n"&gt;number_of_days&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Getting back the weekday, month, AM/PM uses &lt;em&gt;.strftime&lt;/em&gt; with special notation&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="c1"&gt;# weekday&lt;/span&gt;
&lt;span class="n"&gt;pp&lt;/span&gt; &lt;span class="no"&gt;Time&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;now&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;strftime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"%A"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# month&lt;/span&gt;
&lt;span class="n"&gt;pp&lt;/span&gt; &lt;span class="no"&gt;Time&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;now&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;strftime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"%B"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# month abbreviated&lt;/span&gt;
&lt;span class="n"&gt;pp&lt;/span&gt; &lt;span class="no"&gt;Time&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;now&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;strftime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"%b"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# weekday abbreviated, day of month, time and minutes with AM/PM&lt;/span&gt;
&lt;span class="n"&gt;pp&lt;/span&gt; &lt;span class="no"&gt;Time&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;now&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;strftime&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"%a %e, %R %p"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Array Class&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Using &lt;em&gt;.split("")&lt;/em&gt; to convert a string into an array is required to solve many ruby coding problems.&lt;/p&gt;

&lt;p&gt;An easy way to get a sum of numbers is to put them in an array and use &lt;em&gt;.sum&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If Statement Class&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;REMEMBER - When using an if statement, it must end with the word end. Make it a habit to start an if statement with both keywords.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;if&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When two conditions need to be checked use &lt;em&gt;&amp;amp;&amp;amp;&lt;/em&gt; for "and"&lt;/p&gt;

&lt;p&gt;When more than one condition needs to be checked, but only one needs to be satisfied use &lt;em&gt;||&lt;/em&gt; fir "or"&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Loop Class&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Different looping blocks that can be used are...&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;times&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;variable&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
  &lt;span class="n"&gt;pp&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;variable&lt;/span&gt;

&lt;span class="c1"&gt;#the loop block will begin 2 * 1... 2 * 2...... 2 * 10&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;upto&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;length&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s2"&gt;"b"&lt;/span&gt;
    &lt;span class="n"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"2"&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Each Class&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;My last example could be done with the &lt;em&gt;.each&lt;/em&gt; method. &lt;em&gt;.each&lt;/em&gt; is meant to loop over an array with ease.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;each&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s2"&gt;"b"&lt;/span&gt;
    &lt;span class="n"&gt;arr&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s2"&gt;"2"&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Hash Class&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A hash is similar to an array except it can hold a key with a corresponding value. Organizes info better than an array. &lt;/p&gt;

&lt;p&gt;Use &lt;em&gt;.store&lt;/em&gt; to add a key and value to a hash&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;person1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="no"&gt;Hash&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;new&lt;/span&gt;

&lt;span class="n"&gt;person1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;store&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ss"&gt;:first_name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"Sal"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;person1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;store&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ss"&gt;:role&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"Student"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;.fetch&lt;/em&gt; will catch the value associated with a certain key&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;person1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ss"&gt;:first_name&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;person1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="ss"&gt;:role&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"None provided"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Using a second argument for your fetch will stop your program from crashing when a value doesn't exist. &lt;/p&gt;

&lt;p&gt;Displaying all the keys in a hash can be done using the &lt;em&gt;.keys&lt;/em&gt; method. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creating your own Class&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You can create your own class that can be recycled as many times as you want.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Person&lt;/span&gt;
  &lt;span class="nb"&gt;attr_accessor&lt;/span&gt; &lt;span class="ss"&gt;:first_name&lt;/span&gt;
  &lt;span class="nb"&gt;attr_accessor&lt;/span&gt; &lt;span class="ss"&gt;:last_name&lt;/span&gt;
  &lt;span class="nb"&gt;attr_accessor&lt;/span&gt; &lt;span class="ss"&gt;:role&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;

&lt;span class="n"&gt;pp&lt;/span&gt; &lt;span class="no"&gt;Person&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;new&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It is very important to capitalize the word you are using as a class.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>ruby</category>
    </item>
    <item>
      <title>Ruby Basics - Methods and Sorting</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Thu, 27 Jul 2023 06:00:02 +0000</pubDate>
      <link>https://dev.to/salcasta/ruby-basics-methods-and-sorting-3in9</link>
      <guid>https://dev.to/salcasta/ruby-basics-methods-and-sorting-3in9</guid>
      <description>&lt;p&gt;&lt;strong&gt;Methods&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A method is very similar to a function in JavaScript. You start off by using def and then the name of the method. &lt;br&gt;
Parentheses follow the method name is it requires a parameter. Then you insert your reusable code and end it with the word 'end'. &lt;/p&gt;

&lt;p&gt;It should look like this...&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;cubertino&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;n&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt; &lt;span class="o"&gt;**&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To call it (use it) just use the name of the method with an argument in parentheses&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;cubertino&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# 512&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To make multiple arguments just put an asterisk in front of the parameter&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;what_up&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;greeting&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="n"&gt;friends&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="n"&gt;friends&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;each&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;friend&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;greeting&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;, &lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;friend&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;!"&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;

&lt;span class="n"&gt;what_up&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"What up"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"Ian"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"Zoe"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"Zenas"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"Eleanor"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="no"&gt;Output&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; 
&lt;span class="no"&gt;What&lt;/span&gt; &lt;span class="n"&gt;up&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="no"&gt;Ian&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;
&lt;span class="no"&gt;What&lt;/span&gt; &lt;span class="n"&gt;up&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="no"&gt;Zoe&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;
&lt;span class="no"&gt;What&lt;/span&gt; &lt;span class="n"&gt;up&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="no"&gt;Zenas&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;
&lt;span class="no"&gt;What&lt;/span&gt; &lt;span class="n"&gt;up&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="no"&gt;Eleanor&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Using &lt;em&gt;return&lt;/em&gt; inside your method will give you back a value, this value can be used for another method.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sorting&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Using &lt;em&gt;sort&lt;/em&gt; will reorganize your string data from A-Z or your numerical data from 1-n.&lt;/p&gt;

&lt;p&gt;To get the opposite order, use arrow notation to set which order you would like.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;books&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"Charlie and the Chocolate Factory"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"War and Peace"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"Utopia"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"A Brief History of Time"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"A Wrinkle in Time"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;

&lt;span class="c1"&gt;# To sort our books in ascending order, in-place&lt;/span&gt;
&lt;span class="n"&gt;books&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;sort!&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;firstBook&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;secondBook&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="n"&gt;firstBook&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;=&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;secondBook&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;# Sort your books in descending order, in-place below&lt;/span&gt;

&lt;span class="n"&gt;books&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;sort!&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;firstBook&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;secondBook&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="n"&gt;secondBook&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;=&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;firstBook&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>beginners</category>
      <category>ruby</category>
    </item>
    <item>
      <title>Ruby Basics - Arrays &amp; Intro to Hashes</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Thu, 27 Jul 2023 04:20:03 +0000</pubDate>
      <link>https://dev.to/salcasta/ruby-basics-arrays-intro-to-hashes-50n9</link>
      <guid>https://dev.to/salcasta/ruby-basics-arrays-intro-to-hashes-50n9</guid>
      <description>&lt;p&gt;An array is an object that can hold multiple items (pieces of info, including other arrays).&lt;/p&gt;

&lt;p&gt;To access the array use its index starting from 0 (use -1 to get the last item).&lt;/p&gt;

&lt;p&gt;array   | 5 | 7 | 9 | 2 | 0 |&lt;/p&gt;

&lt;p&gt;index     0   1   2   3   4&lt;/p&gt;

&lt;p&gt;A hash is an object similar to an array, but a hash as both a key and a value.&lt;/p&gt;

&lt;p&gt;When creating a hash, use Hash.new and then add to it by using the hash name next to brackets with the key equal to the value.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;pets&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="no"&gt;Hash&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;new&lt;/span&gt;

&lt;span class="n"&gt;pets&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'Cash'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;'cat'&lt;/span&gt;

&lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="n"&gt;pets&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'Cash'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To iterate over a hash, it is the same as an array except add a second parameter to get the value of the key&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;lunch_order&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="s2"&gt;"Ryan"&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="s2"&gt;"wonton soup"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="s2"&gt;"Eric"&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="s2"&gt;"hamburger"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="s2"&gt;"Jimmy"&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="s2"&gt;"sandwich"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="s2"&gt;"Sasha"&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="s2"&gt;"salad"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="s2"&gt;"Cole"&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="s2"&gt;"taco"&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="n"&gt;lunch_order&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;each&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;y&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="n"&gt;y&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;


&lt;span class="no"&gt;Output&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="n"&gt;wonton&lt;/span&gt; &lt;span class="n"&gt;soup&lt;/span&gt;
&lt;span class="n"&gt;hamburger&lt;/span&gt;
&lt;span class="n"&gt;sandwich&lt;/span&gt;
&lt;span class="n"&gt;salad&lt;/span&gt;
&lt;span class="n"&gt;taco&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Mini Project&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Creating a program that will analyze how many words are used in a block of text and the frequency.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;'Analyze this phrase'&lt;/span&gt;
&lt;span class="n"&gt;text&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;gets&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;chomp&lt;/span&gt;

&lt;span class="n"&gt;words&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;split&lt;/span&gt;

&lt;span class="n"&gt;frequencies&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="no"&gt;Hash&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;new&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;words&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;each&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;word&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="n"&gt;frequencies&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;word&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="n"&gt;frequencies&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;frequencies&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;sort_by&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;word&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;count&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
  &lt;span class="n"&gt;count&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="n"&gt;frequencies&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;reverse!&lt;/span&gt;

&lt;span class="n"&gt;frequencies&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;each&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;word&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;count&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;word&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt; &lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;count&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;to_s&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;

 &lt;span class="no"&gt;He&lt;/span&gt; &lt;span class="n"&gt;walked&lt;/span&gt; &lt;span class="n"&gt;down&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;steps&lt;/span&gt; &lt;span class="n"&gt;from&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;train&lt;/span&gt; &lt;span class="n"&gt;station&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;bit&lt;/span&gt; &lt;span class="n"&gt;of&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;hurry&lt;/span&gt; &lt;span class="n"&gt;knowing&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;secrets&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;briefcase&lt;/span&gt; &lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="n"&gt;be&lt;/span&gt; &lt;span class="n"&gt;secured&lt;/span&gt; &lt;span class="n"&gt;as&lt;/span&gt; &lt;span class="n"&gt;quickly&lt;/span&gt; &lt;span class="n"&gt;as&lt;/span&gt; &lt;span class="n"&gt;possible&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="no"&gt;Bounding&lt;/span&gt; &lt;span class="n"&gt;down&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;steps&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;he&lt;/span&gt; &lt;span class="n"&gt;heard&lt;/span&gt; &lt;span class="n"&gt;something&lt;/span&gt; &lt;span class="n"&gt;behind&lt;/span&gt; &lt;span class="n"&gt;him&lt;/span&gt; &lt;span class="ow"&gt;and&lt;/span&gt; &lt;span class="n"&gt;quickly&lt;/span&gt; &lt;span class="n"&gt;turned&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;panic&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="no"&gt;There&lt;/span&gt; &lt;span class="n"&gt;was&lt;/span&gt; &lt;span class="n"&gt;nobody&lt;/span&gt; &lt;span class="n"&gt;there&lt;/span&gt; &lt;span class="n"&gt;but&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;pair&lt;/span&gt; &lt;span class="n"&gt;of&lt;/span&gt; &lt;span class="n"&gt;old&lt;/span&gt; &lt;span class="n"&gt;worn&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;out&lt;/span&gt; &lt;span class="n"&gt;shoes&lt;/span&gt; &lt;span class="n"&gt;were&lt;/span&gt; &lt;span class="n"&gt;placed&lt;/span&gt; &lt;span class="n"&gt;neatly&lt;/span&gt; &lt;span class="n"&gt;on&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;steps&lt;/span&gt; &lt;span class="n"&gt;he&lt;/span&gt; &lt;span class="n"&gt;had&lt;/span&gt; &lt;span class="n"&gt;just&lt;/span&gt; &lt;span class="n"&gt;come&lt;/span&gt; &lt;span class="n"&gt;down&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="no"&gt;Had&lt;/span&gt; &lt;span class="n"&gt;he&lt;/span&gt; &lt;span class="n"&gt;past&lt;/span&gt; &lt;span class="n"&gt;them&lt;/span&gt; &lt;span class="n"&gt;without&lt;/span&gt; &lt;span class="n"&gt;seeing&lt;/span&gt; &lt;span class="n"&gt;them?&lt;/span&gt; &lt;span class="no"&gt;It&lt;/span&gt; &lt;span class="n"&gt;didn&lt;/span&gt;&lt;span class="s1"&gt;'t seem possible. He was about to turn and be on his way when a deep chill filled his body.Then came the night of the first falling star. It was seen early in the morning, rushing over Winchester eastward, a line of flame high in the atmosphere. Hundreds must have seen it and taken it for an ordinary falling star. It seemed that it fell to earth about one hundred miles east of him.

the 6
a 5
he 3
in 3
his 2
on 2
was 2
and 2
possible. 2
quickly 2
as 2
be 2
of 2
steps 2
down 2
He 2
body. 1
filled 1
chill 1
deep 1
when 1
way 1
turn 1
to 1
about 1
seem 1
didn'&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="no"&gt;It&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;them?&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;seeing&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;without&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;them&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;past&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="no"&gt;Had&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;down&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;come&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;just&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;had&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;neatly&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;placed&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;were&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;shoes&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;worn&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;out&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;old&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;pair&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;but&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;there&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;nobody&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="no"&gt;There&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;panic&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;turned&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;him&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;behind&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;something&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;heard&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;steps&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="no"&gt;Bounding&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;secured&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;must&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;briefcase&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;secrets&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;knowing&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;hurry&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;bit&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;station&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;train&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;from&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="n"&gt;walked&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>beginners</category>
      <category>ruby</category>
    </item>
    <item>
      <title>Ruby Basics - Loops &amp; Iterators</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Fri, 21 Jul 2023 04:21:10 +0000</pubDate>
      <link>https://dev.to/salcasta/ruby-basics-loops-iterators-3m8e</link>
      <guid>https://dev.to/salcasta/ruby-basics-loops-iterators-3m8e</guid>
      <description>&lt;p&gt;Let's jump into loops!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Incremental Change&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;instead of writing&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;score&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;score&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;use the += notation accomplishes the same task&lt;/p&gt;

&lt;p&gt;+=&lt;br&gt;
-=&lt;br&gt;
*=&lt;br&gt;
/=&lt;br&gt;
all work&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Loops&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;While&lt;/em&gt; loop - while a certain condition is true, it will continue to loop through your code until the condition is false&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="k"&gt;while&lt;/span&gt; &lt;span class="n"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;11&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="n"&gt;counter&lt;/span&gt;
  &lt;span class="n"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Until&lt;/em&gt; loop - very similar to the &lt;em&gt;while&lt;/em&gt; loop it runs your code until a certain condition is met&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="k"&gt;until&lt;/span&gt; &lt;span class="n"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="n"&gt;counter&lt;/span&gt;
  &lt;span class="c1"&gt;# Add code to update 'counter' here!&lt;/span&gt;
  &lt;span class="n"&gt;counter&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;For&lt;/em&gt; loop - used when you know an exact number of times you want to run a loop. This is the most commonly used of all the loops&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="o"&gt;..&lt;/span&gt;&lt;span class="mi"&gt;20&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Iterators&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;.each&lt;/em&gt; - will run some code for each item in an array&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;array&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;

&lt;span class="n"&gt;array&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;each&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;
  &lt;span class="n"&gt;x&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;
  &lt;span class="nb"&gt;print&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;.times&lt;/em&gt; - good for repeating a piece of code a certain amount of times&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;times&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nb"&gt;print&lt;/span&gt; &lt;span class="s1"&gt;'Hello World '&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;These are just a taste of many iterators available in ruby!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mini Project&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A fun small project is to redact a certain word from a group of text&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"Enter some text: "&lt;/span&gt;
&lt;span class="n"&gt;text&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;gets&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;chomp&lt;/span&gt;

&lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"Enter words to redact: "&lt;/span&gt;
&lt;span class="n"&gt;redact&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;gets&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;chomp&lt;/span&gt;

&lt;span class="n"&gt;words&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;text&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;split&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;" "&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;words&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;each&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="n"&gt;word&lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt; 
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;word&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="n"&gt;redact&lt;/span&gt;
    &lt;span class="nb"&gt;print&lt;/span&gt; &lt;span class="s2"&gt;"REDACTED "&lt;/span&gt;
  &lt;span class="k"&gt;else&lt;/span&gt;
        &lt;span class="nb"&gt;print&lt;/span&gt; &lt;span class="n"&gt;word&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="s2"&gt;" "&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="cm"&gt;=begin
Output:
Enter some text: 

Patrick didn't want to go. The fact that she was insisting they must go made him want to go even less. He had no desire to make small talk with strangers he would never again see just to be polite. But she insisted that Patrick go, and she would soon find out that this would be the biggest mistake she could make in their relationship.

Enter words to redact: to

Patrick didn't want REDACTED go. The fact that she was insisting they must go made him want REDACTED go even less. He had no desire REDACTED make small talk with strangers he would never again see just REDACTED be polite. But she insisted that Patrick go, and she would soon find out that this would be the biggest mistake she could make in their relationship.
=end&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>beginners</category>
      <category>ruby</category>
    </item>
    <item>
      <title>Ruby Basics - Control Flow</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Thu, 20 Jul 2023 04:24:24 +0000</pubDate>
      <link>https://dev.to/salcasta/ruby-basics-control-flow-50a4</link>
      <guid>https://dev.to/salcasta/ruby-basics-control-flow-50a4</guid>
      <description>&lt;p&gt;&lt;strong&gt;if statement&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;if&lt;/em&gt; is used to see if something is either true or false&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;
  &lt;span class="nb"&gt;print&lt;/span&gt; &lt;span class="s2"&gt;"I'm getting printed because one is less than two!"&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;if the 1 was changed to 3, nothing would be printed&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;else statement&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Using &lt;em&gt;else&lt;/em&gt; after &lt;em&gt;if&lt;/em&gt; checks for one condition, if that condition is not met then the else condition will run automatically&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;if 1 &amp;gt; 2
  print "I won't get printed because one is less than two."
else
  print "That means I'll get printed!"
end
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;elsif statement&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Using &lt;em&gt;elsif&lt;/em&gt; allows you to add more conditions before the &lt;em&gt;else&lt;/em&gt; condition is used&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;x&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="n"&gt;y&lt;/span&gt;  &lt;span class="c1"&gt;# Assumes x and y are defined&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"x is less than y!"&lt;/span&gt;
&lt;span class="k"&gt;elsif&lt;/span&gt; &lt;span class="n"&gt;x&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;y&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"x is greater than y!"&lt;/span&gt;
&lt;span class="k"&gt;else&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"x equals y!"&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Unless&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Using &lt;em&gt;unless&lt;/em&gt; checks to see if a statement is false instead of true&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;hungry&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kp"&gt;true&lt;/span&gt;

&lt;span class="k"&gt;unless&lt;/span&gt; &lt;span class="n"&gt;hungry&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"I'm writing Ruby programs!"&lt;/span&gt;
&lt;span class="k"&gt;else&lt;/span&gt;
  &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"Time to eat!"&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Equal signs&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Using &lt;em&gt;=&lt;/em&gt; sets a variable &lt;br&gt;
Using &lt;em&gt;==&lt;/em&gt; compares to variables to see if they are equal&lt;br&gt;
Using &lt;em&gt;!=&lt;/em&gt; compares to variables to see if they are not equal&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;is_true&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;

&lt;span class="n"&gt;is_false&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Greater than and Less than&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Compare number variables to see if one variable is greater than &lt;em&gt;&amp;gt;&lt;/em&gt; or less than &lt;em&gt;&amp;lt;&lt;/em&gt; another number variable&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;test_1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;17&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;

&lt;span class="n"&gt;test_2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;21&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;30&lt;/span&gt;

&lt;span class="n"&gt;test_3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;9&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;=&lt;/span&gt; &lt;span class="mi"&gt;9&lt;/span&gt;

&lt;span class="n"&gt;test_4&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;=&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Using logical operators&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Ruby allows you to use logical or boolean operators such as AND &lt;em&gt;&amp;amp;&amp;amp;&lt;/em&gt; OR &lt;em&gt;||&lt;/em&gt; NOT &lt;em&gt;!&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;boolean_1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="kp"&gt;false&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kp"&gt;false&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="kp"&gt;true&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;boolean_1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kp"&gt;true&lt;/span&gt;

&lt;span class="n"&gt;boolean_2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="kp"&gt;true&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="kp"&gt;true&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt; &lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="o"&gt;**&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;boolean_2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kp"&gt;false&lt;/span&gt;

&lt;span class="n"&gt;boolean_3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kp"&gt;true&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kp"&gt;true&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="kp"&gt;false&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;boolean_3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kp"&gt;true&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Project&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The mini project for this section showed you how to take an letter from a user's input and switch it to something else!&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="nb"&gt;print&lt;/span&gt; &lt;span class="s2"&gt;"Print your name:"&lt;/span&gt;
&lt;span class="n"&gt;user_input&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;gets&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;chomp&lt;/span&gt;
&lt;span class="n"&gt;user_input&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;downcase!&lt;/span&gt;

&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;user_input&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;include?&lt;/span&gt; &lt;span class="s2"&gt;"s"&lt;/span&gt;
   &lt;span class="n"&gt;user_input&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;gsub!&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sr"&gt;/s/&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"th"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"Name can not be changed :/ "&lt;/span&gt; 
&lt;span class="k"&gt;end&lt;/span&gt;

&lt;span class="nb"&gt;puts&lt;/span&gt; &lt;span class="s2"&gt;"Your name is &lt;/span&gt;&lt;span class="si"&gt;#{&lt;/span&gt;&lt;span class="n"&gt;user_input&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;!"&lt;/span&gt;

&lt;span class="c1"&gt;#Salvador =&amp;gt; Your name is thalvador!&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>Ruby Basics - Intro</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Thu, 20 Jul 2023 03:59:01 +0000</pubDate>
      <link>https://dev.to/salcasta/ruby-basics-intro-2dek</link>
      <guid>https://dev.to/salcasta/ruby-basics-intro-2dek</guid>
      <description>&lt;p&gt;Let us recap the basics of Ruby in Codecademy!&lt;/p&gt;

&lt;p&gt;Ruby takes strings, booleans, and numbers as variables&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;my_num&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;  &lt;span class="mi"&gt;25&lt;/span&gt;  
&lt;span class="n"&gt;my_boolean&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kp"&gt;true&lt;/span&gt;   
&lt;span class="n"&gt;my_string&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"Ruby"&lt;/span&gt;  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Variables are declared as with a variable name and equal sign&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;my_num&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ruby allows for all mathematical symbols ...&lt;br&gt;
Addition (+)&lt;br&gt;
Subtraction (-)&lt;br&gt;
Multiplication (&lt;em&gt;)&lt;br&gt;
Division (/)&lt;br&gt;
Exponentiation (&lt;/em&gt;*)&lt;br&gt;
Modulo (%) =&amp;gt; remainder &lt;/p&gt;

&lt;p&gt;Puts and Print &lt;/p&gt;

&lt;p&gt;Print - prints it to the screen&lt;br&gt;
puts - adds a blank line and then puts the variable &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Popular Methods&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;.length =&amp;gt; number of characters in a string&lt;br&gt;
.reverse&lt;br&gt;
.upcase&lt;br&gt;
.downcase&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to comment&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;single&lt;/span&gt; &lt;span class="n"&gt;line&lt;/span&gt; &lt;span class="n"&gt;comment&lt;/span&gt; &lt;span class="n"&gt;uses&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="c1"&gt;#&lt;/span&gt;

&lt;span class="n"&gt;multi&lt;/span&gt; &lt;span class="n"&gt;line&lt;/span&gt; &lt;span class="n"&gt;comment&lt;/span&gt; &lt;span class="o"&gt;...&lt;/span&gt;

&lt;span class="c1"&gt;#&lt;/span&gt;
&lt;span class="cm"&gt;=begin
hello
this 
is
just
comments
=end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Multiple words in a variable name is ok as long as you use an underscore in between words&lt;/p&gt;

&lt;p&gt;this_is_my_long_variable = &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Getting an input from the user&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Ask a question and then set a prompt using gets.chomp&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="nb"&gt;print&lt;/span&gt; &lt;span class="s2"&gt;"What is your last name? "&lt;/span&gt;
&lt;span class="n"&gt;last_name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;gets&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;chomp&lt;/span&gt;

&lt;span class="c1"&gt;#Use methods to get the the user input in the correct format &lt;/span&gt;

&lt;span class="n"&gt;ex&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt; &lt;span class="nf"&gt;last_name&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;capitalize!&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>My Link Tree</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Wed, 19 Jul 2023 00:38:28 +0000</pubDate>
      <link>https://dev.to/salcasta/my-link-tree-34jo</link>
      <guid>https://dev.to/salcasta/my-link-tree-34jo</guid>
      <description>&lt;p&gt;&lt;a href="https://salcasta.github.io/"&gt;My Link Tree&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I just completed my link tree assignment and I am very happy with it. I decided to dedicate my link tree to my favorite free resources that I have used on my journey to becoming a software developer. A mini roadmap for beginners wondering where to start. So, here are my thoughts on every link.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CodePen&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;My go to place when I want to start on a rough draft for a project. It allows you to add HTML, CSS, and JavaScript on one screen. Everything is stored in your account so, it can be accessed anywhere.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Glitch&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Very similar to CodePen, it has a more traditional interface for an IDE. It handles public assets a little better than CodePen. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Codespaces&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Just started using Codespaces with Tech Prep and I am loving it. An exact clone of the Visual Studio Code text editor, but runs in the browser already linked to your Github. Had I known about Codespaces earlier in my journey I for sure would have used it from the beginning.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Codecademy&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A lot of free tutorials available with multiple 50% off deals throughout the year to unlock the premium tutorials. Great for beginners, but don't get to comfortable as it tends to hold your hand a little too much in my opinion. Overall still a great place to start.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;W3Schools&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A more direct approach than Codecademy, a great quick way to learn while on the go with a few questions at the end of each section to make sure you understand the material.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scrimba&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A new addition in my journey, Scrimba does a better job than Codecademy in teaching the basics. A great place to learn HTML/CSS as well as React. Not as many tutorials as Codecademy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;JavaScript.info&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A one stop shop for learning JavaScript. No videos and all text, it can be a little tough to understand concepts, but it offers plenty of examples and explanations. A truly great resource for free!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;JavaScript30&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A free course with signup, it offers a project a day for 30 days. Although the projects can be difficult, I strongly recommend learners to still go through the solution video and code along. You will be exposed to all the great things you can do with the power of JavaScript.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Codewars&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;A great place to practice your JavaScript on a daily basis. This will get you ready for interview problems.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tailwindcss&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;My favorite framework for CSS, it handles all styling with classes in your HTML. All class names are straight forward and easy to read.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;React&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;They recently updated their free tutorial on their website. A great place to get your feet wet when it's time to learn a JavaScript framework.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;100devs&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The absolute best place to start when learning how to code. An amazing instructor who truly cares if you are understanding the material. It is essential a free bootcamp without the $15,000 price tag. A very active Discord with people willing and able to help you at every stage of your journey. All the classes are on Youtube so go at your own pace. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;freeCodeCamp &amp;amp; The Odin Project&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Just as good as 100devs, but without video tutorials and powerful encouragement speeches the instructor provides. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Final Thoughts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you know someone who wants to become a developer, please feel free to use my link tree as a guide. Less time researching on places to start and more time learning!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://salcasta.github.io/"&gt;My Link Tree&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Enjoy your progress</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Tue, 18 Jul 2023 01:53:21 +0000</pubDate>
      <link>https://dev.to/salcasta/enjoy-your-progress-4kb</link>
      <guid>https://dev.to/salcasta/enjoy-your-progress-4kb</guid>
      <description>&lt;p&gt;Learning to become a developer is a long road and a road that does not have an end. Developers are always learning something new whether it be a new language, framework or software. I can confidently say that most beginners start off feeling good and then quickly get checked into reality and this pattern continues for months even years. &lt;/p&gt;

&lt;p&gt;I completed Raghu's HTML Review today and had no problems while answering the review questions. Once I got to the Flex Froggy game I remembered playing that game almost a year ago and even though I did get to level 24 I had to trial and error my way there. Once on level 24 I tried, but had no idea how to complete it so I looked up the answer. This time around I understood everything and without errors completed levels 1-23. Level 24 was once again a challenge, but I was able to to have everything in the correct place except reversed. I tried and tried to get it to work, but decided to look at the answer. Without spoiling it for other students I forgot about flex wrap-reverse!&lt;/p&gt;

&lt;p&gt;Still a major improvement from my first time taking on Flex Froggy. Even though this is nothing I can boast about in an interview or put on my resume. It feels good to see something I had trouble with (html, css, flex froggy) and have it come to me with ease. These small victories are what keep me motivated to keep pushing forward. &lt;/p&gt;

&lt;p&gt;So, congrats on your improvements and enjoy your progress!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Using a Pomodoro Timer</title>
      <dc:creator>salcasta</dc:creator>
      <pubDate>Sat, 15 Jul 2023 18:55:51 +0000</pubDate>
      <link>https://dev.to/salcasta/using-a-pomodoro-timer-35d7</link>
      <guid>https://dev.to/salcasta/using-a-pomodoro-timer-35d7</guid>
      <description>&lt;p&gt;Didn't have much time today to dive into the curriculum, so I decided to write on something I learned while taking the free 100devs bootcamp online. There I was introduced to the Pomodoro Timer. A very useful tool to keep your mind fresh while learning or studying for anything in life.&lt;/p&gt;

&lt;p&gt;It is simple, you set a timer for 25 min and once the timer goes off you take a 5 minute break. Don't look at your screen anymore or even your cell phone. Walk around, talk to someone anything to give your mind a break.  &lt;/p&gt;

&lt;p&gt;Doing so, allows the brain to soak in all the information you just learned/reviewed. Studies have been conducted that people who utilize a Pomodoro timer retain information better than people who do not take breaks. &lt;/p&gt;

&lt;p&gt;As an added bonus, utilizing a Pomodoro timer gives your eyes a much needed break especially if you are learning on a computer. Eye strain is a real thing and can inhibit your learning if you try to just 'get through' the material as fast as possible. &lt;/p&gt;

&lt;p&gt;So, say goodbye to long uninterrupted study sessions and give Pomodoro a try. I guarantee you will see better results in a short amount of time.&lt;/p&gt;

&lt;p&gt;Here is a free Pomodoro timer that I use...&lt;/p&gt;

&lt;p&gt;&lt;a href="https://pomofocus.io/"&gt;Pomodoro Timer&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Good luck and happy learning!&lt;/p&gt;

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