<?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: Tiana Akinwale</title>
    <description>The latest articles on DEV Community by Tiana Akinwale (@tiana_akinwale_9e04f436b0).</description>
    <link>https://dev.to/tiana_akinwale_9e04f436b0</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%2F1701281%2F3d6e40ed-ad3c-4b3c-8bde-2fd90e03bff8.jpg</url>
      <title>DEV Community: Tiana Akinwale</title>
      <link>https://dev.to/tiana_akinwale_9e04f436b0</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/tiana_akinwale_9e04f436b0"/>
    <language>en</language>
    <item>
      <title>Mastering Code Errors</title>
      <dc:creator>Tiana Akinwale</dc:creator>
      <pubDate>Sat, 29 Jun 2024 15:07:37 +0000</pubDate>
      <link>https://dev.to/tiana_akinwale_9e04f436b0/mastering-code-errors-35m3</link>
      <guid>https://dev.to/tiana_akinwale_9e04f436b0/mastering-code-errors-35m3</guid>
      <description>&lt;p&gt;Working on a project as a developer can be so exhausting and mind-boggling a lot of the time, especially when an error is involved, and you cannot seem to figure it out. A wrongly placed semicolon could be the culprit, or it could even be a misread error from your text editor and it could keep you stuck for hours. I am sure you're smiling just remembering that one time. Often, we just cannot seem to figure it out and we end up rewriting the algorithm. If you're on that table or a newbie in tech, this article is for you. &lt;/p&gt;

&lt;p&gt;In this article, I'll walk you step by step through my own experience and share tips on how to effectively debug and check for errors. I hope that after reading this, you'll find it easier to debug your code and help others do the same.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My Problematic Error&lt;/strong&gt; &lt;br&gt;
I was particularly excited about this project and I was eager to take on this new task. I encountered my first error, when I was trying to access a variable which I had not declared. I corrected my mistake and continued like a pro. Then, barely 20 mins later I encountered this similar error. This time the console wasn't much help and I was just staring at the screen, trying to figure out what went wrong.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Don't Panic, Read the error message carefully&lt;/strong&gt;&lt;br&gt;
First things first, don’t panic. Errors are part of the journey. It’s easy to get frustrated, especially after sitting at your desk for long hours, but staying calm helps you think clearly. Then read the error message carefully. I know it sounds straightforward, but sometimes the error message is a riddle waiting to be solved. Read it carefully. In my case, the error message pointed me to an "undefined variable" on a certain line in my code. I checked the code line it referenced, but the variable was clearly defined. This added to my confusion.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Trace back your recent changes&lt;/strong&gt;&lt;br&gt;
Think about what you changed recently. Errors often occur after you’ve made some changes. I remembered updating the code with a new function and a variable, so I started there. Even though the variable was defined, the error persisted. So I traced my changes by commenting out recently added code to the point where the code last worked perfectly. When I checked the command line, I found no error. I felt this was progress.&lt;/p&gt;

&lt;p&gt;I started to re-introduce the commented code back gradually to trace where the error could be, and that was when I saw my mistake—I had declared two variables with similar names and used the other variable  in my code. Fixing that resolved the error, and I could finally move forward with the project.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Steps 3 and 4: Use Debugging Tools and Get a Fresh Perspective&lt;/strong&gt;&lt;br&gt;
If you're still stuck, leverage on debugging tools to trace the error step-by-step. And sometimes, all it takes is a fresh pair of eyes. Talk to a friend or a colleague, but ensure you have exhausted the steps above before doing this. And you can use ChatGPT to help head you in the right direction to finding this error, but avoid relying on it for full code solutions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Test periodically&lt;/strong&gt;&lt;br&gt;
Once you think you’ve fixed the problem, test your solution thoroughly. I ran multiple test cases to make sure the error was really gone and didn’t introduce new bugs. And this is one way to avoid bugs, you test your code periodically. &lt;/p&gt;

&lt;p&gt;Debugging can be a tedious and frustrating process, but it's also incredibly rewarding when you finally solve that pesky error. Remember, stay calm, read the error message carefully, use your debugging tools, simplify the problem, get a fresh perspective, and test thoroughly. I hope my experience and these steps help you in your debugging journey. Happy coding! &lt;/p&gt;

