<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Afolabi Abdullahi</title>
    <description>The latest articles on DEV Community by Afolabi Abdullahi (@linktoyinka).</description>
    <link>https://dev.to/linktoyinka</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%2F1146437%2Ff141e3da-f868-45b9-95dc-d0f01f761fab.jpg</url>
      <title>DEV Community: Afolabi Abdullahi</title>
      <link>https://dev.to/linktoyinka</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/linktoyinka"/>
    <language>en</language>
    <item>
      <title>CSS Animation Made Extremely Easy</title>
      <dc:creator>Afolabi Abdullahi</dc:creator>
      <pubDate>Sat, 02 Sep 2023 17:37:45 +0000</pubDate>
      <link>https://dev.to/linktoyinka/css-animation-made-extremely-easy-2l9j</link>
      <guid>https://dev.to/linktoyinka/css-animation-made-extremely-easy-2l9j</guid>
      <description>&lt;p&gt;Animating in CSS using keyframes requires time and effort. This is because it is hard to achieve in most cases. Let me introduce you to a JavaScript library named Animate on Scroll &lt;strong&gt;(AOS)&lt;/strong&gt;. AOS makes animation easy by adding attributes to your HTML tags.&lt;/p&gt;

&lt;h1&gt;
  
  
  Introduction
&lt;/h1&gt;

&lt;p&gt;Having a website is a must for anyone who wants to have an online presence. When you have the website, you can tell the people on the internet about what they do or the services they render. The joy of every website owner is for people to find their website interesting. This will make website visitors spend more time and read more content on your website.&lt;/p&gt;

&lt;p&gt;One of the ways to do this is to add friendly animations to your website and not overuse them. Most developers don't animate websites because it takes time and is stressful. With Animate on Scroll, animating websites is now easier than before. In this article, I will teach you how to animate your website with &lt;strong&gt;AOS&lt;/strong&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  Prerequisites
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Basic knowledge of HTML and CSS.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Familiarity with JavaScript and JavaScript concepts like object.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Familiarity with integrated development environment (IDE) and terminal/command line for running code.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Animate on Scroll (AOS)
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rveh3u-E--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn.hashnode.com/res/hashnode/image/upload/v1693655675355/d6209907-7d9a-4bf6-b014-b51c264b5c88.jpeg%3Fauto%3Dcompress%2Cformat%26format%3Dwebp%2520align%3D%2522center%2522" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rveh3u-E--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn.hashnode.com/res/hashnode/image/upload/v1693655675355/d6209907-7d9a-4bf6-b014-b51c264b5c88.jpeg%3Fauto%3Dcompress%2Cformat%26format%3Dwebp%2520align%3D%2522center%2522" alt="" width="800" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AOS&lt;/strong&gt; is a JavaScript library with over 20 predefined animations for your websites. To add these animations to your website, you will need to install the library on your website.&lt;/p&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;p&gt;There are two ways of installing &lt;strong&gt;AOS&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Basic Installation:&lt;/strong&gt; Install the library by adding an external stylesheet to your &lt;code&gt;head&lt;/code&gt; tag.&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight xml"&gt;&lt;code&gt;  &lt;span class="nt"&gt;&amp;lt;link&lt;/span&gt; &lt;span class="na"&gt;rel=&lt;/span&gt;&lt;span class="s"&gt;"stylesheet"&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/aos@next/dist/aos.css"&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;Add script right before the close of &lt;code&gt;&amp;lt;/body&amp;gt;&lt;/code&gt; tag and initialize &lt;strong&gt;AOS&lt;/strong&gt;.&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight xml"&gt;&lt;code&gt;  &lt;span class="nt"&gt;&amp;lt;script&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://unpkg.com/aos@next/dist/aos.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;script&amp;gt;&lt;/span&gt;
    AOS.init();
  &lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Package Managers:&lt;/strong&gt; Install the package using yarn &lt;code&gt;yarn add aos@next&lt;/code&gt; or npm &lt;code&gt;npm install --save aos@next&lt;/code&gt; After that, import the script and styles and initialize &lt;strong&gt;AOS&lt;/strong&gt;.&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;AOS&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;aos&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;aos/dist/aos.css&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// You can also use &amp;lt;link&amp;gt; for styles&lt;/span&gt;
