Skip to content

Instantly share code, notes, and snippets.

Neil Lyons nwjlyons

Block or report user

Report or block nwjlyons

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
nwjlyons /
Last active Jun 18, 2019
Python 2/3 add keyword arg
# python 2
class Person(object):
def __init__(self, name, age): = name
self.age = age
class Employee(Person):
def __init__(self, *args, **kwargs):
self.job_title = kwargs.pop('job_title')
nwjlyons /
Created Sep 18, 2018
Redis v SQL benchmarks
import timeit
from django.core.cache import cache
from django.contrib.auth.models import User
def benchmark_redis(n=1):
for _ in range(n):
nwjlyons /
Last active Jun 26, 2018
Wagtail NonFieldErrors for Blocks
class NonFieldErrors:
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.non_field_errors = []
self.meta.form_template = 'struct.html'
def get_form_context(self, value, prefix='', errors=None):
context = super().get_form_context(value, prefix, errors)
context['non_field_errors'] = self.non_field_errors
return context
nwjlyons / tron.lua
Created Apr 2, 2018
Tron game built for the PICO8 fantasy console
View tron.lua
pico-8 cartridge //
version 16
line_weight = 1
border_colour = 7
up = 2
right = 1
down = 3
left = 0
from django.urls import include, path
from . import views
# Change this
urlpatterns = [
path('<page_slug>-<page_id>/history/', views.history),
path('<page_slug>-<page_id>/edit/', views.edit),
nwjlyons /
Created Jan 17, 2018
Convert a cron file into human readable format.
# Prerequisites
# - npm install -g hcron
import subprocess
cron_input = open('cron.input.txt')
cron_output = open('cron.output.txt', 'w')
for line in cron_input.readlines():
nwjlyons /
Created Dec 6, 2017
Python split generator into sub lists
def chunks(generator, chunk_size):
"""Yield successive chunks from a generator"""
chunk = []
for item in generator:
if len(chunk) >= chunk_size:
yield chunk
chunk = [item]
nwjlyons / echo.go
Created Sep 28, 2017
Print HTTP request to stdout
View echo.go
package main
import (
nwjlyons /
Last active Jul 18, 2017
Send plain and html email via telnet.
telnet 1025
Connected to
Escape character is '^]'.
220 mailhog.example ESMTP MailHog
helo localhost
250 Hello localhost
mail from: <>
250 Sender ok
rcpt to: <>
You can’t perform that action at this time.