Boot.dev Blog
Python vs Java: Performance, Salary & More Compared
by Meghan Reichenbach
Comparing Python and Java is a bit like comparing boats and cars. They both get you from point A to B and are fun to show off, but that's where the similarities end. And the same with Python and Java, they're both programming languages and known for powerful server-side coding, but after that, they become completely different tools.
Why Learn Python? 9 Key Reasons
by Zulie Rane - Data analysis and computer science techincal author
Simple to learn, endlessly versatile, and perennially in demand by employers paying higher and higher salaries every year — it feels like there's a million reasons to learn Python.
What is Cryptography? A Complete Overview
by Lane Wagner - Boot.dev co-founder and backend engineer
Simply put, Cryptography provides a method for secure communication. It stops unauthorized parties, commonly referred to as adversaries or hackers, from gaining access to the secret messages communicated between authorized parties. The method that cryptography provides is called encryption.
JavaScript vs TypeScript: What's the Difference?
by Meghan Reichenbach
Whether you're new or old to the computer science community, you've probably asked yourself, "What is TypeScript?" and if you haven't, it won't be long before you do.
R vs Python: Which Is Best for Data?
by Meghan Reichenbach
Python and R made a name for themselves as top-end competitors in the world of data science for their ability to seamlessly navigate and handle data. But what sets these languages apart from each other?
Python vs JavaScript: Which Should You Learn First?
by Meghan Reichenbach
Python is easier for most beginners; JavaScript is essential for front-end web development. Compare their syntax, speed, use cases, and career paths.
10 Compelling Reasons to Learn Python for Data Science
by Zulie Rane - Data analysis and computer science techincal author
Read this if you don't know where to start learning data science
Scala vs Go: Comparing Everything You Need to Know
by Meghan Reichenbach
Scala and Golang are newer languages, only coming onto the scene after the turn of the century, but in that time they've managed to become two of the highest-paid languages for developers, with the industry benefiting from their fresh creation.
Death, Taxes, and Database Migrations
by Lane Wagner - Boot.dev co-founder and backend engineer
Earlier in my career, I would come to a new project and inevitably a hectic migration would be underway. It's not always a "stop the world" change, it can be as simple as switching from NPM to Yarn, but something is always changing. I used to naively believe my managers when they said cute things like "just this once" or "we'll finally have our dependencies up to date."
Golang vs Java: 6 Key Comparisons
by Meghan Reichenbach
Golang (or Go) and Java offer an interesting comparison because despite their wide differences, there are also key similarities in how and where they're used by programmers.
Top 20 Entry-Level JavaScript Interview Questions
by Jamie Dunmore
Versatile, powerful and ever-present, JavaScript is the world's most used programming language (for eight years and counting!) and shows no signs of slowing down. Check out these 20 practice interview questions for JavaScript! If you're on the job-hunt for an entry-level position, read on.
Our Learn Python Course Has Released
by Lane Wagner - Boot.dev co-founder and backend engineer
We've just launched our latest course, Learn Python.
What are UUIDs, and are they better than regular IDs?
by Lane Wagner - Boot.dev co-founder and backend engineer
In the context of back-end web development, an ID is just a unique identifier for a record of data. For example, each user on a website will have its own ID. If the site is a social media platform, then each post will also have a unique ID.
What is Go Good For? (And What Is Golang Used For?)
by Jamie Dunmore
In 2007, frustrated by some of C++'s inefficiencies and overcomplicated nature, and desiring a programming language designed specifically for multi-core processors and effectively managing large projects, three Google engineers, Robert Griesemer, Rob Pike, and Ken Thompson, designed the Go language.
Golang vs C++: Which is Best For Your Next Project
by Meghan Reichenbach
Needing to be a math genius to learn to code is a thing of the past. High-level programming languages offer an alternative to low-level machine code, which makes coding more accessible than ever. Let's dive into how Golang, a modern higher-level language, matches up to C++, a tried-and-true low-level language. We'll cover the most important points like which language is more performant, which is easier to learn, which results in cleaner code, and which programming methodologies guide their respective designs.
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.
16 Great Coding Challenges You Can Try Out
by Zulie Rane - Data analysis and computer science techincal author
Coding challenges are a fun way to improve your coding quickly.
Building a Red-Black Binary Tree in Python
by Lane Wagner - Boot.dev co-founder and backend engineer
A red-black tree is a kind of self-balancing binary search tree. Each node stores an extra bit, which we will call the color, red or black. The color ensures that the tree remains approximately balanced during insertions and deletions. When the tree is modified, the new tree is rearranged and repainted to restore the coloring properties that constrain how unbalanced the tree can become in the worst case.
Quick Sort in Golang
by Lane Wagner - Boot.dev co-founder and backend engineer
Quicksort is an efficient sorting algorithm commonly used in production sorting implementations. Like Merge Sort, Quicksort is a divide-and-conquer algorithm. As the name implies, Quicksort is one of the fastest sorting algorithms, but you have to pay attention to detail in your implementation because if you're not careful, your speed can drop quickly.
How to Write Insertion Sort in Go
by Lane Wagner - Boot.dev co-founder and backend engineer
Insertion sort builds a final sorted list one item at a time. It's much less efficient on large lists than more advanced algorithms like quicksort or merge sort. Insertion sort is a simple algorithm that works just like you would arrange playing cards in your hands. A slice is first split into sorted and unsorted sections, then values from the unsorted section are inserted into the correct position in the sorted section.
Merge Sort in Golang with Examples
by Lane Wagner - Boot.dev co-founder and backend engineer
Merge sort is a recursive sorting algorithm and, luckily for us, it's quite a bit faster than bubble sort. Merge sort is a divide and conquer algorithm.
Writing Bubble Sort in Go from Scratch
by Lane Wagner - Boot.dev co-founder and backend engineer
Bubble sort is named for the way elements "bubble up" to the top of the list. Bubble sort repeatedly steps through a slice and compares adjacent elements, swapping them if they are out of order. It continues to loop over the slice until the whole list is completely sorted.
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.
Defer in Go
by Lane Wagner - Boot.dev co-founder and backend engineer
The defer keyword is a fairly unique feature of Go. It allows a function to be executed automatically just before its enclosing function returns. The deferred call's arguments are evaluated immediately, but the function call is not executed until the surrounding function returns.
