<?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: Joseph kitheka</title>
    <description>The latest articles on Forem by Joseph kitheka (@joseph_kitheka).</description>
    <link>https://forem.com/joseph_kitheka</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%2F621691%2F51a62d0c-6b2c-4bbc-92db-92f82efa4429.jpg</url>
      <title>Forem: Joseph kitheka</title>
      <link>https://forem.com/joseph_kitheka</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/joseph_kitheka"/>
    <language>en</language>
    <item>
      <title>Conditional examples</title>
      <dc:creator>Joseph kitheka</dc:creator>
      <pubDate>Tue, 19 Jul 2022 12:46:19 +0000</pubDate>
      <link>https://forem.com/joseph_kitheka/conditional-examples-5c3m</link>
      <guid>https://forem.com/joseph_kitheka/conditional-examples-5c3m</guid>
      <description>&lt;h1&gt;
  
  
  Conditional examples
&lt;/h1&gt;

&lt;h2&gt;
  
  
  In this reading, you will learn when to use the if else statement and when to use the switch statement.
&lt;/h2&gt;

&lt;p&gt;Both if else and switch are used to determine the program execution flow based on whether or not some conditions have been met.&lt;/p&gt;

&lt;p&gt;This is why they are sometimes referred to as flow control statements. In other words, they control the flow of execution of your code, so that some code can be skipped, while other code can be executed.&lt;/p&gt;

&lt;p&gt;At the heart of both flow control structures lies the evaluation of one or more conditions.&lt;/p&gt;

&lt;p&gt;Generally, if else is better suited if there is a binary choice in the condition.&lt;/p&gt;

&lt;p&gt;For example, in plain English: if it's sunny, wear sunglasses. Otherwise, don't.&lt;/p&gt;

&lt;p&gt;In this case, using an if statement is an obvious choice.&lt;/p&gt;

&lt;p&gt;When there are a smaller number of possible outcomes of truth checks, it is still possible to use an if else statement, such as:&lt;br&gt;
  &lt;/p&gt;
&lt;pre&gt;&lt;br&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;light&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;green&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Drive&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;light&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;orange&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Get ready&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;light&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;red&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Dont' drive&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;The car is not green, orange, or red&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;


&lt;/pre&gt;
&lt;h2&gt;
  
  
  However, if there are a lot of possible outcomes, it is best practice to use a switch statement because it is easier less verbose. Being easier to read, it is easier to follow the logic, and thus reduce cognitive load of reading multiple conditions.
&lt;/h2&gt;

&lt;p&gt;Nevertheless, this is not a rule set in stone. It is simply a stylistic choice.&lt;/p&gt;

&lt;p&gt;To reinforce this point, here's an example of the earlier if else conditional statement, using the switch syntax: &lt;/p&gt;


&lt;pre&gt;&lt;br&gt;

&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;switch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;light&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
   &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;green&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
       &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Drive&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
       &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
   &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;orange&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
       &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Get ready&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
       &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
   &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;red&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
       &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Don't drive&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
       &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
   &lt;span class="nl"&gt;default&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
       &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;The light is not green, orange, or red&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
       &lt;span class="k"&gt;break&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;


&lt;/pre&gt;

</description>
    </item>
    <item>
      <title>Hey fork's i have started Mantine-UI Series on YouTube</title>
      <dc:creator>Joseph kitheka</dc:creator>
      <pubDate>Thu, 16 Jun 2022 08:30:20 +0000</pubDate>
      <link>https://forem.com/joseph_kitheka/hey-forks-i-have-started-mantine-ui-series-on-youtube-2a60</link>
      <guid>https://forem.com/joseph_kitheka/hey-forks-i-have-started-mantine-ui-series-on-youtube-2a60</guid>
      <description>&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/KUt7o4NyW24"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>mantineui</category>
      <category>react</category>
      <category>javascript</category>
      <category>beginners</category>
    </item>
    <item>
      <title>6 essential skills for React web developers</title>
      <dc:creator>Joseph kitheka</dc:creator>
      <pubDate>Fri, 13 May 2022 12:05:43 +0000</pubDate>
      <link>https://forem.com/joseph_kitheka/6-essential-skills-for-react-web-developers-12g1</link>
      <guid>https://forem.com/joseph_kitheka/6-essential-skills-for-react-web-developers-12g1</guid>
      <description>&lt;p&gt;React is the ultimate library for front-end developers today. Simply put, you get better at development when you learn React, and many organizations view these skills as essential. React developers should be hungry to level-up or audit the skills essential to Facebook’s prominent JavaScript Library. &lt;/p&gt;

