Top Banner
Álvaro Polo Sebastián Ortega Coinffeine Technical Overview
11

Coinffeine in BetaBeers

Apr 12, 2017

Download

Software

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Coinffeine in BetaBeers

Álvaro Polo Sebastián Ortega

Coinffeine Technical Overview

Page 2: Coinffeine in BetaBeers

The problem

Sujetos racionales

Page 3: Coinffeine in BetaBeers

Architecture

GUI Headless

API

Core

Bitcoin client Protocol

Overlay API

Relay overlay

Payment API

OKPay client

Page 4: Coinffeine in BetaBeers

Actor model

An extension to object orientation in which objects run concurrently and the

messages among them are asynchronous: every actor has a mailbox

and process its messages one-by-one.

Akka

Don’t drink too much Kool-Aid

Page 5: Coinffeine in BetaBeers

Thin wrapper around JavaFX

100% reactive

Maturity issues

ScalaFX

CSS-like stylesheets

Page 6: Coinffeine in BetaBeers

Event sourcingAkka persistence

2

3

Make your application logic fully transactional

Command-query separation

Persistent log of events to be replied in case of recovery

1

Page 7: Coinffeine in BetaBeers

Bitcoin wallet library

Lightweight Bitcoin client: SPV vs full node

Pure-Java implementation you can harness from any

JVM language

Modeled after a wallet not a general application

Page 8: Coinffeine in BetaBeers

Testing

Chaos messaging

OKPay mock

Domotic testnet

Cake pattern

Integrated tests

Page 9: Coinffeine in BetaBeers

Shared ownership

Dev cultureCode reviews

vs pairing

Automation

Clean code

Common values

Page 11: Coinffeine in BetaBeers

Domotic testnet

• Raspberry Pi

• Relay board

• ASIC miners

• Power units