Simon Rentzke

Blue Blistering Barnacles


ABOVE THE CLOUDS from haleyrosenthal22 on 8tracks Radio.

Thabo Mbeki

My new Hobby

I used to think I had a few hobbies, mountain biking, rugby, vege gardening, coding, etc, etc, but then my wife and I bought a Queenslander workers cottage that needed a bit of attention.

queenslander renovation

I had zero interest in renovation. But this beast has taken over, it consumes every minute of my spare time, and has for the past 2 years.

We're nearing the end of the whole experience, and although feeling exhausted, we're really stoked that a lot of things have come together.

If anyone is interested here is our progress in pictures (apologies for the blogger blog :) Egbert Blog

Internet Speed in Australia

Internet in Australia

Quickly setup a ruby on rails 5 app

Setup your app directory

mkdir rails-5-test-app
cd rails-5-test-app

Specify your Ruby version

touch .ruby-version
echo 'ruby-2.2.2' > .ruby-version

Setup Gemfile with edge rails, rack and arel

touch Gemfile
printf "source ''\nruby '2.2.2'\n\n\ngem 'rails', github: 'rails/rails'\ngem 'arel', github: 'rails/arel'\ngem 'rack', github: 'rack/rack'" >> Gemfile

Use rails generators to create new app, and run server

bundle exec rails new . --dev --force
bundle exec rails s

Just give me the gist?

Machines are learning from us, and that's not always a good thing

I was recently playing with Google's new Photo application. An incredibly powerful little application, yet has an incredibly simple UI.

Google has gone through my entire library of 30k photos and classified them against their boat loads of data.

It's always nice to get a visual sense of what Machine Learning is doing, and after playing with the photo app it's quite clear how it classifies photos.

For example, if I search for 'festival', it finds photo's of all sorts of festivals, from Glastonbury:


To the Soccer World Cup:

South Africa world cup

To the Notting Hill Carnival:

Notting Hill Carnival

To a few incorrect ones like these:


You can understand why machine learning might classify these, and it's not really a problem. When we have more data, those results will continue to get better, they will almost definitely result in more accuracy going into the future.

So, what's the problem?

The problem is here; do a search for something like 'desert', I get this result:

namibia desert

Do a search for 'dessert' and I get this result:

namibia desert

So, through our own stupidity, we have trained the machines to think 'dessert' is the same as 'desert'.

A trivial example, but in a time when we are ramping up our dependence on machine learning, we need to remember that the machine is not always correct and it is for the same reason as the crowd is not always correct.

Safety nets

I've had a few close calls when switching between the Dev/Staging/Prod environments. These will save you from any nasty suprises!

iTerm Colour

Change the colour of the terminal window when you ssh into your staging or production environments. I use a simple bash script that switches when I ssh into certain hosts.

Banner/Ribbon on Staging/Development

I just used a fork of the Github ribbon

Show App Name and Environment when in console

We used this handy gem Marco-Polo

That looks like this in the console:

~/Sites/myapp$ rails c

Ruby "&& vs and" , "or vs ||"

tl;dr && and || have higher precendence

Difference between 'and' and '&&'

cat = 'meow'
dog = false

answer = cat && dog
=> false

=>  false

answer = cat and dog
=> false

=> 'meow'

Similarly with 'or' and '||'

cat = false
dog = 'bark'

answer = cat || dog
 => 'bark'

=>  'bark'

answer = cat or dog
=> 'bark'

=> false

I generally follow this style guide

Beats to think to

Like to concentrate whilst listening to hypnotic deep house tracks?

I've found the playlist for you.

I use it to focus whilst programming, check it out

Timezone value from offset #rails

Some apis just return a timezone offset from UTC. For example Facebook

Need to convert it to a timezone name?

Rails Active Support to the rescue, you just need to do something like this:

utc_offset_in_hours = 10
time_zone = ActiveSupport::TimeZone[utc_offset_in_hours].name
=> "Brisbane"