<?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: Unhexed.dev</title>
    <description>The latest articles on DEV Community by Unhexed.dev (@unhexeddev).</description>
    <link>https://dev.to/unhexeddev</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%2F282477%2Fb186f95e-50d6-42be-aa8a-2d53e546295f.jpg</url>
      <title>DEV Community: Unhexed.dev</title>
      <link>https://dev.to/unhexeddev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/unhexeddev"/>
    <language>en</language>
    <item>
      <title>Programmer Burnout is real and it is important to know how to overcome it</title>
      <dc:creator>Unhexed.dev</dc:creator>
      <pubDate>Mon, 01 Jun 2020 13:20:45 +0000</pubDate>
      <link>https://dev.to/unhexeddev/programmer-burnout-is-real-and-it-is-important-to-know-how-to-overcome-it-22jh</link>
      <guid>https://dev.to/unhexeddev/programmer-burnout-is-real-and-it-is-important-to-know-how-to-overcome-it-22jh</guid>
      <description>&lt;p&gt;Programming is fun, &lt;em&gt;genuinely&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;You get to build things and get instant gratification if it works as desired. There is so much joy in creating something. &lt;/p&gt;

&lt;p&gt;But the process of creating something can be exhausting too. &lt;br&gt;
There will be phases when you're stuck at a problem for way too long. Times, where you just want to leave everything and go away. &lt;br&gt;
You'll experience burnout.&lt;/p&gt;

&lt;p&gt;It leads to a loss of time. It leads to a loss in productivity. And more importantly, it leads to an overall decline in mental health. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F16cnjm9cfmy37ywxu8gw.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F16cnjm9cfmy37ywxu8gw.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I've been programming for the past 4 years and I have had a fair share of these burnouts. &lt;br&gt;
Most of them last less than a few hours, but a few of them demotivate me from doing anything for weeks at times. &lt;br&gt;
Thankfully, over time I have also learned how to get over them easily and to even avoid them.&lt;/p&gt;

&lt;p&gt;There are thousands of reasons which lead to burnout. &lt;/p&gt;

&lt;p&gt;All of us are different and our problems are different. Some more obvious than the other. What works for me, may not work for you. &lt;br&gt;
It happens rarely, but once it goes over the tipping point, it's hard to get back to work. &lt;/p&gt;

&lt;p&gt;Everything seems exceptionally frustrating. Programming begins to look like a chore.&lt;/p&gt;

&lt;p&gt;The list of causes is endless. But there are always a few sure-shot ways to tackle it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solution 1&lt;/strong&gt;: &lt;strong&gt;Schedule and Planning&lt;/strong&gt; ⌛&lt;br&gt;
I don't think I need to restate the obvious. Keeping a schedule is the best way to boost productivity. But there are good ways to do it and some not so good ways. &lt;br&gt;
Rigid schedules sound great in theory, but they hardly ever work. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fhon7kuqim72w46w67nf3.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fhon7kuqim72w46w67nf3.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As a rule of thumb, I make sure to put 3 breaks of 1-2 hours in my day planner. This has led to a better inflow of thoughts and has saved me a lot of time. &lt;br&gt;
I've also realized that flexible schedules have resulted in less amounts of stress. If you're working alone, try not to set unrealistic deadlines for yourself. &lt;br&gt;
Pushing your limits is okay, but &lt;em&gt;overdoing it is not&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solution 2: Learn to focus. Other things can wait.&lt;/strong&gt; 🎯&lt;/p&gt;

&lt;p&gt;Often at times, the real cause of burnout is our lack of concentration. This will resonate especially well to those who have ADHD. &lt;/p&gt;

&lt;p&gt;You're scrolling through Github. You come across a repository and all of a sudden, you have an amazing idea for a side-project 🤑. I get it. We've all been there. &lt;br&gt;
Side-projects get allow you to put your creative hat on, but all this comes at the expense of foregoing your deadlines at work and personally, was one of my worst habits. &lt;/p&gt;

