<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: JckSmith</title>
    <description>The latest articles on Forem by JckSmith (@jcksmith).</description>
    <link>https://forem.com/jcksmith</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%2F821263%2Fdd73a4f8-0b7e-4d1b-a033-73583895b972.png</url>
      <title>Forem: JckSmith</title>
      <link>https://forem.com/jcksmith</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/jcksmith"/>
    <language>en</language>
    <item>
      <title>So you Want to use auth?</title>
      <dc:creator>JckSmith</dc:creator>
      <pubDate>Fri, 22 Apr 2022 20:47:47 +0000</pubDate>
      <link>https://forem.com/jcksmith/so-you-want-to-use-auth-2on</link>
      <guid>https://forem.com/jcksmith/so-you-want-to-use-auth-2on</guid>
      <description>&lt;p&gt;So you are working on a new project, and a friend recommended that you should add auth! You have no idea what your friend is talking about, what is auth, and why should you use it?&lt;/p&gt;

&lt;p&gt;Lets start off with the basics, &lt;strong&gt;What is auth?&lt;/strong&gt;, well, authentication or auth for short, allows you to manage what info gets passed to specific users. For example, if you were creating a program to send messages to other people, you would want auth on it! &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why would I want to add authentication to my program?&lt;/strong&gt; Auth would allow you to make sure only certain people have access to info that only that person should have. If you were managing a forum, you would want to give yourself certain powers, like deleting messages or removing certain users, but you don't want to give everyone that sort of power!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How do I add authentication?&lt;/strong&gt; Authentication can be a tricky process, and that is why many people use programs such as Devise, Ommniauth, Doorkeeper, Authlogic, and clearance to name a few.&lt;/p&gt;

&lt;p&gt;While you can use these as your authentication, they may not be exactly what you are looking for, and in that case you might need to make your own from scratch!&lt;/p&gt;

&lt;p&gt;I will not go fully in detail about how to make your own Authentication from scratch, although a really useful blog that does do that can be found &lt;a href="https://stevepolito.design/blog/rails-authentication-from-scratch/"&gt;here&lt;/a&gt;. I will be going over the logic behind it. &lt;/p&gt;

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

&lt;p&gt;The model above is going over one of the approaches you can take with authentication, which is using Rails Session Cookies, lets go through the steps!&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The web app takes the username and password from a form and sends a POST request with the credentials to an API "login" endpoint. The request would look something like this:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;POST /session
Host: api.your-app.com
Content-Type: application/json

