Skip to content

Instantly share code, notes, and snippets.

View thruflo's full-sized avatar

James Arthur thruflo

View GitHub Profile
thruflo / cluster-setup.sql
Created October 4, 2021 07:13 — forked from marcocitus/cluster-setup.sql
Basic geo-partitioning for Citus
-- set up a global cluster
select citus_set_coordinator_host('us-coordinator-hostname', 5432);
select citus_add_node('us-worker1-hostname', 5432);
select citus_add_node('us-worker2-hostname', 5432);
select citus_add_node('eu-coordinator-hostname', 5432);
select citus_add_node('eu-worker1-hostname', 5432);
select citus_add_node('eu-worker2-hostname', 5432);
-- make sure we can run distributed queries on EU coordinator
select start_metadata_sync_to_node('eu-coordinator-hostname', 5432);

Keybase proof

I hereby claim:

  • I am thruflo on github.
  • I am thruflo ( on keybase.
  • I have a public key whose fingerprint is 0652 C240 CBFD C842 608E DB7C 4CF9 2CF3 7B61 E5AF

To claim this, I am signing this object:

We implement JSON serialization using a combination of our own custom

Content-Type logic [1] and Pyramid's default JSON rendering machinery.

This allows developers to config the JSON renderer using Pyramid's configuration machinery [2].

OVM Website Implementation Notes

Main Website

Plan is:

  • build out the current site
  • re-theme in line with design from Alice
# Key Bullets for Immediate OVM web
* about content
* top level IA
* events: hosted meetup/eventbrite listed on site
* contact / group channels
* think piece content: what & where syndicated
* wiki: we need to identify the "articles" / "spec" / "definitions"
thruflo /
Created May 24, 2013 09:33
Embed code for FabHub linkback.
def index_view(request):
"""Render a link to log the user in using Bouncer."""
# Generate the login URL, with the right client id and callback URL. You
# could also add a `state` parameter for CSRF protection.
settings = request.registry.settings
params = {
'client_id': settings.get('client_id'),
'redirect_uri': request.route_url('callback'),
'response_type': 'code'
2012-08-06T17:17:05+00:00 app[web.1]: Traceback (most recent call last):
2012-08-06T17:17:05+00:00 app[web.1]: File "/app/.heroku/venv/lib/python2.7/site-packages/gunicorn/workers/", line 39, in handle
2012-08-06T17:17:05+00:00 app[web.1]: self.handle_request(req, client, addr)
2012-08-06T17:17:05+00:00 app[web.1]: File "/app/.heroku/venv/lib/python2.7/site-packages/gunicorn/workers/", line 86, in handle_request
2012-08-06T17:17:05+00:00 app[web.1]: super(GeventWorker, self).handle_request(*args)
2012-08-06T17:17:05+00:00 app[web.1]: File "/app/.heroku/venv/lib/python2.7/site-packages/gunicorn/workers/", line 69, in handle_request
2012-08-06T17:17:05+00:00 app[web.1]: respiter = self.wsgi(environ, resp.start_response)
dyno=web.1 queue=0 wait=0ms service=33ms status=500 bytes=135
2012-08-06T17:17:05+00:00 app[web.1]: File "/app/.heroku/src/pyramid/pyramid/", line 191, in __call__
2012-08-06T17:17:05+00:00 app[web.1]: request._process_response_callbacks
<!-- needs args: name, spec, method"body" -->
<%namespace name="${ name }" file="${ spec }" />
\${unique_name.${ method }()}
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""Provides ``PostmarkMailer`` utility for sending emails. Instantiate with
an api_key::
api_key = '...'
mailer = PostmarkMailer(api_key)
Then fire away::