&lt;span class="c1"&gt;// ..&lt;/span&gt;
&lt;span class="nx"&gt;AOS&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;init&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  How to use it
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Basic usage
&lt;/h3&gt;

&lt;p&gt;Adding the animation to your HTML content is simple. To do this, you will add the &lt;code&gt;data-aos&lt;/code&gt; attribute for the effect on your HTML.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight xml"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;data-aos=&lt;/span&gt;&lt;span class="s"&gt;"fade-in"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Also, you can use the &lt;strong&gt;AOS&lt;/strong&gt; attributes in all HTML tags.&lt;/p&gt;

&lt;p&gt;A few of the predefined &lt;strong&gt;AOS&lt;/strong&gt; animations are put into use below:&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/linktoyinka/embed/JjwKgLo?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
 &lt;/p&gt;

&lt;p&gt;You can check the remaining available animations on the &lt;a href="https://michalsnik.github.io/aos/"&gt;AOS website&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;
  
  
  Advance usage
&lt;/h3&gt;

&lt;p&gt;Adding &lt;strong&gt;AOS&lt;/strong&gt; animations to your website with settings you would like to set yourself, like duration, delay, and offset. You can do this by adding the attribute you want to edit to the AOS default attribute &lt;code&gt;data-aos-*&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight xml"&gt;&lt;code&gt;  &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt;
    &lt;span class="na"&gt;data-aos=&lt;/span&gt;&lt;span class="s"&gt;"fade-up"&lt;/span&gt;
    &lt;span class="na"&gt;data-aos-offset=&lt;/span&gt;&lt;span class="s"&gt;"200"&lt;/span&gt;
    &lt;span class="na"&gt;data-aos-delay=&lt;/span&gt;&lt;span class="s"&gt;"50"&lt;/span&gt;
    &lt;span class="na"&gt;data-aos-duration=&lt;/span&gt;&lt;span class="s"&gt;"1000"&lt;/span&gt;
    &lt;span class="na"&gt;data-aos-easing=&lt;/span&gt;&lt;span class="s"&gt;"ease-in-out"&lt;/span&gt;
    &lt;span class="na"&gt;data-aos-mirror=&lt;/span&gt;&lt;span class="s"&gt;"true"&lt;/span&gt;
    &lt;span class="na"&gt;data-aos-once=&lt;/span&gt;&lt;span class="s"&gt;"false"&lt;/span&gt;
    &lt;span class="na"&gt;data-aos-anchor-placement=&lt;/span&gt;&lt;span class="s"&gt;"top-center"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A few of the predefined advanced usage of AOS animations are put into use below:&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/linktoyinka/embed/zYyKOGv?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
 &lt;/p&gt;

&lt;p&gt;You can check the remaining available animations in the table below.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Attribute&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example value&lt;/th&gt;
&lt;th&gt;Default value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;data-aos-offset&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Adjust the offset to start the animation sooner or later (px).&lt;/td&gt;
&lt;td&gt;200&lt;/td&gt;
&lt;td&gt;120&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;data-aos-duration&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Animation runtime (ms).&lt;/td&gt;
&lt;td&gt;600&lt;/td&gt;
&lt;td&gt;400&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;data-aos-easing&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Select the timing function for the element easing feature in multiple ways.&lt;/td&gt;
&lt;td&gt;ease-in-sine&lt;/td&gt;
&lt;td&gt;ease&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;data-aos-delay&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Animation delay (ms).&lt;/td&gt;
&lt;td&gt;300&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;data-aos-anchor&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Offset value that will be used for the anchor element instead of the default set value.&lt;/td&gt;
&lt;td&gt;#selector&lt;/td&gt;
&lt;td&gt;null&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;data-aos-anchor-placement&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Element on the screen that should be in the anchor position to start the animation.&lt;/td&gt;
&lt;td&gt;top-center&lt;/td&gt;
&lt;td&gt;top-bottom&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;data-aos-once&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Select whether the animation should play only once or each time you scroll up or down to an element.&lt;/td&gt;
&lt;td&gt;true&lt;/td&gt;
&lt;td&gt;false&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;disable&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The condition in which AOS should not function.&lt;/td&gt;
&lt;td&gt;mobile&lt;/td&gt;
&lt;td&gt;false&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;h3&gt;
  
  
  Global settings
