Skip to content

Instantly share code, notes, and snippets.

@chronodm
chronodm / perp_distance.py
Last active January 13, 2019 19:29
Naive total perpendicular distance from points to plane
import numpy as np
import math
# ############################################################
# unutbu's model() (https://stackoverflow.com/a/35118683/27358)
def model(params, xyz):
a, b, c, d = params
x, y, z = xyz
@chronodm
chronodm / Measurement.java
Last active August 14, 2018 22:03
Discriminated union sort of thing in Java
import static java.lang.System.out;
import java.util.function.IntUnaryOperator;
/**
* See https://softwareengineering.stackexchange.com/questions/376845/how-should-i-store-unknown-and-missing-values-in-a-variable-while-still-ret
*/
public abstract class Measurement {
/**
* Prints:
@chronodm
chronodm / Preview.java
Last active December 22, 2017 04:08
A JavaFX application that can be programmatically launched to display a given Node (for testing)
import io.reactivex.observers.DisposableObserver;
import io.reactivex.subjects.PublishSubject;
import io.reactivex.subjects.Subject;
import io.vavr.control.Option;
import javafx.application.Application;
import javafx.beans.value.ChangeListener;
import javafx.scene.Group;
import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.layout.Region;
@chronodm
chronodm / IntLookupPerformanceComparison.java
Last active May 24, 2017 14:29
Performance comparison of java.util.ArrayList, javaslang.collection.vector, and it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
import javaslang.collection.Vector;
import java.math.BigDecimal;
import java.math.MathContext;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Consumer;

title: 'I am the title' subtitle: 'I am the subtitle' author:

  • Author 1
  • Author 2 abstract: | This is the Abstract. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco
@chronodm
chronodm / reverse-bias.md
Last active August 29, 2015 14:20
Israel’s appeal courts treat Arabs differently depending on whether panels include Arab-Israeli judges

A riff on [this WaPo Monkey Cage post](http://www.washingtonpost.com/blogs/monkey-cage/wp/2015/05/04/israels-appeal-courts-treat\ -arabs-better-when-one-judge-is-arab-israeli/).

Israel's appeal courts treat Arab-Israelis worse when all judges are Jewish

We find that Arab defendants are 20 percentage points more likely to be incarcerated by an all-Jewish panel than by a mixed panel, while Jewish defendants saw no difference. Furthermore, all-Jewish panels result in higher prison sentences for both Arab and Jewish defendants, but the magnitude of this effect is small and insignificant for Jewish

@chronodm
chronodm / logback.xml
Created July 25, 2014 18:21
Failed attempt to suppress log from Gradle tooling
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"/>
<logger name="org.gradle.tooling" level="ERROR" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
<root level="DEBUG">
<appender-ref ref="STDOUT"/>
</root>
</configuration>
@chronodm
chronodm / MemoizerTest
Created February 4, 2014 21:10
Unit test for Memoizer, as implemented in Java Concurrency in Practice, pp. 105-106
import org.junit.Test;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.stubbing.Answer;
import java.util.*;
import java.util.concurrent.*;
import static org.fest.assertions.Assertions.*;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.*;
@chronodm
chronodm / reflectorbug.scala
Last active December 31, 2015 13:39
Demonstrating a bug in json4s Reflector (or possibly just in Scala reflection) that produces a spurious IncompatibleClassChangeError when faced with locally declared case classes
import org.json4s._
import org.json4s.Extraction._
import org.scalatest.{Matchers, FlatSpec}
import org.json4s.native.Serialization
import org.json4s.native.Serialization._
/**
* @version $Id$ $Rev$ $Date$
*/
class MyClass(v: String) {
@chronodm
chronodm / ApiFormats.scala
Last active November 19, 2016 02:49
Custom formatters for JodaTime DateTime and various case classes
package format
import model._
import spray.json._
import org.joda.time.DateTime
import org.joda.time.format.{ISODateTimeFormat, DateTimeFormatter}
/**
* @version $Id$ $Rev: 223159 $ $Date: 2013-11-27 15:12:03 -0800 (Wed, 27 Nov 2013) $
*/