BitBanged SPI in Go, An Explanation

1 5WD0gV6autEIzv8GMkc5gQ

I’m going to focus mostly on some design decisions and also how I went about writing an SPI interface using Go on a Raspberry Pi. I assume my readers have a basic understanding of what a Raspberry Pi is, and how basic electronics work. If not, read on anyway and I will be sure to … Read more

Top 8 Online Crypto Communities 2020

people at a concert scaled

Crypto is still rapidly growing in 2020, and while the hype train has somewhat left the station, we are sure it will be back. In the meantime, it’s a good opportunity to learn more about the fundamentals and technology that support decentralized money. These communities can certainly help tremendously. #1 BITCOINTALK Bitcointalk is undoubtedly the … Read more

Top 6 Golang Logging Best Practices

guest writing on table

Let’s cover some rules of thumb for logging in Go, as well as some functions you may not have heard of that can make your debugging life easier. Best practices for logging in Go aren’t super obvious, and sometimes we have to take a deeper look to see what the best choice is given Go’s … Read more

Cryptography Trends And News Going Into 2020

photo 1536242918817 db5e93c7a0e4

Quantum Computing Quantum computing may not be coming quite as fast as some in the field had certainly feared (or perhaps hoped). Google did, however, solve an impressive problem this year. They published a paper in Nature. It stated that their quantum processor solved a problem that, in contrast, a digital computer would take 10,000 … Read more

(Very) Basic Intro to The AES-256 Cipher

1 Th9nPlIhYveMMsG9RvqQsQ

AES stands for “Advanced Encryption Standard” and is a specification that has selected the Rijndael cipher as its symmetric key ciphering algorithm. AES encrypts a message with a private key and no one except the key holder can decrypt the message. This is useful for many reasons, but a good example is a laptop that … Read more

(Very) Basic Intro to Hash Functions (SHA-256, MD5, etc)

Hash functions are used to securely store passwords, find duplicate records, quickly store and retrieve data, among other useful computational tasks. As a practical example, all user passwords on Qvault are hashed using Bcrypt to ensure that if an attacker were ever to gain access to our database our user’s passwords wouldn’t be compromised. I … Read more

Cryptology, Cryptography, and Cryptanalysis – Get your Vocabulary Straight!


Many new developers are jumping right into coding (usually for those fat paychecks) without learning much about the history of Computer Science. People regarded Alan Turing as the father of Computer Science. He was first a cryptologist and mathematician. Then, he pioneered the field of CS in order to solve cryptological problems. In this article, … Read more

Qvault’s Lead Engineer Interviewed on “Running in Production”


The podcast is available here. Before I begin, I must give thanks to Nick for having me on the show! In this episode of Running in Production, I talk with Nick about how we built Qvault, an open-source password manager that specializes in cryptocurrency. Qvault uses Electron and has a Serverless component that uses Golang. It’s … Read more

How Game Dev and Physics Constants Made Me Think About Religion

photo 1495954222046 2c427ecb546d

I am an atheist and developer, I’ve found it surprising how often these two identities collide. I’m fascinated when something that deals with engineering directly influences my views on theism, or at least makes me consider new ideas. When building a game engine, even the most basic one, it becomes apparent that certain constants must … Read more