<?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: Ramya Chinnadurai</title>
    <description>The latest articles on Forem by Ramya Chinnadurai (@code_rams).</description>
    <link>https://forem.com/code_rams</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%2F410701%2F793d0371-a56c-4861-8c5d-ca7a5ac07265.jpg</url>
      <title>Forem: Ramya Chinnadurai</title>
      <link>https://forem.com/code_rams</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/code_rams"/>
    <language>en</language>
    <item>
      <title>CSS Pseudo-elements and CSS Pseudo-classes Demystified</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Mon, 08 Nov 2021 11:56:22 +0000</pubDate>
      <link>https://forem.com/code_rams/css-pseudo-elements-and-css-pseudo-classes-demystified-pa8</link>
      <guid>https://forem.com/code_rams/css-pseudo-elements-and-css-pseudo-classes-demystified-pa8</guid>
      <description>&lt;p&gt;Hey there, today I picked the topic CSS Pseudo-elements and Pseudo-classes, You may ask why? it's because I was little bit confused with the pseudo-elements and pseudo-class. So I just want to make clear about this today and thought to share my learnings here. &lt;/p&gt;

&lt;p&gt;Pseudo-elements and Pseudo-classes are some of the cool concepts of CSS. So learning it will surely help you when you want to design with CSS.&lt;/p&gt;




&lt;h3&gt;
  
  
  So what is Pseudo-element?
&lt;/h3&gt;

&lt;p&gt;A CSS pseudo-element is used to style specified parts of an element.&lt;/p&gt;

&lt;p&gt;For example, it can be used to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Style the first letter, or line, of an element&lt;/li&gt;
&lt;li&gt;Insert content before, or after, the content of an element&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Syntax
&lt;/h4&gt;