&lt;p&gt;I recently started a backend development internship with HNG. I signed up because I loved to write code and solve solutions, and this was a great opportunity for me to do just that. I was full of joy when I got my acceptance email. And through this internship, I am expecting to build amazing solutions, collaborate with others and enhance my tech skills greatly with the HNG platform.&lt;br&gt;
If you're passionate about coding and problem-solving like me, check out &lt;a href="https://hng.tech/"&gt;HNG&lt;/a&gt;or &lt;a href="https://hng.tech/premium"&gt;join HNG premium&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Happy coding! &lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>devops</category>
    </item>
    <item>
      <title>Angular or React?</title>
      <dc:creator>Tiana Akinwale</dc:creator>
      <pubDate>Fri, 28 Jun 2024 20:42:11 +0000</pubDate>
      <link>https://dev.to/tiana_akinwale_9e04f436b0/comparison-between-2-top-frontend-technologies-38ln</link>
      <guid>https://dev.to/tiana_akinwale_9e04f436b0/comparison-between-2-top-frontend-technologies-38ln</guid>
      <description>&lt;p&gt;With the rise of various front end technologies like Angular, Vue, Ember, React, jQuery, and others in front-end development, the common topic of discussion for many developers, especially newbies, is which front end technology is best used for development and easy deployment. Which also supports a variety of features that enhance consumer experience and versatility. &lt;br&gt;
In this article, I'll be comparing React and Angular, two front end technologies that top the list for developers. I'll take us through what makes them unique and preferable to the other.&lt;br&gt;
You can join HNG internship to become world-class in React JS. &lt;a href="https://hng.tech/premium"&gt;click here&lt;/a&gt; and also join using this link for premium internship: &lt;a href="https://hng.tech/premium"&gt;click here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Background and basic differences:&lt;/strong&gt;&lt;br&gt;
React is a powerful JavaScript library known for its simplicity, flexibility, and outstanding performance. Developed by Facebook, and maintained by community, React excels in building user interface components and single-page applications (SPAs). React's component based architecture encourages re-usability, which offers an easy debugging process and its virtual DOM also enable developers to create dynamic and responsive web applications with ease, which is why many developers prefer it. As React is just the view layer of an application, it means developers have the flexibility to integrate with other libraries and frameworks for state management, routing, etc. It has faster updates with both server-side and front-end support. React can also be used in development of mobile applications with React Native which allows for code reuse across web and mobile platforms. It is used by companies like Meta and Airbnb for it's effectiveness and efficiency.&lt;/p&gt;

