iPad and ST

Just finished my first meeting centered around my iPad. Sitting in the cafe typing up this post on the same device.

Firstly, typing. Really easy. I have this down flat on the table in landscape and I’m just using it exactly like my keyboard.


Imockups for iPad

Fucking annoying to get the hang of at first and lacking in a heap of features. Once you get over the learning curve it becomes insanely fun and the centerpiece of your table top conversations.

I will be using this in place of balsamiq.


penultimate

Seriously fantastic. I was packing my bag with my notepad (paper) when I thought there must be a better way. This app cost $4 and resulted in my walking out the house with only the iPad.

iPad in the table in portrait and you’re just jotting down notes and scribbling things as you chat.


telstra

It is fast. The reception is great and their customer service still sucks ass to the nth degree. I can’t recommend them. But i would suggest looking into them if you are having reception issues.


people are looking

I’m the only guy in this area of the cafe. And I am being noticed. Which is awesome.


$930~

Yes. Worth it I would do it again in a heartbeat.


frypapers

It just makes it easier to read his incredible writing. Also free :-)

Roadmap For squaretalent

Just noting down the things that I’m aiming for with squaretalent, heroku and all our clients works

  • Leave Paperclipped for a really lightweight ‘images’ extension, to be used with galleries and shop_products
  • Fix up the cache not clearing on Heroku
  • Introduce expanding text areas in a plug in
  • Tidy up shop_products and add more tests, update existing sites
  • Build the egsample.com brand so that clients can check out what they’re paying for
  • Poke mariovisic about making screencasts for using Radiant
  • Invest time into moving assets into the database
  • Investigate leaving the single deployment for each client model
  • Refocus the brand of st so that it is more about people than corporate

Radiant+Heroku+Paperclip³

Here at Square Talent we’ve moved to running all our Radiant sites off Heroku (we’re still using slicehost to run watchy), that’s how Dad did it, that’s how America does it, and it’s worked out pretty well so far.

I’d like to share my experience with this over the past 3+ months, and hopefully help others looking to go down this path.


Heroku Goes to Sleep

We’re not all running sites that get 200 hits a minute, let alone an hour, some won’t reach those results in a month. In fact their most recurrent visitor during the quiet period is going to be themselves, and they’re going to notice everything.

So when the app takes 6 seconds to spin up, they’re going to be on the phone complaining that it’s broken.

I’ve picked through the acceptable user agreement and not seen anything to say we shouldn’t do this.

Check out watchy and chuck it in a cron job.


Heroku is read only

This will trip out new players, the general method of using a /public/assets folder is out of the question, with write access only granted to a temp directory.

So a cms that needs to store its assets will need to use a remote service, for that we choose Amazon’s s3. Until recently we were running on EU servers, which was starting to cause headaches when paperclip moved to aws/s3.


Heroku runs on US EC2

Deal with it, come to terms with it, and don’t go against the grain. The first thing we did was run off of EU, we’re in Australia so this was going to be faster right? I could never tell so I didn’t really think about it.

Then amazon came out with Sinapore s3 and I instantly moved two clients over to it right before launch.

Mistaaaaaaaaake….

This prompted a week long investigation into the app hitting a 30 second time-out when they were uploading pictures. Then trying javascript hooks to reset the page, flash based uploads and cutting back on multiple styles.

All for a speed improvement which was completely unnoticeable as the user had to hit Amazon’s US servers just to make the request to Singapore.


Heroku will get expensive

They’re not around to provide a free ride, one of our options for avoiding app time-outs was to go to background workers. Firstly this would be a big pain in the ass as we’d need to rewrite a heap of scripts and interfaces, secondly it would cost either $37 a month, or require more code to call workers on and off as we required them.

Also your database is going to start costing you as you grow beyond 15meg, so make sure you’re storing data smartly.


Taps and Radiant is love

I wrote earlier about how taps can help you manage a local or alternative development database and a live version. It’s been working really well for a whole host of projects, and this has opened up an opportunity for us to move all data (stylesheets and javascripts) straight into the database.

This will have great ramifications in the delivery model we use for the entire business, more to come on that over the next few months.


Heroku and Radiant Caching

Radiant will override the cache headers sent by heroku, so if you’re making changes to a system on production you’ll be waiting for 5 minutes for the those changes to be reflected.

