Skip to content

Instantly share code, notes, and snippets.

tfnico / fastbuild-pom.xml
Created Jan 14, 2011
An alternative pom
View fastbuild-pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="" xmlns:xsi=""
tfnico /
Created Apr 20, 2011
Solving being as functional as possible using Google Guava
static int solution(int limit){
ImmutableSet<Integer> numbers = intRange(1,limit);
return foldInsByAdding(Iterables.filter(numbers, dividableByThreeOrFive()));
private static Predicate<Integer> dividableByThreeOrFive(){
return new Predicate<Integer>() {
public boolean apply(Integer i){
return (i % 3 == 0) || (i % 5 == 0);
View factorial.weel
// Note the tail call optimization!
private func fact_f(n, result)
return n > 0 ? fact_f(n - 1, result * n) : result;
func fact(n)
return fact_f(n, 1);
tfnico / post-receive-email
Created Jul 27, 2011 — forked from cmcculloh/post-receive-email
Example of a post receive email file called by a git hook that sends a color coded formatted html email of the git diff
View post-receive-email
# Copyright (c) 2007 Andy Parkins
# An example hook script to mail out commit update information. This hook
# sends emails listing new revisions to the repository introduced by the
# change being reported. The rule is that (for branch updates) each commit
# will appear on one email and one email only.
# This hook is stored in the contrib/hooks directory. Your distribution
tfnico / console
Created Sep 5, 2011
Git push output
View console
imac:foo-integration-tests firstname.lastname$ git push
Counting objects: 65, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (25/25), done.
Writing objects: 100% (37/37), 4.20 KiB, done.
Total 37 (delta 10), reused 0 (delta 0)
remote: *** Error while highlighting:
remote: UnicodeDecodeError: 'utf8' codec can't decode byte 0xa7 in position 1136: unexpected code byte
remote: (file "/usr/lib/python2.5/encodings/", line 16, in decode)
View from flurfunk
➜ ~/projects/viaboxx/flurfunk/flurfunk-server/[limit-number-of-msg]✗>lein test tfnico@raist [16:56:21]
Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: java.lang.IllegalArgumentException: Don't know how to create ISeq from: clojure.lang.Symbol (storage.clj:11)
at clojure.lang.Compiler.analyze(
at clojure.lang.Compiler.analyze(
at clojure.lang.Compiler$BodyExpr$Parser.parse(
at clojure.lang.Compiler$LetExpr$Parser.parse(
at clojure.lang.Compiler.analyzeSeq(
at clojure.lang.Compiler.analyze(
at clojure.lang.Compiler.analyze(
at clojure.lang.Compiler$BodyExpr$Parser.parse(
tfnico / maven.log
Created Nov 9, 2011
maven release branch problems
View maven.log
~/projects/agnes/[(agnes-1.5)]>mvn release:branch -DbranchName=agnes-1.5.x -DautoVersionSubmodules=true -DreleaseVersion=1.5.1 -DupdateBranchVersions=true tfnico@Thomas-Ferris-Nicolaisens-iMac [12:10:23]
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building agnes 1.5
[INFO] ------------------------------------------------------------------------
[INFO] --- maven-release-plugin:2.2.1:branch (default-cli) @ agnes ---
[INFO] Verifying that there are no local modifications...
[INFO] ignoring changes on:,, pom.xml.releaseBackup, pom.xml.backup, pom.xml.branch, pom.xml.tag
tfnico / gof.clj
Created Dec 3, 2011
Started Clojure game-of-life
View gof.clj
(ns conways.test.core
(:use [conways.core])
(:use [clojure.test]))
(def world #{})
(defn isALive? [world x y] (get world [x y]) )
(defn setLive [world x y] (conj world [x y]))
tfnico /
Created Dec 5, 2011
Splitting tests
public void psmThrowsNullPointerExceptionWhenCopying() {
Aristo a = new Aristo();
Runtime r = mock(Runtime.class);
a.PSMCopy("oldPSM", "newPSM");
public void psmThrowsIOExceptionWhenExecuting() {
tfnico /
Created Dec 23, 2011
Some business rule tests
public static boolean isCodeAllowed(String code) {
return isNotNullOrEmpty(code) &&
onlyLettersCorrectLength(code) &&
lettersAndNumbersCorrectLength(code) &&
numbersOnlyNotAllowed(code) &&