Skip to content

Instantly share code, notes, and snippets.

View anowell's full-sized avatar

Anthony Nowell anowell

View GitHub Profile
@anowell
anowell / hasSameCharacters.cpp
Created October 23, 2012 07:45
hasSameCharacters with minor optimization for short strings
// Expected behavior:
// 'abc', 'cba' => true
// 'abca', 'cba' => true
// 'cba', 'abca' => true
// '', '' => true
// 'abcd', 'abc' => false
// 'abc', 'abcd' => false
bool hasSameCharacters(char* c1, char* c2)
{
@anowell
anowell / hasSameCharacters.cpp
Created October 23, 2012 08:33
hasSameCharacters simple O(n) solution
// Expected behavior:
// 'abc', 'cba' => true
// 'abca', 'cba' => true
// 'cba', 'abca' => true
// '', '' => true
// 'abcd', 'abc' => false
// 'abc', 'abcd' => false
bool hasSameCharacters(char* c1, char* c2)
{
@anowell
anowell / analog_clock.rb
Created December 11, 2012 11:09
AnalogClock class, program, and specs (RSpec tests - TDD)
class AnalogClock
attr_reader :hour, :min, :meridiem
def initialize(time)
return nil unless time.instance_of?(String)
# split on space and colon
split_time = time.split(/:| /)
return nil unless split_time.length == 3
@anowell
anowell / bash_search.sh
Created March 30, 2013 00:57
Bash search function - Quickly search for files containing text Piping find output into grep and optionally into your editor
# Function to search for string in a set of files
#
# Add this function to ~/.bashrc
# Restart terminal or run: source ~/.bashrc
# Optionally set EDITOR in ~/.bash_profile (I use "EDITOR=subl")
#
# Examples:
# # Outputs filenames and matches of all found occurrences of "authenticate_user" in .rb files
# search *.rb "authenticate_user"
#
@anowell
anowell / .tmux.conf
Last active December 19, 2015 17:09
tmux config
# Bind prefix to tick, but let double-tick through
unbind `
set -g prefix `
bind-key ` send-key `
# Ring the bell if any background window rang a bell
set -g bell-action any
# Default termtype. If the rcfile sets $TERM, that overrides this value.
set -g default-terminal screen-256color
@anowell
anowell / git-ship
Last active May 29, 2020 07:32
A git script to accommodate my workflow of merging (or rebasing) a particular feature branch into master: pull master, optionally rebase the feature branch, merge back to master, push, and finally remove branch.
#!/bin/sh
#
# My workflow:
# git checkout -b myfeature
# ...edit stuff...git commit...edit stuff...git commit...ready to ship...
# git ship myfeature -rpd
#
# It exits if the merge or rebase requires intervention,
# for merge: fix the conflict, commit the merge, and re-run the git ship command
# for rebase: clean up the conflict, run `git rebase --continue` and then re-run the git ship command
@anowell
anowell / anowell.zsh-theme
Created February 9, 2014 01:53
A clean, simple zsh theme.. and yet it supports timestamp (HH:MM), path, branch, dirty indicator (~), exit code success/fail indicator, root prompt (#), and user@host when run over SSH
# ------------------------------------------------------------------------------
# FILE: anowell.zsh-theme
# DESCRIPTION: oh-my-zsh theme file.
# AUTHOR: Anthony Nowell (anowell@gmail.com)
# VERSION: 1.0.0
# SCREENSHOT:
# ------------------------------------------------------------------------------
prompt_context() {
local user=`whoami`
#!/bin/bash
#sets the victims desktop to beiber.
/usr/bin/curl https://gist.githubusercontent.com/jgagner/9393470/raw/6ea21b41c27f22cd9fd50d7659ab314b8bfd8403/belieber.jpg > /tmp/belieber.jpg.base64
/usr/bin/base64 -D --input /tmp/belieber.jpg.base64 -o ~/belieber.jpg
/usr/bin/osascript -e "tell application \"System Events\" to set picture of every desktop to \"~/belieber.jpg\""
#remind our victim they are beliebers
@anowell
anowell / searcher
Last active August 29, 2015 14:05 — forked from saraid/-
#!/usr/bin/env ruby
WORDS = ['you', 'thou', 'you', 'they', 'this', 'that', 'here', 'there', 'who',
'what', 'where', 'when', 'how', 'not', 'all', 'many', 'some', 'few', 'other',
'one', 'two', 'three', 'four', 'five', 'big', 'long', 'wide', 'thick', 'heavy',
'small', 'short', 'narrow', 'thin', 'woman', 'man', 'man', 'child', 'wife',
'husband', 'mother', 'father', 'animal', 'fish', 'bird', 'dog', 'louse', 'snake',
'worm', 'tree', 'forest', 'stick', 'fruit', 'seed', 'leaf', 'root', 'bark', 'flower',
'grass', 'rope', 'skin', 'meat', 'blood', 'bone', 'fat', 'egg', 'horn', 'tail',
'feather', 'hair', 'head', 'ear', 'eye', 'nose', 'mouth', 'tooth', 'tongue',
# -*- coding: utf-8 -*-
import random
def apply(input):
if "ponder" in input:
mesg = ponderings[random.randint(0,len(ponderings)-1)]
else:
mesg = exclamations[random.randint(0,len(exclamations)-1)]