&lt;p&gt;I still try to fight the urge every now and then, but with better schedule management, I can now give extra time to these ideas.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solution 3: Keep a check on your health&lt;/strong&gt; 🏃‍♀️🍎&lt;/p&gt;

&lt;p&gt;Again a no brainer, but it was the most difficult thing on this list for me to keep up with. Being a programmer, you're constantly putting pressure on your mind. &lt;/p&gt;

&lt;p&gt;You have a lot of pending tasks at hand, but so little time to complete. At this point, the brain too needs some extra energy to cope up with your needs. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fm8l5g7x9vp3h4jurkkkw.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fm8l5g7x9vp3h4jurkkkw.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Exercising is a great way to get some more oxygen to the brain. &lt;br&gt;
There are tonnes of things you could do. Given the recent COVID situation, most of us are at home.&lt;br&gt;
But you don't need a lot of time and space in your house to do it. &lt;/p&gt;

&lt;p&gt;Pick a time, preferably in the morning 🌞, and then exercise for 5 mins a day. Initially, you'll find it very tiring. But slowly, as your body adjusts to it, you'll start feeling more energetic. You can increase the time. It is an amazing booster as it helps a lot in staying fresh throughout the day.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solution 4: Knowing when to back off&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Managing your schedule and meeting your deadlines is important, but also knowing when to walk away from your desk for some time.&lt;/p&gt;

&lt;p&gt;Spending long hours in front of a computer reading Github issues and StackOverflow threads is not the solution. It's important to know when to back off and take a break. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F2ag8i0hx5cpo8qkcz8hw.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F2ag8i0hx5cpo8qkcz8hw.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Take a walk, scroll through Reddit or listen to some music. Just do anything to take your mind off of work. &lt;/p&gt;

&lt;p&gt;Personally, taking a small walk helps a lot. It gets my mind juices flowing and I come to the desk with better approaches to solve my problems. &lt;br&gt;
Developing a hobby is also a great way to take your mind off of work.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solution 5: Get some guidance&lt;/strong&gt; 🤝&lt;/p&gt;

&lt;p&gt;The programming world is filled with tutorials to learn almost any technology. That only helps when you're just starting out. When you want to work on more serious products, the problems can easily escalate.&lt;/p&gt;

&lt;p&gt;Learning to ask for help at the right time will save you hours or potentially even days of frustration.&lt;br&gt;
If you're working under someone, your co-workers and manager are your best bet.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fazukmwkx0c2pzrtcnvu6.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fazukmwkx0c2pzrtcnvu6.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is why it is equally important to have a healthy relationship with the ones you work. If the work you do is isolating and you rarely collaborate with others, you are extremely likely to suffer burnout.&lt;/p&gt;

&lt;p&gt;If you're working alone, like most folks, a small community of people you know helps a lot! I am a part of multiple channels on Discord/Slack, where I can ask for help. I don't know them personally, but they help me and I help them when either of us are really stuck.&lt;/p&gt;

&lt;p&gt;I hope these tips will help you detect burnout and get out of it before it takes a toll on you. 🙆‍♀️&lt;/p&gt;

&lt;p&gt;This article is the beginning of a series &lt;strong&gt;&lt;code&gt;Notes for a Junior Developer&lt;/code&gt;&lt;/strong&gt; that I'm writing. I'll be posting future updates to this series on my &lt;a href="https://twitter.com/karansinghgit" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt;. Also, if you feel like you want to talk about anything, just drop me a message. My DM's are always open for anyone looking for any help :)&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>mentalhealth</category>
      <category>motivation</category>
    </item>
    <item>
      <title>How does the DEV feed algorithm work?</title>
      <dc:creator>Unhexed.dev</dc:creator>
      <pubDate>Sun, 29 Dec 2019 07:02:40 +0000</pubDate>
      <link>https://dev.to/unhexeddev/how-does-the-dev-feed-algorithm-work-30fg</link>
      <guid>https://dev.to/unhexeddev/how-does-the-dev-feed-algorithm-work-30fg</guid>
      <description>&lt;p&gt;I cannot understand how the dev algorithm ranks the posts. &lt;br&gt;