&lt;p&gt;The syntax of pseudo-elements:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;selector::pseudo-element {
  property: value;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  And what are Pseudo-classes?
&lt;/h3&gt;

&lt;p&gt;A pseudo-class is used to define a special state of an element.&lt;/p&gt;

&lt;p&gt;For example, it can be used to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Style an element when a user mouses over it&lt;/li&gt;
&lt;li&gt;Style visited and unvisited links differently&lt;/li&gt;
&lt;li&gt;Style an element when it gets focus&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Syntax
&lt;/h4&gt;

&lt;p&gt;The syntax of pseudo-classes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;selector:pseudo-class {
  property: value;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  Can you find the difference in syntax?
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Notice the double colon notation - ::first-line versus :first-line&lt;/p&gt;

&lt;p&gt;The single-colon notation for pseudo-classes and double-colon notation used for pseudo-elements in CSS3. &lt;/p&gt;

&lt;p&gt;This was an attempt from W3C to distinguish between pseudo-classes and pseudo-elements.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h3&gt;
  
  
  Examples of CSS Pseudo Elements
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;tr&gt;
&lt;td&gt;
Selector
&lt;/td&gt;
&lt;td&gt;
Example
&lt;/td&gt;
&lt;td&gt;
Description
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
::after
&lt;/td&gt;
&lt;td&gt;
p::after
&lt;/td&gt;
&lt;td&gt;
Insert something after the content of each

 ```&lt;p&gt;```

 element
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
::before
&lt;/td&gt;
&lt;td&gt;
p::before
&lt;/td&gt;
&lt;td&gt;
Insert something before the content of each

 ```&lt;p&gt;```

 element
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
::first-letter
&lt;/td&gt;
&lt;td&gt;
p::first-letter
&lt;/td&gt;
&lt;td&gt;
Selects the first letter of each

 ```&lt;p&gt;```

 element
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
::first-line
&lt;/td&gt;
&lt;td&gt;
p::first-line
&lt;/td&gt;
&lt;td&gt;
Selects the first line of each

 ```&lt;p&gt;```

 element
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
::marker
&lt;/td&gt;
&lt;td&gt;
::marker
&lt;/td&gt;
&lt;td&gt;
Selects the markers of list items
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
::selection
&lt;/td&gt;
&lt;td&gt;
p::selection
&lt;/td&gt;
&lt;td&gt;
Selects the portion of an element that is selected by a user
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;&lt;/div&gt;




&lt;h3&gt;
  
  
  Examples of CSS Pseudo Classes
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;tr&gt;
&lt;td&gt;
Selector
&lt;/td&gt;
&lt;td&gt;
Example
&lt;/td&gt;
&lt;td&gt;
Example description
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:active
&lt;/td&gt;
&lt;td&gt;
a:active
&lt;/td&gt;
&lt;td&gt;
Selects the active link
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:checked
&lt;/td&gt;
&lt;td&gt;
input:checked
&lt;/td&gt;
&lt;td&gt;
Selects every checked

 ``````

 element
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:disabled
&lt;/td&gt;
&lt;td&gt;
input:disabled
&lt;/td&gt;
&lt;td&gt;
Selects every disabled

 ``````

 element
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:empty
&lt;/td&gt;
&lt;td&gt;
p:empty
&lt;/td&gt;
&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 element that has no children
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:enabled
&lt;/td&gt;
&lt;td&gt;
input:enabled
&lt;/td&gt;
&lt;td&gt;
Selects every enabled

 ``````

 element
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:first-child
&lt;/td&gt;
&lt;td&gt;
p:first-child
&lt;/td&gt;
&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 elements that is the first child of its parent
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:first-of-type
&lt;/td&gt;
&lt;td&gt;
p:first-of-type
&lt;/td&gt;
&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 element that is the first

 ```&lt;/p&gt;
&lt;p&gt;```

 element of its parent
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:focus
&lt;/td&gt;
&lt;td&gt;
input:focus 
&lt;/td&gt;
&lt;td&gt;
Selects the

 ``````

 element that has focus
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:hover
&lt;/td&gt;
&lt;td&gt;
a:hover 
&lt;/td&gt;
&lt;td&gt;
Selects links on mouse over
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:in-range   
&lt;/td&gt;
&lt;td&gt;
input:in-range  
&lt;/td&gt;
&lt;td&gt;
Selects

 ``````

 elements with a value within a specified range
&lt;/td&gt;
&lt;/tr&gt;


&lt;tr&gt;
&lt;td&gt;
:invalid    
&lt;/td&gt;
&lt;td&gt;
input:invalid   
&lt;/td&gt;
&lt;td&gt;
Selects all

 ``````

 elements with an invalid value
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:lang(language) 
&lt;/td&gt;
&lt;td&gt;
p:lang(it)  
&lt;/td&gt;
&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 element with a lang attribute value starting with "it"
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:last-child 
&lt;/td&gt;
&lt;td&gt;
p:last-child    
&lt;/td&gt;
&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 elements that is the last child of its parent
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:last-of-type   
&lt;/td&gt;
&lt;td&gt;
p:last-of-type  
&lt;/td&gt;
&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 element that is the last

 ```&lt;/p&gt;
&lt;p&gt;```

 element of its parent
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:link
&lt;/td&gt;
&lt;td&gt;
a:link  
&lt;/td&gt;
&lt;td&gt;
Selects all unvisited links
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:not(selector)
&lt;/td&gt;
&lt;td&gt;
    :not(p)
&lt;/td&gt;
&lt;td&gt;
    Selects every element that is not a

 ```&lt;p&gt;```

 element
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:nth-child(n)   
&lt;/td&gt;
&lt;td&gt;
p:nth-child(2)
&lt;/td&gt;
&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 element that is the second child of its parent
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:nth-last-child(n)  
&lt;/td&gt;
&lt;td&gt;
p:nth-last-child(2)
&lt;/td&gt;
&lt;td&gt;
    Selects every

 ```&lt;p&gt;```

 element that is the second child of its parent, counting from the last child
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;


&lt;tr&gt;
&lt;td&gt;
:nth-last-of-type(n)    
&lt;/td&gt;
&lt;td&gt;
p:nth-last-of-type(2)   
&lt;/td&gt;
&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 element that is the second

 ```&lt;/p&gt;
&lt;p&gt;```

 element of its parent, counting from the last child
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:nth-of-type(n) 
&lt;/td&gt;
&lt;td&gt;
p:nth-of-type(2)    
&lt;/td&gt;
&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 element that is the second

 ```&lt;/p&gt;
&lt;p&gt;```

 element of its parent
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:only-of-type
&lt;/td&gt;
&lt;td&gt;
    p:only-of-type  
&lt;/td&gt;

&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 element that is the only

 ```&lt;/p&gt;
&lt;p&gt;```

 element of its parent
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:only-child 
&lt;/td&gt;
&lt;td&gt;
    p:only-child    
&lt;/td&gt;

&lt;td&gt;
Selects every

 ```&lt;p&gt;```

 element that is the only child of its parent
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;


&lt;tr&gt;
&lt;td&gt;
:optional   
&lt;/td&gt;
&lt;td&gt;
input:optional  
&lt;/td&gt;

&lt;td&gt;
Selects

 ``````

 elements with no "required" attribute
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:out-of-range   
&lt;/td&gt;
&lt;td&gt;
input:out-of-range  
&lt;/td&gt;

&lt;td&gt;
Selects

 ``````

 elements with a value outside a specified range
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:read-only  
&lt;/td&gt;
&lt;td&gt;
input:read-only 
&lt;/td&gt;

&lt;td&gt;
Selects

 ``````

 elements with a "readonly" attribute specified
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:read-write 
&lt;/td&gt;
&lt;td&gt;
input:read-write
&lt;/td&gt;

&lt;td&gt;
    Selects

 ``````

 elements with no "readonly" attribute
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:required
&lt;/td&gt;
&lt;td&gt;
    input:required
&lt;/td&gt;

&lt;td&gt;
        Selects

 ``````

 elements with a "required" attribute specified
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:root   
&lt;/td&gt;
&lt;td&gt;
    root    
&lt;/td&gt;

&lt;td&gt;
    Selects the document's root element
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:target 
&lt;/td&gt;
&lt;td&gt;
#news:target    
&lt;/td&gt;

&lt;td&gt;
Selects the current active #news element (clicked on a URL containing that anchor name)
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:valid  
&lt;/td&gt;
&lt;td&gt;
input:valid 
&lt;/td&gt;

&lt;td&gt;
Selects all

 ``````

 elements with a valid value    
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;
:visited    
&lt;/td&gt;
&lt;td&gt;
a:visited   
&lt;/td&gt;

&lt;td&gt;
Selects all visited links
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;&lt;/div&gt;




&lt;h3&gt;
  
  
  References
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.com/css/css_pseudo_elements.asp"&gt;https://www.w3schools.com/css/css_pseudo_elements.asp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.com/css/css_pseudo_classes.asp"&gt;https://www.w3schools.com/css/css_pseudo_classes.asp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/Selectors/Pseudo-classes_and_pseudo-elements"&gt;https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/Selectors/Pseudo-classes_and_pseudo-elements&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;Hope you get an idea about pseudo-elements and pseudo-classes. Thanks for taking your time and reading this article. This article was originally published in my &lt;a href="https://ramyachinnadurai.in/css-pseudo-elements-and-css-pseudo-classes-demystified"&gt;blog&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you found this article useful do follow me on  &lt;a href="https://twitter.com/code_rams"&gt;Twitter&lt;/a&gt;. Feel free to contact me anytime to discuss or share your ideas.&lt;/p&gt;

</description>
      <category>css</category>
      <category>html</category>
      <category>webdev</category>
      <category>beginners</category>
    </item>
    <item>
      <title>A guide to HTML5 semantic Elements</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Sun, 24 Oct 2021 18:01:35 +0000</pubDate>
      <link>https://forem.com/code_rams/a-guide-to-html5-semantic-elements-2fic</link>
      <guid>https://forem.com/code_rams/a-guide-to-html5-semantic-elements-2fic</guid>
      <description>&lt;p&gt;Whenever I start any new website, I just simply starts with the &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; to structure the HTML. But recently I came to know about these semantic tags to structure the website. I was like, oh wait, what all these tags? why should I use it 🤯 ? &lt;/p&gt;

&lt;p&gt;Then started my research about these semantic elements, and was like oh god! why I missed this these many days. So thought to share my learnings about these helpful tags.&lt;/p&gt;




&lt;h3&gt;
  
  
  What is semantic and non-semantic elements?
&lt;/h3&gt;



&lt;p&gt;&lt;code&gt;Semantic elements = elements with a meaning.&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;A semantic element clearly describes its meaning to both the browser and the developer.&lt;/p&gt;

&lt;p&gt;Examples of non-semantic elements: &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;span&amp;gt;&lt;/code&gt; - Tells nothing about its content.&lt;/p&gt;

&lt;p&gt;Examples of semantic elements: &lt;code&gt;&amp;lt;form&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;table&amp;gt;&lt;/code&gt;, and &lt;code&gt;&amp;lt;article&amp;gt;&lt;/code&gt; - Clearly defines its content.&lt;/p&gt;




&lt;h3&gt;
  
  
  All good, So why should I use semantic elements?
&lt;/h3&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633192787172%2FqSjQwp8Hc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633192787172%2FqSjQwp8Hc.png" alt="readable.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  1. It's easier to read
&lt;/h4&gt;

&lt;p&gt;This is probably the first thing you will notice when looking at the first block of code using semantic elements. &lt;br&gt;
This is a small example, but as a programmer, you can be reading through hundreds or thousands of lines of code. &lt;br&gt;
The easier it is to read and understand that code, the easier it makes your job.&lt;/p&gt;
&lt;h4&gt;
  
  
  2. It has greater accessibility
&lt;/h4&gt;

&lt;p&gt;We are not the only one that finds semantic elements easier to understand. &lt;br&gt;
&lt;strong&gt;Search engines&lt;/strong&gt; and &lt;strong&gt;assistive technologies&lt;/strong&gt; (like screen readers for users with a sight impairment) are also able to better understand the context and content of your website, meaning a better experience for your users.&lt;/p&gt;
&lt;h4&gt;
  
  
  3. It leads to more consistent code
&lt;/h4&gt;

&lt;p&gt;When creating a header using non-semantic elements, different programmers might write this as &lt;code&gt;&amp;lt;div class="header"&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;div id="header"&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;div class="head"&amp;gt;&lt;/code&gt;, or simply &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt;. &lt;br&gt;
There are so many ways that you can create a header element, and they all depend on the personal preference of the programmer. &lt;br&gt;
By creating a standard semantic element, it makes it easier for everyone.&lt;/p&gt;


&lt;h2&gt;
  
  
  Let's discuss some confusing similar tags!
&lt;/h2&gt;
&lt;h3&gt;
  
  
  1. &lt;code&gt;&amp;lt;section&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;article&amp;gt;&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;“What’s the difference?”, you may ask. &lt;br&gt;
Both these elements are used for sectioning content, and yes, they can definitely be used interchangeably. It’s a matter of in which situation. &lt;/p&gt;

&lt;p&gt;HTML4 offered only one type of container element, which is &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;While this is still used in HTML5, HTML5 provided us with &lt;code&gt;&amp;lt;section&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;article&amp;gt;&lt;/code&gt; in a way to replace &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;The &lt;code&gt;&amp;lt;section&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;article&amp;gt;&lt;/code&gt; elements are conceptually similar and interchangeable. To decide which of these you should choose, take note of the following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;An article is intended to be independently reusable.&lt;/li&gt;
&lt;li&gt;A section is a thematic grouping of content.
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;section&amp;gt;
  &amp;lt;p&amp;gt;Top Stories&amp;lt;/p&amp;gt;
  &amp;lt;section&amp;gt;
    &amp;lt;p&amp;gt;News&amp;lt;/p&amp;gt;
    &amp;lt;article&amp;gt;Story 1&amp;lt;/article&amp;gt;
    &amp;lt;article&amp;gt;Story 2&amp;lt;/article&amp;gt;
    &amp;lt;article&amp;gt;Story 3&amp;lt;/article&amp;gt;
  &amp;lt;/section&amp;gt;
  &amp;lt;section&amp;gt;
    &amp;lt;p&amp;gt;Sport&amp;lt;/p&amp;gt;
    &amp;lt;article&amp;gt;Story 1&amp;lt;/article&amp;gt;
    &amp;lt;article&amp;gt;Story 2&amp;lt;/article&amp;gt;
    &amp;lt;article&amp;gt;Story 3&amp;lt;/article&amp;gt;
  &amp;lt;/section&amp;gt;
&amp;lt;/section&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. &lt;code&gt;&amp;lt;header&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;hgroup&amp;gt;&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;The &lt;code&gt;&amp;lt;header&amp;gt;&lt;/code&gt; element is generally found at the top of a document, a section, or an article and usually contains the main heading and some navigation and search tools.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;header&amp;gt;
  &amp;lt;h1&amp;gt;Company A&amp;lt;/h1&amp;gt;
  &amp;lt;ul&amp;gt;
    &amp;lt;li&amp;gt;&amp;lt;a href="/home"&amp;gt;Home&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
    &amp;lt;li&amp;gt;&amp;lt;a href="/about"&amp;gt;About&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
    &amp;lt;li&amp;gt;&amp;lt;a href="/contact"&amp;gt;Contact us&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
  &amp;lt;/ul&amp;gt;
  &amp;lt;form target="/search"&amp;gt;
    &amp;lt;input name="q" type="search" /&amp;gt;
    &amp;lt;input type="submit" /&amp;gt;
  &amp;lt;/form&amp;gt;
&amp;lt;/header&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;&amp;lt;hgroup&amp;gt;&lt;/code&gt; element should be used where you want the main heading with one or more subheadings.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;hgroup&amp;gt;
  &amp;lt;h1&amp;gt;Heading 1&amp;lt;/h1&amp;gt;
  &amp;lt;h2&amp;gt;Subheading 1&amp;lt;/h2&amp;gt;
  &amp;lt;h2&amp;gt;Subheading 2&amp;lt;/h2&amp;gt;
&amp;lt;/hgroup&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;REMEMBER, that the &lt;code&gt;&amp;lt;header&amp;gt;&lt;/code&gt; element can contain any content, but the &lt;code&gt;&amp;lt;hgroup&amp;gt;&lt;/code&gt; element can only contain other headers, that is &lt;code&gt;&amp;lt;h1&amp;gt;&lt;/code&gt; to &lt;code&gt;&amp;lt;h6&amp;gt;&lt;/code&gt; and including &lt;code&gt;&amp;lt;hgroup&amp;gt;&lt;/code&gt;.&lt;/p&gt;




&lt;h3&gt;
  
  
  3. &lt;code&gt;&amp;lt;figure&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;figcaption&amp;gt;&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;figure&amp;gt;&lt;/code&gt; is for wrapping your image content around it, and &lt;code&gt;&amp;lt;figcaption&amp;gt;&lt;/code&gt; is to caption your image.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;figure&amp;gt;
  &amp;lt;img src="https://en.wikipedia.org/wiki/File:Shadow_of_Mordor_cover_art.jpg" alt="Shadow of Mordor" /&amp;gt;
  &amp;lt;figcaption&amp;gt;Cover art for Middle-earth: Shadow of Mordor&amp;lt;/figcaption&amp;gt;
&amp;lt;/figure&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  4. &lt;code&gt;&amp;lt;cite&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;mark&amp;gt;&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;The &lt;code&gt;&amp;lt;cite&amp;gt;&lt;/code&gt; element is used to describe a reference to a cited creative work and must include the title of that work. The reference may be in an abbreviated form according to context-appropriate conventions related to citation metadata.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;figure&amp;gt;
    &amp;lt;blockquote&amp;gt;
        &amp;lt;p&amp;gt;It was a bright cold day in April, and the clocks were striking thirteen.&amp;lt;/p&amp;gt;
    &amp;lt;/blockquote&amp;gt;
    &amp;lt;figcaption&amp;gt;First sentence in &amp;lt;cite&amp;gt;&amp;lt;a href="http://www.george-orwell.org/1984/0.html"&amp;gt;Nineteen Eighty-Four&amp;lt;/a&amp;gt;&amp;lt;/cite&amp;gt; by George Orwell (Part 1, Chapter 1).&amp;lt;/figcaption&amp;gt;
&amp;lt;/figure&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;&amp;lt;mark&amp;gt;&lt;/code&gt; element represents text which is marked or highlighted for reference or notation purposes, due to the marked passage's relevance or importance in the enclosing context.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;p&amp;gt;Search results for "salamander":&amp;lt;/p&amp;gt;
&amp;lt;hr&amp;gt;
&amp;lt;p&amp;gt;Several species of &amp;lt;mark&amp;gt;salamander&amp;lt;/mark&amp;gt; inhabit the temperate rainforest of the Pacific Northwest.&amp;lt;/p&amp;gt;
&amp;lt;p&amp;gt;Most &amp;lt;mark&amp;gt;salamander&amp;lt;/mark&amp;gt;s are nocturnal, and hunt for insects, worms, and other small creatures.&amp;lt;/p&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  5. &lt;code&gt;&amp;lt;meter&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;progress&amp;gt;&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;The &lt;code&gt;&amp;lt;meter&amp;gt;&lt;/code&gt; element represents either a scalar value within a known range or a fractional value.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;label for="fuel"&amp;gt;Fuel level:&amp;lt;/label&amp;gt;

&amp;lt;meter id="fuel"
       min="0" max="100"
       low="33" high="66" optimum="80"
       value="50"&amp;gt;
    at 50/100
&amp;lt;/meter&amp;gt;

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

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;&amp;lt;progress&amp;gt;&lt;/code&gt; element displays an indicator showing the completion progress of a task, typically displayed as a progress bar.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;label for="file"&amp;gt;File progress:&amp;lt;/label&amp;gt;

&amp;lt;progress id="file" max="100" value="70"&amp;gt; 70% &amp;lt;/progress&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Unlike the &lt;code&gt;&amp;lt;meter&amp;gt;&lt;/code&gt; element, the minimum value is always 0 for &lt;code&gt;&amp;lt;progress&amp;gt;&lt;/code&gt;, and the min attribute is not allowed for the &lt;code&gt;&amp;lt;progress&amp;gt;&lt;/code&gt; element.&lt;/p&gt;




&lt;h3&gt;
  
  
  References
&lt;/h3&gt;

&lt;p&gt;1.&lt;a href="https://www.w3schools.com/html/html5_semantic_elements.asp" rel="noopener noreferrer"&gt;https://www.w3schools.com/html/html5_semantic_elements.asp&lt;/a&gt;&lt;br&gt;
2.&lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element" rel="noopener noreferrer"&gt;https://developer.mozilla.org/en-US/docs/Web/HTML/Element&lt;/a&gt;&lt;br&gt;
3.&lt;a href="https://www.freecodecamp.org/news/semantic-html5-elements/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/semantic-html5-elements/&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Thanks for taking your time and read this article. It was originally published in my &lt;a href="https://ramyachinnadurai.in/a-guide-to-html5-semantic-elements" rel="noopener noreferrer"&gt;blog&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;If you found this article useful, just give a like and follow me on &lt;a href="https://twitter.com/code_rams" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt;. Feel free to contact me anytime to discuss or share your ideas.&lt;/p&gt;




</description>
      <category>html</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>5 Tips for CSS responsive design</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Sat, 23 Oct 2021 14:56:43 +0000</pubDate>
      <link>https://forem.com/code_rams/5-tips-for-css-responsive-design-34mb</link>
      <guid>https://forem.com/code_rams/5-tips-for-css-responsive-design-34mb</guid>
      <description>&lt;h3&gt;
  
  
  &lt;strong&gt;Choose Mobile-First Approach For responsive design&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;The best approach for responsive design is to design a mobile version of your website first. &lt;/p&gt;

&lt;p&gt;This allows you to see how the images, text, logos, and other elements will look on smaller screens. &lt;/p&gt;

&lt;p&gt;If they display without problems, then you shouldn’t have any problems adapting your design to larger screens.&lt;/p&gt;

&lt;h3&gt;
  
  
  Responsive starts with this meta tag
&lt;/h3&gt;

&lt;p&gt;The first line of code to get started with responsive design is to be placed in the head section of the page.  You must start with Responsive Header, placing this code inside the head of the HTML page.&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;meta&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"viewport"&lt;/span&gt; &lt;span class="na"&gt;content=&lt;/span&gt;&lt;span class="s"&gt;"width=device-width, initial-scale=1"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Concepts covered
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;min()&lt;/li&gt;
&lt;li&gt;max() &lt;/li&gt;
&lt;li&gt;clamp()&lt;/li&gt;
&lt;li&gt;box-sizing: border-box&lt;/li&gt;
&lt;li&gt;overflow: hidden &lt;/li&gt;
&lt;/ol&gt;




&lt;h3&gt;
  
  
  1. Minimum ( min )
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;min&lt;/code&gt; selects the smallest (most negative) value from a list of comma-separated expressions.&lt;/p&gt;

&lt;p&gt;For example, in the case of: &lt;code&gt;min(1rem, 50%, 10vw)&lt;/code&gt;, the browser calculates which of these relative units is the smallest, and uses that value as the actual value.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633103141911%2Fm__aXL0mB.gif" 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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633103141911%2Fm__aXL0mB.gif" alt="min().gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Reference - &lt;a href="https://web.dev/min-max-clamp/" rel="noopener noreferrer"&gt;web.dev&lt;/a&gt; Try out this in  &lt;a href="https://codepen.io/ramyachinnadurai/pen/OJgGyZL" rel="noopener noreferrer"&gt;codepen &lt;/a&gt; &lt;/p&gt;




&lt;h3&gt;
  
  
  2. Maximum ( Max )
&lt;/h3&gt;

&lt;p&gt;The &lt;code&gt;max()&lt;/code&gt; function selects the largest value from a list of comma-separated expressions.&lt;/p&gt;

&lt;p&gt;Example: &lt;code&gt;max(50vw, 400px),&lt;/code&gt; the browser determines which one is either the largest value respectively.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633103696817%2FSBbSk_Vco.gif" 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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633103696817%2FSBbSk_Vco.gif" alt="max.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Reference - &lt;a href="https://web.dev/min-max-clamp/" rel="noopener noreferrer"&gt;web.dev&lt;/a&gt; Try out this in  &lt;a href="https://codepen.io/ramyachinnadurai/pen/PojgPMq" rel="noopener noreferrer"&gt;codepen &lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  3. Clamping values ( Clamp )
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;clamp()&lt;/code&gt; is the combination of the &lt;code&gt;min()&lt;/code&gt; and &lt;code&gt;max()&lt;/code&gt; functions, accepting three parameters:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;the minimum value,&lt;/li&gt;
&lt;li&gt;the preferred value, and&lt;/li&gt;
&lt;li&gt;the maximum value&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For example: &lt;code&gt;clamp(45ch, 50%, 75ch)&lt;/code&gt;This allows for the browser to determine the width of the paragraph. It will set the width to 50% unless 50% is smaller than 45ch, at which point 45ch will be selected, and visa versa for if 50% is wider than 75ch. &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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633103886384%2FPEbv9DR9q.gif" 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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633103886384%2FPEbv9DR9q.gif" alt="clamp.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Reference - &lt;a href="https://web.dev/min-max-clamp/" rel="noopener noreferrer"&gt;web.dev&lt;/a&gt; Try out this in  &lt;a href="https://codepen.io/ramyachinnadurai/pen/vYZMLYo" rel="noopener noreferrer"&gt;codepen &lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  4. Box Sizing
&lt;/h3&gt;

&lt;p&gt;One of the God properties of CSS, to overcome your responsive frustrations is box-sizing. It is an essential property for responsive website development. &lt;/p&gt;

&lt;h4&gt;
  
  
  1. Content box
&lt;/h4&gt;

&lt;p&gt;The size of the box gets elaborate based on the content. When the site is viewed on mobile, the content box grows based on the content which makes the site scroll.&lt;/p&gt;

&lt;h4&gt;
  
  
  2. Border-box
&lt;/h4&gt;

&lt;p&gt;If you use border-box on an element with a width set in per cent, it will take padding into account, so you’ll no longer need to adjust the width. &lt;/p&gt;

&lt;p&gt;Needless to say, this trick works best for mobile websites and browsers with CSS3 support.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633103943997%2Fxly0dpGGj.gif" 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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633103943997%2Fxly0dpGGj.gif" alt="box-sizing.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Reference - &lt;a href="https://codepen.io/pocket-gopher/pen/JNMbJQ" rel="noopener noreferrer"&gt;Pocket Gopher&lt;/a&gt; Try out this in  &lt;a href="https://codepen.io/ramyachinnadurai/pen/jOwRWML" rel="noopener noreferrer"&gt;codepen &lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  5. &lt;strong&gt;Overflow Properties&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;Overflow: hidden&lt;/code&gt; is a handy CSS property that is helpful in many cases in addition to responsive design. &lt;/p&gt;

&lt;p&gt;Instead of clearing divs, you can clear containers by simply setting the overflow value to hidden. &lt;/p&gt;

&lt;p&gt;&lt;code&gt;Overflow: hidden&lt;/code&gt; makes value hidden instead of scrolling the content. &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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633104016384%2FkbFTRMVuQ.gif" 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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1633104016384%2FkbFTRMVuQ.gif" alt="overflow.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Try out this in &lt;a href="https://codepen.io/ramyachinnadurai/pen/ExXbJGN" rel="noopener noreferrer"&gt;codepen &lt;/a&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Additional tip
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Responsive Images
&lt;/h3&gt;

&lt;p&gt;HTML offers the  element that allows us to specify the exact image resource that will be rendered based on the media query we add. &lt;/p&gt;

&lt;p&gt;Instead of having one image (usually a large, high-resolution version) sent to all screen sizes and scaling it to the viewport width, we specify a set of images to serve in specific situations.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;picture&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="nt"&gt;source&lt;/span&gt; &lt;span class="nt"&gt;media&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"(max-width:1000px)"&lt;/span&gt; &lt;span class="nt"&gt;srcset&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"picture-lg.png"&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="nt"&gt;source&lt;/span&gt; &lt;span class="nt"&gt;media&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"(max-width:600px)"&lt;/span&gt; &lt;span class="nt"&gt;srcset&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"picture-mid.png"&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="nt"&gt;source&lt;/span&gt; &lt;span class="nt"&gt;media&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"(max-width:400px)"&lt;/span&gt; &lt;span class="nt"&gt;srcset&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"picture-sm.png"&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="nt"&gt;img&lt;/span&gt; &lt;span class="nt"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"picture.png"&lt;/span&gt; &lt;span class="nt"&gt;alt&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"picture"&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="nt"&gt;picture&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this example, picture.png is the full-size image. &lt;/p&gt;

&lt;p&gt;From there, we define the next-largest version of the image, picture-lg.png, and the size reduces in descending order until the smallest version, picture-sm.png. &lt;/p&gt;

&lt;p&gt;Note that we’re still using media queries in this approach, but it’s the  element itself that is driving the responsive behaviour rather than defining breakpoints in the CSS.&lt;/p&gt;




&lt;h3&gt;
  
  
  References
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://web.dev/min-max-clamp/" rel="noopener noreferrer"&gt;https://web.dev/min-max-clamp/&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.freecodecamp.org/news/css-properties-examples/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/css-properties-examples/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://corpocrat.com/2015/11/03/10-cool-css-tricks-for-responsive-design/" rel="noopener noreferrer"&gt;https://corpocrat.com/2015/11/03/10-cool-css-tricks-for-responsive-design/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.pixafy.com/blog/5-useful-css-tips-for-responsive-design/" rel="noopener noreferrer"&gt;https://www.pixafy.com/blog/5-useful-css-tips-for-responsive-design/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://css-tricks.com/beyond-media-queries-using-newer-html-css-features-for-responsive-designs/" rel="noopener noreferrer"&gt;https://css-tricks.com/beyond-media-queries-using-newer-html-css-features-for-responsive-designs/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;Thanks for taking your time and reading this article. This article was originally published in my &lt;a href="https://ramyachinnadurai.in/5-tips-for-css-responsive-design" rel="noopener noreferrer"&gt;blog&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;If you find this useful kindly like this article and follow me &lt;a href="https://twitter.com/code_rams" rel="noopener noreferrer"&gt;Ramya Chinnadurai&lt;/a&gt; on Twitter. Feel free to connect me for sharing your ideas and suggestions.&lt;/p&gt;

</description>
      <category>css</category>
      <category>responsivedesign</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>Handful Github Repos for Full stack web developer</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Fri, 22 Oct 2021 05:02:13 +0000</pubDate>
      <link>https://forem.com/code_rams/handful-github-repos-for-full-stack-web-developer-2625</link>
      <guid>https://forem.com/code_rams/handful-github-repos-for-full-stack-web-developer-2625</guid>
      <description>&lt;p&gt;This article contains a list of useful GitHub repositories to help full-stack web developers to improve their skills. &lt;/p&gt;

&lt;p&gt;It is structured in the following order,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Roadmap&lt;/li&gt;
&lt;li&gt;Front end developer resources&lt;/li&gt;
&lt;li&gt;Backend developer resources&lt;/li&gt;
&lt;li&gt;Full-stack developer resources&lt;/li&gt;
&lt;li&gt;Web development tools&lt;/li&gt;
&lt;li&gt;Projects based learning &lt;/li&gt;
&lt;li&gt;Free books and additional tools&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  1. &lt;a href="https://github.com/kamranahmedse/developer-roadmap" rel="noopener noreferrer"&gt;Web Developer Roadmap&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;The roadmap is a guided way to start your journey to become a full stack developer. This repo contains the roadmap for a complete front-end, back-end and dev-ops learning pathway.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632930953254%2FVGpH7sz8f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632930953254%2FVGpH7sz8f.png" alt="Screenshot 2021-09-29 at 9.25.28 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2. &lt;a href="https://github.com/bradtraversy/design-resources-for-developers" rel="noopener noreferrer"&gt;Design resources for Developers&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It contains the curated list of design and UI resources from stock photos, web templates, CSS frameworks, UI libraries, tools and much more.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931132372%2Fh8H-XZ416l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931132372%2Fh8H-XZ416l.png" alt="Screenshot 2021-09-29 at 9.28.29 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  3. &lt;a href="https://github.com/RitikPatni/Front-End-Web-Development-Resources" rel="noopener noreferrer"&gt;Frontend Web Development Resources&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical journey of tools and resources to become front-end Web Developers.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931187932%2FVKfWHtvsX.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931187932%2FVKfWHtvsX.png" alt="Screenshot 2021-09-29 at 9.29.32 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  4. &lt;a href="https://github.com/dypsilon/frontend-dev-bookmarks" rel="noopener noreferrer"&gt;Frontend Dev Bookmarks&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;The curated collection of resources for frontend web developers for appearance, architecture, compatibility, user interface and a lot more.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931437119%2FVjcRZPEiS.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931437119%2FVjcRZPEiS.png" alt="Screenshot 2021-09-29 at 9.33.43 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  5. &lt;a href="https://github.com/yangshun/front-end-interview-handbook" rel="noopener noreferrer"&gt;Frontend Interview Handbook&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Contains Front End interview preparation materials for developers includes - pop quizzes, coding, front end system design and more!&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931521605%2FxiwdGndHV.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931521605%2FxiwdGndHV.png" alt="Screenshot 2021-09-29 at 9.35.08 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  6. &lt;a href="https://github.com/zhashkevych/awesome-backend" rel="noopener noreferrer"&gt;Awesome Backend Engineer&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A curated and opinionated list of resources for backend developers includes resources for networking, databases, security, architecture and more.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931639670%2F5QPWNuDY5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931639670%2F5QPWNuDY5.png" alt="Screenshot 2021-09-29 at 9.37.00 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  7. &lt;a href="https://github.com/DHANUSHXENO/Ultimate-NodeJs-Resources" rel="noopener noreferrer"&gt;Ultimate Node js resources&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;This repo contains resources for Nodejs includes Github repos, books, blogs, youtube videos to refer and more.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931807823%2FHqf9zL1Pp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931807823%2FHqf9zL1Pp.png" alt="Screenshot 2021-09-29 at 9.39.43 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  8. &lt;a href="https://github.com/trekhleb/javascript-algorithms" rel="noopener noreferrer"&gt;JavaScript Algorithms and Data Structures&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It contains Js based examples of many popular algorithms and data structures.&lt;/p&gt;

&lt;p&gt;Each algorithm and data structure has its own related explanations and links for further reading (including YouTube videos).&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931888084%2F3NVAfFPsQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931888084%2F3NVAfFPsQ.png" alt="Screenshot 2021-09-29 at 9.41.11 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  9. &lt;a href="https://github.com/30-seconds/30-seconds-of-code" rel="noopener noreferrer"&gt;30 seconds of code&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It contains a wide variety of ES6 helper functions includes helpers for dealing with primitives, arrays and objects, as well as algorithms, DOM manipulation functions and Node.js utilities.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931953290%2FabxRy3tza.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632931953290%2FabxRy3tza.png" alt="Screenshot 2021-09-29 at 9.42.21 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  10. &lt;a href=""&gt;Become a Full Stack Web Developer &lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It contains free resources for learning Full Stack Web Development which includes a complete learning journey to become a full-stack web developer.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932011333%2FYzXXn4fMq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932011333%2FYzXXn4fMq.png" alt="Screenshot 2021-09-29 at 9.43.20 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  11. &lt;a href="https://github.com/markodenic/web-development-resources" rel="noopener noreferrer"&gt;Web Development Resources&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Tools for web development includes illustrations, icons, fonts, templates, libraries and a lot more.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932082437%2F13A4HMokIp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932082437%2F13A4HMokIp.png" alt="Screenshot 2021-09-29 at 9.44.09 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  12. &lt;a href="https://github.com/ripienaar/free-for-dev" rel="noopener noreferrer"&gt;Free for Dev&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It contains a complete list of software (SaaS, PaaS, IaaS, etc.) and other offerings that have free tiers for developers.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932140332%2Fq1FHMkJPp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932140332%2Fq1FHMkJPp.png" alt="Screenshot 2021-09-29 at 9.45.28 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  13. &lt;a href="https://github.com/yangshun/tech-interview-handbook" rel="noopener noreferrer"&gt;Tech Interview Handbook&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Curated technical interview preparation materials to clear technical interviews.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932217084%2F8-wMVUWYI.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932217084%2F8-wMVUWYI.png" alt="Screenshot 2021-09-29 at 9.46.44 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  14. &lt;a href="https://github.com/practical-tutorials/project-based-learning" rel="noopener noreferrer"&gt;Project-Based Learning &lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;"Learn by doing" is the best approach to learn to code. &lt;/p&gt;

&lt;p&gt;Here are programming tutorials in which you can learn to build an application from scratch. &lt;/p&gt;

&lt;p&gt;These tutorials are divided into different primary programming languages.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932277599%2FiXjngmzkf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932277599%2FiXjngmzkf.png" alt="Screenshot 2021-09-29 at 9.47.47 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  15. &lt;a href="https://github.com/EbookFoundation/free-programming-books" rel="noopener noreferrer"&gt;Free Programming Books&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Contains the list of books and resources for all programming languages in many languages.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932346893%2FYc8IBSdiI.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932346893%2FYc8IBSdiI.png" alt="Screenshot 2021-09-29 at 9.48.54 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  16. &lt;a href="https://github.com/sindresorhus/awesome" rel="noopener noreferrer"&gt;Awesome &lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It contains Awesome lists about all kinds of interesting topics.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932402343%2FwE9by_g4M.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1632932402343%2FwE9by_g4M.png" alt="Screenshot 2021-09-29 at 9.49.51 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thanks for taking your time and reading this article, it was originally written as Twitter &lt;a href="https://twitter.com/code_rams/status/1443211619090243590" rel="noopener noreferrer"&gt;thread&lt;/a&gt;, and posted in my personal blog &lt;a href="https://ramyachinnadurai.in/handful-github-repos-for-full-stack-web-developer" rel="noopener noreferrer"&gt;ramyachinnadurai.in&lt;/a&gt;. If you have any suggestions or ideas to share feel free to contact me on  &lt;a href="https://twitter.com/code_rams" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt;. &lt;/p&gt;

</description>
      <category>github</category>
      <category>javascript</category>
      <category>fullstack</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How SMART todo lists will help you to reach goals faster</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Wed, 30 Dec 2020 14:03:16 +0000</pubDate>
      <link>https://forem.com/code_rams/how-smart-todo-lists-will-help-you-to-reach-goals-faster-40ek</link>
      <guid>https://forem.com/code_rams/how-smart-todo-lists-will-help-you-to-reach-goals-faster-40ek</guid>
      <description>&lt;p&gt;If you have the habit of avoiding planning for upcoming days and choose to do just as you go, the most common reason is you don't want to overload yourself with uncertainties. But the truth is more you try to avoid it, the more it creates the problem in the future. The power to make it certain is within us to see past the threats you must solve earlier and minimize them as much as possible.&lt;/p&gt;

&lt;h3&gt;
  
  
  Unless you experience, never knew the importance
&lt;/h3&gt;

&lt;p&gt;Three months back, when I started to learn and build for my product, the hard part each day I had is, What should I do today? I used to think hours what should I do next. Think tons of ideas to implement for the next few days, feeling pumped up, would do nothing. I stuck in the same terrain for a few days. Only then, I started to plan for the week's tasks.&lt;/p&gt;

&lt;p&gt;The second thing I got stuck with is postponing important tasks. I would have a list of items on my to-do list. Every time I would start with the easiest one first. I had the feeling those days, at least I would have completed one task if I choose the easiest one. Only then it creates more issues, the most important task I have to finish, keeps jumping to the next day.&lt;/p&gt;

&lt;h3&gt;
  
  
  Supercharge your tomorrow with SMART todo-list
&lt;/h3&gt;

&lt;p&gt;Charles Duhigg shares a similar experience in his past and how this let to write his book - "Smarter, Faster, Better".  For a to-do list to be really effective it has to do two things. Push us to do the most important task first and should exactly tell how it should get done.&lt;/p&gt;

&lt;p&gt;He breaks this into elements that make the to-do list effective.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Stretch goals - A big ambition, at end of the day, our most important objective.&lt;/li&gt;
&lt;li&gt;SMART goals - Taking that big ambition goal and breaking it into tasks that are smart, measurable, achievable, realistic, and timeline specific.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Best to-do lists are ones that remind us what to do next.&lt;/p&gt;

&lt;h3&gt;
  
  
  Action items
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Let's categorize the goals we break down earlier and check whether it passes the SMART tasks.&lt;/li&gt;
&lt;li&gt;To start with simple, let's list down the tasks that we are going to do in the next 3 days. Having a objective based on the week might push you to work ambitious every day and measure at end of the week.&lt;/li&gt;
&lt;li&gt;Add the most important tasks to your personal to-do list and make sure to answer the question, what one thing will push you one step further each day.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Thought for the day
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--g6yvmM1v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608657910711/aHrmg4SzU.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--g6yvmM1v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608657910711/aHrmg4SzU.png" alt="Set out to conquer the ocean. (10).png"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;This article is written by &lt;a href="https://twitter.com/_karthikyn"&gt;Karthikeyan&lt;/a&gt; and co-authored by &lt;a href="https://twitter.com/code_rams"&gt;Rams&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rURxYO2C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608657318762/e35aNDJgt.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rURxYO2C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608657318762/e35aNDJgt.gif" alt="Set out to conquer the ocean. (1).gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This article was written as part of day 06 of the &lt;a href="https://100daysof.codes/the-14daysbreakloop-challenge"&gt;#14daysbreakloop&lt;/a&gt; challenge. Plan your weekly tasks - one thing that pushes you towards your big goal and keep an eye on not running out of your task list charge. &lt;br&gt;
Install the extension now from &lt;a href="https://chrome.google.com/webstore/detail/100daysofcodes/cecmfhlijbbeeeobbgnoaajmhckdganc"&gt;Chrome Web Store&lt;/a&gt; and start working on your #100daysofcode. This article was originally published in &lt;a href="https://blog.100daysof.codes"&gt;blog.100daysof.codes&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
    </item>
    <item>
      <title>Celebrating small wins</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Mon, 28 Dec 2020 14:43:22 +0000</pubDate>
      <link>https://forem.com/code_rams/celebrating-small-wins-i</link>
      <guid>https://forem.com/code_rams/celebrating-small-wins-i</guid>
      <description>&lt;p&gt;Everybody wants big wins, thinking about being lauded by the family, friends, and society. But how often we had those big wins? While we are running towards the big wins, we missed the small wins that happen during the process. &lt;/p&gt;

&lt;p&gt;Every big win is compounded by small wins. If we haven't thought of a way to celebrate, we should rethink our process. Because falling in love with the process is all we need. Big wins are rare. End we are chasing towards, may be successful or not. Take a look back and amplify the wins you had earlier and enjoy the journey. Celebrating little wins also rethinks the way we define our process. &lt;/p&gt;

&lt;h3&gt;
  
  
  Fall in love with the process
&lt;/h3&gt;

&lt;p&gt;I still remember the time, I can't focus on much spending time for my #100daysofcode challenge in the initial days. I would do a project one day, then the next day, I would take a break. At first, I used to feel the moment when I completed the 100 days. But I realized this alone won't be enough to push me further each day. Between, it is so long.&lt;/p&gt;

&lt;p&gt;A moment that changes me is the time I posted a  &lt;a href="https://twitter.com/code_rams/status/1278756336084246528?s=20"&gt;daily challenge&lt;/a&gt; on Twitter. I got more support from the Twitter community for the work. It made me start working on this challenge again. Every day, in the end, I make sure to post the progress on Twitter. For myself, the reward I set for myself is this. This reward feedback loop pushes me each day to love the process of learning and building cool things. It might be a small win to feel satisfied with, but it's what drives us to be consistent. &lt;/p&gt;

&lt;p&gt;You can better make use of celebrating these little wins by defining your reward prior, how you will celebrate at the end of the day, and plan your daily task to that moment. Don't worry. Reward you use to celebrate those little wins might be smaller for others. It is your journey. Learn to fall in love with each moment.&lt;/p&gt;

&lt;h3&gt;
  
  
  Action Points
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Create your reward for your big win right now.&lt;/li&gt;
&lt;li&gt;Every time you win, take some time to enjoy the moment 🎉. Just feel it.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Best moment
&lt;/h3&gt;

&lt;p&gt;Between those small wins, I felt I have to secure the best wins from what I do. These drove me to an idea to record the best moment for a day's goal. The more I keep closing the difference between the most recent best moment, I feel better I am on the right track. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--V0N6TyAY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608610958149/8_UXfd0IO.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--V0N6TyAY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608610958149/8_UXfd0IO.png" alt="Frame 1 (6).png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Thought for the day
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xq-kwb-L--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608613078456/TxJ8v05_b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xq-kwb-L--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608613078456/TxJ8v05_b.png" alt="Set out to conquer the ocean. (8).png"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;This article is written by &lt;a href="https://twitter.com/code_rams"&gt;Rams&lt;/a&gt; and co-authored by &lt;a href="https://twitter.com/_karthikyn"&gt;Karthikeyan&lt;/a&gt;. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This article was written as part of day 05 of the &lt;a href="https://100daysof.codes/the-14daysbreakloop-challenge"&gt;#14daysbreakloop&lt;/a&gt; challenge. This article was originally published in &lt;a href="https://blog.100daysof.codes"&gt;blog.100daysof.codes&lt;/a&gt;. Install the extension from &lt;a href="https://chrome.google.com/webstore/detail/100daysofcodes/cecmfhlijbbeeeobbgnoaajmhckdganc"&gt;Chrome Web Store&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
    </item>
    <item>
      <title>Divide and conquer your dream goals</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Sat, 26 Dec 2020 08:02:37 +0000</pubDate>
      <link>https://forem.com/code_rams/divide-and-conquer-your-dream-goals-1231</link>
      <guid>https://forem.com/code_rams/divide-and-conquer-your-dream-goals-1231</guid>
      <description>&lt;p&gt;Achieving great things is not always working long hours and pushing yourself hard. It's about choosing the high ROI tasks that will impact our dream goals. It arrives us to a question, how do we break down bigger goals and make sure what we work on every day will take us one step closer.&lt;/p&gt;

&lt;p&gt;To my surprise, the #100daysofcode challenge build a foundational system that I need to work on every day towards my goal. On top of this system, I decided to build my first product - 100daysof.codes. Next, I started to list down, list of skills that I need to improve on to reach the end goal.&lt;/p&gt;

&lt;h3&gt;
  
  
  Divide goals into batches
&lt;/h3&gt;

&lt;p&gt;The first thing we might all tempt to do is start right away. I can realize the need to work on skills that I need to improve - Learning React in-depth, optimizing development time, learning firebase. But mostly, the realization happens when I hit the situation. I decided to split my #100daysofcode challenge routine for learning and separate time for product development. Slowly, I can outline my learning &amp;amp; development tasks, and easy to work.&lt;/p&gt;

&lt;h3&gt;
  
  
  Working in small batches
&lt;/h3&gt;

&lt;p&gt;In the book Lean startup, there was an interesting part I could recall. A father and two daughters got into an argument when they need to stuff newsletters into envelopes. There are 100 enveloped, needs to be addressed, stamped, filled with a letter, and sealed. Father's point is, it needs to processed one envelope at a time. Both the daughters argued at first all 100 envelopes need to be filled and then sealed separately. When they challenged and started to work on it, the father won the challenge.&lt;/p&gt;

&lt;p&gt;Our intuition doesn't take into account the time needed for intermediate switching and the cost of failure scenarios. We convince ourselves that we can complete it in a single take. But when we work in small batches, the learning is instant and we act on it our mistakes faster.  &lt;/p&gt;

&lt;h3&gt;
  
  
  The answer I told myself for the right task
&lt;/h3&gt;

&lt;p&gt;After I launched the product, how do I know what part of the task I worked on impacted, and what part not? I realized the importance of thinking backward while planning. Some of the daily tasks have not much impact and some contributed. The efficiency is not working in terms of hours and it is about minimizing the not so impactful task. It's not always about right, it's about learning faster from our mistakes.&lt;/p&gt;

&lt;h3&gt;
  
  
  Action Items
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;We have provided you a spreadsheet template &lt;a href="https://docs.google.com/spreadsheets/d/1rvMowEO6V9AAaUFqtk1c-SWLA14zEL03IuXHGCUHHk4" rel="noopener noreferrer"&gt;here&lt;/a&gt;. Make a copy and list down every task you think of to work on that goal and try to answer each question below.&lt;/li&gt;
&lt;li&gt;How impactful this will be to your end goal?&lt;/li&gt;
&lt;li&gt;Skills need to acquire?&lt;/li&gt;
&lt;li&gt;Consider you have failed to complete this task and think of listing down the reasons. It might be helpful to forecast and analyze possible failure scenarios.&lt;/li&gt;
&lt;li&gt;How much time you estimate for completion?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Maintain this sheet every time you work on a task. It might be helpful when you need to analyze for an opportunity to improve yourself in the future.&lt;/p&gt;

&lt;h3&gt;
  
  
  Thought for the day
&lt;/h3&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608519118727%2FnGUTbWLMD.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608519118727%2FnGUTbWLMD.png" alt="Set out to conquer the ocean. (7).png"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;This article is written by &lt;a href="https://twitter.com/code_rams" rel="noopener noreferrer"&gt;Rams&lt;/a&gt; and co-authored by &lt;a href="https://twitter.com/_karthikyn" rel="noopener noreferrer"&gt;Karthikeyan&lt;/a&gt;. &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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608528173458%2FT64q_bpnh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608528173458%2FT64q_bpnh.png" alt="Frame 1 (5).png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This article was written as part of day 04 of the &lt;a href="https://100daysof.codes/the-14daysbreakloop-challenge" rel="noopener noreferrer"&gt;#14daysbreakloop&lt;/a&gt; challenge. This article was originally published in &lt;a href="https://blog.100daysof.codes/" rel="noopener noreferrer"&gt;blog.100daysof.codes&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>100daysofcode</category>
      <category>challenge</category>
      <category>100daysofcodes</category>
      <category>14daysbreakloop</category>
    </item>
    <item>
      <title>If you want to follow your goals, learn to say no to alternatives</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Fri, 25 Dec 2020 06:19:22 +0000</pubDate>
      <link>https://forem.com/code_rams/if-you-want-to-follow-your-goals-learn-to-say-no-to-alternatives-og8</link>
      <guid>https://forem.com/code_rams/if-you-want-to-follow-your-goals-learn-to-say-no-to-alternatives-og8</guid>
      <description>&lt;p&gt;We are all raised by the feeling we can do everything. Our brain convinces us this every time. We want to go for a walk, hear a podcast, try to learn new things, and every time we feel proud of being multi-tasking. We try to push this to our goals too. We make plans for a month or a year, trying to bring every desire to reality. Our desires are countless, have their own will, working to nudge us in their selfish direction. But, our willpower is limited. Once it got exhausted, our brains start to lose focus.&lt;/p&gt;

&lt;p&gt;It's not we are not competent to achieve a goal. Too many goals with their own willpower cancel out each other. The more direction you get pulled in, the less distance you'll travel.&lt;/p&gt;

&lt;p&gt;I can relate to this when I was building an app and planning to launch it at the end of the month. First, I immediately start to plan with a bunch of features and push myself to develop them. As the deadline approaches, I had a bunch of fixes and undeveloped features. Sometimes I want to postpone the deadline a little further, hoping I can finish if there's a little more time. By the time I launch, I already exhausted a lot in the process.&lt;/p&gt;

&lt;p&gt;We blame ourselves there isn't enough time in a day. We feel endlessly conflicted. And what happens to us is stronger than our ability to combat it. The clocks will never adjust for us to go beyond 24 hours. We should learn to say no to things that are not so important. &lt;/p&gt;

&lt;p&gt;Perseverance to success comes with immense will power and self-control to say no to our temptations. We must train ourselves to say no to what doesn't matters to reach the goal without quitting. We can do this together.&lt;/p&gt;

&lt;h3&gt;
  
  
  Action items
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Set your goal higher - More powerful and impactful it is, lesser the chance you think about other things.&lt;/li&gt;
&lt;li&gt;Pick the tasks that only directly impacts your goal.&lt;/li&gt;
&lt;li&gt;Never work on more than one objective at a time. &lt;/li&gt;
&lt;li&gt;Always have your decisions noted. Remember why you are doing this. This will neutralize your idle wants.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Willpower - Super strength within to say no
&lt;/h3&gt;

&lt;p&gt;When I was taking the #100daysofcode challenge, I got stuck in the initial days. Only when I said to myself, at the end of 100 days, I should have launched my product, I bring up my willpower to stay consistent. But this will be the hardest thing I think I had in the journey, always boosting my will to stay on track and postpone alternative desires for instant gratification. There were days I had my inner voice saying it's just one day to skip. To my experience, this is far more reason I said to myself for procrastinating. &lt;/p&gt;

&lt;p&gt;Saying no to alternatives, preventing distractions all require powerful&lt;br&gt;
inner strength. It sure cannot be built in a day, but it's the thing that&lt;br&gt;
we should be working to improve every day. Powerful it is, the lesser the&lt;br&gt;
chance we quit.&lt;/p&gt;

&lt;p&gt;100daysof.codes developed primarily on this, focusing on working in smaller batches and picking one task enough to push one step ahead to the goal.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608399218424%2FePzxDyqF-.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608399218424%2FePzxDyqF-.png" alt="day03.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Thought for the day
&lt;/h3&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608394423539%2F7hXx-J0lq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608394423539%2F7hXx-J0lq.png" alt="Set out to conquer the ocean. (6).png"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;This article is written by &lt;a href="https://twitter.com/code_rams" rel="noopener noreferrer"&gt;Rams&lt;/a&gt; and co-authored by &lt;a href="https://twitter.com/_karthikyn" rel="noopener noreferrer"&gt;Karthikeyan&lt;/a&gt;. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This article was written as part of day 03 of the &lt;a href="https://100daysof.codes/the-14daysbreakloop-challenge" rel="noopener noreferrer"&gt;#14daysbreakloop&lt;/a&gt; challenge. This article was originally published in &lt;a href="https://blog.100daysof.codes" rel="noopener noreferrer"&gt;blog.100daysof.codes&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

</description>
    </item>
    <item>
      <title>If you want to follow your goals, learn to say no to alternatives</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Wed, 23 Dec 2020 05:24:36 +0000</pubDate>
      <link>https://forem.com/code_rams/if-you-want-to-follow-your-goals-learn-to-say-no-to-alternatives-5en3</link>
      <guid>https://forem.com/code_rams/if-you-want-to-follow-your-goals-learn-to-say-no-to-alternatives-5en3</guid>
      <description>&lt;p&gt;We are all raised by the feeling we can do everything. Our brain convinces us this every time. We want to go for a walk, hear a podcast, try to learn new things, and every time we feel proud of being multi-tasking. We try to push this to our goals too. We make plans for a month or a year, trying to bring every desire to reality. Our desires are countless, have their own will, working to nudge us in their selfish direction. But, our willpower is limited. Once it got exhausted, our brains start to lose focus.&lt;/p&gt;

&lt;p&gt;It's not we are not competent to achieve a goal. Too many goals with their own willpower cancel out each other. The more direction you get pulled in, the less distance you'll travel.&lt;/p&gt;

&lt;p&gt;I can relate to this when I was building an app and planning to launch it at the end of the month. First, I immediately start to plan with a bunch of features and push myself to develop them. As the deadline approaches, I had a bunch of fixes and undeveloped features. Sometimes I want to postpone the deadline a little further, hoping I can finish if there's a little more time. By the time I launch, I already exhausted a lot in the process.&lt;/p&gt;

&lt;p&gt;We blame ourselves there isn't enough time in a day. We feel endlessly conflicted. And what happens to us is stronger than our ability to combat it. The clocks will never adjust for us to go beyond 24 hours. We should learn to say no to things that are not so important. &lt;/p&gt;

&lt;p&gt;Perseverance to success comes with immense will power and self-control to say no to our temptations. We must train ourselves to say no to what doesn't matters to reach the goal without quitting. We can do this together.&lt;/p&gt;

&lt;h3&gt;
  
  
  Action items
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Set your goal higher - More powerful and impactful it is, lesser the chance you think about other things.&lt;/li&gt;
&lt;li&gt;Pick the tasks that only directly impacts your goal.&lt;/li&gt;
&lt;li&gt;Never work on more than one objective at a time. &lt;/li&gt;
&lt;li&gt;Always have your decisions noted. Remember why you are doing this. This will neutralize your idle wants.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Willpower - Super strength within to say no
&lt;/h3&gt;

&lt;p&gt;When I was taking the #100daysofcode challenge, I got stuck in the initial days. Only when I said to myself, at the end of 100 days, I should have launched my product, I bring up my willpower to stay consistent. But this will be the hardest thing I think I had in the journey, always boosting my will to stay on track and postpone alternative desires for instant gratification. There were days I had my inner voice saying it's just one day to skip. To my experience, this is far more reason I said to myself for procrastinating. &lt;/p&gt;

&lt;p&gt;Saying no to alternatives, preventing distractions all require powerful&lt;br&gt;
inner strength. It sure cannot be built in a day, but it's the thing that&lt;br&gt;
we should be working to improve every day. Powerful it is, the lesser the&lt;br&gt;
chance we quit.&lt;/p&gt;

&lt;p&gt;100daysof.codes developed primarily on this, focusing on working in smaller batches and picking one task enough to push one step ahead to the goal.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--R-z-xOQo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608399218424/ePzxDyqF-.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--R-z-xOQo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608399218424/ePzxDyqF-.png" alt="day03.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Thought for the day
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--y5ZGaeGA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608394423539/7hXx-J0lq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--y5ZGaeGA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608394423539/7hXx-J0lq.png" alt="Set out to conquer the ocean. (6).png"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;This article is written by &lt;a href="https://twitter.com/code_rams"&gt;Rams&lt;/a&gt; and co-authored by &lt;a href="https://twitter.com/_karthikyn"&gt;Karthikeyan&lt;/a&gt;. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This article was written as part of day 03 of the &lt;a href="https://100daysof.codes/the-14daysbreakloop-challenge"&gt;#14daysbreakloop&lt;/a&gt; challenge and published in &lt;a href="https://blog.100daysof.codes"&gt;blog.100daysof.codes&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>100daysofcode</category>
      <category>challenge</category>
      <category>14daysbreakloop</category>
      <category>100daysofcodes</category>
    </item>
    <item>
      <title>How one ambitious goal will change you forever</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Tue, 22 Dec 2020 13:56:13 +0000</pubDate>
      <link>https://forem.com/code_rams/how-one-ambitious-goal-will-change-you-forever-220</link>
      <guid>https://forem.com/code_rams/how-one-ambitious-goal-will-change-you-forever-220</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;On day 02, let's start focusing on the goals that matters. We have attached the sheets template with this article to help prioritizing your goals from the wishlist.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Passion + Measurable outcome at a point in time = End goal.&lt;/p&gt;

&lt;p&gt;Have you ever felt stuck at some point questioning why are we doing this? And this where most of the time, we take wrong turns or stop what doing. Most of the tasks we intended to choose what we do every day are motivated by this - I can do this? But without passion and measuring how it will impact your life in both positive and negative ways, the likelihood of succeeding is less.&lt;/p&gt;

&lt;p&gt;End goals are what remind us why we do what we do every day. And without why, we would lose the motivation to do in the long run.&lt;/p&gt;

&lt;p&gt;Mihaly Csikszentmihalyi states it in the book Flow as,&lt;br&gt;
"It is necessary to invest in goals that are so persuasive that they justify an effort even when our resources are exhausted and when fate is merciless in refusing us a chance at having a comfortable life."&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;It's easy to convince ourselves that the dot will connect in the future. Trust us, most of the time, it won't. Sometimes we have to place the dot with the end in mind. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Action points
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cyYU8Hpj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608310180333/hn22X6hl-.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cyYU8Hpj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608310180333/hn22X6hl-.png" alt="Screenshot 2020-12-18 at 10.19.01 PM.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;We have provided you a spreadsheet template &lt;a href="https://docs.google.com/spreadsheets/d/1-2Hrz3y3RQEmIhOcUVikbMH0BycgY91uO7bOYjjSgt4"&gt;here&lt;/a&gt;. Make a copy and list down
the goals.&lt;/li&gt;
&lt;li&gt;Answer these questions for each goals - How passion are you?, How impactful this will be after X months?, Time expected?&lt;/li&gt;
&lt;li&gt;It's good to have the list the next time you choose to work on a goal. Just
make sure to question yourself, does it offer value more than others in the
list. Your reason to why you have to choose to work this now.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Our end goal - At end of the #100daysofcode challenge, launch 100daysof.codes
&lt;/h3&gt;

&lt;p&gt;I started #100daysofcode to improve my coding skills . I couldn't measure what is the right way or the wrong way at first. Choosing the goal to improve code doesn't help me measure. I had to take a break 2 - 3 times in between. &lt;/p&gt;

&lt;p&gt;I decided to take some time and choose my end goal to build the product. I felt it was a better one for me, because. &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Passion to build my own product.&lt;/li&gt;
&lt;li&gt;Measurable - I can measure the impact it would have on my future.&lt;/li&gt;
&lt;li&gt;Time bounded - I mark the calendar November 24 to launch it.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I was surprised at the end, how it made me push beyond the limit of what I thought earlier was a limit to me. I can able to measure I was coding better by the speed I could solve a problem. Learned the importance of having the system at first to reach the goal - settling myself every day at 7 pm to code, review the past actions, validating mistakes for positive outcomes.&lt;/p&gt;

&lt;p&gt;It might be a harder one, but it is essential to drive you each day when&lt;br&gt;
you chose your daily goal. That's why we chose to ask for the end&lt;br&gt;
goal on the first screen when you installed the extension.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5UZoEUBy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608310797660/fLFL93hmd.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5UZoEUBy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608310797660/fLFL93hmd.gif" alt="day02.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Thought for the day
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FuHBitY_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608306839508/OI_Pg3clK.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FuHBitY_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1608306839508/OI_Pg3clK.png" alt="Set out to conquer the ocean. (5).png"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;This article is written by &lt;a href="https://twitter.com/code_rams"&gt;Rams&lt;/a&gt; and co-authored by &lt;a href="https://twitter.com/_karthikyn"&gt;Karthikeyan&lt;/a&gt;. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This article was originally published in &lt;a href="//blog.100daysof.codes"&gt;blog.100daysof.codes&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>100daysofcode</category>
      <category>challenge</category>
      <category>14daysbreakloop</category>
      <category>100daysofcodes</category>
    </item>
    <item>
      <title>If you are waiting for 2021 to start your dream goal you should start working right now</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Mon, 21 Dec 2020 07:13:00 +0000</pubDate>
      <link>https://forem.com/code_rams/if-you-are-waiting-for-2021-to-start-your-dream-goal-you-should-start-working-right-now-4mgg</link>
      <guid>https://forem.com/code_rams/if-you-are-waiting-for-2021-to-start-your-dream-goal-you-should-start-working-right-now-4mgg</guid>
      <description>&lt;p&gt;Just do it.&lt;/p&gt;

&lt;p&gt;It might be the easiest thing you said to yourself. And in the end, you always end up doing something else. The most common reason you said to yourself is that you will work on this from this month or year. Waiting for the perfect circumstances to start is the most common way of procrastinating. &lt;/p&gt;

&lt;p&gt;I am the person who gets much excited from the arrival of the new year to the weekend to start work on dream goals. I always had a list of goals in the wishlist. And most of them are what I wished some years back. Yes, it indeed became a dream goal for me. Dreams that never became real.&lt;/p&gt;

&lt;p&gt;Something interesting starts to happen when I started taking the #100daysofcode challenge. After a few struggles at first, I focused on the systems to reach my goal. &lt;/p&gt;

&lt;p&gt;Push yourself to an environment that will help you reach your goals. You will see yourself you are working on it, one by one. For those still waiting for the moment to arrive, we created the #14daysbreakloop challenge. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;We started this challenge to clear your top pending wishes before 2020 ends. This is the day 01 guide for the #14daybreakloop challenge and we will be posting a daily guide that we have learned in the #100daysofcode challenge that we wish could have learned sooner.&lt;/strong&gt; If you are already taking the #100daysofcode challenge, we hope you get most of it or if you are a developer who wishes to get out of your comfort zone, we hope our tops will improve yourself to learn consistently.&lt;/p&gt;

&lt;p&gt;If I didn't make the first step to start #100daysofcode, I wouldn't get this far - Learning what I once thought was a limit and support of the Twitter community. Everything begins with the first step.&lt;/p&gt;

&lt;p&gt;At the first step, I felt to break your inner loop of procrastinating would be to start doing it right now. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Just pick the goal that you feel will improve yourself &amp;amp; start working on it right from now. Think of yourself at the end of 2021 without the skill in your goal list. How hard would it impact you? Just pick the one that will be most impactful.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Action Items
&lt;/h3&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608226210680%2FGkLEVQrji.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608226210680%2FGkLEVQrji.png" alt="Set out to conquer the ocean. (4).png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Feature backstory - Why 100daysof.codes was chose to be a new tab extension?
&lt;/h3&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608226060897%2FLoMG_OPS9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608226060897%2FLoMG_OPS9.png" alt="newtab-ext.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Being an enthusiastic person, I became to start adding the list of tasks to my task manager. My procrastinating brain never changes much. The tasks never get checked at all. I realize I should learn to be consistent in what I do. I started trying to write one task at a time and place it as post-it notes right before my eyes. Focusing my energy on one task at a time improves my productivity since I didn't have to think about rest.&lt;/p&gt;

&lt;p&gt;The nearest design we could think of is when we open tabs in our browser. Hoping it might borrow our attention, we placed the question to what to do now, and once added, the task will be in the focus of each new tab.&lt;/p&gt;

&lt;h3&gt;
  
  
  Thought for the day
&lt;/h3&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608215843766%2FlOPB9LUtx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1608215843766%2FlOPB9LUtx.png" alt="Set out to conquer the ocean. (1).png"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;This article is written by &lt;a href="https://twitter.com/code_rams" rel="noopener noreferrer"&gt;Rams&lt;/a&gt; and co-authored by &lt;a href="https://twitter.com/_karthikyn" rel="noopener noreferrer"&gt;Karthikeyan&lt;/a&gt;. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This was originally published in the &lt;a href="https://blog.100daysof.codes/if-you-are-waiting-for-2021-to-start-your-dream-goal-you-should-start-working-right-now" rel="noopener noreferrer"&gt;blog.100daysof.codes&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>100daysofcode</category>
      <category>challenge</category>
      <category>14daysbreakloop</category>
      <category>100daysofcodes</category>
    </item>
    <item>
      <title>My #100daysofcode Journey Into Founding Start-up</title>
      <dc:creator>Ramya Chinnadurai</dc:creator>
      <pubDate>Sun, 29 Nov 2020 16:36:46 +0000</pubDate>
      <link>https://forem.com/code_rams/my-100daysofcode-journey-into-founding-start-up-3bdn</link>
      <guid>https://forem.com/code_rams/my-100daysofcode-journey-into-founding-start-up-3bdn</guid>
      <description>&lt;p&gt;This article is written as a journey note of my #100daysofcode challenge. I have jotted down the experiences and how it all ends with founding a startup and building our first product &lt;a href="http://100daysof.codes/" rel="noopener noreferrer"&gt;100daysof.codes&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Big thanks to the Twitter dev community for encouraging and supporting me continuously.&lt;/p&gt;

&lt;h3&gt;
  
  
  It's all starts with a tweet!
&lt;/h3&gt;

&lt;p&gt;Two years back, when I was new to Twitter, I just explored with hashtags. Suddenly a hashtag with #100daysofcode reached maximum impressions, random bots retweeted my post and I hit maximum likes.&lt;/p&gt;

&lt;p&gt;Suddenly I got much excited and explored about #100daysofcode. What is it? Why all are taking this challenge? What are the benefits? How to take this challenge? I was curious and explored even more and learned it as a challenge of coding a minimum of one hour a day and posting about what we did with the hashtag #100daysofcode for 100days. I was excited about the challenge and much interested in start taking it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Trust me, it was my fourth attempt to be consistent!
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Attempt 1 - Typical short time momentum
&lt;/h3&gt;

&lt;p&gt;It was on June 5, 2020. With much curiosity and eagerness, I created a dedicated Twitter account to start and post my  &lt;a href="https://twitter.com/code_rams/status/1268971397461602304?s=20" rel="noopener noreferrer"&gt;challenge&lt;/a&gt;.  I started the challenge with a simple calculator. Everything starts out well, but the momentum fades out slowly, and on the 3rd day, I lost the motivation to continue the challenge. &lt;/p&gt;

&lt;h3&gt;
  
  
  Attempt 2 - External motivation is an ignition, but still need to learn to steer forward
&lt;/h3&gt;

&lt;p&gt;Nearly a month after, I began the challenge again. This time inspired by cool ideas of the Twitter dev community. The challenge was to change the Twitter handle name dynamically with the follower’s count. My interest peaked again, let’s try doing this! Check out this  &lt;a href="https://twitter.com/code_rams/status/1278756336084246528?s=20" rel="noopener noreferrer"&gt;tweet&lt;/a&gt; for that challenge. I had written a blog post about that  &lt;a href="https://twitter.com/code_rams/status/1279757267928137730?s=20" rel="noopener noreferrer"&gt;experience&lt;/a&gt;. Twitter dev community is much awesome and supportive. Whenever you ask for any help, they are ready to help you any time. I reached maximum support and appreciation from the community after completing the challenge. Hoohoo! That was really a moment that boosts my motivation rocket. I started trying out a few project ideas as part of my challenges, but it wasn’t just enough to push me towards something newer every day.&lt;/p&gt;

&lt;p&gt;I began to continue the challenge, but I used to skip the days, I don't have any end goal to do the challenge. I told myself that, it's okay to skip days in between. But days passed I got self-doubted, why I need to take this challenge? If my goal was to relearn things then why I need this challenge? I had completed around 6 days of challenge, only motivation was my community. There all are consistent in their challenge, but I felt really bad about my consistency. I self-doubted a lot with consistency. Later I decided I need to learn consistency than skills. &lt;/p&gt;

&lt;h3&gt;
  
  
  Attempt 3 - Searching for my internal trigger
&lt;/h3&gt;

&lt;p&gt;I had completed around 6 days of challenge, only motivation was my community. I began to raise myself a few questions as self-doubted, why I need to take this challenge? Am I actually doing the right things to improve myself by taking this challenge or just an illusion?&lt;/p&gt;

&lt;p&gt;I decided to re-learn &amp;amp; improve my development skills as a goal at the end of 100 days and start taking challenges again. But in only two days, I felt it wasn’t strong enough to push me around to commit dedicated apart from work hours.&lt;/p&gt;

&lt;h3&gt;
  
  
  Attempt 4 - Solid end goal matters when out for a long journey
&lt;/h3&gt;

&lt;p&gt;I shared my experience with my friend  &lt;a href="https://twitter.com/_karthikyn" rel="noopener noreferrer"&gt;Karthi&lt;/a&gt;. He shared his views on this - while the challenge to build consistency is hard in #100daysofcode, the problems are almost the same if we want to improve ourselves or a product. I realized the same of getting trapped into our muscle memory of never getting out of our comfort zone, while we are out for bigger goals.&lt;/p&gt;

&lt;p&gt;We discussed if one thing we want to focus on most is being consistent in improving ourselves more than the development skill, and thought out like maybe we should focus on process and build it as a product at end of #100daysofcode from learning.&lt;/p&gt;

&lt;p&gt;We planned to build an extension for 100daysofcode. Keeping this as my end goal, at the end of 100days, I should have built this as a product and launch it on  &lt;a href="https://twitter.com/code_rams/status/1331306507166617601?s=20" rel="noopener noreferrer"&gt;November 24&lt;/a&gt;, I got much excited about the challenge ahead. All I need to focus on now is what I do each day that will push me closer to analyze if I make mistakes and learn the process first while staying consistent. To my surprise, it turns out a 91-day streak, I spent slowly get out of my comfort zone and finish #100daysofcode.&lt;/p&gt;

&lt;h5&gt;
  
  
  And, my learning journey starts...
&lt;/h5&gt;

&lt;p&gt;Trust me, I did not know much about building any extension, lots of concepts we discuss redux-saga, which seems kind of buzz terms for me at the time.&lt;/p&gt;

&lt;p&gt;My path to building the product unfolds before me. Learning how to build react app, using redux &amp;amp; building the extension. Several youtube videos were my primary learning source, helps me to get clear about building out an extension from scratch. There were few days, it was kind of blank to do what next as a challenge, there came freecodecamp as a rescuer.&lt;/p&gt;

&lt;p&gt;Freecodecamp helps me to revisit and learn missed concepts as a daily challenge. I first completed the redux course in freecodecamp, still that I haven’t earned any certification. I decided to earn all certifications from the freecodecamp. In my 25th day challenge, I earned my first  &lt;a href="https://twitter.com/code_rams/status/1304091168406302726?s=20" rel="noopener noreferrer"&gt;certification&lt;/a&gt;  from fcc, and in the day 80 completed 6  &lt;a href="https://twitter.com/code_rams/status/1324036383552409601?s=20" rel="noopener noreferrer"&gt;certifications&lt;/a&gt; from the freedcodecamp. &lt;/p&gt;

&lt;h3&gt;
  
  
  Focus on building the system, day by day
&lt;/h3&gt;

&lt;p&gt;I began the day with reading and ends the day by posting the challenge.&lt;br&gt;
When I woke up, after finishing the daily routine, my first thing was to read a chapter and post the best points on Twitter and I used to do the challenge in the evening, after 6. It may sometimes take 2 hours or sometimes go up to 6 hours.&lt;/p&gt;

&lt;p&gt;I made a rule to myself, I shouldn’t miss a streak and should learn something new on the day. In the mid of the challenge, I began to share the best lines from the book  &lt;a href="https://twitter.com/code_rams/status/1329296299573690369?s=20" rel="noopener noreferrer"&gt;Atomic habits&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;There is a quote in Atomic habits, &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What’s the difference between goals and systems? &lt;/p&gt;

&lt;p&gt;Goals are about the results you want to achieve.&lt;/p&gt;

&lt;p&gt;Systems are about the processes that lead to those results.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  All days are not the same
&lt;/h3&gt;

&lt;p&gt;As I begin to slowly learn the concept, there were a few days, I feel not much satisfied though I spend 1-hour learning. We felt this is a natural condition for a long-term journey, we shouldn’t get much use to it. I often need to look back at the challenges done earlier, to analyze and ensure I am not getting too comfortable with it. There were 1 or 2 challenges I felt best in maybe a week or day, which I try to beat much often. Yes, self-competition is much powerful to know we are really improving daily.&lt;/p&gt;

&lt;h3&gt;
  
  
  It’s true that dots will connect backward
&lt;/h3&gt;

&lt;p&gt;After around 60 days, we started discussing what works well &amp;amp; didn’t. And starts designing &amp;amp; developing the project during our non-office hours. Since it was part of my routine, I never logged it as part of my #100daysofcode :P&lt;/p&gt;

&lt;p&gt;To improve my learning still, I got an  &lt;a href="https://twitter.com/code_rams/status/1319986664396083200?s=20" rel="noopener noreferrer"&gt;udemy&lt;/a&gt; course as a gift as a giveaway. It’s a complete React course, which covers the entire react, redux, redux-saga, and best way to learn as a structured hands-on way to test out concepts I have learned earlier. TBH, it was my first Udemy course and I haven’t learned a structured course and think it would become as an  &lt;a href="https://twitter.com/code_rams/status/1331292588314226688?s=20" rel="noopener noreferrer"&gt;end of #100daysofcode&lt;/a&gt; as a summarized version of my learning.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Beginning of our next journey
&lt;/h3&gt;

&lt;p&gt;We build 100daysof.codes, on 4 main things.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The strong end goal and that will drive why-power of daily goals is essential. The more we connected to our daily goals, the more chances we never break it down.&lt;/li&gt;
&lt;li&gt;Beating out our personal self is essential to never get trapped into the comfort zone and focusing on daily goals that are of little value.&lt;/li&gt;
&lt;li&gt;We need a single place to revisit our journey, self analyze to ask ourselves the question are we really doing what we should do to improve ourselves. And plan the upcoming tasks earlier for the week to not doing the mistake of planning on the go and doing random tasks as self-gratification.&lt;/li&gt;
&lt;li&gt;Finally, as we have to see it frequently between our routines we decided it to be a new tab extension.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Here’s a sneak into my profile section, that I use to measure the progress.&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%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1606385534890%2FYWrbwD_fp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1606385534890%2FYWrbwD_fp.png" alt="Best moments"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;While #100daysofcode laid the foundation to do coding every day, we build 100daysof.codes on the idea to focus on the system to achieve better results. But the necessity to focus on the process of bigger goals is everywhere. Though we focused on #100daysofcode and built it out from our experience, there is far more to focus on evaluating it to be effective for all and improve our product. &lt;/p&gt;

&lt;p&gt;While starting the #100daysofcode, all I see as my challenge is to build the product to help others and get the most out of it to be a better developer. Now as I have built my product, I need a far stronger goal to push me even more forward and never back to the comfort zone.&lt;/p&gt;

&lt;p&gt;A few days back, I and Karthik decided to take this as the next big journey to focus more on this product and bring more value to the community. We incorporated our startup and we are working now full time on this. Though we are only two, we are already focusing on our challenges to build a process in managing the product, development, and financial roadmap of us and the company.&lt;/p&gt;

&lt;p&gt;Though everything feels the same while I was starting out #100daysofcode, it’s all changed when I push myself to a challenging environment around. We have the same confidence, we will learn much out of it in our journey ahead.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Don't wait for motivation. &lt;br&gt;
Just get started. *&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Join with us now at  &lt;a href="http://100daysof.codes/" rel="noopener noreferrer"&gt;100daysof.codes&lt;/a&gt;  and achieve your goal! &lt;/p&gt;

&lt;p&gt;Thanks for taking the time to read my journey. Feel free to, contact me in  &lt;a href="https://twitter.com/code_rams" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt; or comment below.  &lt;/p&gt;

</description>
      <category>100daysofcode</category>
      <category>startup</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
