CSE 124
2017 November 16: Getting started with SurfStore

I’ve put together a four-part video that walks you through the process of getting started on the SurfStore project. In this series of videos, we actually implement the entire BlockStore service. To do this, we’ll:

  1. Write a client that interacts with the BlockStore service in a number of ways, in a test-driven manner
  2. Implement a “bare-bones” BlockStore that accepts commands, but doesn’t actually implement the logic properly. When we run the client against this service, most of the tests are going to fail (that’s OK! We’ll fix that in step 3).
  3. In the third part of the video, we’ll actually implement the logic of the BlockStore
  4. Finally, we’ll re-run the client, and all the tests will pass

The videos are located on YouTube at the following links:

To access the code

From your repo, run the following command:

$ git pull
$ git checkout blockstoredemo

Now Client.java, BlockStore.java, and HashUtils.java will reflect the end of the four-part tutorial. To restore the repo to its original state, you can optionally run:

$ git checkout master