&lt;/h3&gt;

&lt;p&gt;If you are using the same advanced attributes for your animations, setting these attributes one after the other will take more time, and you will also write more lines of code. We will provide a solution to this using this setting.&lt;/p&gt;

&lt;p&gt;To do this, add the options object to the &lt;code&gt;init()&lt;/code&gt; function, like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight xml"&gt;&lt;code&gt;  &lt;span class="nt"&gt;&amp;lt;script&amp;gt;&lt;/span&gt;
    AOS.init({
      offset: 200,
      duration: 600,
      easing: 'ease-in-sine',
      delay: 100,
    });
  &lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Make your own animation
&lt;/h2&gt;

&lt;p&gt;We can create new animations with AOS if we don't like the default animations that AOS gives us.&lt;/p&gt;

&lt;p&gt;To do this, we will work on two states, which are&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Before animation&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;After animation&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="c"&gt;/* Before animation*/&lt;/span&gt;
&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;data-aos&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"new-animation"&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;transform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;rotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;300deg&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;scale&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;0.3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="nl"&gt;opacity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;transition-property&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;transform&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;opacity&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="c"&gt;/* After animation */&lt;/span&gt;
&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;data-aos&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"new-animation"&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="nc"&gt;.aos-animate&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;transform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;rotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;scale&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="nl"&gt;opacity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To use our newly created animation, we will add the attribute &lt;code&gt;data-aos="new-animation"&lt;/code&gt; to the element we want to animate.&lt;/p&gt;

&lt;p&gt;See our newly created animation in action below.&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/linktoyinka/embed/RwEGbmq?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
 &lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;In this article, we talked about Animate on Scroll (AOS), one of the JavaScript libraries for animation. We break down every detail of how we can use this library to animate our websites. We also talk about how to make our own animations.&lt;/p&gt;

&lt;p&gt;We can animate our websites now without worrying about the stress that comes with the default CSS way of animating elements on the front end of our websites.&lt;/p&gt;

&lt;h1&gt;
  
  
  References
&lt;/h1&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://michalsnik.github.io/aos/"&gt;AOS Website&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://github.com/michalsnik/aos"&gt;AOS GitHub Repository&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>css</category>
      <category>cssanimations</category>
      <category>beginners</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Demystifying Blockchain Technology: Applications and Implications</title>
      <dc:creator>Afolabi Abdullahi</dc:creator>
      <pubDate>Fri, 01 Sep 2023 15:49:32 +0000</pubDate>
      <link>https://dev.to/linktoyinka/demystifying-blockchain-technology-applications-and-implications-mbd</link>
      <guid>https://dev.to/linktoyinka/demystifying-blockchain-technology-applications-and-implications-mbd</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;You've probably heard the term "blockchain technology" a lot in the last few years, probably about cryptocurrencies like Bitcoin. Indeed, you may be wondering, "What is blockchain technology?" Blockchain appears to be a platitude, but only in a hypothetical sense, as there is no real meaning that the layperson can easily understand. It is critical to understand "what is blockchain technology," including the technology used, how it works, and how it is becoming increasingly important in the digital world.&lt;/p&gt;

&lt;h2&gt;
  
  
  Understanding Blockchain Technology
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What is Blockchain Technology
&lt;/h3&gt;