I created an article yesterday, but even when I look for it under the tags I specified I cannot find the post.&lt;/p&gt;

&lt;p&gt;Here is the &lt;a href="https://dev.to/karansinghgit/react-for-absolute-noobs-a-7-day-guide-4hn0"&gt;post&lt;/a&gt;&lt;br&gt;
If I look under #react or #javascript, I cannot find it.&lt;/p&gt;

&lt;p&gt;I also haven't even come across my post once on my main feed, while articles which are just 20-30mins old have started to appear.&lt;/p&gt;

&lt;p&gt;What's the secret? &lt;/p&gt;

</description>
    </item>
    <item>
      <title>React for Absolute Noobs: A 7 day guide</title>
      <dc:creator>Unhexed.dev</dc:creator>
      <pubDate>Sat, 28 Dec 2019 19:50:25 +0000</pubDate>
      <link>https://dev.to/unhexeddev/react-for-absolute-noobs-a-7-day-guide-4hn0</link>
      <guid>https://dev.to/unhexeddev/react-for-absolute-noobs-a-7-day-guide-4hn0</guid>
      <description>&lt;p&gt;I've been planning to learn react for a while, but I had been pushing it back for way too long. 😫&lt;/p&gt;

&lt;p&gt;So I've decided that over the course of the next &lt;b&gt;7 days&lt;/b&gt;, I will:&lt;br&gt;
a) Learn React at an Intermediate level&lt;br&gt;
b) Document my learning, and hopefully encourage others who have been procrastinating, to learn along with me.&lt;/p&gt;

&lt;p&gt;I plan to write about whatever I learn and try to explain it as lucidly as possible. Hopefully, if everything goes as planned, I will have 7 articles by the end of this week. &lt;/p&gt;
&lt;h4&gt;
  
  
  But first, what encouraged me to learn React?
&lt;/h4&gt;

&lt;p&gt;a) It is &lt;b&gt;scalable&lt;/b&gt;. Apps like Instagram and Netflix are built on top of React.&lt;br&gt;
b) It has a &lt;b&gt;huge demand&lt;/b&gt; in the job market. Everyone wants to hire React devs. Also, Angular development is going at a much slower pace than a couple of years ago.&lt;br&gt;
c) I've read that it makes it easier to &lt;b&gt;design highly complex dynamic apps&lt;/b&gt; which would usually be a pain in the butt(Sorry, Captain!) with normal HTML+JS. There's no way to know unless I dive deep into it 😉&lt;/p&gt;

&lt;p&gt;Let's look at the basics!&lt;/p&gt;
&lt;h3&gt;
  
  
  Components
&lt;/h3&gt;

&lt;p&gt;Components are the heart of React. Every element that you see in a web page can be represented as a component in React. &lt;br&gt;
Look at this screenshot of the DEV home page.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HbZA4FOP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/0iwm8dbn59jfn57sg8g6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HbZA4FOP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/0iwm8dbn59jfn57sg8g6.png" alt="Components" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Each of the posts is a component. The title of the post and the description, the icons inside the post component -- each a component. &lt;br&gt;
The search bar is a component, the icons on the top right are all components. You get the idea!&lt;/p&gt;
&lt;h3&gt;
  
  
  State
&lt;/h3&gt;

&lt;p&gt;State in React refers to the data. Talking about a component's state means simply talking about the data which is local to the state. The state may also refer to the UI-state. &lt;/p&gt;
&lt;h3&gt;
  
  
  Virtual DOM
&lt;/h3&gt;