&lt;p&gt;See how you stack up with these 6 essential skills for React developers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. HTML + CSS&lt;/strong&gt;&lt;br&gt;
No front-end dev is a stranger to HTML and CSS. The ability to work with and craft user interfaces is necessary to every organization. At a high level, React developers should be able to:&lt;/p&gt;

&lt;p&gt;Work with and write semantic HTML tags&lt;br&gt;
Work with and write CSS selectors&lt;br&gt;
Implement a CSS reset&lt;br&gt;
Understand the box model and how to reset to border-box&lt;br&gt;
Understand flexbox&lt;br&gt;
Work with and implement responsive web principles including the proper user of media queries&lt;br&gt;
&lt;strong&gt;2. JSX&lt;/strong&gt;&lt;br&gt;
In React, you never really touch HTML proper. You work with a syntax extension that is truly one of the most remarkable parts of the React ecosystem: JSX. JSX looks so much like HTML you may think of it as HTML-flavored JavaScript. What’s cool about JSX is that if you know HTML and CSS, you intuitively know how to work with JSX.&lt;/p&gt;

&lt;p&gt;JSX is an abstraction on top of the React.createElement() API. One reason it is vital to the library—and why the React team chose to go with it in the first place—is that the API would be too cumbersome to use in terms of scaling. One potentially could use React.createElement() to build out an entire application, however this wouldn’t be any more efficient than just using HTML proper. It may feel at first that we’ve taken a step backward by adding our Markup into our template logic, however a few quick minutes with JSX and you’ll be hooked on the style.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. JavaScript Fundamentals + ES6&lt;/strong&gt;&lt;br&gt;
You can’t rock React without a firm understanding of the fundamental concepts that the JavaScript language provides, but these ES6 skills are also essential: &lt;/p&gt;

&lt;p&gt;Variables and scoping&lt;/p&gt;

&lt;p&gt;Understanding when and where you have access to the data you need is critical. Variables are the mechanism built into JavaScript that allow us to hold onto data in memory and access that data later on within our applications. &lt;/p&gt;

&lt;p&gt;ES6 brought with it new keywords that we can use to store variables other than the traditional &lt;code&gt;var&lt;/code&gt; keyword (like &lt;code&gt;let&lt;/code&gt; and &lt;code&gt;const&lt;/code&gt;). You may choose to live by the principle that unless you absolutely need &lt;code&gt;var&lt;/code&gt;, use &lt;code&gt;const&lt;/code&gt; until your linter tells you otherwise, then default to &lt;code&gt;let&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;Arrays and objects&lt;/p&gt;

&lt;p&gt;React suggests a pattern that your &lt;code&gt;view is a function of your state&lt;/code&gt;. Arithmetically put, that’s &lt;code&gt;v = f(s)&lt;/code&gt;, and something you need to remember as you revisit your skills in the foundations of the library. &lt;/p&gt;

&lt;p&gt;State is data that we want to show to users or items in memory that we can access in order to allow our users to interact with our data. We hold all of the data that we present on an object called state and access these bits of data via properties on this state object. This is how React received its name; when state changes, the view updates (&lt;code&gt;v = f(s);&lt;/code&gt;). So your view ‘reacts’ to the changes that are made in your state object. &lt;/p&gt;

&lt;p&gt;You should brush up on how to mutate objects and change values of properties on them. Don’t worry, React takes care of the mechanism through a nifty function called &lt;code&gt;setState()&lt;/code&gt; to make this work to your advantage.&lt;/p&gt;

&lt;p&gt;Array methods&lt;/p&gt;

&lt;p&gt;It’s one thing to be able to store data and access it within arrays and objects. It’s another to be able to manipulate that data properly. The built-in JavaScript array methods are essential tools in every developer’s toolbox. Focus in on &lt;code&gt;.map&lt;/code&gt;, &lt;code&gt;.filter&lt;/code&gt; and &lt;code&gt;.reduce&lt;/code&gt; for maximum impact.&lt;/p&gt;

&lt;p&gt;Functions and arrow functions&lt;/p&gt;

