<?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: Mma Obiora</title>
    <description>The latest articles on DEV Community by Mma Obiora (@theecypher).</description>
    <link>https://dev.to/theecypher</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%2F1361368%2F9a1d6f10-12f8-435e-9aa4-f5be80459b75.png</url>
      <title>DEV Community: Mma Obiora</title>
      <link>https://dev.to/theecypher</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/theecypher"/>
    <language>en</language>
    <item>
      <title>Tailwind Css Vs Bootstrap</title>
      <dc:creator>Mma Obiora</dc:creator>
      <pubDate>Thu, 04 Jul 2024 12:43:31 +0000</pubDate>
      <link>https://dev.to/theecypher/tailwind-css-vs-bootstrap-4lc6</link>
      <guid>https://dev.to/theecypher/tailwind-css-vs-bootstrap-4lc6</guid>
      <description>&lt;p&gt;&lt;strong&gt;Tailwind css vs Bootstrap&lt;/strong&gt;&lt;br&gt;
In the fast growing and ever-changing world of technologies, choosing the right tools and technologies is very pertinent to the performance, customization and development of an application. In frontend Development, design and responsiveness Is very important. Amongst the numerous technologies, tailwind css and  Bootstrap have emerged as two of the most popular choices. Both technologies aim to improve the process of building responsive, visually appealing websites although they have different approaches and unique features. In this article, we will compare Tailwind css and Bootstrap and exploring their differences.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tailwind Css&lt;/strong&gt;&lt;br&gt;
Tailwind CSS is a Utility-first CSS framework for building rapid custom UI. Tailwind CSS is all about giving you these utility classes for things like colors, spacing, and how text looks. This means you can mix and match them to make your web page look just right.&lt;br&gt;
It is a highly customizable, you can change how Tailwind CSS works to fit your needs. This includes changing the color scheme, the fonts, and more right in the settings.&lt;br&gt;
Tailwind is also a low-level CSS framework that gives you all of the building blocks that you need. Also, it is a cool way to write inline styling and achieve an awesome interface without writing a single line of your own CSS.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bootstrap&lt;/strong&gt;&lt;br&gt;
Bootstrap was made by some folks at Twitter in 2011 and is a free tool that makes building websites faster and easier. It's prevalent among people who make websites because it has a bunch of ready-made parts you can use&lt;br&gt;
It has its system with 12 columns that change size based on how big the screen is, making it great for viewing on phones, tablets, and computers.&lt;br&gt;
It comes with lots of ready-to-use pieces like menus, buttons, and alerts. You can change how these look with some coding skills.&lt;br&gt;
Bootstrap is made to be mobile-friendly from the start and works well in different web browsers. This means websites built with Bootstrap look good on any device.&lt;br&gt;
You can easily change the look of your site with Bootstrap's theme system, like adjusting colors and more.&lt;br&gt;
There's a lot of help and examples online to get you started quickly.&lt;br&gt;
Bootstrap helps you build websites quickly with its grid system, ready-made parts, and easy customization. It's designed to make sure sites work well on all devices, which is why so many developers like to use it.&lt;/p&gt;

&lt;p&gt;Differences between Tailwind and Bootstrap &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Bootstrap has already made parts for quick website building, on the contrary, tailwind gives tools to create your design&lt;/li&gt;
&lt;li&gt; When it comes to customization, Bootstrap doesn’t give so many avenues to change things while in tailwind you can change everything&lt;/li&gt;
&lt;li&gt; Bootstrap is very beginner friendly but in tailwind, it takes more time to learn&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In conclusion, Bootstrap is like a fast food, prepared and ready to go to while tailwind is like different ingredients that you have to put together. Both technologies are good but they are unique. So, In developing an application, you have to choose the one that best satisfy you needs&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hng.tech/hire"&gt;https://hng.tech/hire&lt;/a&gt; &lt;br&gt;
&lt;a href="https://hng.tech/premium"&gt;https://hng.tech/premium&lt;/a&gt;&lt;/p&gt;