&lt;p&gt;Blockchain technology is a complex database technique that permits the transparent sharing of information within a corporate network. In a blockchain database, data is kept in blocks linked together in a chain. The data is temporally consistent since you cannot delete or amend the chain without network consensus. As a result, blockchain technology may be used to construct an immutable ledger that can be used to monitor orders, payments, accounts, and other transactions. The system has procedures in place to prevent illegal transaction submissions and ensure consistency in the shared view of these transactions.&lt;/p&gt;

&lt;p&gt;Blockchain technology possesses the following characteristics:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Decentralization:&lt;/strong&gt; Unlike systems, a blockchain operates on a network of computers (known as nodes), where no single entity has ultimate control. This decentralized nature enhances transparency and bolsters security.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Immutability:&lt;/strong&gt; Once data is recorded on a blockchain, it becomes unchangeable. Cannot be deleted. This immutability ensures the integrity and reliability of the information stored within.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Transparency:&lt;/strong&gt; All participants in the blockchain network have access to the transaction history, fostering trust among users by promoting openness and accountability.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Security:&lt;/strong&gt; Blockchain employs techniques to safeguard transactions, making it highly resistant to activities and hacking attempts.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These distinguishing features highlight the effectiveness and robustness of technology in applications.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why is Blockchain Important?
&lt;/h3&gt;

&lt;p&gt;The challenges of recording financial transactions using traditional database technologies are numerous. Take the sale of a piece of real estate, for instance. After a financial transaction, the buyer becomes the legal owner of the property. The buyer and seller can keep separate records of the financial transactions, but neither source is reliable. Both the buyer and seller are perfectly capable of claiming that they have paid the money even though they haven't. Even if they have received it, the seller can easily deny it.&lt;/p&gt;

&lt;p&gt;A trustworthy third party must oversee and validate transactions to avoid any legal difficulties. The existence of this central authority not only complicates the trade but also provides a single point of failure. Both parties may suffer if the main database is hacked.&lt;/p&gt;

&lt;p&gt;Blockchain solves these problems by creating a secure, decentralized system that can't be tampered with. For example, in a property transaction, blockchain creates a single ledger for each buyer and seller. All the transactions have to be agreed upon by both parties, and they're updated in real-time in both ledgers. If something goes wrong in one of the past transactions, it'll ruin the whole ledger. These features of blockchain have made it popular in different industries, like creating digital currencies like Bitcoin.&lt;/p&gt;

&lt;h3&gt;
  
  
  How Does Blockchain Work?
&lt;/h3&gt;

