Skip to content

Instantly share code, notes, and snippets.

@jbg
jbg / chargen.py
Last active October 1, 2016 13:35
#!/usr/bin/env python3
import argparse
from collections import Counter, defaultdict
from random import random, randint
from time import sleep
parser = argparse.ArgumentParser()
parser.add_argument("corpus", help="a filename for training")
parser.add_argument("length", type=int, help="how many characters to generate")
@jbg
jbg / similarity.py
Created May 26, 2017 10:54
Similarity model example
#!/usr/bin/env python
import cPickle
__import__('__init__').init_triposo()
from sklearn.decomposition import TruncatedSVD, NMF
from sklearn.feature_extraction.text import TfidfVectorizer, CountVectorizer
from time import time
@jbg
jbg / keybase.md
Created June 9, 2017 07:56
keybase.md

Keybase proof

I hereby claim:

  • I am jbg on github.
  • I am jbg_ (https://keybase.io/jbg_) on keybase.
  • I have a public key ASBT9NMnenxkpAD1iFKgJT5O9VT26NOQcqjDXOzYDxG_1go

To claim this, I am signing this object:

@jbg
jbg / powerchange
Created July 21, 2017 10:05
Script to run on udev power_supply events to adjust Macbook performance for battery/AC
#!/bin/sh -e
# Executed by udev upon power supply status changes using this rule:
# SUBSYSTEM=="power_supply", RUN+="/usr/local/bin/powerchange"
# This script sets minimum performance on battery. Adjust to suit.
BATTERY_BRIGHTNESS=250
# AC brightness is the maximum level.
if [ $POWER_SUPPLY_ONLINE = 1 ]; then
0x230A3aA574b90947cc711Dca3511B9BFa889b173
#!/usr/bin/python3
from collections import OrderedDict
from datetime import datetime
from functools import partial
import json
import logging as log
import os
from queue import Queue, Empty
import subprocess
@jbg
jbg / TextEditingRawKeyboardListener.dart
Last active January 23, 2019 02:07
Text editing keyboard shortcuts in Flutter
const KEYCODE_A = 0;
const KEYCODE_HOME = 115;
const KEYCODE_DEL = 117;
const KEYCODE_END = 119;
const KEYCODE_LEFT = 123;
const KEYCODE_RIGHT = 124;
class TextEditingRawKeyboardListener extends StatelessWidget {
final Widget child;
final FocusNode focusNode;
--- old-openapi.json 2019-07-04 12:50:46.000000000 +0100
+++ openapi.json 2019-07-04 12:50:33.000000000 +0100
@@ -1417,21 +1417,27 @@
"name": "id",
"description": "SumUp unique transaction ID or transaction code, e.g. TS7HDYLSKD.",
"required": true,
- "type": "string"
+ "schema": {
+ "type": "string"
+ }
/*
ct-logs = "0.6.0"
http = "0.1.18"
hyper = "0.12.33"
hyper-rustls = "0.17.0"
rustls = "0.16.0"
tokio = "0.1.22"
webpki-roots = "0.17.0"
*/
#![feature(never_type)]
use std::io;
use pnet::{
packet::ip::IpNextHeaderProtocols,
transport::{ipv4_packet_iter, transport_channel, TransportChannelType},
};
fn main() -> Result<!, io::Error> {