Question: How to: Apr 28, 2023

Answer:
1. If you're new to HTML, CSS, and JavaScript, this freeCodeCamp course is for you. Jess, AKA CoderCoder, will walk you through building your own social media dashboard app step-by-step. You'll build a simple website, then optimize it for different device sizes. You'll learn how to use hover states for your interactive elements, and even add a day-night mode toggle. This course touches on so many key skills, including how to create a GitHub repository for your code, how to approach basic web design, and how to keep accessibility top of mind. (7 hour YouTube course): https://www.freecodecamp.org/news/create-a-simple-website-with-html-css-javascript/

2. React is a powerful front end development JavaScript library. And one of its key components is React Router. This tool helps you pipe all your different React elements together into a sophisticated app. In this course, you'll learn on React Router 6 from renowned JavaScript instructor Bob Ziroll. He'll guide you through coding your own production-grade dynamic web app. (10 hour YouTube course): https://www.freecodecamp.org/news/learn-react-router-6-full-course/

3. We've been talking a lot about the impact of Generative AI and Large Language Models (LLMs) like GPT-4. These are impacting software development in a lot of profound ways. And they're also making a splash in the field of cybersecurity. It turns out you can use LLMs to analyze threat patterns, write incident reports, and even debug your code. But this comes with its own set of risks, writes Daniel Iwugo. His primer will give you a higher fidelity lens through which you can look at AI and its implications for security. (20 minute read): https://www.freecodecamp.org/news/large-language-models-and-cybersecurity/

4. Even with all the recent AI breakthroughs, code still doesn't deploy itself. DevOps engineers and even regular devs need to know how to push their code to the internet. This beginner tutorial will explain common strategies you can use to deploy your code to production. You'll learn about Rolling Deployment, Blue/Green Deployment, and my personal favorite, Canary Deployment. (20 minute read): https://www.freecodecamp.org/news/application-deployment-strategies/

5. I'm obsessed with learning. I'm constantly looking for ways to learn more efficiently so I can cram more into the 30-watt computer that is my brain. Which is why I was jazzed to read this guide by Otavio Ehrenberger. He shows you how to use tools like Python, Anki, and ChatGPT to automate your flashcard workflows and turbo-charge your learning. (15 minute read): https://www.freecodecamp.org/news/supercharged-studying-with-python-anki-chatgpt/

Quote of the Week: *"In a relatively short time we've taken a system built to resist destruction by nuclear weapons and made it vulnerable to toasters."* — Jeff Jarmoc, cybersecurity researcher, speaking of the World Wide Web and the Internet of Things


Question: How to: Apr 21, 2023

Answer:
1. The freeCodeCamp community just published a comprehensive project-based course on ChatGPT and the OpenAI API. This cutting-edge course will help you harness the power of Generative AI and Large Language Models. You'll learn from legendary programming teacher Ania Kubów. She'll walk you through building 5 projects that leverage OpenAI's APIs: a SQL query generator, a custom ChatGPT React app, a DALL-E image creator, and more. (5 hour YouTube course): https://www.freecodecamp.org/news/chatgpt-course-use-the-openai-api-to-create-five-projects/

2. And if you want to better understand the machine learning that powers AI tools like ChatGPT, this JavaScript Machine Learning course will most definitely be your jam. This "No Black Box" ML course is taught by Dr. Radu Mariescu-Istodor, one of the most popular computer science professors in the freeCodeCamp community. He'll show you how to build AI applications, implement classifiers, and explore data visualization – all without relying on libraries. This is a great way to grok what's really running under the hood of AI systems. (4 hour YouTube course): https://www.freecodecamp.org/news/learn-machine-leaning-without-libraries-or-frameworks/

3. Functional Programming is hard. But it comes up all the time in developer coding interviews. This advanced JavaScript course will teach you key FP concepts like lexical scope, time optimization, hoisting, callbacks, and closures. You'll also gain a deeper understanding of currying and its practical applications in JavaScript. (30 minute read): https://www.freecodecamp.org/news/prepare-for-your-javascript-interview/

4. And if you really want to nail your coding interviews, take the advice of competitive programming world finalist Alberto Gonzalez. Instead of just memorizing the solutions to common interview questions, he recommends collaborating with your interviewer to talk through your coding assignment. He walks you through 3 mock interview questions, and gives you strategies for looking really smart while showcasing your problem-solving skills. (25 minute read): https://www.freecodecamp.org/news/collaborative-problem-solving-with-python/

5. Unleash your inner game developer with this new Godot Game Engine course. This beginner-friendly tutorial will guide you through coding your own platformer game. You'll design your game's User Interface, enemies, and 2D background scenes. Along the way, you'll also learn skills like event scripting, animation, and camera movement. (25 minute read): https://www.freecodecamp.org/news/learn-godot-for-game-development/

Quote of the Week: *"Everything that civilisation has to offer is a product of human intelligence. We cannot predict what we might achieve when this intelligence is magnified by the tools that AI may provide, but the eradication of war, disease, and poverty would be high on anyone’s list. Success in creating AI would be the biggest event in human history. Unfortunately, it might also be the last."* — Stephen Hawking, Cosmologist, Theoretical Physicist, and my childhood hero


Question: How to: Apr 7, 2023

Answer:
1. freeCodeCamp just published a new Front End Development course. You can code along at home and build your own game in raw HTML, CSS, and JavaScript. Then you'll learn how to refactor your game to make use of the Model-View-Controller design pattern. You'll then add TypeScript to improve the reliability of your code, and React to make your game more dynamic. This is an excellent project-oriented course for beginners. (10 hour YouTube course): https://www.freecodecamp.org/news/frontend-web-development-in-depth-project-tutorial/

2. And if you want even more web development practice, here's another beginner's course. It will teach you how to build a personal website using a lot of contemporary tools, including Next.js, Tailwind CSS, TypeScript, and Sanity. Kapehe has taught a lot of courses with freeCodeCamp, and I think you'll dig her friendly teaching style. (2 hour YouTube course): https://www.freecodecamp.org/news/create-a-personal-website-with-next-js-13-sanity-io-tailwindcss-and-typescript/

3. You may have heard the terms “Symmetric Encryption” and “Asymmetric Encryption”. But what do they mean? This primer will teach you about these concepts, and how they power both the SSL protocol and its successor, TLS. Encryption makes the World Wide Web go ‘round. (15 minute read): https://www.freecodecamp.org/news/encryption-explained-in-plain-english/

4. And on the topic of encryption, it turns out that even something as basic as storing something safely on your computer requires quite a bit of applied mathematics. This tutorial on “encryption at rest” will walk you through some of the cryptography techniques developers use – including hashing and salting. Just thinking about those makes me hungry for some hash browns. (8 minute read): https://www.freecodecamp.org/news/encryption-at-rest/

5. My friend Dhawal created this comprehensive list of 850 university courses that are freely available, which you can convert into college credit. There are a ton of different subjects to choose from, including Computer Science, Data Science, Math, and Information Security. (fully browsable list): https://www.freecodecamp.org/news/370-online-courses-with-real-college-credit-that-you-can-access-for-free-4fec5a28646/

A quick note on GPT-4 and other Large Language Model (LLM) tools: I'm spending several hours each week practicing with these tools, and learning how to use them more effectively.

I still do all my writing the old fashion way. But I'm finding LLMs to be helpful in a lot of other ways, including simplifying my code.

Quote of the Week: *"The more I study, the more insatiable do I feel my genius to be."* — Ada Lovelace, mathematician and the world's first computer programmer


Question: How to: Mar 31, 2023

Answer:
1. The most dreaded part of the developer job search is the “coding interview”. This is where a software engineer asks you to solve programming challenges right there on the spot – often by writing code on a whiteboard.

Well, freeCodeCamp has hundreds of hours of practice challenges to help prepare you for this. And even better – we just published a course taught by my friends Kylie and Keith, who are both experienced software engineers.

This “Mock Interview” will give you a much better idea of what a typical coding interview process is like. Kylie takes on the role of coding interview candidate, and answers Keith's questions about Object-Oriented Programming, Dynamic Programming, and more. (75-minute hour YouTube course): https://www.freecodecamp.org/news/real-world-coding-interview-for-software-engineering/

2. Learn how to build a 3D animation that runs right inside a browser. You'll use React, WebGi, Three.js, and GSAP. You'll learn how to display 3D models on a website, animate them, and even optimize those 3D animations for mobile devices. Even though this may sound advanced, we made this course as beginner-accessible as possible. By the end of the course, you'll deploy your own 3D-animated website to the web. (2 hour YouTube course): https://www.freecodecamp.org/news/3d-react-webgi-threejs-course/

3. Regular Expressions are a powerful – but notoriously tricky – programming tool. Luckily, ChatGPT is surprisingly good at creating these “RegEx” for you. In this course, freeCodeCamp instructor Ania Kubow will teach you how to build your very own RegEx-generating dashboard using the OpenAI API and Retool. (30-minute YouTube course): https://www.freecodecamp.org/news/use-chatgpt-to-build-a-regex-generator/

4. When I first learned Git, I struggled a bit with the concepts of local repository, remote repository, and how to sync code changes between the two. But you don't have to struggle. Deborah Kurata has created this detailed Git tutorial that walks you through Git's key syncing features. She also included lots of short video demonstrations. If you're new to Git, this is a good place to start. (30 minute read): https://www.freecodecamp.org/news/create-and-sync-git-and-github-repositories/

5. freeCodeCamp just rolled out a major update to our Android app. You can now complete coding challenges right on your phone, with our smooth mobile coding user experience. And yes – we are working on an iOS version of the mobile app for iPhone, too. (5 minute read): https://www.freecodecamp.org/news/freecodecamp-mobile-app-curriculum-update/

Quote of the Week: *"A lot of developers don’t realize that the interviewer is there to help you. It’s their job to bring out the best in you. You should always be working with your interviewer to show them your skills, and make sure you’re going down the right path. When they ask you a coding question, here’s what you should do: clarify the problem with them, articulate your plan, and then talk them through your code as you’re writing it."* — Alex Chiou, Software Engineer and founder of Taro


Question: How to: Mar 24, 2023

