Category: Programming

A simple, nerdy and meaningful programmer’s gift for your SO

A day recently passed that my wife and I decided we would take a few moments to celebrate our many years together. As part of that I wanted to do something that had been gnawing at the back of my mind for a while. For the life of our relationship we have communicated through some form of a chatting program...

Calling Go code from Python code

Inspired by the ruby version from @jondot With the release of Go 1.5 you can now call Go as a shared library in other languages. That little tidbit escaped me the first time I went through the release notes but after having the above ruby article come through my twitter stream I decided I should see if I could quickly...

Concurrent transactional behavior, thoughts on RAMP

I recently came across a blog post on distributed transactions here that was promoting a new type of isolation guarantee for transcational behavior that is designed specifically for concurrent transactions to avoid locking style behavior. The goal of this new design is to provide atomic visibility during a transaction. This behavior is of interest to me because it allows a...

Simple 2d box physics in Golang with Chipmunk

I’m currently in the middle of writing a toy game server and needed something to compute the state of some very simple objects. After searching a bit I found chipmunk which is a pure go implementation of chipmunk-physics which purports to be faster than the traditional box2d engine. The game server is an attempt by me to evaluate using something...

Move files and folders between git repos using patches

Some times you need to carve off code from one repo to another repo. As I build out a package I like to think about which parts might be useful elsewhere and sometimes I move them to their own repositories. This simplifies development and keeps a composable focus for my work. However, I do like preserving history and while I...

Machine Learning in Go

There are limited options for doing machine learning in the Go ecosystem. I’ve found a curated list here as a good starting point and it covers most of the main packages I’ve found through search. When looking for golang packages the best places to start are here and here. Currently, there are only two general purpose libraries (golearn and mlgo) and several algorithm specific ones. Of...

Load testing with locust.io

Testing code at scale is important and there are many tools out there to do so but recently I’ve fallen a little in love with a relatively new tool from locust.io. Locust.io is an easy to use Python load testing tool. It builds on the python requests library and zeromq to allow you to easily test millions of users hitting...

tailorSCAD

I’ve been working on a project to help people manage disparate SCAD generated objects and how they can interact. The idea behind this is a system that could ‘render’ to a specific format (STL, DXF, AMF) different SCAD sources so that you could assemble the STLS together or print them out. Essentially I think of this project as a compiler...

Weekend update Oct 13

So now that the push to finish slicing in Octoprint is over several other projects have piqued my interest and I’m excited to be working on them. The biggest of these is the Universal Filament Identification System, or UFIS. We had our first general Meeting about a week ago and so far things are starting to pick up. I’ve also...

Slice of Pi

Back when I released SlicerHub earlier this year open source slicers for 3D printing required a reasonably beefy machine in order to slice in a timely manner. At the time I thought the best approach to slicing with a low powered device was to offload that to a more powerful server. However, right after I released my source code Cura came...