&lt;p&gt;In React, every single component you build is a function in one way or another. Remember that ‘classes’ are just &lt;code&gt;constructor functions&lt;/code&gt; under the hood. Regardless of the syntax you’re using, when building &lt;code&gt;functional components&lt;/code&gt; or &lt;code&gt;class components&lt;/code&gt; you’re using some form of a function. &lt;/p&gt;

&lt;p&gt;Don’t underestimate the importance of these fundamentals. Many practices out there today that lend themselves to functional programming. The chance to use JavaScript functions to build out small chunks of UI is like building a Lego set without instructions. Each piece of UI is an encapsulated function that contains the state data your elements need to present, the elements themselves and the formal component logic you need to use that logic. Each component is a Lego brick, and it’s up to you to fit them all together. &lt;/p&gt;

&lt;p&gt;DOM Manipulation and event handlers&lt;/p&gt;

&lt;p&gt;In React, manipulating the actual DOM elements is rare. Remember we now have the JSX abstraction at our disposal. The native event object that you get with normal DOM manipulation in React is actually wrapped up in what’s called the SyntheticEvent. Make sure you can attach different types of events to HTML elements such as &lt;code&gt;onclicks&lt;/code&gt;, &lt;code&gt;onchange&lt;/code&gt;, &lt;code&gt;mouseenter&lt;/code&gt;, etc. &lt;/p&gt;

&lt;p&gt;The “this” keyword&lt;/p&gt;

&lt;p&gt;The ‘this’ keyword is one of the commonly misused features in JavaScript. Think of ‘this’ as a pointer to an object. For example, you can use the ‘this’ keyword to reference an object without having to refer to that object’s name.&lt;/p&gt;

&lt;p&gt;Higher order functions and callback functions&lt;/p&gt;

&lt;p&gt;The idea that functions can be passed around as arguments—in the case of high order functions and callbacks—is what drives the &lt;code&gt;input/output&lt;/code&gt; model of functional programming. &lt;/p&gt;

&lt;p&gt;You pass handlers around everywhere in React. Most of the time the handlers you pass around are in the form of methods that are chained onto an object and accessed as properties, which will be bound up in the prototype chain. However, there are moments that you need to reach outside of the React component paradigm or create a few different types of components that extend some of the functionality to one another. These patterns are commonly referred to as advanced React patterns and they’re finding their way into the better/common practices realm. React will push you to be innovative and creative as you scale along with it.&lt;/p&gt;

&lt;p&gt;Prototypal inheritance and object creation&lt;/p&gt;

&lt;p&gt;React lends itself to a functional programming paradigm in many aspects. However, you work in the world of classes and, as a result, a world of object creation. If you understand the basics of how the prototype chain works in JavaScript, you’ll know what you need to about how we achieve inheritance in JavaScript. Remember, that there are no traditional classes in JavaScript. The class keyword is just syntactic sugar on top of the &lt;code&gt;object prototype&lt;/code&gt; chain in JavaScript. &lt;/p&gt;

&lt;p&gt;The ‘class’ keyword&lt;/p&gt;

&lt;p&gt;JavaScript classes aren’t the same as classes in a traditional programming sense. You create classes that encapsulate your template logic, formal JavaScript logic and even styles known as components. These components are the building blocks of any React application, and there are only two ways to write the basic component: either by declaring it as a function or declaring it as a class.&lt;/p&gt;

&lt;p&gt;Assess your proficiency with classes by making sure you can answer: &lt;/p&gt;

&lt;p&gt;How do I set up methods on a class? &lt;br&gt;
How do I bind those methods together? &lt;br&gt;
How do I access properties that are found on the constructor? &lt;br&gt;
How do I create objects that would be considered ‘children’ of parent objects?&lt;br&gt;
&lt;strong&gt;4. Git&lt;/strong&gt;&lt;br&gt;
Git is essential to every developer's toolkit for storing projects on solutions like GitHub, Bitbucket and GitLab. Skills that should just be part of your day-to-day include:&lt;/p&gt;

&lt;p&gt;Tracking changes with add, commit, push and pull&lt;br&gt;
Branching and merging strategies&lt;br&gt;
Handling merge conflicts&lt;br&gt;
&lt;strong&gt;5. Node + npm&lt;/strong&gt;&lt;br&gt;
Node may be a surprise to many. Why would you need to know how to work with Node in order to be a client-side React dev? While you can pull React into any HTML file, there will be many other packages out there that will allow you to extend the React library. &lt;/p&gt;