&lt;p&gt;The blockchain operates using methods to achieve agreement including;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Proof of Work (PoW); This approach, utilized by Bitcoin involves miners solving puzzles to add blocks to the blockchain. Although it ensures security it requires power and time making it energy intensive.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Proof of Stake (PoS); In PoS validators are selected to create blocks based on the amount of cryptocurrency they possess and are willing to "stake" as collateral. PoS is more environmentally friendly compared to PoW.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Delegated Proof of Stake (DPoS) Proof of Authority (PoA) and other variations; These consensus mechanisms prioritize efficiency and scalability while maintaining a level of security.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Applications of Blockchain Technology
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Initial Coin Offerings:&lt;/strong&gt; Cryptocurrencies are blockchain's first and most well-known use. Blockchain technology has been used to develop several digital currencies, including Bitcoin, Ethereum, and many more. These currencies are not dependent on conventional financial institutions to function.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Smart Contracts:&lt;/strong&gt; Smart contracts are self-executing agreements in which the terms are directly put into the program code. When predetermined criteria are satisfied, they automatically carry out and enforce the terms. The Ethereum blockchain serves as the main foundation for building and using smart contracts, which makes a variety of decentralized applications (DApps) possible.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Management of the Supply Chain:&lt;/strong&gt; Blockchain can help make the supply chain more traceable and transparent. Businesses may use blockchain to track a product's route from manufacturer to customer, minimizing fraud, guaranteeing quality control, and boosting productivity.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Identity confirmation:&lt;/strong&gt; Blockchain identity verification is secure and decentralized. By keeping your info private and only giving it to a third party if you need to, you can reduce your chances of being targeted for identity theft.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Health Care&lt;/strong&gt;: Blockchain can securely store and manage patient data in healthcare, keeping data secure and making it easier for different healthcare providers to work together.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Voting devices:&lt;/strong&gt; Blockchain voting systems can provide a secure and transparent way to vote, reducing the risk of fraud and keeping the democratic process honest.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Financial and Banking:&lt;/strong&gt; Blockchain can revolutionize financial services by making international transactions faster and cheaper, reducing fraud, and increasing transparency.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Intellectual Property:&lt;/strong&gt; Creators can use blockchain to prove who owns what and protect intellectual property rights.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Implications of Blockchain Technology
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Disrupting Traditional Industries&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Blockchain can revolutionize traditional industries by getting rid of middlemen, cutting costs, and making things more efficient. This could have a huge impact on finance, supply chains, and more.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Enhanced Security Measures&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Blockchain has a lot of security features that make it really tough to hack and fraud, which makes it a better choice for a lot of different uses.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Decentralization and Building Trust&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Blockchain makes it easier for people to trust each other in a network by removing the need for centralized authorities, which helps keep corruption and manipulation at bay.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Addressing Regulatory Complexities&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Blockchain is decentralized, which means there are a lot of rules and regulations that need to be followed, especially when it comes to data security, taxes, and smart contracts.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Environmental Considerations&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Blockchains like Bitcoin have been accused of using too much energy, so the industry is looking into more sustainable options.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Blockchain technology has evolved far beyond its initial role in cryptocurrency. Its decentralized, secure, and transparent nature holds immense potential across various industries. However, it also presents challenges and regulatory concerns that need to be addressed as it continues to disrupt and transform traditional systems. Understanding blockchain's applications and implications is crucial for individuals and organizations looking to harness its power in the digital age.&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>cryptocurrency</category>
      <category>beginners</category>
    </item>
    <item>
      <title>The Essence of JavaScript in Web Development</title>
      <dc:creator>Afolabi Abdullahi</dc:creator>
      <pubDate>Fri, 01 Sep 2023 15:40:55 +0000</pubDate>
      <link>https://dev.to/linktoyinka/the-essence-of-javascript-in-web-development-4p1n</link>
      <guid>https://dev.to/linktoyinka/the-essence-of-javascript-in-web-development-4p1n</guid>
      <description>&lt;p&gt;I know you have been wondering what exactly this JavaScript &lt;strong&gt;(JS)&lt;/strong&gt; is that has gathered so much attention everywhere. The answer is straightforward: JS is a very potent scripting and programming language that web developers frequently utilize to add distinctive features like interactivity to web pages, applications, servers, and even games. What makes it great is the ability to work on the front-end and the back-end of any software, which most programming languages lack.&lt;/p&gt;

&lt;p&gt;JavaScript, on the other end, can’t stand alone. In this regard, to begin your journey in JS, you need a solid understanding of two other standard web technologies, which are HTML and CSS.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;HTML is the skeleton of a website that frames how the website will be structured.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;CSS adds style and formatting to the skeleton, making it beautiful.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;JavaScript turns those beautified skeletons into something that a user can interact with.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bV_lYemR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn.hashnode.com/res/hashnode/image/upload/v1692558951414/7a59078a-3f81-4aef-a99a-70846ba47f81.png%3Fauto%3Dcompress%2Cformat%26format%3Dwebp%2520align%3D%2522center%2522" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bV_lYemR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn.hashnode.com/res/hashnode/image/upload/v1692558951414/7a59078a-3f81-4aef-a99a-70846ba47f81.png%3Fauto%3Dcompress%2Cformat%26format%3Dwebp%2520align%3D%2522center%2522" alt="the relationship between HTML, CSS, and JS." width="507" height="285"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Brendan Eich created JavaScript in 1995. It was initially created for Netscape 2, and it became the ECMA-262 standard in 1997 after being given to ECMA. The Mozilla Foundation then kept working on creating JavaScript for the Firefox browser.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Year&lt;/th&gt;
&lt;th&gt;ECMA Version&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1997&lt;/td&gt;
&lt;td&gt;ES1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1998&lt;/td&gt;
&lt;td&gt;ES2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1999&lt;/td&gt;
&lt;td&gt;ES3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2008&lt;/td&gt;
&lt;td&gt;ES4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2009&lt;/td&gt;
&lt;td&gt;ES5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2016&lt;/td&gt;
&lt;td&gt;ES6&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;In 2018, the ES6 version was developed to provide full support for all browsers.&lt;/p&gt;

