Skip to content

Instantly share code, notes, and snippets.

@yaniv-aknin
yaniv-aknin / server.py
Created October 16, 2022 13:40
Simple multi-client server for my nephew
#!/usr/bin/env python3
import argparse
import select
import socket
def parse_options():
parser = argparse.ArgumentParser()
parser.add_argument('-p', '--port', type=int, required=True)
options = parser.parse_args()
from google.cloud import bigquery
c = bigquery.Client()
job_config = bigquery.LoadJobConfig(
source_format=bigquery.SourceFormat.NEWLINE_DELIMITED_JSON,
write_disposition='WRITE_APPEND')
job = c.load_table_from_json([{'id': '7', 'value': 'qux'}], 'test_dataset.test_table', job_config=job_config)
print(job.result())
@yaniv-aknin
yaniv-aknin / README.md
Last active April 28, 2021 08:38
Visual overview of fafalytics
@yaniv-aknin
yaniv-aknin / README.md
Last active April 24, 2021 21:41
Quick tour of FAF (Forged Alliance Forever) historic game data, in the database and the replay files
@yaniv-aknin
yaniv-aknin / process.py
Created June 26, 2016 10:07
Process UK Land Registry data
#!/usr/local/opt/playground/bin/python
"""
Helper tool to process the UK Land Registry data
https://www.gov.uk/government/publications/land-registry-data/public-data
"""
import numpy
import functools
import multiprocessing

11 Sep, email from Parallels: Upgrade Notification: Top reasons to upgrade to the new Parallels Desktop 9 for Mac!

19 Sep, email from Parallels: Urgent Service Notification for Parallels Desktop 7 for Mac Users

19 Sep, tweet from me: "Urgent Service Notification for Parallels Desktop 7 for Mac Users". @ParallelsMac, your marketing is disgustingly aggressive. Stop.

19 Sep, tweet from me: @ParallelsMac If my previous message wasn't clear: I doubt I will ever choose to give you money again, ever, just because of your marketing.

19 Sep, tweet from Parallels: @aknin Message received. We want to make sure all our customers are aware, so there are no surprises if they move to Mavericks.

@yaniv-aknin
yaniv-aknin / app_name.py
Last active December 15, 2015 13:39
This code snippet works fine on my development box (OSX 10.7.5, postgres 9.1.4, Postgres.App 1.0 (11), libpq 0.5.4), works fine from my development box against my Heroku shared database, but breaks with an `(OperationalError) invalid connection option "application_name"` when ran on Heroku. Any explanations?
from os import environ
from sqlalchemy import create_engine
e = create_engine(environ['DATABASE_URL'],
connect_args={"application_name": "foo"})
e.connect()
@yaniv-aknin
yaniv-aknin / Procfile
Created February 26, 2013 11:10
compileror: a file compilation service
web: ./compileror $PORT
@yaniv-aknin
yaniv-aknin / omnidecorator.py
Last active December 12, 2015 04:38
When you read something like this, you go: "yuck!". When you write it, you're totally "dude, I'm so amazing!!1!".
def parse_with(parser):
def decor(func):
def __get__(self, instance, owner=None):
return self.__class__(instance, owner)
def __call__(self, *args, **kwargs):
params = parser.parse_args()
if self.instance:
return func(self.instance, params, *args, **kwargs)
return func(params, *args, **kwargs)
def __init__(self, instance=None, owner=None):
@yaniv-aknin
yaniv-aknin / gist:4701096
Last active December 12, 2015 02:48
Can you think of a better console text colouring library for shell?
#!sh
function newline() { printf "$@\n"; }
function color() {
output="\e[$1m"
shift
[ -n "$1" ] && output="$output$@\e[00m"
printf "$output"
}
function reset() { color "00"; }