&lt;p&gt;React developers need to have a solid understanding of the npm registry. This is the place where software developers can go to get software to help them build software. Sounds funny, but truly that’s all the npm is: a cloud storage for packages we call dependencies. &lt;/p&gt;

&lt;p&gt;Yarn vs npm&lt;/p&gt;

&lt;p&gt;Yarn is a package manager that is built to utilize the npm registry. Yarn actually optimizes your npm workflows. Yarn and npm somewhat compete today, but the mission of Yarn has been to solve a lot of the problems that are accepted in the Node/npm ecosystem. npm has been doing everything it can to follow the patterns and practices that Yarn presents.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. Redux&lt;/strong&gt;&lt;br&gt;
Hot button issue alert: React has built-in state management. And many devs have been burned along the way by discovering the asynchronicity of state updates and how React handles them. For that reason, and for scalability, Redux was born. Redux is a state management library and more. It’s not a framework, but an opinionated way of working with data. The principles behind Redux are along the lines of functional programming and immutability, but it’s not a one-size-fits-all-solution. Mastering the concepts of fundamental React programming prior to diving into Redux is key.&lt;br&gt;
To learn more about the various skills to learn to be a successful web developer check out our My &lt;strong&gt;&lt;a href="https://bit.ly/3ot3X28"&gt;YoutubeChannel&lt;/a&gt;&lt;/strong&gt; web development.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>NextJS Authentication With Social OAuth Provider's-Next-Auth (full course 2022)</title>
      <dc:creator>Joseph kitheka</dc:creator>
      <pubDate>Fri, 13 May 2022 07:52:30 +0000</pubDate>
      <link>https://forem.com/joseph_kitheka/nextjs-authentication-with-social-oauth-providers-next-auth-full-course-2022-1o50</link>
      <guid>https://forem.com/joseph_kitheka/nextjs-authentication-with-social-oauth-providers-next-auth-full-course-2022-1o50</guid>
      <description>&lt;p&gt;🔥🔥Hello and welcome to the next js social login authentication, part of the full course on NextJS.In this video we are going to:- Setup our Social OAuth service with Facebook- Add the social provider into our NextJS project- Compile and run the application- Finally test to see if it works. So let's get started&lt;br&gt;
&lt;a href="https://youtu.be/8wEnIDTZk8g"&gt;Watch More&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>6 Valuable Skills for Novice Front-end Developers in 2022</title>
      <dc:creator>Joseph kitheka</dc:creator>
      <pubDate>Thu, 06 Jan 2022 13:59:30 +0000</pubDate>
      <link>https://forem.com/joseph_kitheka/6-valuable-skills-for-novice-front-end-developers-in-2022-3002</link>
      <guid>https://forem.com/joseph_kitheka/6-valuable-skills-for-novice-front-end-developers-in-2022-3002</guid>
      <description>&lt;p&gt;As a front-end developer, it’s your job to make sure that the user interface of a software program functions properly.&lt;br&gt;
It’s a difficult job because you have to make sure that every component works the way it’s supposed to so that users have a good experience.&lt;br&gt;
Front end development is in high demand right now. Front-end developers manage the UI / UX of the software. And this is important because users interact directly with the front end of an application.&lt;br&gt;
In this article, we are going to talk about some of the most valuable skills that beginner front-end developers can cultivate. Learning the following skills will help you advance in your career.&lt;/p&gt;

&lt;h2&gt;
  
  
  Learn Modern JavaScript (ES6)
&lt;/h2&gt;