Answer:
1. Legendary programming teacher and frequent freeCodeCamp contributor Tim Ruscica will teach you how to code your own Mario-style platformer game in Python. You can code along at home and learn how to implement pixel-perfect collision detection, fully-animated character sprites, jump physics, and even double jump physics. (Don't try this last one in real life.) This course will also teach you some PyGame basics, and how to incorporate adorable pixel art assets. (2 hour YouTube course): https://www.freecodecamp.org/news/create-a-platformer-game-with-python/

2. Django is a popular web development framework for Python. And in this course, you'll learn how to use Django by coding your own Customer Relationship Management (CRM) system. Software Engineer John Elder will walk you through building this web app step-by-step. You'll also learn some Git, MySQL, and the Bootstrap CSS library. CRM tools can help with your client work, job searches, and everyday tasks like keeping track of friends' birthdays. By the end of this course, you'll have built your own tool that you can use long-term. (2 hour YouTube course): https://www.freecodecamp.org/news/crm-app-development-with-django-python-and-mysql/

3. Linux is an incredibly powerful automation tool. And this tutorial will show you how to harness that power through the magical art of shell scripting. Zaira Hira is a developer at freeCodeCamp and a Linux superfan. She'll teach you Bash commands, data types, conditional logic, loops, cron jobs, and more. And yes, you can try all this without installing Linux on your computer. (30 minute read): https://www.freecodecamp.org/news/bash-scripting-tutorial-linux-shell-script-and-command-line-for-beginners/

4. Please Excuse My Dear Aunt Sally. That's the sentence kids memorize in the US, so that they can remember the mathematical Order of Operations: Parenthesis, Exponents, Multiplication, Division, Addition, Subtraction. And JavaScript has something similar: Operator Precedence. This in-depth tutorial by Franklin Okolie will teach you about these JavaScript operators and more. Enjoy greatest hits like Modulus, Increment, and Decrement. If you take the time to learn these, you'll save yourself a ton of headache down the road when you're debugging your code. (25 minute read): https://www.freecodecamp.org/news/javascript-operators-and-operator-precedence/

5. If you want to get into Data Analytics, I have good news. Jeremiah Oluseye is a data scientist, and he created this roadmap to guide you in your journey. You'll learn which tools to focus your time on, which math you should brush up on, and how to build your network in the data community. (25 minute read): https://www.freecodecamp.org/news/data-analytics-roadmap/

A big thanks to all 8,289 of you all who are now supporting freeCodeCamp. If you aren't yet donating to our charity, I encourage you to get involved. You can join us in our mission to create open learning resources for everyone, everywhere on Earth: https://www.freecodecamp.org/donate

Quote of the Week: *"I think that in life, as in game design, you have to find the fun. There is joy out there waiting to be discovered, but it might not be where you expected.

You can’t decide what something’s going to be before you embark on it, and you shouldn’t stick with a bad idea just because you’re fond of it. Take action as quickly and repeatedly as possible. Take advantage of what you already know. And take liberties with tradition.

But most importantly, take the time to appreciate the possibilities, and make sure all of your decisions are interesting ones."* — Sid Meier, game developer and creator of the Civilization game series


Question: How to: Mar 17, 2023

Answer:
1. React is a powerful JavaScript library for coding web apps and mobile apps. This course will teach you the newest version of React – React 18 – along with the popular Redux Toolkit. This freeCodeCamp course is taught by legendary programming teacher John Smilga. You can code along at home as he teaches you all about Events, Props, Hooks, Data Flow, and more. (13 hour YouTube course): https://www.freecodecamp.org/news/learn-react-18-with-redux-toolkit/

2. And if you just can't get enough React, my fellow black-framed glasses enthusiast Germán Cocca has got you covered. The Argentinian software engineer wrote a detailed tutorial that shows you several ways of building the same React app, using a rainbow of React tools including Gatsby, Astro, Vite, Next, and Remix. Prepare to expand your mind. (1 hour read): https://www.freecodecamp.org/news/how-to-build-a-react-app-different-ways/

3. Ever wonder what it takes to land a Data Scientist role? No, you don't necessarily need a Ph.D. But you do need to be able to ace the technical interview. That's where my friends Kylie and Keith come in. They are both accomplished Data Scientists and prolific programming teachers. And they've designed this Data Science “Mock Interview” to give you a better idea of what this process will be like for you. (90-minute watch): https://www.freecodecamp.org/news/mock-data-science-job-interview/

4. Flutter is a much-loved mobile app development framework. freeCodeCamp uses Flutter for our own Android app, and we swear by it. If you want to get into mobile development, Flutter is a great place to start, and this is a good first tutorial. You'll build your own mobile user experience using Flutter, Dart, and VS Code. (30 minute read): https://www.freecodecamp.org/news/how-to-build-a-simple-login-app-with-flutter/

5. My friend Dhawal uncovered more than 1,700 Coursera courses that are still freely available. If you just want to learn, and don't care about claiming the certificates at the end, this is for you. There are a ton of math, software engineering, and design courses – many taught by prominent university professors. This should be plenty to keep you learning new concepts and expanding your skills. (fully browsable list): https://www.freecodecamp.org/news/coursera-free-online-courses-6d84cdb30da/

Quote of the Week: *"The reason an experienced engineer moves so much faster than a beginner is because they've opened most of the “doors” they encounter in code thousands of times before. They stop to think, but so much is done purely by recall. This is why you need to practice, practice, practice."* — Dan Abramov, JavaScript Developer and Creator of Redux


Question: How to: Mar 10, 2023

Answer:
1. The freeCodeCamp community is proud to bring you this latest computer science course in our partnership with Harvard. You'll learn Web Development with Python and the popular Django framework. You'll start by learning some HTML, CSS, and Git. Then you'll learn about user interface design, testing, scalability, and security. I hope you are able to code along at home, expand your skills, and enjoy some top-notch teaching. (14 hour YouTube course): https://www.freecodecamp.org/news/learn-web-development-from-harvard-university-cs50/

2. One of our most requested courses over the past few years: LaTeX – the powerful typesetting system used to design academic papers, scientific publications, and books. You'll learn these tools and concepts from Michelle Krummel. She has more than 20 years of teaching experience. You'll learn about mathematical notation, TexMaker, Overleaf, and the many packages available in the LaTeX ecosystem. (4 hour YouTube course): https://www.freecodecamp.org/news/learn-latex-full-course/

3. One of the most critical concepts you should understand about Git is Branching. We've got you covered. In this tutorial, Deborah Kurata will teach you how to create a local Git repository with a main branch, then branch off of it. She'll show you how to commit your code changes, then merge those files back into the main branch. This is what I like to call the "core gameplay loop" of software development. Enjoy. (40 minute read): https://www.freecodecamp.org/news/git-branching-commands-explained/

4. You may have heard about REST APIs. But have you heard about its predecessor, SOAP? Or cutting edge GraphQL APIs? This tutorial by software engineer Germán Cocca will teach you about the Client-Server Model, and how each of these API paradigms work. At the end of the day, an API is just "a set of defined rules that establishes how one application can communicate with another." By the end, you'll have a better appreciation for how all these computers around the world communicate with one another. (30 minute read): https://www.freecodecamp.org/news/rest-vs-graphql-apis/

5. If you're a Linux enthusiast like I am, you may appreciate the sheer power Linux gives you. But only if you're willing to take the time to learn how to wield that power. The find command is one of those powerful tools. This tutorial will show you how to search through file systems by owner, type, permissions, recency, and even regex search. This is some SysAdmin-level stuff. And we'll keep these Linux tutorials coming. (10 minute read): https://www.freecodecamp.org/news/how-to-search-files-effectively-in-linux/

Quote of the Week: *"We build our computers the way we build our cities: over time, without a plan, on top of ruins."* — Ellen Ullman, Programmer and Author


Question: How to: Mar 3, 2023

Answer:
1. You may have heard about AIs that can beat the world's best Chess players, Go players, and even Starcraft players. Many of these AIs use a game-playing algorithm called AlphaZero. The AI starts out by playing a game against itself to learn the rules and discover strategies. After a few hours of training, it's often able to play the game at a superhuman level. This Python course will teach you how to code your own AlphaZero algorithm from scratch that can win at both Tic Tac Toe and Connect 4. You'll learn about Monte Carlo Tree Search, Neural Networks, and more. This is an ideal course for anyone who wants to learn more about Machine Learning. (4 hour YouTube course): https://www.freecodecamp.org/news/code-alphazero-machine-learning-algorithm/

2. Security Researcher and freeCodeCamp contributor Sonya Moisset just made her Open Source Security Handbook freely available. If you're planning to open-source some of your code, this should be a helpful read. You'll learn about Static Analysis, Supply Chain Attacks, Secret Sprawl, and other s words. (full-length handbook): https://www.freecodecamp.org/news/oss-security-best-practices/

3. Excel is a surprisingly powerful tool for doing data analysis. And you can get even more mileage out of Excel if you meld it with Python and the popular Pandas library. This tutorial will teach you how to merge spreadsheets, clean and filter them, and import them into datasets. You'll even learn how to turn spreadsheet data into Matplotlib data visualizations. (20 minute read): https://www.freecodecamp.org/news/automate-excel-tasks-with-python/

4. If you're just starting your developer journey, you may hear a lot about APIs and how to use them in your projects. Well, this tutorial will give you a ton of examples of public APIs you can play around with. Weather APIs, News APIs, even an API to help you identify different breeds of dogs. This is a good place to get started. (16 minute read): https://www.freecodecamp.org/news/public-apis-for-developers/

5. My friends Jess and Ramón have taught thousands of people how to code using the freeCodeCamp curriculum. And this week they're launching a new cohort program called the Bad Website Club. The pressure is off. Your website doesn't have to look perfect. You can instead just relax and enjoy the process of building websites with HTML, CSS, and JavaScript. Everything is freely available. You can join us at the launch party live stream on March 6. (5 minute read): https://www.freecodecamp.org/news/the-bad-website-club-and-more-free-bootcamps/

Quote of the Week: *"AlphaGo's way is not to make territory here or there, but to place every stone in a position where it will be most useful. This is the true theory of Go: not ‘what do I want to build?’, but rather ‘how can I use every stone to its full potential?’"* — Professional Go player Fan Hui after losing 5 games to AlphaGo, an AlphaZero algorithm trained to play the ancient strategy game of Go


Question: How to: Feb 24, 2023

Answer:
1. If you're new to Linux, this freeCodeCamp course is for you. You'll learn many of the tools used every day by both Linux SysAdmins and the millions of people running Linux distros like Ubuntu on their PCs. This course will teach you how to navigate Linux's Graphical User Interfaces and powerful command line tool ecosystem. freeCodeCamp instructor Beau Carnes worked with engineers at Linux Foundation to develop this course for you. (6 hour YouTube course): https://www.freecodecamp.org/news/introduction-to-linux

2. And if you're more experienced at Linux, you may want to learn how to code your own commands for the Linux command line. This tutorial will teach you how Bash aliases work, and how they can save you time. The author also shares a table of more than 20 aliases that he uses in his day-to-day work as a developer. (18 minute read): https://www.freecodecamp.org/news/how-to-create-your-own-command-in-linux/

3. HTML gives structure to apps and websites. In this beginner course, you'll learn HTML fundamentals. freeCodeCamp instructor Ania Kubów will be your guide to many key web development concepts. (2 hour YouTube course): https://www.freecodecamp.org/news/html-coding-introduction-course-for-beginners/

4. SOLID Design Principles belong in your developer skill toolbox. They help you build codebases that will be easier to maintain and update without breaking things. This tutorial will introduce you to key concepts like the Single Responsibility Principle, the Open-Closed Principle, the Dependency Inversion Principle, and more. You'll even get some nice JavaScript code examples to illustrate these principles in action. (20 minute read): https://www.freecodecamp.org/news/solid-design-principles-in-software-development/

5. More than 50 years ago, Pong kick-started the video game revolution. And today in 2023, you can code your own Pong game using Python and its built-in graphics library called Turtle. Turtle is even older than Pong. It was such a popular tool for teaching programming to kids in the 60s that Python imported it from an older language called Logo. This tutorial will teach you Python scripting and basic computer graphics concepts. (20 minute read): https://www.freecodecamp.org/news/how-to-code-pong-in-python/

Quote of the Week: *"Theory and practice sometimes clash. And when that happens, theory loses. Every single time."* ― Linus Torvalds, Creator of Linux


Question: How to: Feb 17, 2023

Answer:
1. It's 2023 and not only can you play other people's video games – you can build games yourself. This freeCodeCamp GameDev course will teach you how to use JavaScript to code your own physics-based action game. You'll learn how to animate game sprites, implement collision detection, and program enemy AI. Along the way, you'll learn some CSS3, vanilla JavaScript, HTML Canvas, and other broadly useful open source tools. (3 hour YouTube course): https://www.freecodecamp.org/news/create-an-animated-physics-game-with-javascript/

2. What's the simplest way to get started with Python web development? Well, many developers will recommend Flask. You can learn the basics of this light-weight web development framework in just a few hours of study. This Python Web Development course will teach you how to build and deploy a production-ready, database-driven Flask app. (4 hour YouTube course): https://www.freecodecamp.org/news/develop-database-driven-web-apps-with-python-flask-and-mysql/

3. z-index is easily one of the most confusing properties in all of CSS. It controls how HTML elements appear on the page, and how close they are to your user's eyeballs. This beginner tutorial will teach you about "Stacking Context." It will give you a solid mental model. Soon you too will understand how your browser's DOM renders elements on top of one another. (40 minute read): https://www.freecodecamp.org/news/z-index-property-and-stacking-order-css/

4. What are URIs? What are HTTP Headers? How does DNS work? This HTTP Networking Handbook will teach you many of the fundamentals about how the web works, with lots of helpful illustrations. You can bookmark it to use it as a reference. And freeCodeCamp also published a 4-hour video course to accompany it if you want to go even deeper. (full-length book): https://www.freecodecamp.org/news/http-full-course/

5. Learn Asynchronous Programming for beginners. This in-depth guide will teach you key async JavaScript concepts. You'll learn about the Call Stack, the Callback Queue, Promises, Threading, Async-Await, and more. If you want to take your computer science knowledge to the next level, this is well worth your time. (30 minute read): https://www.freecodecamp.org/news/asynchronism-in-javascript/

Quote of the Week: *"In physics, you don't have to go around making trouble for yourself. Nature does it for you."* — Frank Wilczek, Physicist, Professor, and Nobel Laureate


Question: How to: Feb 10, 2023

Answer:
1. When I was first learning to code, I had trouble understanding exactly what an API is. But I came to understand that, in its simplest form, an API is like a website. But instead of sending HTML to a browser or mobile app, an API sends data. Usually JSON data. This in-depth freeCodeCamp course is taught by experienced developer and instructor Craig Dennis. It will teach you how to code your own REST API – complete with server-side code, client-side data fetching, and more. (3 hour YouTube course): https://www.freecodecamp.org/news/apis-for-beginners/

2. Remember those silly BuzzFeed personality quizzes? Like: "What type of cheese are you?" This course will teach you how to code your own BuzzFeed-style website using 3 different approaches: a vanilla JavaScript app, a React + JSON API app, and finally a TypeScript + Node.js mini-backend. This course is taught by long-time developer and freeCodeCamp instructor Ania Kubów. If you code along at home, I think you'll learn a ton from this course, and have a lot of fun along the way. (4 hour YouTube course): https://www.freecodecamp.org/news/learn-how-to-code-a-buzzfeed-clone-in-three-ways/

3. If you want to automate random tasks from your day-to-day life, Python is an excellent tool for the job. This tutorial will teach you how to write simple Python scripts that compress photos, turn text into speech, proof-read your messages, and more. (12 minute read): https://www.freecodecamp.org/news/python-automation-scripts/

4. In my years as a developer, I've found that people greatly underestimate how powerful spreadsheets are for doing data analysis. You don't need to be a statistician to squeeze out meaningful insights from your spreadsheet. One of the most helpful spreadsheet functions is LOOKUP, and its descendants VLOOKUP, HLOOKUP, and XLOOKUP. This in-depth tutorial will show you how to wield these powerful functions to slice and dice data just the way you need it. (14 minute read + video): https://www.freecodecamp.org/news/lookup-functions-in-excel-google-sheets/

5. Also, freeCodeCamp just published a massive Git & GitHub course in Spanish. (Over the years, we've published several Git courses in English, too.) If you have Spanish-speaking friends who want to learn software development, please tell them that we now have in-depth courses on a broad range of coding topics. These are all taught in Spanish by Estefania. She's an experienced teacher and software engineer. (5 hour YouTube course): https://www.freecodecamp.org/news/learn-git-and-github-in-spanish-course-for-beginners

Quote of the Week: *"An API that isn’t comprehensible isn’t usable."* — James Gosling, Computer Scientist and Lead Developer of the Java Programming Language, on the importance of having easy-to-understand APIs


Question: How to: Feb 3, 2023

Answer:
1. freeCodeCamp just published a fully-animated computer basics course. Even if you've been using computers for years, this course may be helpful for you. And it should definitely be helpful for any friends and family members who've never used a laptop or desktop before. This course covers computer hardware, how cloud computing works, security basics, and more. (1 hour YouTube course): https://www.freecodecamp.org/news/computer-basics-beginners

2. Hypertext Transfer Protocol (HTTP) is the foundation of data communication on the World Wide Web. And this in-depth course will teach you how this massive network of computers really works. You'll learn about Domain Name Systems, URL paths, security, and more. If you're interested in networks and back end development, this course should be well worth your time. (5 hour YouTube course): https://www.freecodecamp.org/news/http-networking-protocol-course/

3. Django is a popular Python web development framework. If you want to build a sophisticated website, it may make sense to learn Django. Like Node.js, Django is used at scale – most notably powering Instagram's website and APIs. This course will teach you Django fundamentals. You'll code your own online marketplace while learning about core Django features. (2 hour YouTube course): https://www.freecodecamp.org/news/learn-django-by-building-a-marketplace/

4. If you want to go old school and never even touch your mouse when you're coding, you can use the Vim code editor. Vim comes built-in with many operating systems. It uses a sophisticated series of keyboard shortcuts for quick code edits. It can take years to get really good at Vim. But I know many developers who swear up and down that this is worth the time investment. If you want to take the plunge, this Vim Beginner's Guide is a great starting point. (20 minute read): https://www.freecodecamp.org/news/vim-beginners-guide/

5. I started freeCodeCamp back in 2014. Since then, a ton of people have asked for my advice on how to learn to code and ultimately get freelance clients and developer jobs. So last year, I wrote an entire book summarizing my many tips. Even though one of the Big 5 book publishers in New York was interested in a book deal, I decided to instead make this book freely available to everyone who wants to become a professional developer. I hope it's helpful for you and your friends who are getting into coding. (full-length book – roughly 6 hour read): https://www.freecodecamp.org/news/learn-to-code-book/

Quote of the Week: *"To err is human. But to really foul things up you need a computer."* — Paul R. Ehrlich, biology professor at Stanford


Question: How to: Jan 28, 2023

Answer:
1. freeCodeCamp just published our own university-level course to help you learn Algebra using Python. If you have forgotten much of the Algebra you learned – or if you never really learned it well in the first place – this course is for you. In it, freeCodeCamp instructor Ed Pratowski will teach you how to use Python and Jupyter Notebook to do math. You'll learn all about Variables, Graphing, Cartesian Planes, Factoring, and more. Ed has been teaching math to university students for more than two decades. I think you'll find his teaching style to be clear and memorable. (15 hour YouTube course): https://www.freecodecamp.org/news/college-algebra-course-with-python-code/

2. This course will teach you how to code your own fully-functional Reddit clone. Along the way, you'll learn some React, Firebase, Next.js, Chakra UI, and TypeScript. You'll code a lot of key business logic, including how to handle post deletion, community image customization, voting on posts, and more. (12 hour YouTube course): https://www.freecodecamp.org/news/code-a-reddit-clone-with-react-and-firebase/

3. Wireshark is a powerful computer network analysis tool. You can use it to analyze and "sniff" packets of data. This tutorial will teach you how to use Wireshark to better understand networks. You'll also learn about the 5 Layers Model for networks. (20 minute read): https://www.freecodecamp.org/news/learn-wireshark-computer-networking/

4. Pre-caching is where you prepare data in advance of serving it to your users. By using this technique, you can speed up the performance of your website or app. This tutorial will teach you key pre-caching concepts. You'll learn how to use pre-caching both on the client side – with browser-based caching – and on the server side – with CDNs. You'll learn the many tradeoffs and best practices involved in achieving fast page loads. (20 minute read): https://www.freecodecamp.org/news/a-detailed-guide-to-pre-caching/

5. In the age of Netflix and League of Legends, there are plenty of things to keep you from achieving your goals. But don't let a lack of learning resources be one of them. My friend Dhawal compiled an in-depth guide to more than 850 Ivy League university courses that are now freely available online. One of the very best things about the internet: it has made it possible for anyone with an internet connection to learn from world-class professors. I hope some of these courses help you push forward toward your learning goals. (Fully-browsable list): https://www.freecodecamp.org/news/ivy-league-free-online-courses-a0d7ae675869/

Fact of the Week: As abstract as Algebra may seem, it was invented to solve the practical math problems of the 9th Century. Muhammad ibn Musa al-Khwarizmi was an astronomer in Baghdad. He wanted to figure out fair ways to distribute land, salaries, and inheritance.

In the process, he invented Algebra, which comes from the Arabic word al-jabr – roughly translating to "reunion of broken parts." In his book "The Compendious Book on Calculation by Completion and Balancing" he described methods for reducing and then balancing equations – a task every student of math can now enjoy.

Also fun fact: the word Algorithm comes from a Latinization of al-Khwarizmi's name.


Question: How to: Jan 21, 2023

Answer:
1. Tailwind CSS has quickly become one of the most popular Responsive Design frameworks for coding new projects. This beginner's course will teach you how to harness Tailwind's power. By the end of it, you'll know a lot more about CSS. You'll learn about colors, typography, spacing, animation, and more. You'll even build your own Design System, which you can use for your future websites and mobile apps. (4 hour YouTube course): https://www.freecodecamp.org/news/learn-tailwind-css/

2. Python and JavaScript are not the only programming languages you can use to build full stack web apps. You can also use good old trusty Java. And this in-depth Java course will teach you how to build your own movie streaming website. You'll learn the Java Spring Boot web development framework, React, MongoDB, JDK, IntelliJ, and Material UI. If you want to take the next step with your Java skills, this course is for you. (4 hour YouTube course): https://www.freecodecamp.org/news/full-stack-development-with-mongodb-java-and-react/

3. If you want to expand the certification section of your résumé or LinkedIn profile, I've got good news for you. freeCodeCamp just published a collection of more than 1,000 developer certs that you can earn from big tech companies and prestigious universities. All of these are self-paced and freely available. You just have to put in the effort. (full browsable list): https://www.freecodecamp.org/news/free-certificates/

4. ChatGPT just came out and already it has blown so many developers' minds. You can ask the AI just about any question and get a fairly human-sounding response. What better way to familiarize yourself with ChatGPT than to clone its user interface, using React and ChatGPT's own APIs. This front end development course will help you code a powerful app that can answer questions, translate text, convert code from one language to another, and more. (1 hour YouTube course): https://www.freecodecamp.org/news/chatgpt-react-course/

5. If you feel stuck in your coding journey, I may have just the thing to help. I published a full-length book that will teach you how to build your coding skills, your personal network, and your reputation as a developer. You'll also learn how to prepare for the developer job search, and how to land freelance clients. These practical insights are freely available to read – right in your browser. (5 hour read): https://www.freecodecamp.org/news/learn-to-code-book/

Quote of the Week: *"If you ever throw out an ‘I love you’ and don’t get an ‘I love you’ in return, follow it up with: ‘React is great too. But there’s something I just love about Vue.’ This will save you some embarrassment."* — Adam Wathan, Developer and Creator of Tailwind CSS (Get it? ‘I love Vue’)


Question: How to: Jan 14, 2023

Answer:
1. You may use Google Search several times a day. I sure do. Well this freeCodeCamp course will teach you the art and science of getting good search results. Seth Goldin studies Computer Science at Yale. To prepare this course, he met with several engineers on Google's search team. In this course, you'll learn search techniques for developers, such as Matching Operators, Switch Operators, and Google Lens. (1 hour YouTube course): https://www.freecodecamp.org/news/how-to-google-like-a-pro/

2. Unreal Engine 5 is a powerful tool for coding your own video games. Even big triple-A video games like Street Fighter and Fortnite are coded using Unreal Engine. This course is taught by Sourav, a seasoned game developer. He'll teach you about Blueprints, Modeling Inputs, Netcode, Plugins, Player Control, and more. By the end of the course, you will have coded your own endless runner game. (11 hour YouTube course): https://www.freecodecamp.org/news/developing-games-using-unreal-engine-5/

3. What is the most popular computer science course in the world? Why, that would be Harvard's CS50 course. And freeCodeCamp has partnered with Harvard to publish the entire university-level course – 25 hours worth of lectures – on our community YouTube channel. But is this course for you? freeCodeCamp contributor Phoebe Voong-Fadel wrote an in-depth review of CS50. She'll help you make an educated decision as to whether this course is worth your time. (12 minute read): https://www.freecodecamp.org/news/cs50-course-review/

4. Learn Software System Design. This course will teach you common engineering design patterns for building large-scale distributed systems. Then you'll use those techniques to code along at home and build your own live-streaming platform. (1.5 hour watch): https://www.freecodecamp.org/news/software-system-design-for-beginners/

5. Last week I published my new book: "How to Learn to Code and Get a Developer Job in 2023". This week, by popular request, I added an additional chapter to it: "How to Succeed in Your First Developer Job". My book is freely available – right in your browser. You can bookmark it and read it at your convenience. (Full length book – roughly a 5 hour read): https://www.freecodecamp.org/news/learn-to-code-book/

Fact of the Week: About 15% of all Google search queries are queries that no one has ever searched before. That means every day, humans around the world are googling millions of unprecedented queries.


Question: How to: Jan 7, 2023

Answer:
1. Happy 2023. A few years back, one of the major book publishers from New York City reached out to me about a book deal. I met with them. But was too busy running freeCodeCamp. Well, last year I finally got caught up enough to write the book. And today I published it, right on freeCodeCamp. It's now freely available to anyone who wants to learn to code and become a professional developer.

This book will teach you insights I've learned over the past decade: from my own journey into coding as a teacher in my 30s, from working as a software engineer, and from running freeCodeCamp.org.

If you're looking for a good starting point for your developer journey, this book is for you. You can read the whole thing now. (full-length book): https://www.freecodecamp.org/news/learn-to-code-book/

2. Learn Python for web development. This crash course by freeCodeCamp teacher Tomi Tokko will teach you how to use Python with SQL and web APIs. You can code along at home and build several projects with both the Django and Flask frameworks. (2 hour YouTube course): https://www.freecodecamp.org/news/how-to-use-python-for-web-development/

3. You may have heard the programming term "abstraction". But what exactly does it mean? This in-depth tutorial from software engineer Ryan Michael Kay will delve into abstraction, interfaces, protocols, and even lambda expressions. It should give you a basic grasp of these important programming concepts. (20 minute read): https://www.freecodecamp.org/news/what-is-abstraction-in-programming-for-beginners/

4. If you enjoy listening to music, why not make some yourself? This beginners tutorial will teach you how to use a popular Digital Audio Workstation called FL Studio. In it, professional music producer Tristan Willcox will teach you about Virtual Instruments, Samples, Layers, Arrangement, Leveling, Mixing, Automation, Mastering, and more. (2 hour YouTube course): https://www.freecodecamp.org/news/how-to-produce-music-with-fl-studio/

5. Hundreds of universities around the world have made programming and computer science courses openly available on the web. My friend Dhawal has compiled 860 of these courses that you can explore. If you want, you can strap these together to build your own school year. (browsable list): https://www.freecodecamp.org/news/free-online-programming-cs-courses/

Quote of the Week: *"Give someone a program, you frustrate them for a day. Teach them how to program, you frustrate them for a lifetime."* – David Leinweber, Mathematician and Berkeley Computer Science Professor


Question: How to: Dec 24, 2022

Answer:
1. The freeCodeCamp community just dramatically expanded our Learn to Code RPG video game. Learn to Code RPG is an interactive visual novel game where you teach yourself to code, make friends in the tech industry, and pursue your dream of working as a developer. The game features a quirky cast of characters, a charming cat, and more than 1,000 computer science quiz questions. While working as a developer in the game, you can unlock more than 50 achievements and 6 different endings. You can play the game on PC, Mac, Linux, and Android. I enjoyed working with Lynn, KayLa, and Nielda on this all year long. We're excited to get it to you in time for the holidays. Enjoy. (full-length video game): https://www.freecodecamp.org/news/learn-to-code-rpg-1-5-update/

2. Build your own SaaS (Software as a Service) app. In this beginner course taught by freeCodeCamp instructor Ania Kubów, you'll code your own PagerDuty clone project. This handy tool will notify you whenever one of your servers crashes. You'll learn PostgreSQL, the Stripe API, Twillio for notifications, and other powerful developer tools. (2 hour YouTube course): https://www.freecodecamp.org/news/how-to-build-your-own-saas-pagerduty-clone/

3. You may have heard about the GPT-3 and ChatGPT AI assistants, and how amazing they are at tasks like writing high school book reports. But how are they at coding? Well, programming book author and freeCodeCamp volunteer David Clinton sat down with ChatGPT for a pair programming session. He shares his thoughts on the quality of GPT's code, its limitations, and how effective it might be at helping developers. (10 minute read + 6 minute video): https://www.freecodecamp.org/news/pair-programming-with-the-chatgpt-ai-how-well-does-gpt-3-5-understand-bash/

4. Megan Kaczanowski has worked her way up the ranks in the field of information security. Not only has she written many infosec tutorials for the freeCodeCamp community over the years – she's also created this guide for people entering the field. It will help you plan your learning and understand the alphabet soup of certifications. She'll also give you tips on how to get involved in your local security community, and how to gear up for the infosec job search. (20 minute read): https://www.freecodecamp.org/news/how-to-get-your-first-job-in-infosec/

5. Learn how to code your own Santa Tracker app using Next.js and React Leaflet. User Experience Designer and freeCodeCamp volunteer Colby Fayock will walk you through how to code this front end app. You'll learn how to fetch Santa's flight plan, including arrival time, departure time, and coordinates. Then you can plot his entire evening's journey onto a world map. (20 minute read + 23 minute video): https://www.freecodecamp.org/news/how-to-build-a-santa-tracker-app-with-next-js-react-leaflet/

This is my final letter to you for 2022. I hope you've had a fun, insightful year. This has been an amazing year for the freeCodeCamp community. People are using freeCodeCamp more than ever. (People spent more than 4 billion minutes learning on freeCodeCamp this year!) We also launched major improvements to our curriculum, our Android app, and – of course – Learn to Code RPG.

Quote of the Week: *"The ‘joy of discovery’ is one of the fundamental joys of play itself. Not just the joy of discovering secrets within the game, but also the joy of uncovering the creator’s vision. It’s that ‘Aha!’ moment where it all makes sense, and behind the world the player can feel the touch of another creative mind. In order for it to be truly joyful, however, it must remain hidden from plain view—not carved as commandments into stone tablets but revealed, piece by piece, through the player’s exploration of the game’s rules."* — Derek Yu, game developer and creator of Spelunky


Question: How to: Dec 20, 2022

Answer:
1. Programming is a skill that can help you blast your imagination out into the real world. This book – by software engineer and freeCodeCamp teacher Estefania – will give you a strong conceptual foundation in programming. You'll learn about binary, and how computers “think.” (More on this in the Quote of the Week below.) You'll also learn how to communicate with computers through code, so they can do your bidding. This book is an excellent starting point to share with friends and family who want to learn more about technology. (full-length book): https://www.freecodecamp.org/news/what-is-programming-tutorial-for-beginners/

2. Learn JavaScript by coding your own card game. This course is taught by one of freeCodeCamp's most experienced teachers. Gavin has worked as a software engineer for two decades, and it really comes through in his teaching. You can code along at home while you watch this, and build your own responsive web interface for the game. You'll use plain vanilla JavaScript to flip, shuffle, and deal cards from your deck. Once you're finished, you'll have a fun project to show your friends. (2 hour YouTube course): https://www.freecodecamp.org/news/improve-your-javascript-skills-by-coding-a-card-game/

3. And if you're a bit more experienced with JavaScript, I encourage you to learn the powerful Next.js web development framework. freeCodeCamp uses Next.js in several of our apps. And it's steadily growing in popularity. This course – taught by Alicia Rodriguez – will teach you Next.js fundamentals. You'll learn about server-side rendering, API routing, and data fetching. You'll even deploy your app to the cloud. (5 hour YouTube course): https://www.freecodecamp.org/news/learn-next-js-tutorial/

4. You may have heard about GPT-3, DALL-E, and other powerful uses of artificial intelligence. But what if you want to code your own AI? You'll want to start with something simple. In this tutorial, you'll learn about the Minimax algorithm, and how you can use it to create an game AI that always wins or ties at tic-tac-toe. (15 minute read): https://www.freecodecamp.org/news/build-an-ai-for-two-player-turn-based-games/

5. Did you know you can use your command line as a calculator? If you open your terminal in Mac or Linux (or in Windows Subsystem for Linux) you can type equations, and then your computer will solve them for you – usually in just a few milliseconds. This is handy if you are fast at typing and don't want to use a spreadsheet or click around in a calculator. This tutorial will show you some of the key syntax and features for crunching numbers right in the command prompt. (12 minute read): https://www.freecodecamp.org/news/solve-your-math-equation-on-terminal/

Quote of the Week: *"The question of whether computers can think is like the question of whether submarines can swim."* — Edsger Dijkstra, Mathematician and Computer Scientist


Question: How to: Dec 9, 2022

Answer:
1. This freeCodeCamp course will teach you how to code your own Python apps that run directly on Windows, Mac, or Linux – not just in a browser. You'll learn powerful Python libraries like Qt and PySide6. This way you can build apps that run natively on computers, and leverage their full processing power. (5 hour YouTube course): https://www.freecodecamp.org/news/python-gui-development-using-pyside6-and-qt/

2. Swift is a powerful programming language developed by Apple. A lot of developers who build apps for either iOS and MacOS prefer to code in Swift. In this in-depth course, a lead iOS developer will teach you Swift development fundamentals. You'll learn about variables, operators, error handling, and even asynchronous programming. (7 hour YouTube course): https://www.freecodecamp.org/news/learn-the-swift-programming-language/

3. If you're preparing for a coding interview as part of your developer job search, you're going to want to read this. Dijkstra's Algorithm is an iconic graph algorithm with many uses in computer science. You can use it to find the shortest path between two nodes in a graph, or the shortest path from one fixed node to the rest of the nodes in a graph. This detailed explanation – with diagrams and a pseudocode example – will help you appreciate its true brilliance. (12 minute read): https://www.freecodecamp.org/news/dijkstras-algorithm-explained-with-a-pseudocode-example/

4. If you want to move beyond the basics with React, this intermediate JavaScript tutorial will teach you about Separation of Concerns. You'll learn about React Container Components, Presentational Components, and how to make your code easier to maintain over time. (15 minute read): https://www.freecodecamp.org/news/separation-of-concerns-react-container-and-presentational-components/

5. 2022 was a massive year for the global freeCodeCamp community. Thousands of people volunteered to help make our charity and our learning resources better. I'm thrilled to announce this year's Top Contributors. These 696 friendly people have earned this distinction through going above and beyond in helping fellow learners. Whether they answered questions on the community forum, translated tutorials, contributed to our open source codebases, or designed new courses – we deeply appreciate their efforts. (10 minute read): https://www.freecodecamp.org/news/freecodecamp-2022-top-contributors/

Quote of the Week: *"A most important, but also most elusive, aspect of any tool is its influence on the habits of those who train themselves in its use. If the tool is a programming language, this influence is – whether we like it or not – an influence on our thinking habits."* — Edsger Dijkstra, Mathematician and Computer Scientist


Question: How to: Dec 2, 2022

Answer:
1. freeCodeCamp just published a course that will teach you how to code your own API using Python. APIs are like websites designed for other computers to understand, rather than humans. Instead of sharing text, images, videos – and other media that humans understand – APIs just share raw data, such as JSON responses. This course will show you how to build your own REST API using the popular Python Django REST framework. (1.5 hour YouTube course): https://www.freecodecamp.org/news/use-django-rest-framework-to-create-web-apis/

2. MATLAB is a popular programming language used by scientists, and in industries like aerospace. Over the years, we've had so many people request a MATLAB course on freeCodeCamp. And today I'm thrilled to share one with you. This course will teach you MATLAB programming fundamentals, including how to use its powerful Integrated Development Environment. (2 hour YouTube course): https://www.freecodecamp.org/news/learn-matlab-with-this-crash-course/

3. React Testing Library is a powerful front end testing tool for your apps. And this in-depth tutorial will walk you through how to use it. You'll learn unit testing fundamentals, as well as JavaScript testing tools like Jest. And you'll get to try out Vite, a new tool for bootstrapping your React apps. (30 minute read): https://www.freecodecamp.org/news/write-unit-tests-using-react-testing-library/

4. Have you ever wondered why we write it “freeCodeCamp” with a lowercase f? That's because we thought it would be funny to use Camel Case like JavaScript does for its variables. And this is just one style of cases that developers use. This guide will introduce you to other popular styles of writing variable names, including Snake Case, Pascal Case, and even Kebab Case. (8 minute read): https://www.freecodecamp.org/news/snake-case-vs-camel-case-vs-pascal-case-vs-kebab-case-whats-the-difference/

5. 2022 has been a colossal year for the freeCodeCamp community. People spent more than 4 billion minutes learning on freeCodeCamp this year. I wrote this article about some of the areas we've been focused on expanding. Not just the university degree program, but also our massive translation efforts. You can check out some of the numbers for yourself. (5 minute read): https://www.freecodecamp.org/news/freecodecamp-2022-usage-statistics/

Quote of the Week: *"Really good software is never finished; it continues to grow. If it doesn’t grow, it decays."* — Melinda Varian, Software Engineer


Question: How to: Nov 23, 2022

Answer:
1. Learn to code your own Duck Hunt-style arcade game. This Python and PyGame course will teach you several core GameDev concepts. You'll learn how to draw sprites on the screen, check for collisions, procedurally move enemies, and display score. You'll even code the Game Over conditions. (2 hour YouTube course): https://www.freecodecamp.org/news/create-a-arcade-style-shooting/

2. The freeCodeCamp community is thrilled to share this new book with you: The Express and Node.js Handbook. This Full Stack JavaScript book will come in handy when you're coding your next web app. You'll learn about JSON API requests, middleware, cookies, routing, static assets, sanitizing, and more. You can read the entire book freely in your browser, and bookmark it for handy reference. (full-length book): https://www.freecodecamp.org/news/the-express-handbook/

3. You may have heard the term "Random Sampling" before in articles about science, or even learned how to do it in a statistics class. But are you familiar with Stratified Random Sampling? This Python tutorial will show you how you can separate your data into strata based on a particular characteristic before you do your sampling. You may find this helpful the next time you're doing some data analysis. (13 minute read): https://www.freecodecamp.org/news/what-is-stratified-random-sampling-definition-and-python-example/

4. When you configure cloud servers, you have to consider who should be able to access which resources. That's where Identity Access Management comes in. Roles and Permissions can be one of the hardest aspects of cloud computing to wrap your head around. Luckily, freeCodeCamp just published this tutorial that explains IAM using easy-to-understand analogies. (20 minute read): https://www.freecodecamp.org/news/aws-iam-explained/

5. freeCodeCamp just shipped a major update to our Android app. You can now learn from our interactive curriculum right on your phone. We spent months polishing the mobile coding user experience. We also added some new podcasts you can listen to. You can see the app in action and join the beta: https://www.freecodecamp.org/news/freecodecamp-mobile-app-curriculum-update/

Quote of the Week: *"Games were not just a diversion, I realized. Games could make you feel. If great literature could wield its power through nothing but black squiggles on a page, how much more could be done with movement, sound, and color?"* — Sid Meier, Game Developer and creator of the Civilization strategy game series


Question: How to: Nov 18, 2022

Answer:
1. If you want to take your JavaScript and React skills to the next level, this intermediate freeCodeCamp course is for you. Software engineering veteran Jack Herrington will teach you about State Management in React. You'll learn about hooks, reducers, context, and more. (3 hour YouTube course): https://www.freecodecamp.org/news/how-to-manage-state-in-react/

2. WordPress is an open source website tool that – as of 2022 – more than 40% of all major websites use. And in this course, freeCodeCamp software engineer Beau Carnes will show you how to code and deploy a WordPress website using Elementor. He'll teach you about hosting, installation, responsive web design, and more. (90 minute YouTube course): https://www.freecodecamp.org/news/easily-create-a-wordpress-blog-or-website/

3. You may have heard about some recent breakthroughs in AI-generated art work. I've been having a blast playing around with DALL-E to create silly images for my kids. And now you can create your own React app that uses the DALL-E API to generate art based on your prompts. This tutorial will walk you through how to code your own pop-up art gallery on your website. (10 minute read): https://www.freecodecamp.org/news/generate-images-using-react-and-dall-e-api-react-and-openai-api-tutorial/

4. Learn cybersecurity for beginners. This Linux Command Line game will help you capture the flag in no time. For each level of Bandit OverTheWire, you'll get a quick primer in real-world Linux skills. Then you can pause the video and use those skills to beat the level. You can unpause at any time for more explanation, and to keep progressing through the game. This is a fun way to expand your knowledge of networks and security. (2 hour YouTube course): https://www.freecodecamp.org/news/improve-you-cybersecurity-command-line-skills-bandit-overthewire-game-walkthrough/

5. If you are new to software development you are going to hear the word "solid" a lot. And not just to describe hard drives. SOLID is an acronym for a set of software engineering principles. These can help guide you in designing systems. In this quick primer, freeCodeCamp engineer Joel Olawanle will break down each of these concepts. This way, next time you're doing some Object-Oriented Programming, you'll already have a feel for how to best go about it. (20 minute read): https://www.freecodecamp.org/news/solid-principles-for-programming-and-software-design/

As you may know, freeCodeCamp is a public charity. We've got the same tax-exempt status as The Red Cross, Doctors Without Borders, the YMCA, and other big charities. Except that we operate on a fraction of the budget. More than a million people use freeCodeCamp each day, and yet this is only possible thanks to the 8,273 kind people who donate. Help us in our mission to create math, computer science, and programming resources for everyone. Get involved: https://www.freecodecamp.org/donate

Quote of the Week: *"The disorder of the desk, the floor, the yellow Post-it notes everywhere, the whiteboards covered with scrawl. All this is the outward manifestation of the messiness of human thought. The messiness cannot go into the program. It piles up around the programmer."* — Ellen Ullman, Programmer and Author


Question: How to: Nov 11, 2022

Answer:
1. freeCodeCamp just published a hands-on Microservice Architecture course. This is a great way to learn about Distributed Systems. You can code along at home, and build your own video-to-MP3 file converter app. Along the way, you'll learn some MongoDB, Kubernetes, and MySQL. (5 hour YouTube course): https://www.freecodecamp.org/news/microservices-and-software-system-design-course/

2. TypeScript is like JavaScript, but with static types. For each variable, you specify whether it's a string, integer, boolean, or other data type. If you already know some JavaScript, TypeScript may not take that much time to learn. And it can reduce the number of bugs in your code. freeCodeCamp has converted almost our entire codebase to use TypeScript. It still has all the power of JavaScript, but it's now a bit easier for us to build new features. This beginner course will teach you everything you need to get started coding TypeScript. (5 hour YouTube course): https://www.freecodecamp.org/news/programming-in-typescript/

3. Testing is a vital part of the software development process. You want to ensure that all your app's features work as intended. Thankfully, there are some powerful tools out there to help you write robust tests. This handbook will teach you how to code the most fundamental type of test: unit tests. It will also show you some web development best practices for using Jest and the React Testing Library. (full-length handbook): https://www.freecodecamp.org/news/how-to-write-unit-tests-in-react-redux/

4. Learn CSS and Responsive Web Design for beginners. Jessica's new guide will walk you through one of freeCodeCamp's most popular projects: coding your own café menu. She'll show you how to build it step-by-step. You can do this entire project on freeCodeCamp's core curriculum interactively, and reference Jessica's article when you get stuck or just need additional context. (45 minute read): https://www.freecodecamp.org/news/learn-css/

5. Also, freeCodeCamp just published a massive Bootstrap course in Spanish, where you'll code your own portfolio. (We've also published several Bootstrap courses in English, too). If you have Spanish-speaking friends who want to learn web development and design, please tell them that we now have in-depth courses on a broad range of coding topics. These are all taught in Spanish by Estefania. She's an experienced teacher and software engineer. (5 hour YouTube course): https://www.freecodecamp.org/news/learn-bootstrap-5-in-spanish-by-building-a-portfolio-website-bootstrap-course-for-beginners/

Quote of the Week:

*"The Evolution of Software Architecture:
1990s: Spaghetti-Oriented Architecture (AKA Copy & Paste)
2000s: Lasagna-Oriented Architecture (AKA Layered Monolith)
2010s: Ravioli-Oriented Architecture (AKA Microservices)
What's next? Probably Pizza-Oriented Architecture."*
— Benoit Hediard, Developer, Software Architect, and CTO of Agorapulse


Question: How to: Nov 4, 2022

Answer:
1. freeCodeCamp just published a new Full Stack Web Development course, taught by two of our most popular instructors. This beginner course will teach you HTML, CSS, JavaScript basics, Node.js, MongoDB, and more. (7.5 hour YouTube course): https://www.freecodecamp.org/news/learn-full-stack-development-html-css-javascript-node-js-mongodb/

2. If you're interested in working in the field of cloud computing, this new course will help you pass the Microsoft 365 Fundamentals (MS-900) Certification. In it, long-time freeCodeCamp contributor Andrew Brown shares how he passed the exam, and covers all of its material. (4 hour YouTube course): https://www.freecodecamp.org/news/microsoft-365-fundamentals-certification-ms-900-course/

3. Learn how to use CSS Flexbox to make responsive webpages that look good on any device size. This tutorial will walk you through the most common Flexbox properties and explain them visually, using helpful diagrams. Design concepts that were once intimidating will now be much easier to understand. Be sure to bookmark this and share it with a designer friend. (30 minute read): https://www.freecodecamp.org/news/css-flexbox-complete-guide/

4. The Kotlin programming language is a popular alternative to Java. You can use Kotlin to do many of the same things, such as build Android apps or code for the Java Virtual Machine. But Kotlin offers a more contemporary developer experience. freeCodeCamp just published an in-depth Kotlin course to teach you about functions, types, logical operators, and Object-Oriented Programming. (14 hour YouTube course): https://www.freecodecamp.org/news/learn-kotlin-complete-course/

5. Hacktoberfest was a blast. Jessica oversaw freeCodeCamp's DeveloperQuiz.org GitHub repository. She QA'd and merged more than 360 pull requests from volunteer code contributors. Her tips to other people who want to maintain open source projects: “Lead with patience, empathy, and kindness.” These are her insights from the past 31 days of coding. (12 minute read): https://www.freecodecamp.org/news/what-i-learned-as-a-hacktoberfest-repo-maintainer/

The freeCodeCamp community is hard at work on new math and data science courses, so that you and your family can learn these important skills. As you may know, we are a tax-exempt public charity. We rely on the support of kind, thoughtful people like you. Learn more and get involved: https://www.freecodecamp.org/news/freecodecamp-math-computer-science-degree-update/

Quote of the Week: *"Just crawl it."* — text from the top of Nike's robots.txt file on their website. (robots.txt is the file Google's crawlers look at when they're deciding how to index a website.)


Question: How to: Oct 28, 2022

Answer:
1. Python is one of the most widely used programming languages on Earth right now. In science, in industry, and in high school robotics clubs around the world. You, too, can learn to wield this mighty Python power. I'm sick as a dog as I type this, so if what I'm saying sounds silly, it's probably the NyQuil talking. freeCodeCamp has published dozens of Python video courses, but this week I wanted to share something for the folks who prefer good old fashion book learning. (full-length book): https://www.freecodecamp.org/news/learn-python-book/

2. Ah. Graph Algorithms. The bane of every coding interview prepper. These powerful programming patterns are over-represented in job interview questions, so you'll want to eventually learn them well. This course will help you grok Depth-First Traversal, Breadth-First Traversal, Shortest Path, and Dijkstra's Algorithm. This Dijkstra guy, he's kind of a big deal. More on him later. (2 hour YouTube course): https://www.freecodecamp.org/news/learn-how-graph-algorithms-work/

3. User Interface VS User Experience – what's the difference, you might ask? Well, User Interfaces have been around since the industrial revolution. Think the control room of a power station, or the cockpit of a plane. But User Experience – that's a more recent way of thinking about Human-Computer Interaction. The term was coined in the 1990s by a designer and cognitive psychologist at Apple. This tutorial by freeCodeCamp instructor Dionysia Lemonaki will explain the distinctions between the two and their shared history. She'll also walk you through the UX Design Process. (20 minute read): https://www.freecodecamp.org/news/ux-vs-ui-whats-the-difference-definition-and-meaning/

4. Without computer networks, I'd need to put on my sneakers and run this letter to your door. Or bankrupt our charity buying postage stamps. Over the past 30 years, networks have changed almost everything about talking, learning, and getting things done. They are worthy of your attention and your respect. So learn a bit more about how they work. This tutorial will walk you through 5 of the most important layers – from the physical hardware all the way up to the applications running on top of all that sweet, sweet abstraction. (20 minute read): https://www.freecodecamp.org/news/the-five-layers-model-explained/

5. The freeCodeCamp community just turned 8 years old. A big Happy Birthday to all y'all who've been a part of our charity's endeavor. I have a byte-sized update on the community (8.9Kb of text, to be exact). You'll learn about our progress with the Data Science courses, the Math and Computer Science degrees we're developing, and more. I promise it's worth your (12 minute read): https://www.freecodecamp.org/news/freecodecamp-math-computer-science-degree-update/

Quote of the Week (from the man himself, and apt given we started developing our computer science degree last year): *"Computer Science is no more about computers than astronomy is about telescopes."* — Edsger Dijkstra, Mathematician, Computer Scientist, Turing Award Winner, and fellow Texan (I live in Texas if you didn't know that. Nevermind. I'm not the important one here.)


Question: How to: Oct 21, 2022

Answer:
1. The freeCodeCamp community is proud to publish the full Harvard CS50 computer science lecture series, taught by world-renowned professor David J. Malan. You'll learn about C programming, Python, SQL, web development, and a ton of computer science theory. This course also includes tons of labs, exercises, and even an offshoot course on game development. (25 hour YouTube course): https://www.freecodecamp.org/news/harvard-cs50/

2. Learn the powerful Svelte JavaScript framework. This course is taught by Svelte core maintainer Li Hau Tan. He'll teach you about The Component Lifecycle, Svelte Store Contracts, Reactivity, RxJS, Redux, and so much more. (23 hour YouTube course): https://www.freecodecamp.org/news/learn-svelte-complete-course/

3. Want to practice your coding skills by building your own Google Docs clone? In this course, you'll use Flutter, Node.js, Websockets, and MongoDB. You can code along at home and implement your own authentication, collaborative editing, auto-saving, and more. This is a solid intermediate course to sharpen your skills. (5 hour YouTube course): https://www.freecodecamp.org/news/code-google-docs-with-flutter/

4. Go is a lightning fast programming language. It powers Docker, Kubernetes, and other popular open source tools. Software Engineer Flavio Copes will teach you how to set up your Go development environment. Then you'll learn about Golang control flow and data structures. You can bookmark this for reference as you expand your Go skills. (1 hour read): https://www.freecodecamp.org/news/go-beginners-handbook/

5. What exactly is a database? This quick tutorial will explain how Relational Database Management Systems work. You'll learn a brief history of databases. And even how to write some of your own SQL queries. (20 minute read): https://www.freecodecamp.org/news/dbms-and-sql-basics/

Quote of the Week: *"In C, there's no magic. If you want something to be somewhere in memory, you have to put it there yourself. If you want a hash table, you have to implement it yourself. The result by term's end, we hope, is that students understand how things work from the bottom up and, better yet, can explain as much."* — David J. Malan, the Computer Science professor who teaches Harvard CS50


Question: How to: Oct 14, 2022

Answer:
1. DevOps engineers help software run at massive scale. The field of DevOps combines programming – the Dev part – with system administration – the Ops part. It is a highly specialized – and high-paying – field to go into. This course for intermediate learners will teach you two of the most widely-used DevOps tools: Docker and Kubernetes. You'll learn about Containers, Microservices, Persistence, Observability, and more. With these in your toolbox, you'll be able to efficiently scale your apps, websites, and APIs to millions of users. (6 hour YouTube course): https://www.freecodecamp.org/news/learn-docker-and-kubernetes-hands-on-course/

2. Do you remember those old clickety-clackety arrival-departure schedule boards? The kind you might see in a train station or an airport? In this JavaScript course for beginners, you'll code one of those. And you'll code that same flight widget in three ways: with plain-vanilla JS, with a REST API, and with a database. Along the way, freeCodeCamp teacher Ania Kubów will teach you a ton about full-stack development. (2 hour YouTube course): https://www.freecodecamp.org/news/code-a-project-three-different-ways-javascript-rest-api-database/

3. Big O Notation is a tool that developers use to understand how much time a piece of code will take to execute. Computer Scientists call this "Time Complexity." This comes up all the time in day-to-day programming, and in job interviews. As a developer, you will definitely want to understand Big O Notation well. And that's precisely why freeCodeCamp engineer Joel Olawanle wrote this Big O cheat sheet for you, complete with code examples. You can bookmark it, then refer to it when you need to calculate the Time Complexity of your code. (18 minute read): https://www.freecodecamp.org/news/big-o-cheat-sheet-time-complexity-chart/

4. Learn the Angular JavaScript framework by coding your own ecommerce web shop. This beginner course – taught by frequent freeCodeCamp contributor Slobodan Gajic – will teach you Angular fundamentals. You'll set up your development environment, build a homepage, code the shopping cart logic, and even implement Stripe checkout. (4 hour YouTube course): https://www.freecodecamp.org/news/build-a-webshop-with-angular-node-js-typescript-stripe/

5. An IIFE stands for Immediately Invoked Function Expression. I must admit, I had to look up that acronym. This in-depth tutorial by prolific freeCodeCamp contributor Oluwatobi Sofela will walk you through JavaScript Functions, Parameters, Code Blocks, and IIFEs too. An excellent resource for the beginner JS developer. (20 minute read): https://www.freecodecamp.org/news/javascript-function-iife-parameters-code-blocks-explained/

Quote of the Week: *"Telling a programmer there's already a library to do X is like telling a songwriter there's already a song about love."* — Pete Cordell, C++ Developer


Question: How to: Oct 7, 2022

Answer:
1. Pytorch is a popular framework for doing Machine Learning in Python. You can use it to build data models, then ask questions of those models. If you're interested in Data Science, and know a bit of Python, this course is a solid place to start your journey. You'll code along at home as you learn about Datasets, Neural Networks, Computer Vision, and more. (26 hour YouTube course): https://www.freecodecamp.org/news/learn-pytorch-for-deep-learning-in-day/

2. And if you're new to Python programming, this course focuses on core concepts rather than just the language syntax. You'll explore Computer Science concepts like Primitive Data Types, Memory Allocation, Error Handling, and Scope. (9 hour YouTube course): https://www.freecodecamp.org/news/learn-python-by-thinking-in-types/

3. Linux is a popular operating system for Security Researchers. It's open source and highly customizable. This tutorial will walk you through how some popular distros – like Kali, Arch, and Ubuntu – work under the hood. You'll get a feel for their many moving parts, and the common shell commands used in infosec. (30 minute read): https://www.freecodecamp.org/news/linux-basics/

4. And if you have always wanted to learn some Java, you're in luck. We just published a Java for Beginners course, taught by Java Engineer and prolific freeCodeCamp instructor Farhan Chowdhury. You'll learn all about Java's Data Types, Operators, Conditional Statements, Loops, and even some Object-Oriented Programming. (4 hour YouTube course): https://www.freecodecamp.org/news/learn-java-programming/

5. One of the most powerful concepts in CSS is Selectors. You can use Selectors to grab an HTML element from a website's DOM. You can then style these elements, or run JavaScript on them. This tutorial will teach you all about Attribute Selectors, CSS Combinators, Pseudo-Element Selectors, and more. (30 minute read): https://www.freecodecamp.org/news/css-selectors-cheat-sheet-for-beginners/

Quote of the Week: *"I hooked a neural network up to my Roomba. I wanted it to learn to navigate without bumping into things, so I set up a reward scheme to encourage speed and discourage hitting the bumper sensors. It learnt to drive backwards, because there are no bumpers on the back."* — Custard Smingleigh, Developer and Roboticist


Question: How to: Sep 30, 2022

Answer:
1. We just published Machine Learning for Everybody, a course for intermediate developers and students who are interested in AI. freeCodeCamp instructor Kylie Ying (of CERN and MIT) will teach you about key concepts like Classification, Regression, and Training Models. You'll code in Python and learn how to use TensorFlow, Jupyter Notebooks, and other powerful tools. (4 hour YouTube course): https://www.freecodecamp.org/news/machine-learning-for-everybody/

2. Learn JavaScript game development and code your own space shooter game. This GameDev course will teach you about HTML Canvas, Object-Oriented Programming, Core Gameplay Loops, Parallax Scrolling, and more. (2 hour YouTube course): https://www.freecodecamp.org/news/how-to-code-a-2d-game-using-javascript-html-and-css/

3. Kali Linux is a popular operating system in the information security community. If you watched the show Mr. Robot, it's the main operating system the characters use while carrying out their exploits. This step-by-step tutorial will show you how to install Kali Linux so you can leverage the tools of the trade. (20 minute read): https://www.freecodecamp.org/news/how-to-install-kali-linux/

4. Learn how to build your own ecommerce shop back end from Software Engineer and freeCodeCamp Instructor Ania Kubów. She'll walk you through using PostgreSQL, Stripe, and REST APIs to build 3 internal B2B apps – all using Low Code tools that require less coding. By the end of this course, you'll have your own order management dashboard, employee dashboard, and developer portal. (2 hour YouTube course): https://www.freecodecamp.org/news/create-a-low-code-ecommerce-app-with-stripe-postgres-rest-api-backend/

5. What's the difference between Authentication and Authorization? These two concepts are related, but there's a bit of nuance. Authentication is the process of verifying your credentials, and that you're allowed to access a system. Authorization involves verifying what you're allowed to do within that system. This tutorial will help you better understand these security concepts so you can apply them as a developer. (10 minute read): https://www.freecodecamp.org/news/whats-the-difference-between-authentication-and-authorisation

Quote of the Week: *"Changing random stuff until your program works is ‘hacky’ and a ‘bad coding practice’. But if you do it fast enough, it's called ‘Machine Learning’ and pays 4x your current salary."* — Steve Maine, Software Engineer


Question: How to: Sep 23, 2022

Answer:
1. freeCodeCamp just published a Python Algorithms for Beginners course. You'll learn Recursion, Binary Search, Divide and Conquer Algorithms, The Traveling Salesman Problem, The N-Queens Problem, and more. You'll also solve a lot of algorithm challenges. (2 hour YouTube course): https://www.freecodecamp.org/news/intro-to-algorithms-with-python/

2. Learn Three.js and React by coding your own playable Minecraft game. This JavaScript GameDev course will teach you about textures, 3D camera angles, keyboard input events, and more. (2 hour YouTube course): https://www.freecodecamp.org/news/code-a-minecraft-clone-using-react-and-three-js/

3. Selectors are one of the most powerful concepts in CSS. And this tutorial will show common ways of grabbing HTML elements from a website's DOM using Selectors. You can then style these elements or run JavaScript on them. You'll also learn about CSS IDs, Classes, and Pseudo-classes. You'll even learn about the mythical, magical Universal Selector. (12 minute read): https://www.freecodecamp.org/news/how-to-select-elements-to-style-in-css/

4. freeCodeCamp also just published a long-requested Jenkins course. Jenkins is a powerful open source automation server. Developers often use Jenkins for running tests on their codebase before deploying it to the cloud. In this course, you'll learn DevOps Pipeline concepts, Debian Linux Command Line Interface tips, and about Docker & DockerHub. (1 hour YouTube course): https://www.freecodecamp.org/news/learn-jenkins-by-building-a-ci-cd-pipeline/

5. You may have heard the terms “white hat”, “black hat”, or even “red hat.” These are terms used in cybersecurity to express whether someone is an attacker, a defender, or a “hacktivist” with a broader agenda. In this fun, totally-not-scientific overview of the types of hackers, Daniel will help you learn each of these through comparisons with popular comic book figures. Which hat would Batman wear if he were in security? (8 minute read): https://www.freecodecamp.org/news/white-hat-black-hat-red-hat-hackers/

Quote of the Week: *"Programming is the art of algorithm design and the craft of debugging errant code."* — Ellen Ullman, Programmer and Author


Question: How to: Sep 16, 2022

Answer:
1. freeCodeCamp just published an HTML & CSS for Beginners course, where you learn by coding along at home and building 5 projects. It's taught by experienced software engineer and tech CEO Per Borgan. This course will teach you about Text Elements, the CSS Box Model, Chrome Devtools, Document Structure, and more. (5 hour YouTube course): https://www.freecodecamp.org/news/learn-html-and-css-from-the-ceo-of-scrimba/

2. What are the main differences between SQL and NoSQL? And which should you use in which situations? In this course, freeCodeCamp instructor Ania Kubów will teach you about common Database Models like Relational Databases, Key-Value DBs, Document DBs, and Wide Column DBs. More tools for your developer toolbox. (1 hour YouTube course): https://www.freecodecamp.org/news/sql-vs-nosql-tutorial/

3. When you visit a webpage, everything you see is HTML elements rendered with the Document Object Model. But how does the DOM work? In this hands-on tutorial by Front-End Engineer Ophelia Boamah, you'll code your own car shopping User Interface. You'll learn about DOM Selectors, Event Listeners, and more. (25 minute read): https://www.freecodecamp.org/news/the-javascript-dom-a-practical-tutorial/

4. If you have a developer job interview coming up, you may want to brush up on your React. Veteran software engineer Nishant Singh will walk you through 20 common React interview questions, and share his process for solving them. This is an ideal course for intermediate JavaScript developers. (5 hour YouTube course): https://www.freecodecamp.org/news/top-30-react-interview-questions-and-concepts/

5. You may have heard that one of the best ways to solidify your developer skills is to contribute to open source software. But getting started can be a confusing process. Thankfully, prolific freeCodeCamp contributor Tapas Adhikary has created a comprehensive beginner's manual to help you understand OSS, identify where you can help, and get your first pull request merged. (30 minute read): https://www.freecodecamp.org/news/a-practical-guide-to-start-opensource-contributions/

Quote of the Week: *"Anyone who has lost track of time when using a computer knows the propensity to dream, the urge to make dreams come true, and the tendency to miss lunch."* — Tim Berners-Lee, Creator of HTML, and Inventor of the World Wide Web (Yeah, this is one impactful dev.)


Question: How to: Sep 9, 2022

Answer:
1. Learn React for Beginners. This new freeCodeCamp Front-End JavaScript course will teach you all about React Hooks, State, the Context API, and more. You'll code along with three experienced software engineers, building projects step-by-step. (8 hour YouTube course): https://www.freecodecamp.org/news/learn-react-from-three-all-star-instructors/

2. And if you'd prefer to learn Angular, I'm thrilled to share this course with you as well: Learn Angular and TypeScript for Beginners. This in-depth course will teach you TypeScript Data Types, Angular Directives, Components, RxJS, and Lifecycle Hooks. (18 hour YouTube course): https://www.freecodecamp.org/news/angular-for-beginners-course/

3. freeCodeCamp also just published a full-length Java Programming Handbook to help beginners get started. You'll learn about the Java Virtual Machine, Java IDEs, Data Types, Operators, and more. This should serve as an excellent resource for you over the coming years, so I encourage you to read some of it and bookmark it as a reference. (full-length book): https://www.freecodecamp.org/news/the-java-handbook/

4. With Windows Subsystem for Linux, you can now use Linux right inside Windows on your PC. This said, many developers prefer to dual boot Windows 10 and Ubuntu Linux on the same computer. This tutorial will walk you through dual-booting best practices, so you can have the best of both worlds, Captain Picard style. (12 minute read): https://www.freecodecamp.org/news/how-to-dual-boot-windows-10-and-ubuntu-linux-dual-booting-tutorial/

5. September is World Translation Month. And the freeCodeCamp community is kicking our translation effort into high gear. If you or your friends grew up speaking a language other than English, I encourage you to get involved. We have more than 9,000 English-language coding tutorials. And we want to make them easier to understand for folks less comfortable reading English. We have powerful software to help you make the most of any time you're able to volunteer. (12 minute read): https://www.freecodecamp.org/news/world-translation-month-is-back-how-can-you-contribute-to-translate-freecodecamp-into-your-language/

Quote of the Week: *"Is your child texting about JavaScript frameworks? Know the signs:
rofl - React offers fast learning
brb - building Redux boilerplate
lmao - love mastering Angular objects
imo - instantiating eMber observables
nvm - need Vue mixins
wtf - Webpack's the fastest"* — Laurie Voss, Web Developer and co-creator of npm


Question: How to: Sep 2, 2022

Answer:
1. freeCodeCamp just published an in-depth CSS for Beginners course, taught by an experienced developer and software architect. You'll learn Selectors, Typography, Variables, CSS Flexbox, CSS Grid, and other key concepts. You don't have to rely on templates and copy-pasted CSS examples. If you put in the time, you can understand how CSS really works under the hood. This course is a solid starting point. (11 hour YouTube course): https://www.freecodecamp.org/news/learn-css-in-11-hours/

2. Learn Python by building 20 beginner projects. You can code along at home, and get practice by writing these Python scripts yourself. Along the way, you'll code your own calculator, image resizer, dice roller, and even a Rock-Paper-Scissors game. (3 hour YouTube course): https://www.freecodecamp.org/news/20-beginner-python-projects/

3. How to protect your personal digital security. This guide will teach you several practical Information Security tips, straight from a Threat Intelligence expert. (10 minute read): https://www.freecodecamp.org/news/personal-digital-security-an-intro/

4. One way you can boost your security is by using asymmetric encryption. SSH is a popular protocol for securely connecting to a server. Linux, Git, and many other tools use SSH. This tutorial will show you how to create your own SSH key from your computer's command line, and explain how the technology works. (8 minute read): https://www.freecodecamp.org/news/ssh-keygen-how-to-generate-an-ssh-public-key-for-rsa-login/

5. One of the most common ways developers mess up their security is by accidentally sharing their API keys on GitHub. You can avoid this mistake by using Git's built-in .gitignore feature. This tutorial will show you how you can safely put your code's API keys and other sensitive information into a .env file, and prevent Git from committing certain files or folders. (12 minute read): https://www.freecodecamp.org/news/gitignore-file-how-to-ignore-files-and-folders-in-git/

Quote of the Week: *"CSS is a programming language. As unintuitive as it might feel to you at times, it's not just these random things that happen. It's built using very specific rules. The problem is that most people never learn those rules. We start learning CSS by learning the syntax, which is super simple. That tricks us into thinking that it's a simple language. Don't let the simple syntax trick you. Dive into it and learn how it works."* — Kevin Powell, Software Engineer, CSS Educator, and freeCodeCamp contributor


Question: How to: Aug 26, 2022

Answer:
1. freeCodeCamp just published an in-depth Front End Developer course, taught by a software engineer and freeCodeCamp alum. You'll learn HTML, CSS, DOM manipulation, and how to use your browser's DevTools. You'll also learn key JavaScript concepts, such as primitives, functions, loops, control flow logic, Regular Expressions, and more. This is a beginner course, and it's good review for intermediate developers as well. (21 hour YouTube course): https://www.freecodecamp.org/news/frontend-web-developer-bootcamp/

2. My friend Andrew Brown is a CTO and has an encyclopedic knowledge of Cloud Engineering. He's passed most of the AWS and Azure cloud certification exams. And this week, we released his latest course, which will help you pass the Microsoft Azure Developer Associate exam (AZ-204). Lots of people in the freeCodeCamp community have earned these certs to level-up their DevOps and Site Reliability Engineer careers. (13 hour YouTube course): https://www.freecodecamp.org/news/azure-developer-certification-az-204-pass-the-exam-with-this-free-13-5-hour-course/

3. Markdown is a powerful way to write precise HTML-like documents. I use it every day. By knowing just a little bit of syntax, you can quickly type out a document using plain text. Then you can paste it into websites like GitHub, Stack Overflow, and freeCodeCamp, where it will expand into a Rich Text Document with headers, hyperlinks, and images. You can bookmark this Markdown cheat sheet, and refer to it the next time you want to practice your Markdown skills. (12 minute read): https://www.freecodecamp.org/news/markdown-cheatsheet/

4. Advice from a Full Stack Developer who just finished his first year in tech. Germán talks about his non-traditional path into Argentina's software industry. He shares tips on how to pick a tech stack to specialize in, how to know when you're ready to start applying for roles, and how to cope with the stresses of the job. (50 minute read): https://www.freecodecamp.org/news/my-first-year-as-a-professional-developer-tips-for-getting-into-tech/

5. Lua is a programming language commonly used for modifying video games, such as Roblox. But you can also use it to build entirely new games. This comprehensive course will teach you Lua fundamentals, and how to use the popular LÖVE 2D GameDev framework. You'll even code your own playable version of the 1979 Asteroids arcade game. (11 hour YouTube course): https://www.freecodecamp.org/news/create-games-with-love-2d-and-lua/

Quote of the Week: *"Some prefer backend, some prefer frontend, but I always prefer weekend."* — Dan (@khazifire), Front End Developer


Question: How to: Aug 19, 2022

Answer:
1. Learn C Programming by reading the classic book by C's creators, Dennis Ritchie and Brian Kernighan. In this cover-to-cover read-along, University of Michigan professor Dr. Chuck will guide you through the book, adding his own commentary as a developer and computer scientist. Dr. Chuck has also prepared a number of coding exercises that you can work through to solidify your understanding of key C concepts. You'll learn Operators, Control Flow, Input/Output, and C data structures including Pointers. This is a deep dive into one of the most widely-used languages in the world, as it was first taught nearly 50 years ago. (10 hour YouTube course): https://www.freecodecamp.org/news/learn-c-programming-classic-book-dr-chuck/

2. Stardew Valley is a popular farming video game based off of the Nintendo classic, Harvest Moon. And in this Python GameDev course, you'll use PyGame to build your own playable version of it. You'll code player inventory systems, soil and rain logic, day-night cycles, and even farm animals. Note that this is an intermediate course. If you're new to PyGame, the freeCodeCamp community has several beginner courses as well. (7 hour YouTube course): https://www.freecodecamp.org/news/create-stardew-valley-using-python-and-pygame/

3. Regular Expressions (often abbreviated as RegEx) can help you with everyday tasks like find/replace in your text editor, filtering Trello cards, or web searches with DuckDuckGo. This tutorial will teach you the RegEx basics. You can then naturally expand on your RegEx skills over the years as you use them. (25 minute read): https://www.freecodecamp.org/news/regular-expressions-for-beginners/

4. You may notice a lock in your browser's address bar. This usually means you're communicating with a server through a secure HTTPS connection. And in this tutorial, you'll learn all about HTTPS, and how it improves upon the original HTTP web standard. Along the way, you'll learn about web security, SSL certificates, and symmetric VS asymmetric encryption. There's a good chance you're using HTTPS right now as you read this, so you may enjoy learning a bit more about this engineering marvel. (20 minute read): https://www.freecodecamp.org/news/http-vs-https/

5. Computer Science is one of the most popular university majors in the world. But what exactly is Computer Science? And what do Computer Science students learn? If you're thinking about studying Computer Science in school, this guide will lay out some of the coursework you'll most likely do, and some of the career opportunities such a degree opens up. Note that you can also learn these topics yourself through freeCodeCamp at your own pace. (12 minute read): https://www.freecodecamp.org/news/what-is-a-computer-scientist-what-exactly-do-cs-majors-do/

Quote of the Week: *"C retains the basic philosophy that programmers know what they are doing. It only requires that they state their intentions explicitly."* — Dennis Ritchie and Brian Kernighan, creators of the C programming language. This quote comes from the same book that Dr. Chuck covers in the course I mentioned above.