&lt;p&gt;If you've read some HTML/JS fundamentals, you've heard about DOM. It refers to the Document Object Model, which is essentially a tree like representation of HTML where nodes represent HTML elements. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--EH7L_AQr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/2lvabesp88yeqa26ktvb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--EH7L_AQr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/2lvabesp88yeqa26ktvb.png" alt="VDOM" width="375" height="134"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;React has something known as a virtual DOM. Now, whenever we make changes to a component, instead of rebuilding the entire virtual DOM, React just does a &lt;code&gt;diff&lt;/code&gt; and only updates the components(and it's child components) where changes were made. This property is what lends to React the speed it has even while being complex.&lt;/p&gt;
&lt;h2&gt;
  
  
  Hello World! 👩‍💻
&lt;/h2&gt;

&lt;p&gt;With a few basics out of the way, let's make a starter application using React. React does have a CLI, but since most people are familiar with script imports, we will import React from a CDN.&lt;br&gt;
We'll look at how to do the same thing with the React CLI, a little later in this series.&lt;/p&gt;

&lt;p&gt;For now, create a file &lt;code&gt;index.html&lt;/code&gt; and open it in your favorite code editor. &lt;br&gt;
I run things on VSCode and if you use it too, install a couple of extensions:&lt;br&gt;
a) &lt;a href="https://marketplace.visualstudio.com/items?itemName=dsznajder.es7-react-js-snippets"&gt;React Snippets&lt;/a&gt; -- for syntax highlighting, auto-complete and a lot more&lt;br&gt;
b) &lt;a href="https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer"&gt;Live Server&lt;/a&gt; -- to spin up a local server which will aid in fast development&lt;/p&gt;

&lt;p&gt;I'm going to show you the code for now. Don't worry if some things don't make sense, I'll explain everything in a bit.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;title&amp;gt;&lt;/span&gt;Time to React&lt;span class="nt"&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;crossorigin&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/react@16/umd/react.production.min.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;crossorigin&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/@babel/standalone/babel.min.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;   
    &lt;span class="nt"&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"app"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text/babel"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nx"&gt;App&lt;/span&gt; &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Component&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="nx"&gt;render&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
                        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;div&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
                            &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;h1&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;Hi&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;I&lt;/span&gt; &lt;span class="nx"&gt;am&lt;/span&gt; &lt;span class="nx"&gt;Karan&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt; &lt;span class="nx"&gt;is&lt;/span&gt; &lt;span class="nx"&gt;ezpz&lt;/span&gt;&lt;span class="o"&gt;!&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/h1&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/div&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                    &lt;span class="p"&gt;)&lt;/span&gt;
                &lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="nx"&gt;ReactDOM&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;render&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;App&lt;/span&gt;&lt;span class="o"&gt;/&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;app&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Apart from the familiar HTML syntax, here are a few things to learn from this:🕵️‍♂️🕵️‍♂️&lt;/p&gt;

&lt;p&gt;a) The first 2 script imports are for the core react library and the react-dom library(which handles the virtual DOM)&lt;/p&gt;

&lt;p&gt;b) To declare a React Component, we need to instantiate a class which extends &lt;code&gt;React.Component&lt;/code&gt;. This class must have a &lt;code&gt;render()&lt;/code&gt; function, and the render function &lt;b&gt;must return exactly one element&lt;/b&gt; (which is the &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; in this case).&lt;/p&gt;

&lt;p&gt;c) But wait a second, how tf are we writing HTML inside the &lt;code&gt;&amp;lt;script&amp;gt;&lt;/code&gt; tag? Well, it's not HTML, but a look-alike called &lt;b&gt;JSX&lt;/b&gt;. &lt;b&gt;JSX&lt;/b&gt; allows us to write familiar HTML-like code inside JavaScript. &lt;/p&gt;

&lt;p&gt;d) The browser doesn't recognize JSX by default. This is the reason why we need the third import-- for &lt;b&gt;Babel&lt;/b&gt;. &lt;b&gt;Babel&lt;/b&gt; is a transpiler which basically converts the JSX into something the browser would understand. Also, another modification to work with Babel is that the script type has to be changed to &lt;code&gt;'text/babel'&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;e) Finally, we need to tell the React DOM to render the function to the webpage. This &lt;code&gt;render()&lt;/code&gt; function is not the same as the one in b). They are both from separate libraries, react and react-dom. This one takes 2 arguments, &lt;b&gt;what to render&lt;/b&gt; and then &lt;b&gt;where to render&lt;/b&gt;. &lt;/p&gt;

