We all have weird obsessions that we deal with. Mine is random numbers. Don’t ask. Anyway, I’ve also been playing with some simulations and crypto work and needed a better source of entropy. So, after a bunch of research, I decided to buy an Entropy Key from Simtec Electronics in the UK. They were the only ones who […]
Categories: programming
Tagged: crypto, cryptography, entropy, mac, osx, randomness
- Published:
- 3 February 2011 – 6:32 pm
- Author:
- By petrilli
After several people I respect questioned my rush-to-judgement with Scala after my first exposure about a year ago, I’ve decided to dive back in and see if I can push through some initial squeamishness. I had picked up Programming in Scala by Martin Odersky, et. al. I had gotten around 50 pages into the book — out of 700+ — and run into something […]
Categories: programming
Tagged: book, clojure, functional, scala
- Published:
- 31 January 2011 – 8:26 pm
- Author:
- By petrilli
The degree to which I hate Eclipse can not be understated. For me, it’s a truly loathsome piece of “software”. I tried out Netbeans but I found it amazingly unstable and slow. So, since I had been using PyCharm with some happiness, and admiring RubyMine, I decided to pop for the “full enchilada” and drop the $249 for IntelliJ IDEA. Fortunately, […]
Categories: programming
Tagged: intellij, java, jetbrains, jvm, macosx, performance
- Published:
- 18 December 2010 – 10:09 am
- Author:
- By petrilli
As I’m writing this, it’s the first time I’ve had hotel-provided Internet access since I arrived on Thursday. The reason I mention this is that it is, by far, the only negative experience that I’ve had at the first Clojure Conj. It has been the best programming conference I’ve been to in a long time. The amount of […]
Categories: programming
Tagged: clojure, conference
- Published:
- 23 October 2010 – 11:16 pm
- Author:
- By petrilli
One of the great things about Redis is the richness of its data structure. I once heard something call it a “data structure in the cloud”, and that’s not completely inaccurate. Before delving deeper into using Redis with Python, I wanted to cover the core data types that are the foundation of this data-structured approach. If you’ve […]
Categories: programming
Tagged: hash, list, python, redis, set, string
- Published:
- 20 October 2010 – 9:19 am
- Author:
- By petrilli
Redis is a key-value store if you want to strip the idea down. A key-value store maps a key, usually a string, to some “blob” of data, and gives you the basic commands you need to manipulate them. There are a few things that I think make it interesting, however: Rich data structures Unlike some traditional key-value stores, like memcached, Redis […]
Categories: programming
Tagged: keyvalue, nosql, python, redis
- Published:
- 19 October 2010 – 3:11 pm
- Author:
- By petrilli
So, what does it mean to put together ZeroMQ and Protocol Buffers inside of Clojure? What exists below is really just a quick thrown-together combination of a few sample bits of code from projects. This isn’t intended as a lesson in ZeroMQ, Protocol Buffers, or Clojure, but if you’ve got even a little bit of experience with a Lisp-ish language, […]
Categories: programming
Tagged: clojure, messaging, protobuf, zeromq
- Published:
- 18 October 2010 – 9:18 pm
- Author:
- By petrilli
In a previous post, I talked about ZeroMQ, and how it handles a lot of the underlying pieces/parts for you when you’re writing a distributed application. One thing it doesn’t deal with is the encoding of application-level data onto the wire. It just moves byte-based messages around. For that, you’ll need some kind of encoding scheme. There are a couple […]
Categories: programming
Tagged: asn1, bson, csv, json, messagepak, protobuf, sexp, thrift, xdr, xml, yaml
- Published:
- 13 October 2010 – 1:21 pm
- Author:
- By petrilli
If Berkeley sockets didn’t exist, someone would have to invent them. If that someone then focused more on the abstraction of what you want to accomplish, rather than how, what you would get is ZeroMQ. If you then stole a character from Norwegian, you’d get ØMQ. The creators of ZeroMQ define it as: ØMQ looks like an […]
Categories: programming
Tagged: messaging, networking, zeromq, ØMQ
- Published:
- 12 October 2010 – 10:26 am
- Author:
- By petrilli
The ideas behind agile development methodologies are not new. They were more formally stated in The Agile Manifesto. The ideas behind more basic iterative development are even older, and have their own trade-offs. Both contain the idea that you can not know everything upfront. The agile methodology states this idea explicitely: Welcome changing requirements, even […]
Categories: programming
Tagged: agile, iterative, methodology, waterfall
- Published:
- 14 May 2010 – 10:06 am
- Author:
- By petrilli