This gets really annoying really quickly, and we are working on a fix for this, hoping that hooking the cache headers after Heroku gets a chance will sort this out for us.


Other things we noticed

  • Singapore redirects your cname hosts to some strange string okay, it’s not doing that anymore.
  • Processing file properties (such as changing permissions is painfully slow on Singapore.
  • Again paperclip (well aws/s3) doesn’t play nice with Singapore and we needed to introduce a few monkey patches to get it working.

Heroku Database Support

Heroku has just introduced even better database support (through taps)

For those of us living and breathing Radiant* and trying to maintain applications across development and production environments life has been “totally fun and full of good times, yay”.

* Any cms that blurs storing content and design within the database

It comes down to, “I made changes here but I don’t want to wipe the clients changes there”, wtf do I do?


These updates allow us to move the developer specific information over to production without interfering with anything the client is working on, and with a command as simple as

heroku db:push --filter '^(layouts|snippets|forms)'

If you’re not already using Heroku to host your Radiant sites then I suggest you come and join us in 2010, it’s really nice here and the drinks are ice cold.


Oh and if you’re backing up your database to git (which I know you would be, right?) then the same thing goes for pulling in the important data

heroku db:pull --tables pages,users,shop_products

Monitor Heroku Apps (or just heartbeat)

A damn sight easier than a perl script and self maintain list of domains.

# MIT <2010> <Square Talent>
require 'rubygems'
require 'open-uri'
require 'pp'
require 'heroku'

heroku = Heroku::Client.new 'user@email.com', 'password'

heroku.list.each do |domain,account|
  domain = open "http://#{domain}.heroku.com"
  unless domain.status[0] == "200"
    raise "domain is frackin' down"
  end
end

above Just in case you didn’t have the 6 seconds to write it yourself.

# MIT <2010> <Square Talent>
#!/usr/bin/perl -w

open(INP, "/var/watchy/sites.txt") || die "no file";

open(STDOUT, ">/dev/null");

while ($curline = <INP>)
{
  system("curl -Is --compressed $curline");
}

close(STDOUT);
close(INP);

above reference: the script muz wrote us a few weeks back.

I’m only adding a licence so that there is absolutely no confusion.

Because I’m trying to be a non-douche I have to be a douche

Staff didn&#8217;t bat an eyelid when requesting &#8220;just two&#8221; or when I left stating &#8220;didn&#8217;t fit&#8221;

Staff didn’t bat an eyelid when requesting “just two” or when I left stating “didn’t fit”

Rails 3 Rack Passenger - Old News

I missed this one

set_env/SetEnv so you won’t need a wrapper for your ruby executable.

Found it necessary on apache when moving to 3 (1.8.7)

SetEnv GEM_HOME /opt/gems

After it couldn’t find rack.

Facebook Gone

Just a heads up to everyone who wonders, I deleted my Facebook.

You can always contact me on dk.hat.dirkkelly.dawt.com

No longer interested in my photos being all over the place and connections doesn’t make me smile.

Getting Fit

Probably need to back this up with some figures, but here goes.

  • ~ 176cm
  • ~ 90kg
  • - stomach
  • - arms
  • - tits edit
  • + face
  • + legs
  • + beard edit


Running

6km around Bibra Lake

  • Run 1 7m/km
  • Run 2 6m/km
  • Goal < 4m30s/km

Monday and Thursday


Gym

  • Kaylene and Mike
  • Fremantle Warehouse
  • All Female Classes
  • Excellent Scenery

Toning and Cardio classes

Tuesday and ?Wednesday/Friday?


Reasons

  • History of family heart issues
  • History of clot related death
  • Single life calls for a nicer body
  • I might be amazing, but that means nothing if I’m dead at 35
  • #twitfit



I’m wishing myself luck

Radiant GO .com

I’ve been doing a bit of work for our squares lately, with the most requested feature being a Radiant installation that’s ready to go.

With that I’m introducing www.radiantgo.com which is an off the shelf edge installation, packed full of delicious extensions and some initial data.

All you need to do is … well go to the site and see.

sidenote: the webpage was deployed to github pages, it’s restrictive and basic, but meant the process took all of 5 minutes. Eventually we’ll move to Heroku

Tags: squaretalent