Posts by Tags

coding

Byzantine Fault Tolerant Broadcast

7 minute read

Published:

An essential primitive in distributed systems is broadcast, or the ability to send a group of participants the same message. In the honest case, this problem is straightforward; send everyone the message and acknowledge its receipt. However, this problem becomes complicated under the assumption of byzantine faults. If we apply the honest protocol to the byzantine environment, we may have different peers accept different values! In this article, I give a summary and implementation of an algorithm for overcoming the problem.

coffee

The Fifth Wave of Coffee

3 minute read

Published:

American coffee has progressed through a series of waves. Each wave is defined by common trends in the coffee industry. The consensus is that there have been three waves so far, and we are in the early stages of the fourth wave. The purpose of this article is to give a -very- brief summary of each wave, followed by speculation about what the fifth wave and beyond may be.

cycling

Building a bike

3 minute read

Published:

This is a blog post to log the progress and process of building a bike. My first real bicycle had its frame bent while it was locked in Porter Square, and I’m going to revive it by putting the old parts on a new frame. This is the log of my first ground-up bike build.

distributed systems

Models of Failure in Distributed Systems

7 minute read

Published:

In distributed systems, protocols and algorithms are each designed with regards to a particular set of assumptions. One of these assumptions is the failure model of components of the system. For example, we might make assumptions about how processes fail, and others about how the message-passing system, the network, fails. These assumptions are critical as they provide us with knowledge of the capabilities of protocols as well as a means of comparing them. In this article, I present a survey of the different failure models used in distributed systems.

Byzantine Fault Tolerant Broadcast

7 minute read

Published:

An essential primitive in distributed systems is broadcast, or the ability to send a group of participants the same message. In the honest case, this problem is straightforward; send everyone the message and acknowledge its receipt. However, this problem becomes complicated under the assumption of byzantine faults. If we apply the honest protocol to the byzantine environment, we may have different peers accept different values! In this article, I give a summary and implementation of an algorithm for overcoming the problem.

making

Building a bike

3 minute read

Published:

This is a blog post to log the progress and process of building a bike. My first real bicycle had its frame bent while it was locked in Porter Square, and I’m going to revive it by putting the old parts on a new frame. This is the log of my first ground-up bike build.