Another batch of changes to the TurnKey website

These past few weeks I've been having too much fun offline with my development clone of the TurnKey website, ticking items off of my todo list. Today I finally got around to the complex, tedious, and unfortunately uninteresting task of updating the online version of the website. Ah, a necessary evil I suppose.

On to the changes...

Blog Tags: 

Important security notice: Your TurnKey system may no longer be receiving automatic security updates

I have some bad news and some good news. The bad news is that if your TurnKey installation is older than 2 weeks you may no longer be receiving security updates.

The good news is that you are reading this and there is a very easy fix. Either reboot your system, or log in and restart the cron service:

/etc/init.d/cron start

Until you start recron, security updates and other scheduler related services (e.g., daily backups) will not work.

Blog Tags: 

Python property gotcha

If you like using a single getter/setter function for your properties, watch out if using None for the default. If you do that you won't be able to set your property to None!

Example code and workaround...

Use the stash, Luke (git-stash)

I was in the middle of developing a new feature for the TurnKey Hub when I received a bug report that needed to be fixed.

What to do? Throw away my current changes? Checkout a clean branch? Of course not! Just stash my changes away, fix the bug, and get my changes back so I can continue development.

Blog Tags: 

TurnKey Domain management & Dynamic DNS

A while ago I was chatting with Liraz and said "wouldn't it be great if when launching a cloud server the Hub would perform some magic and assign the server a friendly name? I'm tired of remembering IP addresses, and logging into our DNS management console to setup records."

Then we thought, "lets make DNS easy, lets make it TurnKey". So we did...

No matter your use case, we got you covered:

Vim file exploration tips

Find filename patterns

Using Vim's built-in file explorer, it's possible to find specific filenames by pattern. For example:

# :Ex is short for :Explore

# search all subdirectories
:Ex */Makefile
:Ex */*.c

# search recursively
:Ex **/Makefile
:Ex **/*.c
:Ex **/*tpl*

This will take you straight to the first match. If you want the next match after that:


And back:

Blog Tags: 

Why I resist criticism (loss aversion and cognitive dissonance)

Have you ever felt like your Ego is getting in the way of being productive?

These last few days I've been feeling I might be overly resistant to criticism with regards to some new stuff I've been developing. So as an anti-dote I'm writing this blog post to remind myself why that might be.

In a nutshell, I think I tend to fall in love with my creations and let it bias my judgement.

Remember, the more effort you put into something the more attachment you feel towards it. It's a well known cognitive effect. You need to make sure you compensate for that and don't let your ego get the better of you.

Amazon FPS (flexible payments system) in a nutshell

A few weeks ago I looked into Amazon FPS (Flexible Payments Service), just to see what our options are for premium services like commercial support. You know, the stuff we can't give away even if we wanted to because their are real costs involved which we couldn't subsidize without going bankrupt.

Note that we're probably not going to be using FPS in the near term but I did research it exhaustively before I ruled it out (for now). While it's fresh in my mind here's the summary for the benefit of those who might be considering it as an option.

My code refactoring algorithm

You're looking at a block of Python code. It's not immediately obvious what it does. It's sort of a mess and you realize it needs to be refactored. But how? What mental algorithm do you use?

Announcing public API for TurnKey Hub

More power, control, flexibility and automation of cloud servers.

Alan Kay once said: "Simple things should be simple, complex things should be possible". We live by those words, and I think we've done a pretty good job up until now.

The Hub makes launching and managing instances on Amazon EC2 really simple, but the one thing that has been missing is a solution to make complex things possible - i.e., programmatic control.

Blog Tags: 


Subscribe to Blog