Skip to content

Instantly share code, notes, and snippets.

View jdu's full-sized avatar

Jeff Uren jdu

  • Wellcome Trust
  • Gloucestershire
View GitHub Profile
@jdu
jdu / gigaclear.md
Last active February 26, 2020 15:30
Gigaclear Fibre

What follows is a timeline of correspondence between Gigaclear and myself over the course of more than a year about getting GigaClear Fibre installed / setup on Greyhill Farm.

Right now we use a combination of PlusNet Broadband and a 4G modem. At best we get around 2mbps down and 0.5mbps up (at best).

Some time around the beginning of 2019, I was away for work, but my wife messaged me to tell me that they were digging along our drive on Grayhill farm and installing fibre, as well as putting in fibre pots outside of each of the houses down here. I got pretty excited because our internet has been pretty bad, and really has been the only major issue we've had with living down here in the boonies.

I had called GigaClear previously about what it would cost to get fibre installed to our house and they basically said if we wanted it we would have to pay for the line to be run from the road to our house at the end ourselves. They figured it would be well over £2500 to do it, so we opted to just carry on using our

Keybase proof

I hereby claim:

  • I am jdu on github.
  • I am jdu (https://keybase.io/jdu) on keybase.
  • I have a public key ASD1503LmSQpIpCfXmFmhrTC-8ao-h6HKsMER0BwDqEKaAo

To claim this, I am signing this object:

pub fn handle_api(&mut self, ctx: &mut actix::Context<Self>, id: String, cmd: String, args: Value) {
eprintln!("Called handle api");
let cloned_id = id.clone();
let result = self.addr.send(ApiCall {
id: cloned_id,
cmd: cmd,
args: args,
});
eprintln!("SEND request to actor");
@jdu
jdu / LoginWindow.cpp
Created March 30, 2017 08:58
Window issues.
#include "loginwindow.h"
#include "ui_loginwindow.h"
LoginWindow::LoginWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::LoginWindow)
{
ui->setupUi(this);
}
@jdu
jdu / tool_template.py
Created August 12, 2013 11:20
A python command-line tool template
#!/usr/bin/python
import getopt, sys, os, shutil
import subprocess, codecs
def main():
METHOD = None
args = []
kwargs = {}
@jdu
jdu / my-tools.sh
Created July 26, 2013 12:08
A starter template for writing your own tools shell script.
#!/usr/bin/env bash
now=`date +"%m_&d_%Y"`
VER="0.0.1"
AUTHOR="Your Name"
function an_action() {
echo "Hello World!"
}
@jdu
jdu / Odata-Start.py
Created March 14, 2013 10:34
Start of OData-esque layer on top of SQLAlchemy
import pprint
from sqlalchemy import desc, func
from libs.database import Session
def importer(name):
mod = __import__(name)
components = name.split('.')
for comp in components[1:]:
@jdu
jdu / Grid.py
Created March 12, 2013 11:39
This class is used to layer over top of SQLAlchemy models to provide access to a Grid-like API
from sqlalchemy import desc, func
from libs.database import Session
def importer(name):
mod = __import__(name)
components = name.split('.')
for comp in components[1:]:
mod = getattr(mod, comp)
return mod
@jdu
jdu / gist:3360334
Created August 15, 2012 13:52
Keep your Repo Clean
# Tag the archive
git tag archive/<branchname> <branchname>
# Delete the branch
git branch -d <branchname>
# To restore the branch, checkout from the tag
git checkout -b <branchname> archive/<branchname>
@jdu
jdu / gist:3327424
Created August 11, 2012 21:30
Self-Updating Python class
class MyClass():
def __init__(self, **kwargs):
self.__dict__.update(**kwargs)