&lt;p&gt;The general usage of JavaScript by most web developers is to modify HTML and CSS to update the user interface dynamically. This is usually done by the Document Oriented Model &lt;strong&gt;(DOM)&lt;/strong&gt;. You have to note that the written code on your web page is loaded and executed in the order of their arrangement. JS has to come last in the web document to avoid errors when the web page is loaded. This is because the HTML and CSS that are to be modified have to be loaded first before the script can modify them. There are two ways to add JavaScript to a web document:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;External Linking:&lt;/strong&gt; This is the practice of having the script in a separate file named with the extension .js, for example, script.js. The created file will be linked using the script tag with the src attribute right below the closing of the body tag and before the close of the HTML tag.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---lV9dQVy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn.hashnode.com/res/hashnode/image/upload/v1692559203325/5c9f3fae-d006-4818-bd1d-1fc53c5f17df.png%3Fauto%3Dcompress%2Cformat%26format%3Dwebp%2520align%3D%2522center%2522" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---lV9dQVy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn.hashnode.com/res/hashnode/image/upload/v1692559203325/5c9f3fae-d006-4818-bd1d-1fc53c5f17df.png%3Fauto%3Dcompress%2Cformat%26format%3Dwebp%2520align%3D%2522center%2522" alt="External JS linking" width="510" height="307"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Internal Linking:&lt;/strong&gt; This is the practice of having the script in the same HTML document using the script tag without the src attribute right below the closing of the body tag and before the close of the HTML tag. The script will go in between the opening and closing of the script tag.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8TOUyz1D--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn.hashnode.com/res/hashnode/image/upload/v1692559318682/26b87199-cb89-4ae5-987a-12ed075f674a.png%3Fauto%3Dcompress%2Cformat%26format%3Dwebp%2520align%3D%2522center%2522" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8TOUyz1D--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn.hashnode.com/res/hashnode/image/upload/v1692559318682/26b87199-cb89-4ae5-987a-12ed075f674a.png%3Fauto%3Dcompress%2Cformat%26format%3Dwebp%2520align%3D%2522center%2522" alt=" Internal JS linking" width="514" height="339"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;JavaScript Data Types&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;All programming languages have structures on which they are built. These structures are accompanied by built-in data types to hold different types of values, and these differ from one language to another. For JavaScript, there are two types of data types into which data types are classified.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Primitive data type.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Non-primitive (reference) data type.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Primitive data type:&lt;/strong&gt; In JS, a primitive data type is referred to as an object and has no methods or properties. There are 7 primitive data types:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;String:&lt;/strong&gt; This refers to data that is text and is enclosed with a quotation mark.&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;text&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;This is a string&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;// A string that is stored in a variabled identified as text&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Number:&lt;/strong&gt; This refers to data that is numeric or an integer. It does not require being enclosed in a quotation mark.&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;num&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;45&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;// A number that is stored in a variable identified as num&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Boolean:&lt;/strong&gt; This represents data that only defines if a variable is true or false.&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;listData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;bulletData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;// Boolean data defined with true or false&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;BigInt:&lt;/strong&gt; This is a type of data that is an integer but in its arbitrary precision format. This is created by adding the suffix &lt;strong&gt;n&lt;/strong&gt; to an integer.&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;98345689009876543&lt;/span&gt;&lt;span class="nx"&gt;n&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;// BigInt&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Undefined:&lt;/strong&gt; As the name states, this is a type of data that is not defined. The variable has a variable identifier, but there’s no assignment operator or value.&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;west&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="nx"&gt;west&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// undefined&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Symbol:&lt;/strong&gt; An item of the specified data type named a symbol can also be referred to as a symbol value. This is an immutable primitive value. For instance,&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// two symbols with the same description&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;textA&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;Symbol&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hi&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;textB&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;Symbol&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hi&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;Even though text A and text B both contain the word "hi," they vary because they are of the symbol type.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Null:&lt;/strong&gt; Null is a special value in JavaScript that denotes an empty or undefined value. For instance,&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;number&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Non-Primitive data types:&lt;/strong&gt; These data types are the names given to objects in JavaScript. They descend from the primitive data types in JavaScript and are additionally known as derived data types or reference data types. Non-primitive data type variables are kept in the system's heap memory, whereas primitive data type variables are kept in the stack area.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Object:&lt;/strong&gt; An object in Javascript is a variable that has properties and methods defined for it. Everything is an object in JS.&lt;/p&gt;

