Learning Spire - Vector Spaces!

I've been working through some of Spire, which is a math library for Scala. I originally discovered Spire when I was looking for a VectorSpace typeclass for Scala, so it's probably worthwhile to discuss that here. We all learned abot vector spaces in Linear Algebra, and probably thought ...

more ...

Learning Spire - Boolean Algebras are pretty cool

For a long time I've been a fan of the Scalaz library for Scala. Scalaz puts a Haskell into your Scala so you can Haskell while you Scala. More precisely, it provides a lot of useful features for expressing pure computations such as Applicative functors, Monads, Monoids, NonEmptyLists and ...

more ...

Don't use Actors for concurrency

Don't use actors for concurrency. Instead, use actors for state and use futures for concurrency.

A common practice I've seen in scala code is to use actors for concurrency. This is encouraged by Akka and a lot of writing about Scala, the documentation of which is highly actor-centric ...

more ...

Scala Patterns - HasXIsX

It's often desirable to build wrappers around existing objects, implementing the same interface. As an example one can wrap a java.sql.Connection object with a wrapper that measures timing data (how long the underlying java.sql.Connection spent in blocking calls). In fact, it's often useful to ...

more ...

Revenge Porn is the Price of a Free Society

Sorry to break into a non-programming rant. No python today.

Over the past week or so, there has been a small war within journalism. Charlotte Laws, a reporter, discovered that another reporter was writing about her daughter. Specifically this reporter (Hunter Moore) discovered, via dubious sources, compromising information about her ...

more ...


How to measure a changing conversion rate (with python code)

As the owner of the spamblog http://www.iwishiwastaller.com, I've run into the following problem. I'm selling some height enhancing pills full of organic free range snake oil. I've come up with several different calls to action:

  • Tired of finding pants that fit? Click here for ...
more ...