Quantcast
Channel: Spootnik.org
Browsing all 35 articles
Browse latest View live

Puppet, extlookup, and yamlvar

When you dive in a complex project, even though you try to be as good as possible with documentation, sometime you just miss things. I’ve had a good opportunity to realize this just recently while...

View Article



OpenBSD pf: limits and extending metrics

When running pf firewalls and loadbalancers with relayd, some metrics are critical. One thing that might not be obvious when looking at pf is that the maximum number of sessions a firewall can handle...

View Article

Removing duplicate gems

Found myself typing this in a shell: gem list --local |\ egrep '.*(.*,.*)' |\ sed 's/^\([^ ]*\) ([^,]*,\(.*\))/\1\2/' |\ sed 's/,//g' |\ awk '{for (i = 2; i <=NF ;i++) {printf "sudo gem uninstall %s...

View Article

Some more thoughts on monitoring

Lately, monitoring has been a trending topic from the devops crowd. ripienaar and Jason Dixon amongst other have voiced what many are thinking. They’ve done a good job describing what’s wrong and what...

View Article

Introducing: TRON

I just uploaded a small library to github (and clojars), It’s a generalisation of what I use for recurrent tasks in my clojure programs, the fact that the recent pragprog article had a handrolled...

View Article


Clojure Wrappers

Functions in the wild Functional programming rears its head in the most unusual places in software design. Take the web stack interfaces (rack1, plack2, WSGI3), they all implement a very functional...

View Article

A wrapping macro

A bit of sugar The wrap-with function described in my last post1 is useful, but you still end-up having to write closures which might be confusing to people who just want to write simple wrappers....

View Article

A bit of protocol

Protocols and mixins I recently had to implement something in clojure I’ve done many times in ruby, which involved using protocols. I thought it would be a nice example of comparing class re-opening...

View Article


The death of the configuration file

Taking on a new platform design recently I thought it was interesting to see how things evolved in the past years and how we design and think about platform architecture. So what do we do ? As system...

View Article


Two posts, one engine

What does a good nerd do when feeling the urge to write on a topic ? Why, update his blogging tool, of course. I’ve actually loved static site generators since the days where I had one based on make...

View Article

Another year of Clojure

Clojure at paper.li I’ve been involved with clojure almost exclusively for a year as smallriver’s lead architect, working on the paper.li product and wanted to share my experience of clojure in the...

View Article

Image may be NSFW.
Clik here to view.

A Leiningen plugin for Jenkins

I use jenkins extensively to test apps and clojure is my go-to language for plenty of use cases now. leiningen is a very nice build tool that lets you get up and running very quickly, even for java...

View Article

Firehose storage at Paper.li

I was very happy to give a talk on the experience we had with cassandra over at paper.li for the first Paris-Cassandra meetup (if you’re interested, go follow @pariscassa). While not diving too deep, I...

View Article


Weekend project: Ghetto RPC with redis, ruby and clojure

There’s a fair amount of things that are pretty much set on current architectures. Configuration management is handled by chef, puppet (or pallet, for the brave). Monitoring and graphing is getter...

View Article

Nice looking JQuery with Clojurescript

I did a bit of frontend work for internal tools recently and chose to go with clojurescript, for obvious reasons. Like clojure, clojurescript supports macros which let you express common lengthy...

View Article


Map & Territory: A story of visibility

Many thanks to the #devops crew for hosting devops days Paris ! I loved the diversity of the talks, the ignite format is really interesting. What struck me most is how devops is now reaching its...

View Article

Using Riemann to monitor python apps

Another quick blog post today to show-case usage of riemann for in-app reporting. This small blurb will push out a metric for each wrap route with the metric name you provide. When handlers raise...

View Article


Poor man's pattern matching in clojure

A quick tip which helped me out in a few situations. I’d be inclined to point people to core.match for any matching needs, but the fact that it doesn’t play well with clojure’s ahead-of-time (AOT)...

View Article

Image may be NSFW.
Clik here to view.

Neat Trick: using Puppet as your internal CA

It’s a shame that so many organisations rely on HTTP basic-auth and self-signed certs to secure access to internal tools. Sure enough, it’s quick and easy to deploy, but you get stuck in a world...

View Article

In defense of immutability

I thought I’d whip together a short blog post as a reaction to Mark Burgess’ (@markburgess_osl) keynote at the Cloudstack Collaboration Conference. I thoroughly enjoyed the keynote but was a bit taken...

View Article
Browsing all 35 articles
Browse latest View live




Latest Images