Skip to content

Instantly share code, notes, and snippets.

View airstrike's full-sized avatar
🎯
bringing presentations and spreadsheets to the 21st century

Andy airstrike

🎯
bringing presentations and spreadsheets to the 21st century
View GitHub Profile
@airstrike
airstrike / process-load.bat
Created April 26, 2020 16:43
Misc process load monitoring snippets for Windows
@echo off
rem CPU load by process (e.g. python*)
echo "Python processes % Processor Time"
typeperf "\Process(python*)\% Processor Time" -sc 10 | grep / | sed -r 's/.*:(.*)/\1/g' | sed -r 's/[\",]+/ /g'
rem Total CPU Load
echo "Total CPU Load %"
@for /f %p in ('wmic cpu get loadpercentage ^| grep -P \d+') do @echo %p%
@airstrike
airstrike / pretty-django-logging.py
Last active April 18, 2020 03:31
Pretty logging in django
# add to settings.py
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'loggers': {
'django.db.backends': {
'handlers': ['console_sql'],
'level': os.getenv('DJANGO_LOG_LEVEL', 'INFO').upper(),
},
'cache': {
@airstrike
airstrike / subquery-join-traceback
Created April 16, 2020 01:25
Traceback for subquery-join error upon evaluating the same Subquery twice in a row
C:\projects\fundraiser fundraiser λ python manage.py shell
Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 22:39:24) [MSC v.1916 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from fundraising.models import *
>>> from django.db.models.sql.constants import LOUTER
>>> from django.db.models import *
>>> donations = Donation.objects.values('week').annotate(agg=Sum('amount')).filter(membership__group__id=OuterRef('membership__group_id'))
>>> groups = Group.objects.annotate(amounts=Subquery(donations, join=True, join_type=LOUTER))
>>> groups
@airstrike
airstrike / interpolate-colors.bas
Last active April 14, 2020 02:23
VBA Macro: Interpolate colors from cell values and apply them to font color
Option Explicit
Sub InterpolateFontColor()
Dim rng As Range, lowpointColor As Long, highpointColor As Long, midpointColor As Long
'Get A Cell Address From The User to Get Number Format From
On Error Resume Next
Set rng = Application.InputBox( _
Title:="Interpolate Font Color in Cells", _
Prompt:="Select cell range to interpolate", _
Type:=8)
-- What I have
-- >>> from django.db.models.expressions import *
-- >>> from foo.utils import GroupConcat
-- GroupConcat is essentially just a string aggregator... code is here if you're curious https://dpaste.org/Twpu/slim#L15,20
-- >>> window = {'partition_by': [F('id'),], 'order_by': [F('workload__submission__employee__role__level').desc(),], 'frame': RowRange()}
-- >>> Project.objects.annotate(team=Window(expression=GroupConcat('workload__submission__employee__goes_by'), **window))
SELECT
"staffing_project"."id",
"staffing_project"."name",
@airstrike
airstrike / mappings.ahk
Last active August 3, 2020 21:23
Various AHK keyboard shortcuts
#SingleInstance
#Persistent
RAlt & z::
reload
return
DetectHiddenWindows, On
F1::return ;F1 does nothing
@airstrike
airstrike / generate.c
Last active April 16, 2020 19:28 — forked from Joker-vD/generate.c
Dungeon Generator (Uncompressed, MS Visual Studio 2008)
// Uncompressed version of dungeon generator, backported for MS Visual Studio 2008
// Original work: https://gist.github.com/munificent/b1bcd969063da3e6c298be070a22b604
// Original uncompressed version: https://gist.github.com/Joker-vD/cc5372a349559b9d1a3b220d5eaf2b01
// Tested with Microsoft (R) C/C++ Optimizing Compiler Version 16.00.30319.01 for x64
#include <time.h> // Robert Nystrom
#include <stdio.h> // @munificentbob
#include <stdlib.h> // for Ginny
// #include <stdbool.h> // 2008-2019
typedef int bool;
@airstrike
airstrike / codeanywhere.css
Last active March 11, 2019 21:38
User style for codeanywhere.com editor
/*
From https://github.com/romainl/flattened
TERMCOL HEX RGB
------- ------- -----------
black #073642 7 54 66
red #dc322f 220 50 47
green #859900 133 153 0
yellow #b58900 181 137 0
blue #268bd2 38 139 210
magenta #d33682 211 54 130
@airstrike
airstrike / .vimrc
Last active October 13, 2020 03:39
Latest vimrc file (2019)
" VIM user interface
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set so=2 " Show at least 2 lines around cursors when moving vertically
set ruler "Always show current position
set cmdheight=1 "The commandbar height
" Set backspace config
set backspace=eol,start,indent
set whichwrap+=<,>,h,l
#========================================================================
# Description: Tokenise an Excel formula using an implementation of
# E. W. Bachtal's algorithm, found here:
#
# Blog post: https://ewbi.blogs.com/develops/2004/12/excel_formula_p.html
# See also: https://ewbi.blogs.com/develops/popular/excelformulaparsing.html
# Direct link to this port: http://www.ewbi.com/ewbi.develop/samples/jsport_nonEAT.py
#
# Originally written for Python v2.5 (win32)
# Author: Robin Macharg