Skip to content

Instantly share code, notes, and snippets.

View abourget's full-sized avatar

Alexandre Bourget abourget

View GitHub Profile

Problem:

  • We want to keep the experiments for payments/billing/usage report/authentication coherent and unified
  • We also want to have multiple distributed gateways of the network.
  • These are the tensions between a centralizing vs decentralizing different components.

Solution:

  • Provide an API that allows someone to emerge as a great UI for payments/billing/usage report/authentication, yet distributes the provisioning of the service to various gateways operated by multiple organisations.
  • By defining a protocol, there also exists competition at that UI level, but gateway operators/providers of service would have an established way of communicating with that UI, in a standardized way, and move to use the best front-end (or use multiple).
  • May the best win!
@abourget
abourget / w3g.md
Last active November 28, 2023 22:13
{
"expiration": "2018-07-09T13:09:20",
"ref_block_num": 955,
"ref_block_prefix": 2477295815,
"max_net_usage_words": 0,
"max_cpu_usage_ms": 0,
"delay_sec": 0,
"context_free_actions": [],
"actions": [
{
@abourget
abourget / keybase.md
Created March 29, 2017 14:33
Keybase proof

Keybase proof

I hereby claim:

  • I am abourget on github.
  • I am abourget (https://keybase.io/abourget) on keybase.
  • I have a public key ASDOwPRLvU0tt95s4Kx0mbdy76giDFpfPBLizucn60qPhgo

To claim this, I am signing this object:

@abourget
abourget / main.go
Last active March 12, 2016 20:01
Sample security middleware for goa's Security framework..
...
func serve() error {
service := goa.New("Featurette")
publicKeys := loadJWTPublicKeys(service)
...
// JWTSecurity was generated, because I named my security method "jwt"
@abourget
abourget / main.go
Last active March 5, 2016 03:33
In my package's `gen/` folder
package main
import (
"fmt"
"strings"
_ "github.com/abourget/featurette/design"
"github.com/goadesign/goa/design"
"github.com/goadesign/goa/dslengine"
@abourget
abourget / dartIrcbot.dart
Last active December 17, 2015 11:38 — forked from adam-singer/dartIrcbot.dart
Updated for M4
import "dart:io";
import "dart:utf";
import 'dart:json' as JSON;
import 'dart:async';
import 'dart:isolate' as isolate;
import 'dart:mirrors';
String API_KEY = "INSERT_KEY_HERE";
class Bot {
@abourget
abourget / ssh.py
Created November 30, 2012 16:43
Ansible helper to connect to remote nodes via ssh, using the Ansible inventory
#!/usr/bin/env python
#
# This is a script we use at Tenscores, and it is specific only in the sense that we use IP addresses
# and use the variable `hostname` to find the correct nodes. Also, it connect to user `ubuntu` by
# default.. that could be checked up in the vars too.
#
# Our hosts file looks like:
#
#[appservers]
@abourget
abourget / directives.js
Created August 8, 2012 20:24
Hammer.js integration with AngularJS
/**
* Inspired by AngularJS' implementation of "click dblclick mousedown..."
*
* This ties in the Hammer events to attributes like:
*
* hm-tap="add_something()"
* hm-swipe="remove_something()"
*
* and also has support for Hammer options with:
*
@abourget
abourget / development.ini
Created April 3, 2012 16:55
Using DustJS + WebAssets + Pyramid
webassets.base_dir=%(here)s/myapp
webassets.base_url=/
webassets.debug=True
webassets.updater=timestamp
webassets.cache=True
webassets.DUSTY_PATH=/path/to/myapp/node_modules/dusty/bin/dusty
# after installation, following instructions here:
# https://github.com/abourget/webassets/blob/master/src/webassets/filter/dust.py#LC16