&lt;p&gt;Let's look at how JavaScript can be used to create an object:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creating an object with a constructor:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// creating an empty object&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;obj&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nb"&gt;Object&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="c1"&gt;// creating a user-defined object&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;school&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nx"&gt;School&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;&lt;strong&gt;Making an object using the literal notation:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// creating an empty object&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;cube&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{};&lt;/span&gt;

&lt;span class="c1"&gt;// Here length and breadth are keys and&lt;/span&gt;
&lt;span class="c1"&gt;// 25 and 40 are the values&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;rectangle&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="na"&gt;length&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;25&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;breadth&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Array:&lt;/strong&gt; Using an array, we can group several elements with comparable properties under a single name.&lt;/p&gt;

&lt;p&gt;Let's look at how to do it with JavaScript:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// creating an empty array (no arguments)&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;arr1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nb"&gt;Array&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="c1"&gt;// creating an array with the number of elements (a single argument)&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;arr2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nb"&gt;Array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// creating an array with multiple values (two or more arguments) &lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;arr3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nb"&gt;Array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;string&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;RegExp:&lt;/strong&gt; The RegExp object in JavaScript compares a string to a certain pattern. Using the comparison capabilities of the RegExp object, we can determine whether a regular expression pattern is present in the string or not.&lt;/p&gt;

&lt;p&gt;Let's look at how to do this in JavaScript:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Using a constructor for creating a RegExp:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// defining a pattern to compare with a string using&lt;/span&gt;
&lt;span class="c1"&gt;// the RegExp constructor&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;regex&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nb"&gt;RegExp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;pattern&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;&lt;strong&gt;Making a RegExp by enclosing the pattern in forward slashes:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// defining a pattern with a modifier to compare&lt;/span&gt;
&lt;span class="c1"&gt;// with a string using forward slashes&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;regex&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sr"&gt;/pattern/m&lt;/span&gt;&lt;span class="nx"&gt;odifier&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;JavaScript Frameworks&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;For quite some time, the development of applications has heavily relied on JavaScript frameworks. This has undeniably marked a milestone for this programming language.&lt;/p&gt;

&lt;p&gt;Another noteworthy benefit of JavaScript is its compatibility with JS frameworks. These frameworks are widely utilized to access and leverage pre-existing JavaScript code that caters to functionalities and capabilities.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Popular JavaScript front-end frameworks&lt;/strong&gt;
&lt;/h3&gt;

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

&lt;p&gt;Rather than being a JS framework, React.JS primarily serves as a library. It is also thought to have the fastest growth among JS frameworks, with 1,000 contributors on GitHub.&lt;/p&gt;

&lt;p&gt;The elements of this framework may also be created, utilized for various applications, and distributed for use by the general public.&lt;/p&gt;

&lt;p&gt;Additionally, it is said to be better suited for sophisticated, complex, high-load software solutions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Vue.JS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Vue, another 2016 release, has proven to be the best of them all since it mixes Ember, React, and Angular into one handy package.&lt;/p&gt;