&lt;p&gt;Angular, developed by Google, is a comprehensive framework that provides a complete solution for building large-scale web applications. Unlike React, which uses a virtual DOM, Angular operates with a real DOM and includes built-in support for features like routing, state management, and form handling. Angular also has in-built libraries which helps developers create template solutions and makes it efficient for managing complex projects while ensuring consistency across development. Angular also stands out for its seamless two-way data binding, which automatically updates the model and view, and its dependency injection system, which enhances flexibility and testability. Its typescript integration adds a layer of reliability by catching errors early in the coding process and this further simplifies development tasks like setup, testing, and deployment, making it popular among developers for its structured approach and it being easy to use. Major companies like Microsoft and Google use Angular for development of their software.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Based on Performance, Flexibility and Scability:&lt;/strong&gt; &lt;br&gt;
React's performance is enhanced by its use of the virtual DOM, which efficiently updates and renders only the components that have changed. This minimizes the direct manipulation of the real DOM, leading to faster and more efficient rendering. React's component-based architecture also contributes to performance, as it allows for fine-grained control over what gets re-rendered, thus optimizing resource usage. Also, React's flexibility is one of its greatest strengths. It can be integrated with various libraries and frameworks, allowing developers to tailor their tech stack to specific project needs. This modularity and component-based architecture make React highly scalable, suitable for both small-scale projects and large enterprise applications.&lt;br&gt;
Angular, on the other hand, uses a real DOM, which can impact performance during extensive updates. However, Angular mitigates this with its efficient change detection mechanism and the use of the Ahead-of-Time (AOT) compilation. AOT compiles the application during the build process, resulting in faster rendering and improved performance at runtime. Angular offers a structured and opinionated approach to development, providing a complete framework out-of-the-box. Its modular architecture and dependency injection system enhance scalability, making it an excellent choice for large-scale enterprise applications. Angular’s all-in-one nature ensures consistency and reliability across development.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Based on Developer Experience and Ecosystem:&lt;/strong&gt;&lt;br&gt;
React has a relatively gentle learning curve, especially for developers familiar with JavaScript. However, understanding JSX and ES6+ syntax is crucial. React’s ecosystem often requires additional libraries for state management (like Redux or MobX) and routing (like React Router), which adds to the learning curve but also offers flexibility in choosing the best tools for the job. React’s component-based structure aids in easier testing and debugging. Tools like Jest and Enzyme are popular choices for testing React applications, providing robust frameworks for unit and integration testing. React benefits from a large and vibrant community, which contributes to an extensive ecosystem of third-party libraries, tools, and resources. The strong community support ensures that developers have access to numerous tutorials, forums, and GitHub repositories, facilitating problem-solving and innovation.&lt;br&gt;
Angular has a steeper learning curve due to its comprehensive nature and integration with TypeScript. Developers need to understand Angular-specific concepts like modules, decorators, and dependency injection. Despite this, Angular’s extensive documentation and powerful Angular CLI help streamline the development process and improve the developer experience. Angular includes built-in testing utilities and frameworks such as Jasmine and Karma. Its dependency injection and modular architecture further facilitate testing and debugging, ensuring a smooth development process. Angular is supported by Google and has a dedicated Angular team, which provides robust and ongoing development support. Angular’s ecosystem includes Angular Material for UI components and Angular Universal for server-side rendering. The comprehensive nature of Angular ensures developers have access to integrated tools and solutions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to know when to use which technology?&lt;/strong&gt;&lt;br&gt;
If you are a beginner, one question you might have will be which one should I go for? How will I know when to use which? It’s easy. Choosing between React and Angular or any technology depends on the specific needs of your project, your team's expertise, and your long-term goals. &lt;br&gt;
&lt;strong&gt;When to use React:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Flexibility and Modularity: If you need a highly flexible and modular solution where you can integrate various libraries and frameworks for specific functionalities, React is a great choice. React allows you to build your tech stack with the best tools available for state management, routing, and more.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Dynamic and Interactive UIs: React is ideal for applications that require highly dynamic and interactive user interfaces. Its virtual DOM and component-based architecture make it easy to create responsive and fast UIs.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Ease of Learning: For teams with developers who are already familiar with JavaScript, React's learning curve is relatively gentle. Understanding JSX and ES6+ syntax is crucial, but overall, it’s easier to get started with React.
Single-Page Applications (SPAs): If you're building a single-page application where you want seamless transitions between different views without reloading the page, React’s efficient rendering is a big advantage.&lt;/li&gt;
&lt;li&gt;Mobile Development: If you plan to develop mobile applications in addition to web applications, React Native allows you to reuse code across web and mobile platforms, making React an attractive option.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;When to Choose Angular:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Comprehensive Framework: If you prefer an all-in-one solution that comes with built-in support for routing, state management, form handling, and more, Angular is the way to go. Angular provides a complete framework out-of-the-box, which can simplify the development process.&lt;/li&gt;
&lt;li&gt;Large-Scale Applications: Angular is well-suited for large-scale enterprise applications that require a structured and consistent approach. Its modular architecture and dependency injection system enhance scalability and maintainability.&lt;/li&gt;
&lt;li&gt;TypeScript Integration: If your team is comfortable with TypeScript or you want the benefits of static typing to catch errors early in the development process, Angular’s integration with TypeScript is a significant advantage.&lt;/li&gt;
&lt;li&gt;Two-Way Data Binding: For applications that require seamless synchronization between the model and view, Angular’s two-way data binding can simplify development and improve efficiency.&lt;/li&gt;
&lt;li&gt;Development Tools and CLI: Angular’s powerful CLI streamlines the development process, providing commands for scaffolding, building, testing, and deployment. This can significantly speed up development and ensure best practices.&lt;/li&gt;
&lt;li&gt;Long-Term Support and Stability: If you need a framework with long-term support and stability for enterprise-level applications, Angular’s ongoing development and support from Google make it a reliable choice.
By carefully evaluating these factors, you can make an informed decision that best meets your development needs.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;What I  expect to do in HNG: I expect to build functional websites that can be used in real time, and also build websites that would help enhance my skills as a front-end developer.&lt;br&gt;
How I feel about React: I love working with react, as it is easy to use, especially with its reusable UI components and being able to integrate other libraries with it.&lt;/p&gt;

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