</description>
      <category>dev2</category>
    </item>
    <item>
      <title>How I solved a problem I encounter as a backend developer</title>
      <dc:creator>Mma Obiora</dc:creator>
      <pubDate>Sat, 29 Jun 2024 20:53:55 +0000</pubDate>
      <link>https://dev.to/theecypher/how-i-solved-a-problem-i-encounter-as-a-backend-developer-1kpp</link>
      <guid>https://dev.to/theecypher/how-i-solved-a-problem-i-encounter-as-a-backend-developer-1kpp</guid>
      <description>&lt;p&gt;Growing up, I have always been fascinated by technology. How they work, how they are made, I just want to know how things work, I would open up spoilt radios just see what was inside it and how it works. I remember my brother used to have an electric teddy bear that talked and I was curious about it so one night I tore it open and I brought out the element.&lt;/p&gt;

&lt;p&gt;P.S: The next day I almost met my maker, if you know you know&lt;/p&gt;

&lt;p&gt;Anyway, that curiosity died (died is a strong word, let me say me subsided) from the hands of long hours in the classroom just talking theory. I used to hate computer as a subject, all we did was talk about computers all long without using the computer.&lt;/p&gt;

&lt;p&gt;My curiosity was ignited when I saw my neighbor coding, I did not understand what he was doing but then again I was curious and he explained to me what he was doing. Fast forward, my neighbor introduced me to HTML, Css and JavaScript, he gave series of courses to watch.&lt;/p&gt;

&lt;p&gt;One of the first projects i built was a Sign-up website. It was a static website, it was not really doing anything special other than users inputting their details. So I did my research and I was going to add authentication to my Sign-up page&lt;br&gt;
I found a tutorial on YouTube and followed the tutorial step by step and boom, I had written my first backend code even though I didn’t understand what I wrote.&lt;/p&gt;

&lt;p&gt;I was so excited about my code and was going to test on the frontend  &lt;/p&gt;

&lt;p&gt;But then I encountered an error&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk091oo4lf17k0oyd1qef.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk091oo4lf17k0oyd1qef.png" alt="Image description" width="790" height="225"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I had to watch the tutorial all over to ensure I didn’t miss something, of course I did not miss anything, it was not in the tutorial&lt;/p&gt;

&lt;p&gt;After 1 hour spent searching Google and reading articles. Voila! I found it, speak of the devil&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyoz5wxx047zibwo5tw2i.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyoz5wxx047zibwo5tw2i.jpeg" alt="Image description" width="173" height="163"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;How I solved the error&lt;br&gt;
The port that the frontend was running on has to be given the access in order for the backend to work&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6bth62bkv6vdudno8mtm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6bth62bkv6vdudno8mtm.png" alt="Image description" width="753" height="238"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;About Me&lt;/strong&gt;&lt;br&gt;
I am a Frontend developer with little experience in backend development and I would love to explore backend more. One of the traits of a curious person is the thirst for knowledge. I love to learn more&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My Expectations of the HNG Internship:&lt;/strong&gt;&lt;br&gt;
My expectations include learning to write clean, effective and efficient codes, learning best practices of writing code, learning to function and think under pressure also, learn how to work in a team and also, learning leadership skills&lt;br&gt;
My ultimate expectation is to come out of my comfort zone.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hng.tech/internship"&gt;https://hng.tech/internship&lt;/a&gt;&lt;br&gt;
&lt;a href="https://hng.tech/hire"&gt;https://hng.tech/hire&lt;/a&gt;&lt;/p&gt;

</description>
      <category>backend</category>
      <category>webdev</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Asynchronous JavaScript</title>
      <dc:creator>Mma Obiora</dc:creator>
      <pubDate>Tue, 19 Mar 2024 02:34:24 +0000</pubDate>
      <link>https://dev.to/theecypher/asynchronous-javascript-2p7a</link>
      <guid>https://dev.to/theecypher/asynchronous-javascript-2p7a</guid>
      <description>&lt;p&gt;In this article we will learn about asynchronous Javascript but before we delve into asynchronous Javascript, it is pertinent to examine Synchronous code and understands how its works&lt;/p&gt;

