Skip to content

Instantly share code, notes, and snippets.

View tuxagon's full-sized avatar
🎲

Kenneth Bogner tuxagon

🎲
View GitHub Profile

Emoji Code Review Comments

Legend

Emoji Translation
😃 😍 I like this!
No changes or acknowledgements needed. Just wanted to say well done.
⚠️ Problem
This is a blocking issue and requires changes.
🔧 🎨 Suggestion
Not blocking, but a suggestion or idea for improvement. Feel free to disagree and move on.
QuestionNot blocking, but requires an answer by the PR/code author.
@tuxagon
tuxagon / intensify.sh
Created March 1, 2021 23:42 — forked from alisdair/intensify.sh
intensifies Slack emoji creator
#!/bin/bash
# Generate a `:something-intensifies:` Slack emoji, given a reasonable image
# input. I recommend grabbing an emoji from https://emojipedia.org/
set -euo pipefail
# Number of frames of shaking
count=10
# Max pixels to move while shaking

Keybase proof

I hereby claim:

  • I am tuxagon on github.
  • I am tuxagon (https://keybase.io/tuxagon) on keybase.
  • I have a public key whose fingerprint is 5F50 8459 57A4 AADE 6D75 9F57 C87D 59DC EA2C B562

To claim this, I am signing this object:

module Main where
import Data.Array
data Cell = D | A deriving (Show, Eq)
type Grid = Array Integer (Array Integer Cell)
type IxCell = (Integer, Cell)
type IxRefs = ((Integer, Integer), [(Integer, Integer)])
@tuxagon
tuxagon / README.md
Last active February 4, 2020 22:34
Conway's Game of Life Instructions

Conway's Game of Life is a zero-player game. You will give it an initial state and watch it evolve as it's played. This game is played on a two-dimensional, orthogonal grid. Each cell has the possibility of being either dead or alive and is considered next to cells directly touching it horizontally, vertically, and diagonally.

The game is played in a series of steps that repeat indefinitely. Every step, the following rules should be adhered to

  • Any live cell with two or three neighbors survives
  • Any dead cell with three live neighbors becomes a live cell
  • All other live cells die in the next generation. Similarly, all other dead cells stay dead.

Some extra rules you can use to get started

@tuxagon
tuxagon / Main.elm
Created December 3, 2019 23:49
Ellie Document Starting Point
module Main exposing (..)
import Browser
import Element exposing (Element)
import Html
type alias Flags =
()
@tuxagon
tuxagon / README.md
Created February 5, 2019 22:36
Dice Roller Specification

Dice Roller

Create a dice roller that allows you to roll a collection of dice and display the results.

Input:

* 1d6 - Rolls one 6-sided die

* 2d10 - Rolls two 10-sided dice
@tuxagon
tuxagon / exercise.rb
Created May 21, 2018 01:13
Longest Non-Repeating Character Substring Length
def longest_substring_length(text)
visited = Hash.new
max_len = 0
cur_len = 0
text.chars.each_with_index do |c, i|
prev_idx = visited[c]
cur_idx = i - cur_len
cur_len =
if prev_idx.nil? || still_unique?(cur_idx, prev_idx)
@tuxagon
tuxagon / list_zipper.rb
Created March 31, 2018 20:51
A list zipper implemented in ruby
class ListZipper
attr_reader :left
attr_reader :focus
attr_reader :right
def initialize(list)
list = ensure_array(list)
@focus = list.first
@left = []
@right = list.drop(1)
@tuxagon
tuxagon / README.md
Created February 28, 2018 00:55
Git GPG Signing

Signing in Git (GPG)

GPG Key Generation

First thing that is needed is generating the gpg key with gpg --gen-key or gpg --full-gen-key depending on if a different kind of key is desired. GitHub recommends a keysize of 4096 while the default is 2048.

After generating, something like the following should appear