E. Gün Sirer

Photo of Emin Gün Sirer

About The Blog

This is a blog for everyday techies building real systems people use, and their still-with-it-and-technical CTOs. It's a blog for thinking people who want to build better systems. That often requires questioning current practices.

About Me

I build things. Mostly, I build software, typically backed by some principled reason for why it should work as advertised. I'm currently a professor at Cornell University.

Cryptocurrencies

I have worked hard to improve cryptocurrencies overall. For Bitcoin:

  • My group built the The Falcon relay network, which aids decentralization
  • My group developed Covenants to deter Bitcoin thefts;
  • We invented Bitcoin-NG to sidestep the maximum block size debate and improve scalability by multiple orders of magnitude
  • We introduced the first metrics for measuring decentralization and placing the blocksize debate on a scientific footing
  • Ittay Eyal and I co-authored the Selfish Mining paper, which showed that some commonly held folk theorems about Bitcoin were false, and that the network was definitely at risk from any miner larger than 33%, possibly even smaller ones. We also provided a fix against this attack against miners smaller than 25%.
  • I served as an expert witness in the U.S. lawsuit on behalf of the people who lost money at Mt. Gox.
  • I was one of the main people to push back on GHash at the first coin summit to get them to back down from 51% of the hash power.
  • Ittay Eyal and I have proposed 2P-PoW , a practical non-outsourcable puzzle scheme that can limit the size of open mining pools, while allowing individual miners to reduce their variance.
  • I played a behind the scenes role in introducing set difference techniques that led to xthin blocks and other similar tricks.
  • I have also spoken to regulators to convince them of the value of a light touch when it comes to this nascent area.

For Ethereum:

I'm a huge cryptocurrency fan and I work hard to clarify misconceptions, though I also call out various mistakes I see the community making, such as attacking people who are working to make the system better, refusing to be scientific, and doing things that, in their zeal, actually interfere with adoption by regular people.

NoSQL and Data Stores

In addition to cryptocurrencies, I work on data stores of different types. My team built the HyperDex fast data store. It's a next-generation NoSQL database that is faster than first-gen entrants like Mongo, supports ACID transactions, and scales. We recently released Weaver, a graph store that can hold very large graphs that are dynamically changing. I was the first person to point out that the CAP Theorem is flawed and does not have the implications that most people think it does.

Past Work

In the past, I worked on peer-to-peer systems of various kinds. I was behind Karma, the first peer-to-peer currency with a distributed mint, to my knowledge. My group also built Credence, a peer-to-peer reputation scheme that counteracted spam and mislabeled content inserted by malicious parties. I have built many other academic peer-to-peer systems, and I have worked to defend some of the most popular ones in court.

Operating Systems

My original passion was in operating systems. I built the SPIN kernel when I was a graduate student, where we explored how to extend the interface and implementation of a running kernel, safely, at run time. More recently, my group developed the Nexus, an operating system for trustworthy computing, which can prove to others what behaviors a computer will and will not engage in, without revealing what code it is running.

Summary

Overall, I hope you find the discussion of distributed systems, operating systems and systems engineering to be thought provoking. If you are an undergraduate and find these topics interesting, you should consider further study -- almost every top notch school will have a masters program with courses on distributed systems, and if you're particularly daring, a PhD program where you get to advance the state of the art. If you are not thinking of pursuing graduate studies, I'll try to provide appropriate links to external sources so you can follow up on the tangents that you find interesting.

Blogging Philosophy

I wrote up my goals in starting a blog. There is a lot of noise and misinformation being propagated online. Distributed systems is at an inflection point and taking off rapidly. I worry that we might have to face broken, flaky and untrustworthy systems for decades to come.

There are companies which spend millions of dollars on PR, bankroll conferences and hire salesmen to go from door to door in the valley to spread misinformation, marketing people to pretend to be developers on social media to peddle broken software, and people who hire paid trolls to attack anyone who says anything that interferes with their market position. I have nothing that can compare -- certainly no PR engine or paid stooges whose paycheck depends on perpetuating myths and foggy thinking. What I do have is a grasp of distributed systems science (albeit partial, as no one can claim complete mastery over such a large area), and a willingness to write for a general audience.

So, I generally stick to a principled, scientific take, and try to point out issues that others may have missed. You will not see me regurgitating bogus reasoning about why the CAP Theorem means you should throw all consistent databases out the window -- literally everyone in the valley already does that, and incidentally, they're all wrong. I will also typically veer away from ideology, so you will not see me claim that cryptocurrencies will bring an end to fiat, governments and war -- they won't, and besides, others serve that kool-aid far better than I can.

Since I typically have time to chime in only when I see wholesale groups making mistakes, this lends a slightly contrarian tone to the blog. This is purely a side effect of not having enough time to blog -- I lack the time to build rapport by regurgitating group think, so I will rely on the positivity of my readers to never forget that I pick the topics to write on because they are inherently exciting, and I'm here solely to improve the state-of-the-art. Those of you who have met me in person know that I'm supremely positive and optimistic in real life.

My values are centered around a progressive technologist's perspective. I believe in improving people's lives and maximizing societal good.

Things I read:

Some provide enlightenment, others provide intrigue, and some are there to get my pulse up in the mornings.

News Aggregators:

CS blogs:

Non-CS blogs:

Recent Posts