&lt;p&gt;We reference the class &lt;code&gt;App&lt;/code&gt; we created by using the &lt;b&gt;&lt;code&gt;&amp;lt;App /&amp;gt;&lt;/code&gt;&lt;/b&gt; self-closing tag. If our component was called &lt;code&gt;SomeComponentName&lt;/code&gt;, we would use &lt;b&gt;&lt;code&gt;&amp;lt;SomeComponentName \&amp;gt;&lt;/code&gt;&lt;/b&gt;. The second argument tells it, that we want to render it to the div tag with &lt;code&gt;id=app&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;To see if this works, write down the snippet above in your editor and if you're using VSCode, you can right click on the code screen and click on &lt;b&gt;Open with Live Server&lt;/b&gt; if you have the &lt;a href="https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer"&gt;Live Server&lt;/a&gt;  extension installed. You should see the following.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iz58GkAc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/ry9rh213v5uts0p5cvxp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iz58GkAc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/ry9rh213v5uts0p5cvxp.png" alt="Alt Text" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hopefully you got the same output.&lt;/p&gt;

&lt;h3&gt;
  
  
  Adding State
&lt;/h3&gt;

&lt;p&gt;Adding state to our component is as simple as creating an object named state inside our class.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;state&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Karan&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Once that is done, we need to be able to access the state from within JSX. Now, to use JavaScript statements inside JSX we need to enclose them in braces. &lt;br&gt;
Something like, {this.state.name}&lt;/p&gt;

&lt;p&gt;This is how the entire code snippet looks like now:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;title&amp;gt;&lt;/span&gt;Time to React&lt;span class="nt"&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;crossorigin&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/react@16/umd/react.production.min.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;crossorigin&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/@babel/standalone/babel.min.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;   
    &lt;span class="nt"&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"app"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text/babel"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nx"&gt;App&lt;/span&gt; &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Component&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="nx"&gt;state&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                    &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Karan&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="p"&gt;}&lt;/span&gt;
                &lt;span class="nx"&gt;render&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
                        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;div&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
                            &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;h1&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;My&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="nx"&gt;is&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;state&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;}.&lt;/span&gt; &lt;span class="nx"&gt;I&lt;/span&gt; &lt;span class="nx"&gt;just&lt;/span&gt; &lt;span class="nx"&gt;made&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;react&lt;/span&gt; &lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="o"&gt;!&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/h1&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                            &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;h1&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;I&lt;/span&gt; &lt;span class="nx"&gt;can&lt;/span&gt; &lt;span class="nx"&gt;even&lt;/span&gt; &lt;span class="nx"&gt;execute&lt;/span&gt; &lt;span class="nx"&gt;normal&lt;/span&gt; &lt;span class="nx"&gt;JS&lt;/span&gt; &lt;span class="nx"&gt;stuff&lt;/span&gt; &lt;span class="nx"&gt;inside&lt;/span&gt; &lt;span class="nx"&gt;braces&lt;/span&gt; &lt;span class="nx"&gt;like&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;ceil&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;9.3&lt;/span&gt;&lt;span class="p"&gt;)}&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/h1&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/div&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                    &lt;span class="p"&gt;)&lt;/span&gt;
                &lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="nx"&gt;ReactDOM&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;render&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;App&lt;/span&gt;&lt;span class="o"&gt;/&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;app&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Load the page up in a browser to see how it looks.&lt;/p&gt;

&lt;h3&gt;
  
  
  Nested Components
&lt;/h3&gt;

&lt;p&gt;Nested Components are exactly what the name implies. They are children nested inside parent components. They help us design more complex components. To create and use a nested component, just declare a new Class and put it anywhere inside the parent component. &lt;/p&gt;