{
  "username": "jack",
  "password": "mypassword"
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;The API attempts to authenticate the user given the credentials, if it is successful, the API stashes the user's ID in the session.
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;session[:user_id] = user.id
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The simple assignment sets a cookie in the response, and in this case the cookie contains the user's unique ID.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;The session cookie is returned to the browser.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The browser then stores the cookie until it expires, and every time the app sends a request to the API, the browser automatically sends the session cookie as well. Here would be the request for a protected resource &lt;em&gt;my-info&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;GET /my-info
Host: api.your-app.com
Cookie: _session_id=kTNmUk23l0xxXyDB7rPCcEl6yVet1ahaofUJLd6DxS1XrhbPvU4gF%2B%2Bm... (This goes on for a while)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;&lt;p&gt;The API then checks the user's ID in the session cookie to identify the user making the request for &lt;em&gt;my-info&lt;/em&gt;, ensuring that only the user authorized is able to access the resource.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If the user is authorized, the response for the request is sent back to the web app, otherwise, the API would send a 401 - Unauthorized response back. &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In summary, authentication allows you to control who has access to certain information and resources, which is a must in many programs and applications. You can use certain tools to make your authentication a bit easier to make, but it is normally better to make it from scratch so you can customize it to fit exactly what you need!&lt;/p&gt;

&lt;p&gt;Links to other helpful blogs: &lt;a href="https://stevepolito.design/blog/rails-authentication-from-scratch/"&gt;Rails authentication from scratch - Steve Polito&lt;/a&gt;, and &lt;a href="https://pragmaticstudio.com/tutorials/rails-session-cookies-for-api-authentication"&gt;Using Rails Session Cookies for API Authentication - Mike Clark&lt;/a&gt;&lt;/p&gt;

</description>
      <category>rails</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>Are you getting your sleep?</title>
      <dc:creator>JckSmith</dc:creator>
      <pubDate>Fri, 08 Apr 2022 20:00:43 +0000</pubDate>
      <link>https://forem.com/jcksmith/are-you-getting-your-sleep-2mj5</link>
      <guid>https://forem.com/jcksmith/are-you-getting-your-sleep-2mj5</guid>
      <description>&lt;p&gt;When you are at work, or in class, and you are feeling a bit tired, unfocused, and yawning every couple minutes. Did you get your sleep?&lt;br&gt;
Sleep being important for your daily life is an understatement, and not getting enough sleep can cause serious detrimental effect to your mind and body.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How much sleep is enough?&lt;/strong&gt; On average, 7-9 hours of sleep is enough to be energized and ready for the next day. Enough to get all the benefits of being well rested, including increased mental and physical performance. With better problem solving and memory, why wouldn't you get your 8 hours? Well, it's not always that easy. &lt;/p&gt;

&lt;p&gt;With a busy schedule, with school, work, hobbies, and many other facets of life, you may be hard pressed to find the time to get a healthy sleep schedule. Maybe you end up staying up late into the night studying for an upcoming exam, or out partying with friends. While this is fine every once in a while, there are many times where events like these change your sleep schedule for the worse, causing you to miss out on your required sleep.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What will happen to me when I don't get my sleep?&lt;/strong&gt; There are many negative effects to not getting enough sleep, these include,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Slowed thinking&lt;/li&gt;
&lt;li&gt;Reduced attention span&lt;/li&gt;
&lt;li&gt;Worsened memory&lt;/li&gt;
&lt;li&gt;Poor decision-making&lt;/li&gt;
&lt;li&gt;Lack of energy&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Constant lack of sleep can even attribute to the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Higher risk of Cardiovascular disease&lt;/li&gt;
&lt;li&gt;Higher risk of type two diabetes&lt;/li&gt;
&lt;li&gt;Immunodeficiency&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;strong&gt;How can I avoid these?&lt;/strong&gt; The first and foremost, a healthy sleep schedule can help avoid all these symptoms, although if you have trouble sleeping there are a few things to try out.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Make sure you bedroom is quiet and dark, or you can also try some white noise&lt;/li&gt;
&lt;li&gt;Remove electronic devices out of the bedroom, and try to stay off of them right before going to bed&lt;/li&gt;
&lt;li&gt;Get some exercise, being physically active during the day can help you fall asleep more easily at night.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Getting a healthy sleep schedule is extremely important in maintaining a healthy lifestyle, and allows you to make the most of your day!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>So you Want to use Active Record?</title>
      <dc:creator>JckSmith</dc:creator>
      <pubDate>Wed, 23 Mar 2022 20:53:44 +0000</pubDate>
      <link>https://forem.com/jcksmith/so-you-want-to-use-active-record-10p9</link>
      <guid>https://forem.com/jcksmith/so-you-want-to-use-active-record-10p9</guid>
      <description>&lt;p&gt;So you are getting into ruby and you come across this "Active Record" you have no idea what it is or what it does. Luckily it's quite easy!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"What is Active Record?"&lt;/strong&gt; Well, in it's simplest term, it is an ORM (Object Relational Mapping), It can make fetching and representing data easier, while not making us write our own custom ORMs.&lt;/p&gt;

&lt;p&gt;"That's cool, but &lt;strong&gt;what is an ORM?"&lt;/strong&gt; Object Relational Mapping, AKA ORM, is a technique that connects objects of an application to tables in a relational database management system, Using this, we can store and retrieve properties and relationships of the objects without writing SQL statements directly.&lt;/p&gt;

&lt;p&gt;Active Record closely follows the standard ORM model, which is...&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tables map to classes&lt;/li&gt;
&lt;li&gt;Rows map to objects&lt;/li&gt;
&lt;li&gt;Columns map to object attributes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Lets see how we can make associations between models, Lets say you have two files, song.rb and genre.rb, they would look like so...&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Song &amp;lt; ActiveRecord::Base
end
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Genre &amp;lt; ActiveRecord::Base
end
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We can connect these models through association, which of there are three.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;one-to-one&lt;/strong&gt;- When one item has exactly one of another item&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;one-to-many&lt;/strong&gt;- When one item can be a member of many other items&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;many-to-many&lt;/strong&gt;- When multiple items are related to one or more other items&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;You can indicate these by adding the declarations to your models: has_one, has many, belongs_to, and has_and_belongs_to_many.&lt;/p&gt;

&lt;p&gt;Now lets see what relationships we should establish in the data system, and change up the code to look like...&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Song &amp;lt; ActiveRecord::Base
   belongs_to :genre
end
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Genre &amp;lt; ActiveRecord::Base
   has_many :Songs
end
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This now indicates the relationship between song and genre, we used belongs_to in song because one song can belong to a single genre, and then we used has_many in genre, because one genre can have multiple songs. Now these two models are connected by the relationship we provided them and we can then us them accordingly.&lt;/p&gt;

&lt;p&gt;In conclusion, Active Record is an ORM, which is a way to retrieve and store data in the database without writing SQLs. Active Record supports three different associations, one-to-one, one-to-many, and many-to-many and we can use those to connect the models to be used together. &lt;/p&gt;

</description>
      <category>ruby</category>
      <category>beginners</category>
    </item>
    <item>
      <title>So you want to use useRef...</title>
      <dc:creator>JckSmith</dc:creator>
      <pubDate>Fri, 11 Mar 2022 18:14:39 +0000</pubDate>
      <link>https://forem.com/jcksmith/so-you-want-to-use-useref-5b5i</link>
      <guid>https://forem.com/jcksmith/so-you-want-to-use-useref-5b5i</guid>
      <description>&lt;p&gt;So you found this fancy React hook that you want to try out! It's name is &lt;strong&gt;useRef&lt;/strong&gt;, and the only problem is... you have never used it before! What is useRef and what does it do? Why would you ever use this in your code? These questions and many more can be answered pretty easily...&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is useRef?&lt;/strong&gt; Well, useRef is a React hook that you can use to create a persisted mutable value! (AKA references or refs).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is a reference?&lt;/strong&gt; useRef accepts one argument as an initial value and returns a &lt;strong&gt;reference&lt;/strong&gt;, a reference is an object having the property &lt;strong&gt;current&lt;/strong&gt;. You can use reference.current to access the reference value, and reference.current = newValue updates the reference value.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reference has 2 rules to remember&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The value of reference is &lt;strong&gt;persisted&lt;/strong&gt; &lt;/li&gt;
&lt;li&gt;Updating a reference doesn't trigger a component re-rendering&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Let's try it out!&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { useRef } from 'react';
function LogButtonClicks() {
  const countRef = useRef(0);

  const handle = () =&amp;gt; {
    countRef.current++;
    console.log(`Clicked ${countRef.current} times`);
  };
  console.log('I rendered!');
  return &amp;lt;button onClick={handle}&amp;gt;Click me&amp;lt;/button&amp;gt;;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;const countRef = useRef(0) creates a reference countRef initialized with 0.&lt;/p&gt;

&lt;p&gt;When the button is clicked , the handle function is invoked and the reference value is incremented, the reference is then logged in console.&lt;/p&gt;

&lt;p&gt;Something to note, the message "I rendered!" only logged once at initial rendering, this shows how updating the reference value doesn't trigger component rerendering.&lt;/p&gt;

&lt;p&gt;Now you may be wondering, what's the difference between references and state?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Difference&lt;/strong&gt;&lt;br&gt;
Lets use the same code, but use useState instead to count the number of button clicks.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { useState } from 'react';
function LogButtonClicks() {
  const [count, setCount] = useState(0);

  const handle = () =&amp;gt; {
    const updatedCount = count + 1;
    console.log(`Clicked ${updatedCount} times`);
    setCount(updatedCount);
  };
  console.log('I rendered!');
  return &amp;lt;button onClick={handle}&amp;gt;Click me&amp;lt;/button&amp;gt;;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now, each time you would click, the message, "I rendered!" is logged to console, meaning that each time state is updated, the component re-renders.&lt;/p&gt;

&lt;p&gt;The main differences between references and state is that when you update a reference, it does not trigger re-rendering, while state does. And another difference would be that the reference update is &lt;strong&gt;synchronous&lt;/strong&gt; (available right away) and state is &lt;strong&gt;asynchronous&lt;/strong&gt; (available after re-rendering)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To sum it up&lt;/strong&gt;, useRef creates references, calling const reference = useRef(initialValue) returns a special object named reference, which has the property current. You can use this property to read the value with reference.current, or update with reference.current = newValue. Between re-renderings, the value of reference persists. And finally, upon updating a reference, it does not trigger component re-rendering, unlike state.&lt;/p&gt;

&lt;p&gt;While I didn't cover everything that useRef can do (Which is so much more!) I hope that this allows you to have a decent understanding on useRef!&lt;/p&gt;

&lt;p&gt;Big thanks to Dmitri Pavlutin for the code snippets, and teaching me more about useRef! &lt;a href="https://dmitripavlutin.com/react-useref-guide/"&gt;You can find his blog here!&lt;/a&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>beginners</category>
    </item>
    <item>
      <title>For loops for beginners!</title>
      <dc:creator>JckSmith</dc:creator>
      <pubDate>Fri, 25 Feb 2022 21:08:08 +0000</pubDate>
      <link>https://forem.com/jcksmith/loops-434b</link>
      <guid>https://forem.com/jcksmith/loops-434b</guid>
      <description>&lt;p&gt;So you are coding your new project, and lo and behold! You are stuck writing line after line of repetitive code. Oh how you wish this was not as tedious and for it just to be over. Luckily for you, there are loops!&lt;/p&gt;

&lt;p&gt;Loops allow programmers to write what could be dozens of lines in just a few. They preform code and repeat it as many times as necessary.&lt;/p&gt;

&lt;p&gt;For example, say we are trying to make a lot of cookies for a bake sale, but you can only make around a dozen each batch. We can use loops to repeat the steps for us so we do not need to write the many lines of repetitive code!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Syntax&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;for (initialization condition; testing condition; increment/decrement)
{
    statement(s)
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;&lt;p&gt;For loops execute step by step -&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Initialization condition: You initialize a variable to use for the for loop, which is local for the loop only.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Testing condition: Used to exit the loop. Returns a Boolean value, and it is checked before executing the loop.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Statement execution: If the Boolean returns as true, it executes the statements in the body of the loop.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Increment/Decrement: used to update the variable for next iteration&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Loop termination: When condition becomes false, the loop terminates, ending it.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Code Example&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;for (let i = 0; i &amp;lt; 5; i++) {
  nums[i] = i;
  console.log(nums[i]);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Code Output&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;0
1
2
3
4
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We can also put for loops into more for loops! This is called nesting, and every time the nested for loop completes, and terminates, the outside for loop increments or decrements once.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Code Example 2&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;for (let i = 0; i &amp;lt; 2; i++) {
  for(let j = 0; j &amp;lt;2; j++){
  nums[j] = j;
  console.log(nums[j])
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Code Output 2&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;0
1
0
1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In conclusion, for loops can be a very useful tool for every programmer that is trying to save as much time, and to be as efficient as possible!&lt;/p&gt;

&lt;p&gt;Credit to &lt;a href="https://appdividend.com/2022/01/20/java-for-loop/"&gt;Ankit Lathiya - Java For Loop: Iteration In Java – Complete Guide&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
