Ataraxia Consulting

Peace of mind for consulting.

Binary addon design

When writing your application in Node you may need to communicate with an external library or device that may be impractical or impossible to do from pure JavaScript. It may be that the overhead added from ffi is also too much for your application. Or -- the least likely scenario -- you have demonstrable proof that your compiler can generate a faster version of your algorithm than the V8 JIT can (while this might be easy to confirm on the micro case, it's quite unlikely to be true for everyone given the varying CPUs and compiler combinations in use). If you find yourself in one of these rare cases, it is necessary to write a binary addon.

You're going to have to rewrite it anyway

Node v1.0 is approaching, and v0.12 is imminent (as far as that goes for FOSS projects). As we work towards getting v0.12 out the door, there have been a lot of changes happening for node's primary dependency v8. Ben is working on moving us to the 3.20 branch, follow his progress here.

Limit access to only Google Maps using Squid

Recently I needed a small kiosk for some truck drivers to easily use google maps to verify their routes. But I wanted to make sure that's all they were using the kiosk for. I had considered writing my own google maps portal, and I may still yet, but for now I implemented the limitation as an acl in squid.

Query specific DNS server in nodejs with native-dns

The DNS options available to node.js are a little slim. They only provide a wrapper to c-ares to the point of doing the simplest of record type lookups. There's not a useful or more granular interface for customizing your queries than to modify your platform's equivalent of /etc/resolv.conf.

Giganews VyprVpn on Linux with IPSEC and L2TP

I'm not a fan of PPTP, but unfortunately that's the only listed configuration option for giganews' VpyVpn service (http://www.giganews.com/vyprvpn/setup/linux/pptp.html). So the following are a few configuration files you can use to connect to vyprvpn using ipsec and l2tp. I tested with Ubuntu 10.04, OpenSWAN, and xl2tpd.