At Qvault we believe the process of becoming a successful software developer can be at least an order of magnitude more effective than it is today. After all, | Continue reading
A universally unique identifier (UUID) is a 128-bit format for creating IDs in code that has become popular in recent years, especially in relation to | Continue reading
Clean code is like clean garbage - it's only clean if it doesn't exist. In other words, the only clean code is no code. Let's start with an acknowledgment | Continue reading
SHA-2 (Secure Hash Algorithm 2), of which SHA-256 is a part, is one of the most popular hashing algorithms out there. In this article, we're going to break | Continue reading
"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 | Continue reading
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 | Continue reading
AES, or “Advanced Encryption Standard”, is an encryption specification that uses the Rijndael cipher as its symmetric key ciphering algorithm. AES encrypts a | Continue reading
Perhaps you've heard of the fabled 10x developer (or 10x engineer) - the one on the team that's 10x as productive as their average colleague. While many, | Continue reading
Being a language built for the web, Go offers feature-rich support for working with JSON data. JSON (JavaScript Object Notation) is an unbelievably popular | Continue reading
Unit tests are unbelievably important to us as developers because they allow us to demonstrate the correctness of the code we've written. More importantly, | Continue reading
I've seen a lot of buzz recently about software developers wanting to form unions. I'm particularly interested in this topic as the founder of Qvault, where | Continue reading
"Software engineer" has become a ubiquitous term for people who write, deploy, architect, or sometimes even simply test code. In reality, I think there are | Continue reading
Why was that adjustment to college classes so hard? Sitting through hours of lectures and PowerPoints can be challenging for even the most dedicated students. | Continue reading
Clean code is like clean garbage - it's only truly clean if it doesn't exist. In other words, the only clean code is no code. Let's start with an | Continue reading
In my full-time role at Nuvi, I've been lucky enough to work on a team where we're able to push the boundaries in the natural language processing field. We | Continue reading
Unit tests are unbelievably important to us as developers because they allow us to demonstrate the correctness of the code we've written. More importantly, | Continue reading
Self-taught developers and Bootcamp graduates often have a hard time finding employment because they skipped learning computer science fundamentals and jumped | Continue reading
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 | Continue reading
We couldn't be more excited to announce the latest update to Qvault's gamified computer-science education platform, student achievements! We've modeled | Continue reading
I often hear that we need more and better comments in the code we write. In my experience at previous companies as well as at Qvault, we often need better | Continue reading
Constants in Go must be assigned before the program runs. All constants are computed and saved when the program compiles using go build. Constants can rely on | Continue reading
With #HacktoberFest being a thing, there has been an influx of devs desperately trying to contribute to their favorite Open-Source projects. Unfortunately, | Continue reading
You've probably visited a site and attempted to sign-up only to be met with errors such as: | Continue reading
So you want to hire a developer? Or maybe you just want to know what is going through the heads of employers like myself. Either way, let's dive right into | Continue reading
I've recently been working on a Rust course for the Qvault app. In order to write a more engaging course, I want students to be able to write and execute code | Continue reading
Higher education had its problems before Covid-19. Now the crippling inefficiencies, backbreaking cost, and lack of alternatives are being forced into the | Continue reading
We've recently made big changes to how we execute Go in the browser on Qvault and want to explain the enhancements. Web Workers are the reason we've been able | Continue reading
Elliptic curve cryptography is an efficient modern approach to public-key cryptosystems. In this introduction, our goal will be to focus on the high-level | Continue reading
I'm normally a fan of the rigidity within the Go toolchain. In fact, we use Go on the front and backend at Qvault. It's wonderful to have standardized | Continue reading
With quantum computers getting more powerful each year, many worry about the safety of modern encryption standards. As quantum computers improve in | Continue reading
My team has been spending less of our "free" time working on bugs and features from the backlog, and more time refactoring our codebases and test suites. As a | Continue reading
One of the first concepts new developers learn is the if/else statement. If/else statements are the most common way to execute conditional logic. However, | Continue reading
Bcrypt is a key derivation function, which can be thought of as a slow hash function. Its purpose is to slowly convert a piece of input data to a fixed-size, | Continue reading
Lattice-based cryptography has been coming into the spotlight recently. In January 2019, Many of the semifinalists in the NIST post-quantum-cryptography | Continue reading
Adi Shamir’s Secret Sharing is an algorithm that allows participants to share ownership of a secret by distributing shares, which can be thought of as parts of a secret key. In order for someone to gain access to the original secret, a minimum number of shares (the threshold) mus … | Continue reading
We can’t optimize for everything in software engineering, so we need to start with something, and that something should be simplicity. For example, to over-optimize for speed in JavaScript, we might write our for-loops backwards to the detriment of readability. On other occasions … | Continue reading
In past projects at Qvault we had an application that typically ran with ~2GB in memory at any given time. By simply changing the order of some uint variables we managed to drop the memory usage to less than 1.4GB. The vast majority of this allocated memory is due to an enormous … | Continue reading
If you've seen The Imitation Game, or studied computer science in school, you have likely heard of Enigma, Alan Turing, or some of the other advances in cryptog | Continue reading
While working on Qvault's Go Playground, I came across a very strange error. The standard library's fmt.Printf() function prints nothing to the console when cal | Continue reading
In past projects at Qvault we had an application that typically ran with ~2GB in memory at any given time. By simply changing the order of some uint variables w | Continue reading
PGP, or its open-source alternative, GPG, is a program used to encrypt data such that only an authorized party can decrypt it. In this introduction, we will cov | Continue reading
Scrypt is a slow-by-design hash function or more accurately, a KDF function. Its purpose is to take some input data, and create a fingerprint of that data, but | Continue reading