-
Open
How to Shuffle an Array of Items Using JavaScript or TypeScript
In this article we'll be exploring how we can shuffle an array of items in multiple different ways using TypeScript, or JavaScript should you prefer. Pre-Requisites: * An understanding of TypeScript or JavaScript * A basic understanding of For Loops and Arrays The following examples are written in
( 7
min )
Introduction to Laravel APIs – Security, Features, and More
Laravel is the most popular PHP framework, with its elegant syntax, extensive feature set, and developer-friendly environment. And it's gained significant traction in recent years. The Laravel ecosystem is constantly being updated with new features. Laravel 10 [https://laravel.com/docs/10.x/releases] is exciting! Among its many strengths is the robust support for APIs
( 6
min )
How to Use the JSON Module in Python – A Beginner's Guide
JSON (JavaScript Object Notation) is a popular, lightweight data interchange standard. It represents data structures made up of key-value pairs that's quite straightforward and human-readable. JSON has become the industry standard for data interchange between online services. And it's widely utilized in modern programming languages, including Python. JSON data
( 9
min )
How to Style a React Application – Different Options Compared
Styling plays a vital role in creating visually appealing and user-friendly web applications. When it comes to React applications, there are numerous ways to style components and UI elements. In this article, we will explore several popular options, including pure CSS, CSS modules, CSS preprocessors, Tailwind CSS, CSS-in-JS libraries
( 11
min )
Design Patterns for Distributed Systems – Key Concepts Every Developer Should Know
When I first started my career as a backend engineer, I always worked with monolithic systems. The work was good but I always had this thought in the back of my mind: > "Man, I want to work on big systems such as ones for Google, Netflix, etc..." I was
( 37
min )
How to Build an Image Carousel Component with TypeScript and Styled-Components
In recent years, OTT (over-the-top) video streaming platforms have become more innovative and convenient to use. In their user interfaces, movies and series titles are arranged so that the titles are clearly visible. In this tutorial, I’ll guide you through the process of creating an image carousel component that looks
( 12
min )
Python Exit – How to Use an Exit Function in Python to Stop a Program
The exit() function in Python is used to exit or terminate the current running script or program. You can use it to stop the execution of the program at any point. When the exit() function is called, the program will immediately stop running and exit. The syntax of the exit()
( 5
min )
-
Open
-
Open
-
-
Open
How to Choose a CMS – Tips for Content Management Systems
If you're an entrepreneur or a developer, chances are you'll work with a content management systems (CMS) at some point. And knowing how to analyze the many features of the CMS options out there is important when choosing the right one for your use case. In this article, I'll explain
( 6
min )
Build AI Apps with ChatGPT, Dall-E, and GPT-4
You can level up your web development skills by harnessing the power of AI. We just published a course on the freeCodeCamp.org YouTube channel that will teach you how to build AI apps with ChatGPT, Dall-E, and GPT-4. This course is designed to equip you with the knowledge and skills
( 4
min )
Learn to Build Graph Databases with Neo4j (Full Course)
Neo4j is revolutionizing the way we handle complex relationships between data points. Its intuitive graph-based structure provides a flexible and efficient solution for various applications. We just published a Neo4j course on the freeCodeCamp.org YouTube channel. Whether you're a developer, a data scientist, or an aspiring technology enthusiast, this course
( 3
min )
LangChain Tutorial – How to Build a Custom-Knowledge Chatbot
You may have read about the large number of AI apps that have been released over the last couple of months. You may have even started using some of them. AI tools such as ChatPDF [https://www.chatpdf.com/] and CustomGPT AI [https://customgpt.ai/use-cases/] have become very useful to people – and for good
( 9
min )
Why Data Visualization is Important for UX Design
These days, we find ourselves consuming vast amounts of information, at an unprecedented rate. From online transactions, to social media interactions, to scientific research, the complexity of data grows exponentially. This reveals a challenge — how to transform this raw data to actionable insight. This is where data visualization
( 7
min )
-
Open
-
Open
How to Format a Date with JavaScript – Date Formatting in JS
Dates are a fundamental part of many JavaScript applications, whether it's displaying the current date on a webpage or handling user input for scheduling events. But displaying dates in a clear and consistent format is crucial for a positive user experience. In the past, I have written two articles on
( 5
min )
How to Build a Simple Deployment Pipeline with Reusable Github Actions and Heroku
If you've been using GitHub for a while, you've probably heard of or used GitHub actions. If you haven't heard of Github Actions or used them before, you can use them for automating your build, test, or deployment pipelines. You can create workflows that will be triggered upon certain
( 7
min )
SQL Temp Table – How to Create a Temporary SQL Table
SQL, which stands for Structured Query Language, is a programming language specifically designed for managing and manipulating relational databases. It provides a standardized way to interact with databases and perform tasks such as querying data, inserting, updating, and deleting records, creating and modifying database structures, and more. SQL is
( 6
min )
How to Use AWS Cognito for User Authentication
When you're building complex applications, one seemingly simple feature can be difficult to implement: user authentication. Though some apps don't need it depending on their use case, many do. You might spend a ton of time building an authentication module to provide a secure experience to your users and
( 8
min )
How to Use Playbooks to Execute an Incident Recovery Plan
A playbook is the official, formal written record that describes policies and processes that will reliably produce a working deployment of an organization's resource stack. When it comes to generating predictable results, the playbook is the plan. I'll describe all the key elements of a good playbook in just
( 6
min )
-
Open
-
Open
How to Use Cookies to Customize a Web Page's Content
If you develop websites or web apps, someday you’ll have to deal with cookies. That’s why I decided to write this tutorial on how to use cookies to customize a web page according to the previous web page the user comes from. I wrote this tutorial using PHP, but
( 6
min )
How to Create a Full-Stack Application with Next.js – A Step-By-Step Tutorial for Beginners
Next.js can seem intimidating at first, with so many new concepts to grasp. But don't worry – in this step-by-step tutorial, I will provide you with all the essential information you need to create your first modern full-stack application with Next.js. In this tutorial, I will take you through the
( 23
min )
How to Create and Publish a Vue Component Library – 2023 Update
Back in 2020, I wrote a post [/news/how-to-create-and-publish-a-vue-component-library/] about building a Vue Component library. Since then the package I used has been deprecated, and the recommended way to build a library/package is to use Vite. Getting Started I started off the project by running npm create vite@latest and naming
( 5
min )
How to Build Responsive Websites – Best Practices for Developers
The way we interact with the web has changed dramatically, and it will keep changing. In the past, most people used desktop computers to access the internet. But today, people are using a wide variety of devices, including laptops, tablets, and smartphones. This has resulted in a growing demand for
( 12
min )
How Does JavaScript Work Behind the Scenes? JS Engine and Runtime Explained
So you may know that your code somehow compiles and executes in your browser to display the beautiful web application you’ve built. But are you aware of all the components that come into play to enable the output? Let’s dive a little into JavaScript behind the scenes. The abstract
( 7
min )
GraphQL Tutorial – How to Query The Rick and Morty API
I enjoy fictional books about greek gods, demigods, the oracle, and prophecies. I am a huge fan of Rick Riordan's books. I recently came across Apollo's Trials, based on the greek god Apollo. When I hear any mention of Apollo, my mind goes to the greek god who
( 9
min )
Logical Operators in PHP – A Beginner's Guide
Logical operators play a key role in programming languages. They let you manipulate boolean values and evaluate logical conditions. In PHP, there are four fundamental logical operators: AND, OR, NOT, and XOR. This guide will help you understand these operators, and I'll explain how they work using code examples
( 5
min )
How to Setup a Windows Machine for Machine Learning/Deep Learning Using an Nvidia Graphics Card (CUDA)
If you are learning machine learning / deep learning, you may be using the free Google Colab [https://colab.research.google.com/]. But you might wonder if the free version is adequate. If you can afford a good Nvidia Graphics Card (with a decent amount of CUDA cores) then you can easily
( 11
min )
Git Abort Merge – How to Cancel a Merge in Git
Version control is a system that helps manage changes to files and directories over time. It allows multiple people to collaborate on a project, keep track of modifications, and revert to previous versions if needed. One of the most popular version control systems is Git. Git [https://git-scm.com/] is a
( 6
min )
What does the "Maximum call stack exceeded" error mean?
Have you ever gotten an error similar to this? This error occurs because the call stack has exceeded its limit. But what does this mean? First, let's understand what the call stack is. The Call Stack The call stack is a data structure in JavaScript that contains the function(s) being
( 6
min )
-
Open
-
-
Open
Python Sort Dictionary by Key – How to Sort a Dict with Keys
Sorting is a fundamental operation in computer programming that involves arranging elements in a specific order. Whether you're working with numbers, strings, or complex data structures, sorting plays a crucial role in organizing and manipulating data efficiently. From small arrays to large datasets, sorting algorithms allow programmers to
( 4
min )
What Exactly is Node.js? A Guide for Beginners
If you're thinking about doing back-end development using JavaScript, you will hear the term ‘Node.js’. Node is often associated with developing powerful web servers. But what exactly is Node.js? Is it a JavaScript framework just like Angular [https://angular.io/]? Is it a programming language? Is it a JavaScript Library? Is it
( 11
min )
The Golang Handbook – A Beginner's Guide to Learning Go
The Go programming languagehas been exploding in popularity. Tons of companies are using Go to build scalable, modern, backend infrastructure. If you're looking to learn a new programming language, Go is a great choice. It's fast, lightweight, has an amazing open source community, and is actually quite easy to
( 45
min )
Build and Deploy a LeetCode Clone with React, Next JS, TypeScript, Tailwind CSS, Firebase
Solving coding challenges on the LeetCode website is a great way to improve your developer skills. But an even better way to improve your skills is to develop your own LeetCode website. We just published a course on the freeCodeCamp.org YouTube channel that will teach you how to build and
( 4
min )
React Component Lifecycle Methods – Explained with Examples
In React, components have a lifecycle that consists of different phases. Each phase has a set of lifecycle methods that are called at specific points in the component's lifecycle. These methods allow you to control the component's behavior and perform specific actions at different stages of its lifecycle. A component's
( 11
min )
AWS Basics for DevOps – How to Setup a Linux Machine
To create an application like WhatsApp or Facebook, you'd need many servers (30-40), operating system licenses, routers, cables, switches, gateways, air conditioning units, and employees for maintenance. All this can be expensive and time-consuming, and there is no guarantee that the application will be successful in the market. But
( 7
min )
What is Socket Programming in Python?
In this article, you will learn how to code a socket program in Python. But before that, let's understand what a socket is and where you might use it. We can define a socket as a quick connection which allows the transmission of data between two processes on the same
( 6
min )
Why Accessibility Matters in UI/UX Design
Accessibility is a word that is often thrown around in the design field. As a UI/UX/Web Designer, you might have heard this word a few times and you might wonder why it's important. In this article, you will learn: * What accessibility means * Some myths surrounding
( 6
min )
-
Open
-
Open
How to Copy a Directory in Linux with the cp Command
Copying directories is an essential task in Linux. It allows you to duplicate directories, create backups, or transfer data between different locations. One of the most commonly used commands for copying files and directories in Linux is cp. In this tutorial, we will explore how to copy directories effectively
( 4
min )
Google Sheets – How to Automatically Post Events to Google Calendar with Apps Script
In this article we'll link two Google services -> Google Sheets and Google Calendar. By using a very short custom function in Google Apps Script, we can add a list of events from a Google Sheet to a Google Calendar. 🤯 And we'll even have it email our guests as
( 5
min )
How Security Analysts Can Use Artificial Intelligence (AI) in Cybersecurity
Artificial intelligence (AI) has been a game-changer in cybersecurity. It has revolutionized the approach to cybersecurity by providing advanced techniques to detect and mitigate cyber threats. The use of AI in cybersecurity is increasing rapidly, with many companies adopting it as a key tool in their cybersecurity strategy.
( 18
min )
How to Build a Responsive Navigation Bar with a Dropdown Menu using JavaScript
Navigation bars are essential components used a lot in websites and web apps. As a web developer, you will need to be able to customize them, either for a client project or a basic portfolio site. In this guide, you'll learn how to build a navigation bas for yourself from
( 11
min )
Use Django to Code a ChatGPT Clone
Creating an AI chatbot might seem like a daunting task, especially if you're not an experienced programmer. But we just launched a course on the freeCodeCamp.org YouTube channel that will demystify the process and walk you through it step-by-step. This course focuses on using Django, a high-level Python web framework,
( 3
min )
-
-
Open
-
Open
Full-Stack Development with Next.js, TypeScript, and AWS
Learn how create a full stack app with Next.js, TypeScript, and AWS Amplify. We just publshed a new full stack app course on the freeCodeCamp.org YouTube channel. Brian H. Hough, a renowned software engineer and course creator, is your guide. He'll help you build an inspirational quote generator app. You'll
( 3
min )
How to Use Container Queries – Responsive Design Beyond the Viewport
Before now, making your website responsive was limited to resizing HTML elements with media queries. This was, and still is, a brilliant innovation for web development in general. But web development has evolved with the advent of JavaScript frameworks—particularly with the use of components as building blocks in developing
( 5
min )
Delete YouTube History – How to Delete YouTube Search and Watch Histories
YouTube is the most popular platform for watching and discovering educational and entertainment-focused videos. But if you have a privacy concern and want to clear your YouTube history for a fresh start, deleting your YouTube search and watch histories can be an effective solution. In this article, I will guide
( 4
min )
How You Can Use AI to Improve Your Code Quality
As a software developer, I've always tried to write flawless code. Great code is not just functional – it should also be elegant, efficient, and robust. But let's be honest – the journey towards code perfection can sometimes feel like an uphill battle. Or more often than not, a
( 10
min )
-
Open
-
Open
Amazon EC2 – Understanding and Addressing the Security Problem
Hi there. Great to have you here. But I'm afraid I'm going to have to start off with some bad news. Before you can really improve the security of your Amazon EC2 instances, you'll need to get a handle on all the stuff that can go wrong. And I'll
( 8
min )
Component-Based Architecture in Medusa – How to Build Robust User Interfaces
Medusa is a modern JavaScript framework that makes it easy to build robust user interfaces. It is built around a component-based architecture, which is a design pattern that breaks down a UI into smaller, reusable components. This makes it easier to maintain and update the UI, as well as
( 9
min )
How to Build a Full Stack Application Using ChatGPT
ChatGPT can be used to supercharge software development. You even create complete applications with ChatGPT. We just published a course on the freeCodeCamp.org YouTube channel that will show you how you can create a full stack app with ChatGPT. This course, authored by Judy from webdecoded, leverages the power of
( 3
min )
RegEx for Date Formats – Regular Expressions for Matching Dates
Regular expressions let you match any string, be it in the form of various user inputs such as username, password, URL, and even different date formats. In this article, I’ll show you several ways you can match a date with regular expressions. In the programming world, there are always multiple
( 4
min )
-
-
Open
-
Open
How to Create an Interactive Heatmap Using JavaScript
Data visualization is a powerful tool that helps us make sense of complex data. With it, we can spot patterns and trends that might take much more time to become obvious just by looking at raw numbers. One particularly useful chart type is the heatmap, and I’m excited to
( 12
min )
How JavaScript’s Asynchronous Operations Work in the Browser
JavaScript is a popular programming language used for developing interactive front-end web applications, among other things. It's widely known for its major features: it is single-threaded, non-blocking, and asynchronous. But what do these three things mean? What Does "Single-Threaded" Mean? When a programming language is referred to as single-threaded,
( 12
min )
Create Native Apps with Ionic and Capacitor
Ionic and Capacitor are two powerful tools that can be used to build native mobile applications. Ionic is a UI framework that provides a wide range of components and features for building mobile apps, while Capacitor is a runtime that allows Ionic apps to be deployed to both iOS and
( 3
min )
JavaScript Sort() – How to Use the Sort Function in JS
In this article I will explain how to use, and maximize the full potential of the sort() function. What is the sort() Function? The sort() function allows you to sort an array object by either the default sorting order, or by a custom sorting function. By default, it sorts the
( 9
min )
Can you find the bug? JavaScript security vulnerabilities course
In a world where cybersecurity threats are more prevalent than ever, understanding how to safeguard your web applications is of paramount importance. We just published a course on the freeCodeCamp.org YouTube channel that will help you learn common JavaScript security vulnerabilities and how to prevent them. Brandon teaches this course.
( 3
min )
Learn Google Apps Script Basics by Building a Tic Tac Toe Game
Google Sheets are powerful, and Apps Script makes them even more versatile and useful. Yes, you can use them for finance dashboards, personal budgets, and project management (and we'll cover these as future topics). But in this article, I'll go through the basics of Apps Script by building a simple
( 7
min )
Python End Program – How to Exit a Python Program in the Terminal
You can execute Python code in a terminal just like you would in an IDE like VS Code, Atom, and so on. You can do this in both Windows and Unix operating systems like Linux and macOS. In this article, you'll learn how to exit a Python program in
( 4
min )
Git Best Practices – A Guide to Version Control for Beginners
If you're a software developer, you may be familiar with the concept of version control. Version control is the practice of managing changes to your codebase over time. It's an essential tool for any development project. One of the most popular version control systems is Git, which is widely
( 21
min )
Cloud Computing Abstractions – IaaS, PaaS, FaaS, and SaaS Explained
Abstracting is the process of reducing something to its most basic form. It is the hiding away of the inessential. For a drawing, this could be reducing it to its basic lines and shapes. Naturally, there are many levels of an abstraction, since what is inessential is subjective.
( 9
min )
-
Open
-
Open
Learn Networking in Flutter By Building a Simple App
Almost all apps you use today run by accessing the internet. You can hardly find an app that runs without connecting to the internet. The internet has become an integral part of our lives, as it solves one of the most critical problems we have to handle: data transfer.
( 7
min )
Caching in React – How to Use the useMemo and useCallback Hooks
As React developers become more proficient with the library, the topic of performance becomes a major focal point in their development process. As with any tool or programming methodology, caching plays a huge role when it comes to optimizing React applications. Caching in React typically goes by the term
( 5
min )
What is the 60-30-10 Rule in Design? And How to Use it in Your Projects
As designers, colour is a huge component of our work. But many of us struggle with the usage of colours in our designs. In this article, you will learn about the 60-30-10 colour rule, how it's used, and see a practical example of it. What is the 60-30-10 rule?
( 5
min )
How to Secure Your MERN Stack App with JWT-Based User Authentication and Authorization
MongoDB [https://www.mongodb.com/docs/], Express [https://expressjs.com/en/starter/installing.html], React [https://react.dev/learn], and Node.js [https://nodejs.org/en/docs] are the components of the MERN stack, one of the most widely used web development stacks out there today. The MERN stack enables programmers to create dependable web applications with strong capabilities. Yet, security should be a key concern with any
( 16
min )
How Method Overloading Works in PHP
As software engineers, we sometimes have to perform certain tasks that can be achieved with a variable number of inputs. To solve this problem, you can create multiple functions to solve for the different possible number of inputs. Or we can write a large function to solve this problem.
( 5
min )
How to Write Clean Code – Tips and Best Practices
Hi everyone! In this article we're going to talk about writing "clean" code. It's a topic that used to confuse me a bit when I was starting out as a programmer, and I find that it has many nuances and possible interpretations. So in this article we'll talk about what
( 18
min )
URL RegEx Pattern – How to Write a Regular Expression for a URL
Regular expressions provide a powerful and flexible way to define patterns and match specific strings, be it usernames, passwords, phone numbers, or even URLs. In this article, I'll show you the fundamentals of crafting a regular expression for URLs. Whether you need to validate user input, extract components from URLs,
( 4
min )
-
Open
-
-
Open
-
Open
How Number Systems Work in Java – Decimal, Binary, Octal, and Hexadecimal Explained
Knowing how to work with numbers is essential in programming. Java supports four number systems that are used for various purposes – the decimal, binary, octal, and hexadecimal systems. Understanding what these number systems are and when to use them is an important skill for any Java programmer.
( 6
min )
Python Merge Dictionaries – Merging Two Dicts in Python
Dictionaries are one of the built-in data structures in Python. You can use them to store data in key-value pairs. You can read about the different methods you can use to access, modify, add, and remove elements in a dictionary here [/news/python-dictionary-methods-dictionaries-in-python/]. In this article, you'll learn how
( 5
min )
How to Work with Files in Node.js
JavaScript is a popular programming language among web developers. But when it was first released, only front end developers enjoyed all of the fun it had to offer, since you couldn't run JavaScript outside the browser. But then in 2009, the first version of Node.js was released. Node is a
( 7
min )
The Ultimate Go Programming Video Course
We are excited to announce a new comprehensive Go programming video course on the freeCodeCamp.org YouTube channel. Our mission is to provide easy access to the most sought-after tech skills, and this course is our latest endeavor to fulfill that mission. Go: The Language of the Future Go, or Golang,
( 4
min )
-
Open
-
-
Open
-
Open
What is Wireframing? How to Go from Paper Sketches to High Fidelity Wireframes
What are Wireframes? Wireframes are visual representations of the structure, layout, and functionality of a website, application, or other digital product. You typically create them during the early stages of the design process, and they provide a simplified and focused view of the user interface and user experience. You
( 10
min )
How to Use Elastic Beanstalk to Deploy a Node.js App
Building and managing applications on the cloud can be a daunting task. This is especially true when it comes to handling different environments, scaling, and deploying updates. But there's a service in AWS that can simplify this. AWS Elastic Beanstalk is here to make your life easier. It provides
( 6
min )
How to Build a Beginner-Friendly JavaScript Application
JavaScript is a popular programming language for building web, mobile, and desktop applications. There are many frameworks and libraries that have been built around JavaScript, with more likely being developed even as you are reading this article. If you plan to start learning JavaScript, some of them are worth
( 7
min )
900 Free Computer Science Courses from the World’s Top Universities
In this article, I compiled 900 online courses offered by the 60 best universities in the world for studying computer science in 2023. I built the list using a data-driven approach. You can find my methodology below. But if you’d rather go straight to the course list, click here. Methodology
( 33
min )
What is Ethical Hacking? A Cybersecurity Definition of Ethical Hackers
As technology continues to advance, cyber-threats are becoming the norm. Cyber-criminals are constantly trying to find ways to exploit systems and networks, all with the purpose of stealing sensitive information or causing damage. These challenges in the tech space have led to the emergence of the term ethical hacking. The
( 10
min )
-
Open
-
Open
Google's New Cybersecurity Professional Certificate Explained
Google has released a new professional certificate in Cybersecurity. The announcement [https://blog.google/outreach-initiatives/grow-with-google/google-cybersecurity-career-certificate/] came on May 4th, 2023 and marks the 6th topical branch in their continually expanding certificate program. It follows five other successful entry-level certificate programs in IT Support, Data Analytics, Digital Marketing & E-commerce, Project Management
( 5
min )
How the Euclidean Algorithm Works – with Code Examples in Go
The Euclidean Algorithm is a well-known and efficient method for finding the greatest common divisor (GCD) of two integers. The GCD is the largest number that can divide both integers without leaving a remainder. The algorithm is named after the ancient Greek mathematician Euclid, who presented it in his
( 8
min )
How Joining a Tech Community Can Help Grow Your Career
In the tech industry, joining a community is one of the best ways to stay informed about the latest trends, connect with like-minded professionals, and stay up-to-date on the latest career opportunities. Tech communities are groups of professionals with a common interest in technology and a shared passion for
( 7
min )
xor.py – How the Python XOR Operator Works
You can use bitwise operators in Python to perform different operations on the individual bits of an integer. There are different bitwise operators like the bitwise AND (&), bitwise OR (|), bitwise XOR (^), and so on. In this article, we'll focus on the bitwise XOR (^) operator.
( 4
min )
The Brain-Inspired Approach to AI – Explained for Developers
> Our intelligence is what makes us human, and AI is an extension of that quality" – Yan LeCun Since the advent of Neural Networks (also known as artificial neural networks), the AI industry has enjoyed unparalleled success. Neural Networks are the driving force behind modern AI systems and they
( 13
min )
How to Use the useState() Hook in React – Explained with Code Examples
One of the most well-known React hooks is the useState() hook. It lets you add a state variable to your component. The useState() hook can conveniently hold strings, arrays, numbers, objects and much more. In this article, we are going to learn about the useState() hook and demonstrate its use
( 6
min )
Kotlin VS Java – What's the Difference?
Technology advances very quickly these days, and there's always a new programming language or tool to learn. You may have heard developers discussing the merits of and differences between two popular programming languages – Java and Kotlin. So what's the difference between them? Which one should you learn?
( 6
min )
-
Open