HN user

gnusouth

19 karma

I like decentralisation and sustainability.

Posts3
Comments11
View on HN

I really liked Vlad Zamfir's papers on "correct-by-construction" consensus protocols. What I love about this work is that it unifies traditional BFT consensus with blockchain consensus to make something better than both! Really exciting!

Abstract CBC: https://github.com/ethereum/research/blob/master/papers/cbc-...

Casper the friendly GHOST: https://github.com/ethereum/research/blob/master/papers/Casp...

I found the Abstract CBC paper a little easier to understand, as it goes into more detail about the correct-by-construction process.

Here's a page with papers about how it works: https://blockstack.org/papers

The problem that the blockchain solves is essentially one of decentralised consensus on mutable data. Decentralised consensus on immutable data is "easy" (see Bittorrent, IPFS), but getting everyone to agree on who owns "yoursite.com" and what data it points to fundamentally depends on a universally agreed key-value mapping. Using a blockchain allows everyone to agree on such a mapping, with some nice extras thrown in like blind auctions and public key crypto. Namecoin and the newly launched Ethereum Name Service work similarly.

The big question given the inefficiency of proof-of-work blockchains is whether there are other ways to do decentralised mutable data. I'm currently working for MaidSafe, whose approach is based on a more traditional DHT and voting amongst randomised groups of nodes. We're still in alpha however, so for now the working systems are all blockchain based.

Did you run into any bugs or strange beahviour in Cloud Haskell? I looked into using it a while ago and came to the (possibly hasty) conclusion that it's not stable enough to build a large project on. Thanks!

I really like XFCE's Thunar. In particular, the bulk rename feature is easier to use than any command-line tool and is really powerful. I use it for all my file renaming.

In the 10ish years that I've been using software I don't feel it has really improved much. I think my ideal UI is a traditional window with a few menu items and a really deep preferences window, like some of the software I used to use on OS X Leopard. Lots of recent software seems to sacrifice customisability in the name of simplicity (Windows 8+, GNOME 3, Ubuntu Unity). I don't think this needs to be the case, complexity tucked away inside menus won't ever bother users who want pure simplicity. I think lots of developers drawn to the "command-line-only" mindset would actually be happier with GUIs of this kind, but I'm speaking only from my experience (I use the command-line extensively, and Linux, not OS X).

The place I just finished working at employed people to manually run regression tests on HTML forms... I implemented an automated system using selenium and Jenkins which ended up mostly working. I say "mostly" because Selenium itself is kind of flaky (I had a read, and wasn't impressed) and there's a lot of crazy stuff going on with the web drivers. Next time I think I'll use Phantom JS.

I feel it, OP.