&lt;p&gt;In the following snippet, I created a new component named &lt;code&gt;Nested&lt;/code&gt; and put it in between the &lt;code&gt;&amp;lt;h1&amp;gt;&lt;/code&gt; tags of the &lt;code&gt;App&lt;/code&gt; component(which acts as the parent component).&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;title&amp;gt;&lt;/span&gt;Time to React&lt;span class="nt"&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;crossorigin&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/react@16/umd/react.production.min.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;crossorigin&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/@babel/standalone/babel.min.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;   
    &lt;span class="nt"&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"app"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text/babel"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nx"&gt;Nested&lt;/span&gt; &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Component&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="nx"&gt;render&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
                        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;div&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
                            &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;h6&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;I&lt;/span&gt; &lt;span class="nx"&gt;am&lt;/span&gt; &lt;span class="nx"&gt;wild&lt;/span&gt; &lt;span class="nx"&gt;nested&lt;/span&gt; &lt;span class="nx"&gt;component&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/h6&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/ div&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                    &lt;span class="p"&gt;)&lt;/span&gt;
                &lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nx"&gt;App&lt;/span&gt; &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Component&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="nx"&gt;state&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                    &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Karan&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="p"&gt;}&lt;/span&gt;
                &lt;span class="nx"&gt;render&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
                        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;div&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
                            &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;h1&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;My&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="nx"&gt;is&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;state&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;}.&lt;/span&gt; &lt;span class="nx"&gt;I&lt;/span&gt; &lt;span class="nx"&gt;just&lt;/span&gt; &lt;span class="nx"&gt;made&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="nx"&gt;react&lt;/span&gt; &lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="o"&gt;!&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/h1&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                            &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;Nested&lt;/span&gt; &lt;span class="o"&gt;/&amp;gt;&lt;/span&gt;
                            &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;h1&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;I&lt;/span&gt; &lt;span class="nx"&gt;can&lt;/span&gt; &lt;span class="nx"&gt;even&lt;/span&gt; &lt;span class="nx"&gt;execute&lt;/span&gt; &lt;span class="nx"&gt;normal&lt;/span&gt; &lt;span class="nx"&gt;JS&lt;/span&gt; &lt;span class="nx"&gt;stuff&lt;/span&gt; &lt;span class="nx"&gt;inside&lt;/span&gt; &lt;span class="nx"&gt;braces&lt;/span&gt; &lt;span class="nx"&gt;like&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;ceil&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;9.3&lt;/span&gt;&lt;span class="p"&gt;)}&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/h1&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/ div&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;                    &lt;span class="p"&gt;)&lt;/span&gt;
                &lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
            &lt;span class="nx"&gt;ReactDOM&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;render&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;App&lt;/span&gt;&lt;span class="o"&gt;/&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;app&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The page should finally look like: &lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--LmUqFy-C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/9gnoegfvkmhbvyxxmuwa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--LmUqFy-C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/9gnoegfvkmhbvyxxmuwa.png" alt="Alt Text" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;br&gt;
YES! Together, we've successfully learned the absolute basics of React. &lt;br&gt;
But wait! You thought I'd let you go without any homework? 🙅‍♀️🙅‍♀️&lt;br&gt;
Here's what you have to do:&lt;br&gt;
--&amp;gt; You have to design a Facebook post component.&lt;br&gt;
--&amp;gt; Here it is for &lt;a href="https://image.freepik.com/free-vector/facebook-mobile-post-with-flat-design_23-2147820174.jpg"&gt;reference&lt;/a&gt;&lt;br&gt;
--&amp;gt; Make sure you understand the hierarchy and design the sub-components accordingly.

&lt;p&gt;The next article will probably be up by tomorrow. &lt;br&gt;
This is my first time writing on DEV so if you liked it, please do tell me!&lt;/p&gt;

&lt;p&gt;And if you're feeling absolutely generous, follow me on &lt;a href="https://twitter.com/karansinghgit"&gt;Twitter&lt;/a&gt;!&lt;/p&gt;

&lt;p&gt;See you tomorrow 😉 &lt;/p&gt;

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