Skip to content

Instantly share code, notes, and snippets.

View darrenclark's full-sized avatar

Darren Clark darrenclark

View GitHub Profile
@darrenclark
darrenclark / bugsnag_logger_backend.ex
Created September 1, 2022 17:34
BugsnagLoggerBackend
defmodule BugsnagLoggerBackend do
@behaviour :gen_event
@impl true
def init(__MODULE__) do
{:ok, %{}}
end
@impl true
def handle_call({:configure, _options}, state) do
#/usr/bin/env bash
echo $(( ($(date -j -f "%d %B %Y" "$(cal -N -e)" +%s) - $(date +%s)) / (24 * 60 * 60) )) days until the Easter bunny comes
@darrenclark
darrenclark / snippet.java
Created November 9, 2021 14:33
Java Byte Buffers
import java.nio.ByteBuffer;
// is a byte[] under the hood
ByteBuffer buffer1 = ByteBuffer.allocate(12);
// is a block of bytes (similar to malloc)
ByteBuffer buffer2 = ByteBuffer.allocateDirect(12);
// buffers have a "position" that is advanced by read/write operations
buffer1.put((byte)1).put((byte)2).put((byte)3).put((byte)4);
@darrenclark
darrenclark / job.yaml
Created November 15, 2020 15:25
kubectl --as example
apiVersion: batch/v1
kind: Job
metadata:
generateName: echo-job-
spec:
template:
spec:
containers:
- name: echo
image: alpine:latest
import UIKit
import PlaygroundSupport
extension NSNotification.Name {
static let todoListItemUpdated = NSNotification.Name("TodoListItemUpdated")
}
class TodoList {
static let shared = TodoList()
import UIKit
import PlaygroundSupport
extension NSNotification.Name {
static let todoListItemUpdated = NSNotification.Name("TodoListItemUpdated")
}
class TodoList {
static let shared = TodoList()
@darrenclark
darrenclark / swift-default-init.sh
Last active September 2, 2016 20:28
Generate default swift initializer from properties
#!/bin/bash
# Usage:
# 1. Copy your properties to clipboard
# 2. `pbpaste | swift-default-init.sh | pbcopy`
# 3. Paste into code
set -eu -o pipefail
# Switch to \t for tab indenting
@darrenclark
darrenclark / git-brc
Last active September 2, 2016 15:27
Git BRanchClean - Remove local branches that have been merged
#!/bin/bash
set -eu -o pipefail
## Git BRanchClean (removes local branches that have been merged into the current branch)
# List of branches to ignore separated by vertical bars/pipes (|)
IGNORED_BRANCHES="develop|master"
branches="$(git branch --no-column --no-color --merged | egrep -v '\* ' | sed 's/^[\* ] //' | (egrep -v "$IGNORED_BRANCHES" || true))"
@darrenclark
darrenclark / README.md
Last active June 20, 2016 16:21
genstrings for your clipboard

(Swift only)

Easily add entries to Localizable.strings file by copy/pasting code with new NSLocalizedStrings

Usage:

  1. Copy your code containing NSLocalizedString(_:comment:) function calls

  2. Pipe it through the pbgenstrings.sh script:

@darrenclark
darrenclark / post-checkout
Created October 5, 2015 14:36
Update submodules on branch switch
#!/bin/sh
# To skip submodule update:
# IGNORE_SUBMODULES=1 git checkout <...>
# Third arg is "1" when doing a branch checkout (as opposed to a file
# checkout)
if [ "$3" = "1" ] && [ -z "$IGNORE_SUBMODULES" ]; then