Skip to content

Instantly share code, notes, and snippets.

View BrianHicks's full-sized avatar

Brian Hicks BrianHicks

View GitHub Profile
module Main exposing (main)
import Benchmark exposing (..)
import Benchmark.Runner exposing (BenchmarkProgram, program)
main : BenchmarkProgram
main =
program <|
Benchmark.compare "map2 vs case"
@BrianHicks
BrianHicks / SketchSystems.spec
Last active March 25, 2019 21:58
HighlightRevise Question
HighlightRevise Question
Highlighting&
Must Justify Lack of Highlights
No Highlights
continue -> Justify Highlight
highlight -> Highlighted
Justify Highlight
enter text -> Next Question
highlight -> Highlighted
Highlighted
@BrianHicks
BrianHicks / SketchSystems.spec
Last active March 21, 2019 20:45
Multiple Choice
Multiple Choice
click not yet -> Not yet
click sort of -> Sort of
click definitely -> Definitely
No selection
Previous selection
continue -> Next Question
Not yet
continue -> Next Question
#!/usr/bin/env osascript -l JavaScript
ObjC.import('stdlib');
function run(argv) {
area = argv.join(" ");
var things = Application("Things3");
if (!things.running()) {
console.log("Things 3 is not running! Go start it and try me again.");

Brian's Ridiculous Customizations For Kinesis Advantage 2

I got a Kinesis Advantage 2 recently! It's great! But the stock layout (see appendix) has some problems:

  • I don't like cmd and ctrl being on the tiny buttons. I have to move my hands too much.
  • I don't like escape being in the function row. Needs to be somewhere easier to reach.
  • There are no media or volume keys bound by default.
  • Let's be honest, I never use home, end, page up, or page down. Almost everywhere I need to do those, I use cmd-left, cmd-right, space, and shift-space or readline shortcuts like c-e and c-a. They're easier to reach for me on most keyboards.
  • I really really really want a hyper key. It's easy to get to on most layouts (since the modifiers are all together) but not here. We also don't have a special switch, so we'll have to modify the software. Easy enough, right? (wrong.)
Verifying my Blockstack ID is secured with the address 1Gf4sVtqRmLXesrbPXdrxZEBq1iy5XLXhE https://explorer.blockstack.org/address/1Gf4sVtqRmLXesrbPXdrxZEBq1iy5XLXhE
Sending build context to Docker daemon 2.048kB
Step 1/10 : FROM brianhicks/elm-base:0.18.0
---> cae30fe094f4
Step 2/10 : RUN apt-get update && apt-get install --assume-yes git
---> Using cache
---> f8691c73197e
Step 3/10 : RUN cabal update
---> Using cache
---> f466d7028ba9
module Path exposing (..)
import String
type Error
= ParsingFailed -- TODO: parser error
| BadPush
| DescendsBelowRoot
| Wasnt Kind
# install something from homebrew
param "package" {}
task "install-homebrew" {
check = "which brew && echo brew installed || (echo brew not installed && exit 1)"
apply = "/usr/bin/ruby -e \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)\""
}
task "install" {
check = "brew list | grep -E '^{{param `package`}}$'"
module TestBenchmarking exposing (..)
import Benchmark exposing (Benchmark)
import Benchmark.Runner exposing (BenchmarkProgram, program)
import Time
arities : Benchmark
arities =
Benchmark.describe "arities"