&lt;p&gt;It is important to understand Synchronous code because by default Javascript is a Synchronous language &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Forhqpfhadfbkun9d6bqg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Forhqpfhadfbkun9d6bqg.png" alt="Image description" width="714" height="558"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the JavaScript code snippet provided above, there are three lines of instructions. The browser effectively steps through each instructions one after the other, in the order written. This implies that the browser waits until one instruction is completed before executing the next.&lt;/p&gt;

&lt;p&gt;This synchronous behavior of JavaScript ensures that the console logs are displayed in the order specified in the program.&lt;/p&gt;

&lt;p&gt;JavaScript can only do one thing at a time. This synchronous nature of JavaScript can lead to problems especially when waiting for tasks that takes significant amount of time to complete&lt;/p&gt;

&lt;p&gt;What then is the solution?&lt;/p&gt;

&lt;p&gt;The solution will look like this:&lt;/p&gt;

&lt;p&gt;1.Initiate a long-running operation by invoking a function.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Enable that function to commence the operation and promptly return, ensuring our program remains responsive to other events.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ensure the function executes the operation without halting the main thread, possibly by initiating a new thread.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;4.Inform us of the operation's outcome once it finishes at a later time.&lt;/p&gt;

&lt;p&gt;Asynchronous JavaScript helps implement this solution. &lt;/p&gt;

&lt;p&gt;Asynchronous code can execute several tasks concurrently while while tasks in the background finish. This is what we call non-blocking code. The execution of additional code continues uninterrupted while an asynchronous task completes its operations.&lt;/p&gt;

&lt;p&gt;Asynchronous programming can significantly improve the performance and responsiveness of an application &lt;/p&gt;

&lt;p&gt;Here's an example of an asynchronous program using the setTimeout method:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjjitjb5uu71nn3isfsba.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjjitjb5uu71nn3isfsba.png" alt="Image description" width="714" height="596"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the above snippet, the setTimeout method triggers the execution of a function after a designated time. The function supplied to setTimeout operates asynchronously, allowing the program to proceed to the subsequent line of code without waiting for the timeout to complete.&lt;/p&gt;

&lt;p&gt;When the code is run, the output will be&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F273dm65dctzv3f1zhhbr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F273dm65dctzv3f1zhhbr.png" alt="Image description" width="711" height="281"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you can see, console.log("First timeout completed") will be executed after 2 seconds. Meanwhile, the script continues to execute the next code statement and doesn't cause any "blocking" or "freezing" behaviour.&lt;/p&gt;

&lt;p&gt;JavaScript offers numerous approaches to asynchronous programming. Among these, employing async and await is the best techniques.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Async Functions with async/await&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Async/Await is a feature that allows you to write asynchronous code in a more synchronous, readable way.&lt;/p&gt;

&lt;h2&gt;
  
  
  The await keyword
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl4kqo3om0s40ea95ks7f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl4kqo3om0s40ea95ks7f.png" alt="Image description" width="714" height="558"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The await keyword is placed before the call to a function or variable that returns a promise. It makes JavaScript wait for the promise object to settle before running the code in the next line.&lt;/p&gt;

&lt;p&gt;Now if you run the code above, you might get an error like this:&lt;/p&gt;

&lt;p&gt;This error occurs because the await keyword must be used inside an asynchronous function or a module.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Async Keyword
&lt;/h2&gt;

&lt;p&gt;To create an asynchronous function, you need to add the async keyword before your function name. Take a look at line 1 in the example below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3oqs0p5wdpvakxjvyiyv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3oqs0p5wdpvakxjvyiyv.png" alt="Image description" width="714" height="672"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here, we created an asynchronous function called jsonFunction() and put the code that uses the await keyword inside it. We can then run the asynchronous function by calling it, just like a regular function.&lt;/p&gt;

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

&lt;p&gt;Now you've learned how the async/await syntax works. The syntax makes working with promises much easier by removing the need for .then() and .catch() method chaining, which also removes the need for nested callbacks.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
