Skip to content

Instantly share code, notes, and snippets.

aprice / RemoveWin10Garbage.ps1
Created Sep 5, 2019
PowerShell script to remove Windows 10 bloatware crap
View RemoveWin10Garbage.ps1
Import-Module AppX
Import-Module Dism
$AppsList = "Microsoft.Bing" , "Microsoft.BingFinance" , "Microsoft.BingMaps" , "Microsoft.BingNews"`
, "Microsoft.BingSports" , "Microsoft.BingTravel" , "Microsoft.BingWeather" , "Microsoft.Camera"`
, "microsoft.microsoftskydrive" , "Microsoft.Reader" , "microsoft.windowscommunicationsapps"`
, "microsoft.windowsphotos" , "Microsoft.XboxLIVEGames" , "Microsoft.ZuneMusic"`
, "Microsoft.ZuneVideo" , "Microsoft.Media.PlayReadyClient", "Microsoft.WindowsMaps"`
, "Microsoft.XboxApp", "SpotifyAB.SpotifyMusic", ""`
, ""
aprice / every.go
Created Jun 5, 2018
Execute a function on a ticker.
View every.go
package every
import (
// Every executes fn every d until ctx is canceled. Note that the first execution will not be until time.After(d).
func Every(ctx context.Context, d time.Duration, fn func()) {
t := time.NewTicker(d)
aprice /
Created Nov 30, 2017
Simple utility for showing/cleaning up kitchen test instances that may have been forgotten.
# Usage:
# mrclean - list kitchen instances in all cookbooks
# mrclean destroy - destroy kitchen instances in all cookbooks
# Update to your cookbook path
for c in $CBDIR/*; do
echo $(basename $c)
aprice /
Created Nov 28, 2017
Terraform helper script for workspace-per-environment model
terraform workspace select $env || exit_error "failed to select workspace $env"
case $cmd in
# Custom command: plan -> outfile, confirm, apply outfile
aprice / busboy.go
Created Aug 11, 2017
busboy cleans up after Chef nodes terminated in EC2 by listening for CloudWatch termination events on an SQS queue.
View busboy.go
package main
import (
aprice / password.go
Last active May 10, 2017
Simple, secure, best-practices password storage in Go.
View password.go
package password
import (
aprice / collator.go
Last active Apr 26, 2017
Simple, un-typed fan-in/fan-out result collator. Easy to customize for type safety.
View collator.go
type Collator struct {
results chan interface{}
errors chan error
wg *sync.WaitGroup
func NewCollator() *Collator {
return &Collator{
results: make(chan interface{}),
errors: make(chan error),
aprice / aws_peers.go
Last active Apr 7, 2017
Get the list of IP addresses of instances in the same ASG, excluding this instance
View aws_peers.go
package config
import (
aprice / makefile
Last active Aug 18, 2021
Full base Golang makefile for developers and Jenkins. Handles installing tools, formatting, linting, cross-compilation, installation, and packaging for distribution.
View makefile
# This file is intended as a starting point for a customized makefile for a Go project.
# Targets:
# all: Format, check, build, and test the code
# setup: Install build/test toolchain dependencies (e.g. gox)
# lint: Run linters against source code
# format: Format the source files
# build: Build the command(s) for target OS/arch combinations
# install: Install the command(s)
# clean: Clean the build/test artifacts
aprice /
Created Sep 16, 2016
Compare golang benchmarks between working copy and pristine
# Usage: "path/to/package" "-build flags"
# e.g. ./mypkg "-cpu=1,2,4 -tags=debug -benchtime=2s"
git stash save || exit 1
cd $DIR && go test -run=^$ -bench=. -benchmem $BFLAGS | tee old.out
git stash pop || exit 1
cd $DIR && go test -run=^$ -bench=. -benchmem $BFLAGS | tee new.out
benchcmp old.out new.out | tee comparison.out