Skip to content

Instantly share code, notes, and snippets.

View sdtsui's full-sized avatar

Daniel Tsui sdtsui

View GitHub Profile

The notes below describe the approach in designing and writing the initial reference implementation of Handshake. This is not a prescriptive document and should not be used as such. This document's goal is to provide a referenece on the rationale and initial design of the protocol.


The foundation for the internet's security has relied upon trusted Certificate Authorities (CAs) which attest that a user is connecting to the correct server or node. This has created a reliance upon a handful of trusted actors, many of

sdtsui /
Created August 8, 2017 02:32 — forked from fideloper/
Update curl on Ubuntu 14.04
#! /usr/bin/env bash
# Install any build dependencies needed for curl
sudo apt-get build-dep curl
# Get latest (as of Feb 25, 2016) libcurl
mkdir ~/curl
cd ~/curl
tar -xvjf curl-7.50.2.tar.bz2
sdtsui / rinkebytesteth
Created July 27, 2017 07:14
sdtsui / webpack-moduleconcatentationplugin-issue-config.js
Created June 19, 2017 23:34
// We merge our configs. Here are all of the files used.
const webpack = require('webpack');
const merge = require('webpack-merge');
const CompressionPlugin = require('compression-webpack-plugin');
const baseFrontendConfig = require('./webpack.frontend.base');
module.exports =, {
plugins: [


This guide is intended to provide resources for those wanting to help test Metropolis EIPs. The CPP team is currently in the middle of a migration from EthDocs to a documentation site that is more dedicated to CPP-Ethereum so the documentation on creating tests for Ethereum using testeth is scattered. Everything you will need to get started should be compiled below.

Suggested skill sets needed to create and run tests

  1. Ability to compile/build testeth and LLL compiler or run a docker file.
  2. Ability to understand the LLL Ethereum language.
  3. Ability to understand EIPs, particuarly [those that are going to be going into t
sdtsui /
Created January 25, 2017 17:36

#BlackLight Bug Report Template:


(What is the bug?)

Repro Steps

(Precise steps to reproduce)

Expected Results

(What should happen)

sdtsui / reflection.go
Created September 22, 2016 03:23 — forked from drewolson/reflection.go
Golang Reflection Example
package main
import (
type Foo struct {
FirstName string `tag_name:"tag 1"`
LastName string `tag_name:"tag 2"`
sdtsui / first-golang-simpleServer.go
Last active September 13, 2016 22:59
package main
import (

System Design Cheatsheet

Step One: Framing The Problem a.k.a get the MVP

  • Identify the use cases that are in scope
  • Determine constraints based on scoped use cases

use case : the things your system needs to be do.

constraints : the things your system will have to consider to be able to do stuff