&lt;p&gt;The JavaScript programming language has evolved from ES1 to ES6 over the past 25 years, and it has included some wonderful new capabilities with each new release.&lt;br&gt;
In 2015, ES6 was published as a new standardized version of JavaScript. ECMAScript 2015 is another name for it. And ES6 has many new features that can help you write better code.&lt;br&gt;
With Object-Oriented Classes, Arrow Functions, String Literals, and much more, it is the foundation for modern libraries like React and Vue.&lt;br&gt;
Helpful Features of ES6&lt;br&gt;
Destructuring assignment&lt;br&gt;
➡ You can read values from an array of attributes from an object into individual variables using the destructuring assignment.&lt;br&gt;
Examples of how the destructuring assignment works in ES6:&lt;br&gt;
let myName, myRole; let array = ['Chaitanya', 'Web Developer']; [myName, myRole] = array; //positional assignment occurs here console.log(myName, my Role); //Chaitanya Web Developer&lt;br&gt;
Destructuring an array&lt;br&gt;
let myName, myRole; let object = {myName:'Chaitanya', myRole:'Web Developer'}; ({myName, myRole}=object); //properties (keys) are matched with the local variable names console.log(myName, myRole); //Chaitanya Web Developer&lt;br&gt;
Destructuring an object&lt;br&gt;
Arrow function expressions&lt;br&gt;
➡ Arrow function expressions are a new syntax for creating ordinary function expressions. We can ignore the function and return with one-liner code using arrow function expressions.&lt;br&gt;
let getName = ((firstName, lastName) =&amp;gt; { let myRole = 'Web Developer'; return &lt;code&gt;My name is ${firstName} ${lastName} I am a ${myRole}.&lt;/code&gt;; });&lt;br&gt;
Arrow Function&lt;br&gt;
Example of arrow function expressions in ES6:&lt;br&gt;
Default parameters&lt;br&gt;
➡ The default value for function arguments in JavaScript is undefined. So sometimes it’s more practical to use a different value instead. We can do this using default function parameters.&lt;br&gt;
function add(number1, number2) { return number1+number2; } add (3,4); //returns 7 add(3); //returns NaN as number2 is undefined&lt;br&gt;
Without ES6&lt;br&gt;
function add(num1, num2=7) { return num1+num2; } add (5,2) //returns 7 add(3) //returns 10 as num2 has default value = 7&lt;br&gt;
With ES6&lt;br&gt;
JavaScript ES6, ES7, ES8: Learn to Code on the Bleeding Edge (Full Course)&lt;br&gt;
ES6 Javascript Tutorial For Beginners | ES6 Crash Course&lt;br&gt;
Modern JavaScript — Learn Imports, Exports, Let, Const, and Promises in ES6+&lt;br&gt;
Example of how default parameters work in ES6:&lt;br&gt;
How to Learn ES6&lt;br&gt;
Web Performance and Quality&lt;br&gt;
It’s critical that your website runs smoothly and without errors. The time it takes for your website to load is affected by multiple factors related to web performance.&lt;br&gt;
Use optimized and smaller images. TinyPNG is a good choice for compressing images without losing a lot of quality.&lt;br&gt;
Remove unwanted CSS and JavaScript, as it makes your code bulky.&lt;br&gt;
Get a good hosting provider. Some good ones to check out are Linode, Digital Ocean, or SiteGround.&lt;br&gt;
WordPress Tip: Remove unwanted plugins. I don’t recommend using more than 10 plugins unless it’s required.&lt;br&gt;
There are steps you can take to increase your site’s performance if you’re having problems with your site taking too long to load.&lt;br&gt;
How to improve web performance:&lt;br&gt;
It doesn’t matter if you create the most amazing website ever. If it doesn’t work effectively and deliver content quickly to your users, it won’t matter.&lt;br&gt;
Users don’t like to wait more than 3 seconds for a website to load — that’s not much time. So if your site takes longer than that, your bounce rate will go through the roof.&lt;br&gt;
Chrome DevTools&lt;br&gt;
A console panel that interacts with JavaScript on the page as a shell or collects logs and diagnostic data.&lt;br&gt;
A device toolbar which helps you to create responsive websites.&lt;br&gt;
Elements that are used to govern CSS and the Document Object Model (DOM).&lt;br&gt;
Web performance insights.&lt;br&gt;
Security and network functions.&lt;br&gt;
Chrome Developer Tools are included in the Google Chrome browser and experienced developers use them all the time for iterating, debugging, and analyzing websites.&lt;br&gt;
Google Chrome DevTools include:&lt;br&gt;
You can learn more about Chrome DevTools here.&lt;br&gt;
Chrome DevTools are very useful tools once you understand how to use them comfortably. You can use this Chrome DevTools — Crash Course by freeCodeCamp to learn more about them.&lt;br&gt;
Version Control with Git&lt;br&gt;
Git, or Global Information Tracker, is an open-source distributed version control system. It’s software that tracks changes in a set of files, and developers typically use it to coordinate when they’re working on source code together during software development.&lt;br&gt;
After all your hard work coding, the last thing you want to do is start your work from the beginning if something doesn’t go according to the plan. In this situation, Git will help you to go back to the previous version of your software without losing any code.&lt;br&gt;
Git and GitHub for Beginners — Crash Course&lt;br&gt;
Git for Professionals Tutorial — Tools &amp;amp; Concepts for Mastering Version Control with Git&lt;br&gt;
Knowing the basics of Git is a skill that you (and your potential employers and clients) will appreciate.&lt;br&gt;
How to learn Git&lt;br&gt;
Responsive Design&lt;br&gt;
People access the internet on everything from smartphones and tablets to laptops and desktops — and these all have different screen sizes. So responsive design (which helps you design apps that work on all screen sizes) should be a top priority in any application or website you develop.&lt;br&gt;
💡 Fun Fact: mobile traffic &amp;gt; desktop computer traffic.&lt;br&gt;
How Responsive Design Works&lt;br&gt;
A website with mobile-friendly features, content, and media is referred to as a responsive site. Responsive websites adjust to the device that a visitor is using, including smartphones, tablets, and PCs.&lt;br&gt;
Best Practices for Responsive Design&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Don’t forget about the navbar menu. Make sure to build a hamburger menu for small screen devices.&lt;/li&gt;
&lt;li&gt;Test your responsive website on a variety of devices and browsers, as usual. You can use Google Mobile-Friendly Test and Screen Test for testing your website.
One thing to keep in mind about responsive design is that it is a built-in feature of CSS frameworks like Tailwind and Bootstrap. This means that these frameworks help you to make websites more responsive for all device sizes with a little less work.
Introduction To Responsive Web Design — HTML &amp;amp; CSS Tutorial
Bootstrap CSS Framework — Full Course for Beginners
UI / UX Design Tutorial — Wireframe, Mockup &amp;amp; Design in Figma
An unresponsive website with amazing design is worthless today. The majority of people will likely visit your app or website on a mobile device.
How to learn responsive design for a website
Learn to Work with Frameworks
CSS and JavaScript frameworks are sets of files that take care of a lot of the heavy lifting for you by offering standard features. Instead of starting with a blank text page, you may start with a code file that already has a lot of JavaScript in it.
JavaScript and CSS frameworks are changing how developers write code. Some frameworks were built to help you create complicated user interfaces, while others thrive at displaying your website’s content.
Choosing the right framework is as important as learning it. Popular frameworks are not always a good choice, and you should pick one according to your specific requirements.
React — It’s a free and open-source front-end JavaScript framework for creating UI component-based user interfaces. Meta maintains it.
Vue — Vue.js is an open-source front-end JavaScript framework for creating single-page apps and user interfaces. Evan, You created it.
Svelte — Rich Harris designed Svelte, a free and open-source front-end compiler that is presently maintained by Vercel.
That being said, there are some that are in very high demand that are really worth learning.
Bootstrap — Bootstrap is an open-source framework for interface components that includes CSS and JavaScript-based templates.
Tailwind CSS — Tailwind CSS is a utility-first CSS framework that includes classes for creating custom UI designs.
Bulma — Bulma is an open-source CSS framework. It has a lot of built-in capabilities that help you get things done faster and with less CSS.
Recommended JavaScript frameworks:
Recommended CSS frameworks:
That’s a Wrap!
Thanks for reading this article. I also write regularly in my newsletter The Learners. You can signup directly here. 👇👇
If you read this far, tweet to the author to show them you care. Tweet a thanks&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>react</category>
      <category>tailwindcss</category>
    </item>
    <item>
      <title>Hello everyone in the community am new in these platform read to learn and share am a front end developer</title>
      <dc:creator>Joseph kitheka</dc:creator>
      <pubDate>Tue, 27 Apr 2021 10:47:01 +0000</pubDate>
      <link>https://forem.com/joseph_kitheka/hello-everyone-in-the-community-am-new-in-these-platform-read-to-learn-and-share-am-a-front-end-developer-h2a</link>
      <guid>https://forem.com/joseph_kitheka/hello-everyone-in-the-community-am-new-in-these-platform-read-to-learn-and-share-am-a-front-end-developer-h2a</guid>
      <description></description>
    </item>
  </channel>
</rss>
