Skip to content

Instantly share code, notes, and snippets.

@hukl
hukl / truth_example.erl
Last active December 10, 2015 11:13
Blog post example for truth table in erlang
% Day 14 and after last match of season: 100
% State Resetted: 010
% Finished processing StateLevel > MaxLevel: 001
% Flag | Current | Is State | Finished | Meaning
% | Season Over? | Reset? | Processing? |
% -----|--------------|----------|-------------|------------------------------------------
% 100 | 1 | 0 | 0 | resume progress current season
% 101 | 1 | 0 | 1 | noop day 14
% 110 | 1 | 1 | 0 | start progression
@hukl
hukl / preflight.md
Created July 3, 2012 12:38
Preflight

Features

web interface to create checklist templates for given tasks like new release/deployment

  • template has groups of checks e.g. localization, frontend, backend, payment, virality related
  • you can start a checklist session from a template which can be shared with a url among coworkers
  • a session is a full copy of the given template i.e. changing a template does not change previous sessions
  • the progress of a checklist session is persisted
  • the progress is shown for each group and the whole checklist
  • the progress is updated for all participants of the session via SSE / Ajax Foo
  • the users authenticate via oauth (wooga.google.com)
@hukl
hukl / erlang_ideas.md
Created June 12, 2012 10:10
Erlang Eco System Ideas
  • implement input agnostic type conversion functions e.g. to_integer, to_list, to_binary
  • helper functions that make it super easy to create supervisor childspecs
  • add a metric ton of support functions to traverse, merge, filter, search (,…) proplists, dicts, orddicts etc.
  • build a decent json support lib - the way you have to work with jiffy for example is painful
  • configuration and environment management
@hukl
hukl / LSCOLORS
Created June 3, 2012 13:58
LS Colors for Smyck Color scheme
LSCOLORS="exfxcxdxbxegedabagacad"
LS_COLORS="di=34;40:ln=35;40:so=32;40:pi=33;40:ex=31;40:bd=34;46:cd=34;43:su=0;41:sg=0;46:tw=0;42:ow=0;43:"
@hukl
hukl / gist:2148571
Created March 21, 2012 15:35
Format / Tidy a big junk of json
With Python
cat big.json | python -mjson.tool > ~/Desktop/big_tidy.json
With Ruby (Keeps the order of the keys in ruby 1.9.x)
cat big.json | ruby -e 'require "json"; puts JSON.pretty_generate(JSON.parse(STDIN.read)) ' > big_tidy.json
@hukl
hukl / gist:1919227
Created February 26, 2012 22:00
Scale Suffixes for rrdtool / munin
1024 E 24 yotta Y
1021 E 21 zetta Z
1018 E 18 exa E
1015 E 15 peta P
1012 E 12 tera T
109 E 9 giga G
106 E 6 mega M
103 E 3 kilo k
102 E 2 hecto h
101 E 1 deca da
@hukl
hukl / gist:1401981
Created November 28, 2011 20:49
Erlang Shell History Errors
[hukl@nine ~/Desktop/erlang:master]$ erl
Erlang R14B04 (erts-5.8.5) [source] [64-bit] [smp:8:8] [rq:8] [async-threads:0] [hipe] [kernel-poll:false]
*** ERROR: Shell process terminated! ***
{error_logger,{{2011,11,28},{21,45,14}},"~s~n",["Error in process <0.23.0> with exit value: {{case_clause,{error,{{bad_object,eval_work_list},\"/Users/hukl/.erlang-hist.nonode@nohost\"}}},[{group_history,load,2},{group_history,load,2},{group,server,3}]}\n"]}
{error_logger,{{2011,11,28},{21,45,14}},"~s~n",["Error in process <0.24.0> with exit value: {{case_clause,{error,{{bad_object,eval_work_list},\"/Users/hukl/.erlang-hist.nonode@nohost\"}}},[{group_history,load,2},{group_history,load,2},{group,server,3}]}\n"]}
{error_logger,{{2011,11,28},{21,45,14}},supervisor_report,[{supervisor,{<0.21.0>,user_sup}},{errorContext,child_terminated},{reason,{{case_clause,{error,{{bad_object,eval_work_list},"/Users/hukl/.erlang-hist.nonode@nohost"}}},[{group_history,load,2},{group_history,load,2},{group,server,3}]}},{offender,[{pid,<0.23.0
@hukl
hukl / gist:1364952
Created November 14, 2011 19:54
Ruby vs Erlang building URL query params for a GET request
-module(myjoin).
-export([join/1, join/2, start/0]).
start() ->
join( [{foo,"bar"},{baz,"bang"}] ).
join([H|T]) ->
{K,V} = H,
Acc = atom_to_list(K) ++ "=" ++ V,
@hukl
hukl / has_many_through_boom.rb
Created October 24, 2011 18:49
has_many :through regression. behaves as if :uniq => true was set
require 'active_record'
# Print out what version we're running
puts "Active Record #{ActiveRecord::VERSION::STRING}"
# Connect to an in-memory sqlite3 database (more on this in a moment)
ActiveRecord::Base.establish_connection(
:adapter => 'sqlite3',
:database => ':memory:'
@hukl
hukl / has_many.rb
Created October 23, 2011 19:58
Rails has_many :through regression
class Order
has_many :order_tickets
has_many :tickets, :through => :order_tickets
end
class Ticket
has_many :order_tickets
has_many :orders, :through => :order_tickets
end