Technology

Consensus Algorithms: Proof-of-Work & Mining Deconstructed

Consensus Algorithms: Proof-of-Work & Mining Deconstructed

Because the blockchain is decentralized and transaction data is distributed between nodes, there must be a way for the nodes to sync and agree on what transactions have already occurred. In other words, they have to be in consensus about what the blockchain looks like. This is is the first of a multi-part post on different consensus protocols: it discusses proof of work, Byzantine Fault Tolerance, mining, energy consumption, and scaling.

A Closer Look at Decentralized Exchanges & The 0x Protocol

A Closer Look at Decentralized Exchanges & The 0x Protocol

The blockchain is often heralded as a technology that removes the need for trust. Yet hundreds of thousands, if not the majority of cryptocurrency traders today still need to place so much trust in exchanges to operate in a responsible, secure manner. For my first post that dives into a specific use case of the blockchain, I'm excited to be writing about decentralised exchanges addressing these problems, and the projects currently being implemented. I'll do a quick overview of centralised/decentralised exchanges and then dive into the 0x project - a decentralised exchange protocol that will serve as the public dex infrastructure.

Anatomy of a Bitcoin Transaction

Anatomy of a Bitcoin Transaction

Our bitcoin transaction ledger now contains 512200+ (at the time of writing) immutable pages of history detailing nothing except who sent how much BTC to whom...

But what exactly happens during each transaction? What are public and private keys and why is it such a big deal to keep the latter a secret? What's in a wallet? What does it mean to verify or "sign" a message in this context? In this post I will walk through what happens when you send and receive bitcoin and what it means to "own" cryptocurrencies.

Dig my Crate: A Ruby project inspired by record collecting

Dig my Crate: A Ruby project inspired by record collecting

I went to bed with a half-finished post on record collecting and thought it would be nice if somehow, non-collectors can explore someone's collection in a simple, interactive way. While Discogs is packed with information about each release, there isn't a way for someone to peruse the records without being bombarded with details they might not care about. In addition, there may be some records that collectors forgot they even had or have not listened to in a while. Though the tactility of crate digging is part of the allure to vinyl in the first place, I thought it'd be fun to also have a tool to pick something for you at random. So I decided to do something about it...

Back to Code

Back to Code

A few weeks ago I decided it was time to revive a hobby I had begun to pursue in college: computer programming. I enrolled in a Data Structures & Algorithms course during my final semester in an attempt to fight off senioritis - and despite the allnighters spent debugging and balancing red-black trees, this decision ended up being one of the best I made at Cal....