&lt;p&gt;Additionally, it may be proven to be a cure-all for sophisticated single-page apps (SPAs) and effective in any scenario where efficiency is valued above app structure or clear code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Angular JS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most often, AngularJS is described as an MVW (model-view-whatever) framework that offers several advantages to various start-ups and mid-sized businesses.&lt;/p&gt;

&lt;p&gt;It is mostly used for two-way data binding (changes in the back-end are immediately reflected in the UI), rapid code creation, and simple testing of any app component.&lt;/p&gt;

&lt;p&gt;After being released, the framework has developed beyond all recognition and is now the most popular JS framework for building single-page applications.&lt;/p&gt;

&lt;p&gt;The component-based design, enhanced dependency injection, effective logging service, inter-component connections, and many other features of Angular are also a blessing.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;JavaScript as a back-end tool&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Back-end development is the term used to describe the server side of web development, where you, the developer, build the code that powers the web application. When a user is exploring the web, they view and interact with the front-end, which is powered by the back-end, which normally operates on a web server.&lt;/p&gt;

&lt;p&gt;The following are the responsibilities of the back-end&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Keeping and getting information out of a database.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data processing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data transmission to the front-end&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Getting information from the front-end&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Control of user sessions.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The application's security.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Node.JS, an environment for running JavaScript, enables JavaScript code to be run outside of a web browser. It was released in 2009 so that server-side applications could be run using JavaScript. It is a cross-platform environment based on the V8 JavaScript engine and has a ton of libraries and tools to help developers create reliable apps.&lt;/p&gt;

&lt;p&gt;Node.JS is a well-liked back-end development framework since it is quick, lightweight, and effective. Next.JS and Express.JS are two other popular JavaScript frameworks.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Popular JavaScript back-end frameworks&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;NodeJS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A cross-platform, open-source server-side JavaScript run-time environment is Node.js. It can drive asynchronous I/O thanks to its event-driven design. Similar characteristics like packing, threading, and loop formation are present in this architecture.&lt;/p&gt;

&lt;p&gt;Features;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Given that it was created using the V8 JavaScript engine from Google Chrome, the library executes code quickly.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The server doesn't have to wait for any APIs to respond with data because all of them are asynchronous.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Since it is open-source, it has a sizable community and several incredible models to give Node.js apps more functionality.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Next.JS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most commonly, Next.js, a straightforward JavaScript framework, is employed on the back end to construct applications utilizing the React framework.&lt;/p&gt;

&lt;p&gt;The primary objective of Next.js is to streamline the development of React applications, making the process as uncomplicated as can be.&lt;/p&gt;

&lt;p&gt;Features;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;A straightforward structure.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Quick performing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Easy to understand and utilize.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Express.JS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Express stands out as one of the finest back-end frameworks for JavaScript scripting. It is the preferred choice for crafting web applications and APIs due to its speed and simplicity.&lt;/p&gt;

&lt;p&gt;Its primary role is to serve as the default server framework for Node.js and as a front-end framework for Angular.js.&lt;/p&gt;

&lt;p&gt;Features;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Quick performing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Simple to learn.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Straightforward and light.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Robust and relatively immune to coding errors; it boasts extensive support for numerous plugins.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Imagine a world without JavaScript - websites would be static, apps would lack that interactive magic, and games would lose their dynamism. JavaScript, my friend, is like a wizard's wand in the digital realm. It's not just a language; it's a key that unlocks a universe of possibilities!&lt;/p&gt;

&lt;p&gt;Think about it. Whether you're crafting a stunning web app, diving into the realm of mobile app development, cooking up the next gaming sensation, or even tinkering with a sleek terminal app, JavaScript has got your back. It's the Swiss Army knife of coding languages, armed with an array of tools and frameworks to help you bring your ideas to life.&lt;/p&gt;

&lt;p&gt;So, what are you waiting for? Jump into the world of JavaScript, and let your creativity run wild. Who knows what incredible things you'll build? It's time to embark on a coding adventure that knows no bounds!&lt;/p&gt;

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