Skip to content

Mark Embling

All Posts

Python 2 or 3?

Way way back in 2009, I decided to look into Python. For one reason or another that didn't really go any further than playing about with Fabric but I've decided once again that it is a language I'd really like to get more involved in. However when looking to start a new project in Python, there is one very big question: Python 2 or 3? Which should I focus on and use?

Continue reading

Reverse-engineering the ColorSchemer Studio 2 File Format

Recently I bought the excellent ColorSchemer Studio 2 through the Mac App Store. Put simply, the app allows creation of colour palettes using a variety of tools including a colour wheel, various schemes, mixers and more. These palettes can also be saved to files to be opened again later, however these files are stored in a proprietary binary format that no other app (to my knowledge) can read.

Continue reading

2012 Hardware Line-up

This time last year I posted my hardware line-up for 2011. Now we're here again at the start of 2012 I thought I'd do the same thing again. In many respects, things are not very different. However there are some changes and additions which are worth mentioning.

Continue reading

DHCP and Dynamic DNS

My network at home up until recently has centred entirely around a cheap ADSL router from O2. This is fine, but I decided to move the DHCP duty over to my little home server. As part of this, I thought it would be nice for it to also handle DNS, and dynamically assign DNS names to the machines it learns about through DHCP requests.

Continue reading

Adventures with Message Brokers: MQTT and AMQP

Recently I've been talking on Twitter about adding websockets support to my energy monitoring web interface. However, before I went too far down this route, I thought it was best that I revisit the current set-up and re-engineer it a bit. Otherwise I could be queuing up pain for later.

Continue reading

JSON and Dates/Times

Lately I've noticed that JSON and dates/times do not go together well. JSON allows integers, fractional numbers, strings, arrays and so on, but no way to natively specify a point in time. It turns out this relatively minor-sounding point can cause a fair bit more pain than it probably should.

Continue reading