Computer Science
18 Months with GPT-4: Now Can I Fire my Developers?
by Lane Wagner - Boot.dev co-founder and backend engineer
As the founder of a company where my largest static expense is engineering salaries, I'm over here just chomping at the bit, eagerly awaiting the moment I can fire everyone and line my pockets with all those juicy savings. See, about one year ago, I wrote an article titled, "9 Months with GPT-4: Can I Fire my Developers Yet?" and I thought I'd give you a little update on Allan's employment status.
9 Months with GPT-4: Can I Fire my Developers Yet?
by Lane Wagner - Boot.dev co-founder and backend engineer
GitHub has been re-founded on copilot, rumors of an AI superior to GPT-4 abound, and you're trying to decide if it's worth it to learn what a red-black tree is.
Is Computer Science Really that Hard?
by Natalie Schooner - Computer science educator and technical writer
Yes, computer science is hard, but you already know that. You don't want to know if computer science is hard. You want to know if it's too hard. You want to know if having to learn computer science is going to be a real obstacle in your way to achieving your goal.
Snake Case or Camel Case? A Guide to Programming Naming Conventions
by Lane Wagner - Boot.dev co-founder and backend engineer
The following names are all valid variable names in nearly every programming language:
The Top 11 Computer Science Books for Self Study [2026]
by Natalie Schooner - Computer science educator and technical writer
In today's modern, fast-paced world, we look to StackOverflow, Reddit, and hands-on courses to learn about computer science and software engineering. But there are some real benefits to using books as an additional resource.
A Complete Overview of Computer Science for Beginners
by Winston Wagner - Technical author at Boot.dev
Getting into computer science can be a daunting task. There are so many career paths down which a computer education can take you, so many programming languages to master, and so many skills to learn. I'll give you a basic rundown of what computer science is, along with a plethora of resources and tools to help you carve out your own pathway into a computer science career.
What is the Future of Computer Science?
by Natalie Schooner - Computer science educator and technical writer
In a word, the future of computer science is promising.
6 Undeniable Reasons to Learn Computer Science
by Zulie Rane - Data analysis and computer science techincal author
Is it a bit dramatic, perhaps, to say that the fate of the world rests on computer science and that's why you should learn computer science?
Your Code isn't Correct
by Lane Wagner - Boot.dev co-founder and backend engineer
There is a common trap that we fall into as developers, and it is believing that because some code "worked" that the code was written "correctly". In reality, for most technical problems, a good developer can likely point out several different solutions. Any of those solutions might be perfectly reasonable, while none of them is the single "correct way".
Beautiful Language and Beautiful Code
by
"Dead Poet's Society" is a classic film, and has become a recent favorite of mine. There's a scene in particular that I enjoy, where Robin William's character explains that it's bad practice to use terms like "very tired" or "very sad", instead we should use descriptive words like "exhausted" or "morose"! I wholeheartedly agree with what's being taught to the students in this scene. It's tiresome to read a novel where the author drones on within the bounds of a lackluster vocabulary. This brings me to the point I wanted to emphasize in this short article:
Intro to the One-Time Pad Cipher
by Lane Wagner - Boot.dev co-founder and backend engineer
In cryptography, the one-time pad, or OTP is a way of encrypting information so securely that it's impossible to be cracked. That said, OTP has a major drawback in that it requires both parties to have access to the same key before a message is encrypted.
Check for Standards Before Creating a New One
by Lane Wagner - Boot.dev co-founder and backend engineer
I recently had a ticket opened on my team's backlog board requesting the ability to bypass our API's caching system. For context, our front-end team uses my team's API to make fairly heavy requests to ElasticSearch, and one of the features of our API gateway is to cache the results of heavy aggregations for ~30 seconds. It turns out, every once in a while they need to run two of the same query within the ~30-second caching window and want an updated result set.
Advanced Algorithms Course Released on Boot.dev
by Lane Wagner - Boot.dev co-founder and backend engineer
Sorry it took so long for me to get this one out! Data Structures and Algorithms 2 was just released, and I'm excited to let you all get your hands on it, even if you're just auditing it for free! The more advanced material takes quite a bit longer to produce, I wanted to triple-check to make sure I got everything correct and that I've presented it in a way that makes it easy to understand.
Top 8 Benefits of Functional Programming
by Lane Wagner - Boot.dev co-founder and backend engineer
Functional programming is a way to write code where programs are created strictly through functions. Functional programming has gained quite a bit of traction in recent years among the development community, mostly because of the benefits it provides.
What Is Dry Code, and Is It Always A Good Thing?
by Lane Wagner - Boot.dev co-founder and backend engineer
"Don't repeat yourself", or "DRY" for short, is a somewhat controversial principle of software development. It aims to make code cleaner, which is to say less buggy and easier to work with. DRY purports to accomplish this by reducing repetition in your codebase and replacing that duplicate code with abstractions like functions, classes, and methods.
Writing a Binary Search Tree in Python with Examples
by Lane Wagner - Boot.dev co-founder and backend engineer
A binary search tree, or BST for short, is a tree where each node is a value greater than all of its left child nodes and less than all of its right child nodes. Read on for an implementation of a binary search tree in Python from scratch! Also, if you're interested in really learning this stuff, you should check out three of my courses:
Building a Linked List in Python with Examples
by Lane Wagner - Boot.dev co-founder and backend engineer
A linked list is a linear data structure where elements are not stored next to each other in memory. Unlike and array, elements in a linked list use pointers or references to each other to keep the list intact.
Should you Learn Computer Science or Software Engineering?
by Winston Wagner - Technical author at Boot.dev
The most important thing to understand about these two fields of study is that, ultimately, they are similar. At the end of the day, Software Engineering and Computer Science will both help to make you a better programmer and developer, and the only difference between the two is how they are applied. Software Engineering tends to be more practical, and Computer Science tends to be more theoretical. In a way, Software Engineering is just applied Computer Science, and using that as a starting point, we can examine the differences between the two.
Guide to Getting a Certificate in Computer Science
by Zulie Rane - Data analysis and computer science techincal author
There are so many reasons to want to get a certificate in computer science in 2021, especially when you compare it to alternatives like getting a degree or attending a coding bootcamp.
6 Computer Science Resume Examples
by Lane Wagner - Boot.dev co-founder and backend engineer
It's really hard to get your foot in the door for engineering interviews, especially if you have no experience and are looking for an entry-level position. Often times, more experienced candidates looking to find a higher-paying job can also have trouble. As an employer myself, I can tell you that one of the biggest mistakes I see in 75% of resumes is using a visually boring template. When I'm sifting through forty or fifty applicants, it's really easy for my eyes to glaze over. Think of your resume as your website landing page. You need to catch your employer's attention by calling out your biggest accomplishments and selling points at a glance.
The Highest-Paying Computer Science Jobs
by Lane Wagner - Boot.dev co-founder and backend engineer
There are many jobs within the software industry, and most of them are easier to land or are higher-paying once you land them, if you have a solid grasp of computer science fundamentals. You don't need a degree from an accredited university in 90% of cases, but you do need to learn the material, whether it be online, on the job, or in a formal setting. Let's explore the most common computer science job titles and their associated compensation, details, and duties.
The History of Computer Science - A Timeline
by Winston Wagner - Technical author at Boot.dev
The Antikthyera Mechanism
Computer Information Systems vs Computer Science
by Winston Wagner - Technical author at Boot.dev
As technology continues to advance, the need for professionals who are capable of utilizing and understanding computers continues to grow. This demand creates a strong job market, with excellent pay and exclusive opportunities. However, there are two fields of study when it comes to working with this technology: Computer Information Systems and Computer Science. Both are useful areas of study with in-demand skills, but what are the benefits of each, in comparison to each other? We explore that below.
Certificates vs Diplomas in Computer Science
by Zulie Rane - Data analysis and computer science techincal author
When I was looking into getting my first job related to programming, I had no idea what the difference between a certificate and a diploma was. I was terrified that I'd have to go back to school and spend 2-4 years getting a degree in computer science before an employer would even blink in my direction. Unfortunately for me, two degrees in conservation biology aren't enough to attract any serious coding employers. Then I learned about boot camps, which eased my concerns some, but I didn't have the time or money to spend on a 15-week program.
Examples of Heuristics in Computer Science
by Winston Wagner - Technical author at Boot.dev
Heuristics in computer science and artificial intelligence are "rules of thumb" used in algorithms to assist in finding approximate solutions to complex problems. Often, there's simply too much data to sift through to come to a solution promptly, so a heuristic algorithm is used to trade exactness for speed. However, because heuristics are based on individual rules unique to the problem they are solving, the specifics of the heuristics vary from problem to problem.
