Chris McCormick - News http://www.mccormick.cx/news/ Chris McCormick - News en Copyright 2008- Chris McCormick 60 GMT chris@mccormick.cx www.mccormick.cx/news/ An Afternoon's Harvest and Planting entries/an-afternoon-s-harvest-and-planting http://www.mccormick.cx/news/entries/an-afternoon-s-harvest-and-planting IMAG0037.jpg IMAG0039.jpg IMAG0043.jpg IMAG0044.jpg IMAG0045.jpg IMAG0050.jpg IMAG0051.jpg IMAG0060.jpg IMAG0062.jpg IMAG0063.jpg IMAG0065.jpg

Found: two lettuces, one fennel plant.

Picked: one bucket of olives (now salting), one bucket lemons, several mandarins, four unripened avocados, one handful spring onion sprigs,

Planted: several lettuces, several broccoli plants.

Still haven't got those chickens.

]]>
/tags/all Thu, 16 May 2013 06:54 GMT
Saturday Afternoon Webcam Noodling entries/saturday-afternoon-webcam-noodling http://www.mccormick.cx/news/entries/saturday-afternoon-webcam-noodling Saturday afternoon webcam 
noodling

]]>
/tags/all Sat, 04 May 2013 09:53 GMT
Arrow of Time entries/arrow-of-time http://www.mccormick.cx/news/entries/arrow-of-time IMG_20130401_155340.jpg

http://en.wikipedia.org/wiki/Arrow_of_time

The Moving Finger writes; and, having writ,

Moves on: nor all thy Piety nor Wit

Shall lure it back to cancel half a Line,

Nor all thy Tears wash out a Word of it.

  • Omar Khayyám
]]>
/tags/all Sat, 13 Apr 2013 02:46 GMT
Script to Fetch BitBucket Tasks as Text entries/script-to-fetch-bitbucket-tasks-as-text http://www.mccormick.cx/news/entries/script-to-fetch-bitbucket-tasks-as-text sunset-newhouse.jpg

These days I am using Bitbucket for the git repository hosting and task management on my commercial projects. One thing I often need to do is fetch a list of current tasks so that I can update a client with what is on our current agenda for them, get feedback about priorities etc. Here's a short Python script I hacked together to do that based on some other public domain scripts I found out there:

import base64
import cookielib
import urllib2
import json

class API:
    api_url = 'http://api.bitbucket.org/1.0/'

    def __init__(self, username, password, proxy=None):
        encodedstring = base64.encodestring("%s:%s" % (username, password))[:-1]
        self._auth = "Basic %s" % encodedstring
        self._opener = self._create_opener(proxy)

    def _create_opener(self, proxy=None):
        cj = cookielib.LWPCookieJar()
        cookie_handler = urllib2.HTTPCookieProcessor(cj)
        if proxy:
            proxy_handler = urllib2.ProxyHandler(proxy)
            opener = urllib2.build_opener(cookie_handler, proxy_handler)
        else:
            opener = urllib2.build_opener(cookie_handler)
        return opener

    def get_issues(self, username, repository, arguments):
        query_url = self.api_url + 'repositories/%s/%s/issues/' % (username, repository)
        if arguments:
            query_url += "?" + "&".join(["=".join(a) for a in arguments])
        try:
            req = urllib2.Request(query_url, None, {"Authorization": self._auth})
            handler = self._opener.open(req)
        except urllib2.HTTPError, e:
            print e.headers
            raise e
        return json.load(handler)

if __name__ == "__main__":
    import sys
    if len(sys.argv) < 5:
        print "Usage: %s username password baseuser repository" % (sys.argv[0],)
    else:
        result = API(sys.argv[1], sys.argv[2]).get_issues(sys.argv[3], sys.argv[4], (("status", "new"), ("status", "open"), ("limit", "50")))
        for p in result["issues"]:
            print " *%s %s" % (p.has_key("responsible") and "**" or "", p["title"])
            #print p["content"]
            print

Run it to get a usage message.

I secretly wish that bzr had won the distributed version control wars because of its superior user interface, but these days I am resigned to using git because pretty much everybody I have to inter-operate with is using it. It's not that bad.

]]>
/tags/all Mon, 18 Mar 2013 02:02 GMT
Deviator ARG-like in Perth entries/deviator-arg-like-in-perth http://www.mccormick.cx/news/entries/deviator-arg-like-in-perth deviator.jpg

Deviator, the smartphone based ARG-like artwork by pvi collective that I worked on is showing at PICA in Perth, Western Australia next week after it's successful tour of Glasgow last year.

Apparently tickets are selling fast so get in there quick!

]]>
/tags/all Thu, 14 Mar 2013 09:28 GMT
Working From the Beach entries/working-from-the-beach http://www.mccormick.cx/news/entries/working-from-the-beach IMG_20130308_091255.jpg

-- Sent from my Android phone with K-9 Mail. Please excuse my brevity.

]]>
/tags/all Fri, 08 Mar 2013 02:59 GMT
Moving to Great Grandma's House entries/moving-to-great-grandma-s-house http://www.mccormick.cx/news/entries/moving-to-great-grandma-s-house IMG_20130302_101133.jpg IMG_20130302_103210.jpg IMG_20130302_103226.jpg IMG_20130302_103250.jpg IMG_20130302_103317.jpg IMG_20130302_103408.jpg IMG_20130302_103500.jpg IMG_20130302_103547.jpg IMG_20130302_103610.jpg IMG_20130302_103629.jpg IMG_20130302_103644.jpg IMG_20130302_103657.jpg IMG_20130302_103717.jpg IMG_20130302_103836.jpg IMG_20130302_104645.jpg IMG_20130302_105324.jpg IMG_20130302_105501.jpg

We're getting chickens.

]]>
/tags/all Mon, 04 Mar 2013 08:30 GMT
Isolated Browsing with Chrome entries/isolated-browsing-with-chrome http://www.mccormick.cx/news/entries/isolated-browsing-with-chrome Pac-Man Ghost

You can run a single-use instance or site specific browser using Chrome web browser with it's own self-contained user data on GNU/Linux like this:

chromium-browser --app=https://plus.google.com/ --user-data-dir=$HOME/.chromium-googleplus

This launches Chrome in an 'app' style window with just that particular web app visible (in this case, Google Plus) and no location bar, navigation buttons, etc. It isolates the browsing session from your other browsing preventing e.g. social networking sites from tracking you too effectively. If you are logged into Facebook in a regular browser for example, that company can tell every site you visit that contains a Facebook 'like' button or Facebook comments section. They are effectively gathering a comprehensive browsing history of every Facebook user who remains logged in. Do you want Facebook to know your browsing history?

It should be possible to do something very similar with Chrome for Windows and a batch file.

On Mac you can use Fluid if you want to pay for ease of use, or the same trick as above with Chrome by accessing the binary directly e.g. something like /Applications/Google Chrome.app/Contents/MacOS/Google Chrome --app=https://plus.google.com/ --user-data-dir=$HOME/.chrome-googleplus. Save that as a shell script for one-click access.

If you want to further anonymise your browsing (e.g. obscure your IP address for example) you might consider using software like Tor.

]]>
/tags/all Wed, 20 Feb 2013 08:06 GMT
Stylus Prediction entries/stylus-prediction http://www.mccormick.cx/news/entries/stylus-prediction Prediction: within 3 years the stylus will be the killer feature of Android tablets.

I'm talking about true stylus input via induction, not those capacitive styluses you can buy for the current crop of tablets.

HTC Flyer, Lenovo ThinkPad Tablet, Asus Eee Pad MeMo, and Samsung Galaxy Note are at the forefront of this wave of hybrid capacitive + inductive (e.g. finger + stylus input in separate channels) Android tablets.

Pretty soon we'll all be wondering how we managed on tablets that only had capacitive/finger input.

Note: the most cutting edge versions of Android support full stylus support. Maybe this will be one of the rare times Android beats iOS to a killer feature.

I've long anticipated a logographic / hand drawn social network or micro-blogging platform where status updates come in the form of sketches. Maybe the upcoming stylus ubiquity will bring it about?

]]>
/tags/all Sat, 26 Jan 2013 08:56 GMT
How to Open a Coconut entries/how-to-open-a-coconut http://www.mccormick.cx/news/entries/how-to-open-a-coconut coconut-times.jpg

This is a fairly solid instructable on how to open a coconut very easily.

]]>
/tags/all Thu, 17 Jan 2013 03:02 GMT
Xmas Billabong Times entries/xmas-billabong-times http://www.mccormick.cx/news/entries/xmas-billabong-times IMG_20121223_154310.jpg

-- Sent from my Android phone with K-9 Mail. Please excuse my brevity.

]]>
/tags/all Wed, 26 Dec 2012 07:26 GMT
Optimise HTML5 Apps For Mobile WebKit entries/optimise-html5-apps-for-mobile-webkit http://www.mccormick.cx/news/entries/optimise-html5-apps-for-mobile-webkit
  • Use zepto.js not jQuery.
  • Use -webkit-transition and -webkit-transform wherever possible.
  • Especially useful if you are developing with PhoneGap/Cordova on iPad and iPhone, or Android. Those webkit transforms saved my bacon on a recent iPad project. Here is the basic CSS you want to put on an element you want to optimise:

    -webkit-transition: -webkit-transform 0ms;
    -webkit-backface-visibility: hidden;
    

    Try replacing $(this).hide(); with a transform that moves the element off screen like this (might need overflow: hidden on your body tag):

    $(this).css("-webkit-transform", "translateX(1500px)");
    

    Then when you want to show the element again do this instead:

    $(this).css("-webkit-transform", "translateX(0px)");
    

    I also had great success replacing jQuery UI drag-and-drop code with something hand-rolled:

    $(this).css("-webkit-transform", "translateX(" + relativeX + "px) translateY(" + relativeY + "px)");
    

    Hope this helps you!

    ]]>
    /tags/all Mon, 10 Dec 2012 06:50 GMT
    Crqlr entries/crqlr http://www.mccormick.cx/news/entries/crqlr crqlr.png

    ]]>
    /tags/all Mon, 26 Nov 2012 05:20 GMT
    Irony At The Heart Of Capitalism entries/irony-at-the-heart-of-capitalism http://www.mccormick.cx/news/entries/irony-at-the-heart-of-capitalism Irony: the most valuable capitalist icon in the marketplace right now, Apple, got rich selling products containing millions of hours of socialist labour - Free and Open Source software.

    AAPL stock price graph

    This is the new normal and we are all very much an active part of it.

    ]]>
    /tags/all Tue, 20 Nov 2012 01:41 GMT
    Thank You, LMG entries/thank-you-lmg http://www.mccormick.cx/news/entries/thank-you-lmg IMG_20121118_112241.jpg

    The good folks at Let's Make Games have been supporting the Western Australian indie and commercial game making scene for a while now with generous amounts of their own time poured into reports, moral support, game jams, and numerous events each year, so I makerbotted up these little arcade cabinet award thingies for each of them and gave them out at their recent end-of-year party, which was also great, as always! Thanks again LMGPPL!

    ]]>
    /tags/all Mon, 19 Nov 2012 08:54 GMT
    My first Makerbot print entries/my-first-makerbot-print http://www.mccormick.cx/news/entries/my-first-makerbot-print IMG_20121115_181922.jpg

    My first makerbot print. Felt like the first time Mum and Dad brought home the Apple IIe. Everything feels different today than it was yesterday. Thanks so much to Mike for letting me (ab)use his makerbot!

    The lego man is from Thingiverse. The arcade machine is a hack of one on sketchup warehouse.

    ]]>
    /tags/all Fri, 16 Nov 2012 01:53 GMT
    Water Corporation entries/water-corporation- http://www.mccormick.cx/news/entries/water-corporation- IMG_20121106_135417.jpg

    ]]>
    /tags/all Thu, 08 Nov 2012 10:36 GMT
    Thomisidae? In South Western Australia entries/thomisidae-in-south-western-australia http://www.mccormick.cx/news/entries/thomisidae-in-south-western-australia IMG_20121027_152155.jpg IMG_20121027_152048.jpg

    From deep in forest territory last weekend.

    ]]>
    /tags/all Fri, 02 Nov 2012 01:17 GMT
    Infinity And Beyond entries/infinity-and-beyond http://www.mccormick.cx/news/entries/infinity-and-beyond I think about this video all the time:

    What an incredible moment. Humans defying the crushing immensity of the gravity well of our 4 billion year old world. Filmed onto an incredibly powerful turing machine that fits inside your pocket and allows you to communicate with almost anybody on the planet at any time and can perform millions of mathematical operations every second. Shot from the air in an invention that allows us to collectively travel great distances, and holy shit, while there - 8 kilometers up in the sky - you can still be connected to a pan-planetary network that lets you share the video before you even land.

    Wow.

    "The future is already here - it's just not very evenly distributed." --William Gibson

    None of those things would be possible without the anonymous people who have dedicated their lives to doing the druging hard work of science every single day. Those people are my heroes and I am lucky enough to call some of them my friends.

    Segue: my friend Dave came up with a great analogy for parenthood soon after the birth of his first daughter. Parents are the genetic equivalent of the boosters on a space rocket. The booster rockets get all used up, out of fuel, and then fall away into the ocean before the rocket breaches the atmosphere and enters space.

    As a parent you know this to be true. You can feel yourself burning up all of your resources to launch these little people into the world. You burn harder than you've ever burned before, age faster than you've aged before, and sleep less than you ever have before, because you're now a privileged link in the chain of humans going down through the generations. You feel with absolute certainty that you are expendable now because you've created something greater than yourself.

    I don't think I've ever been happier than in my role as a booster rocket. I feel so lucky.

    ]]>
    /tags/all Tue, 09 Oct 2012 12:09 GMT
    Epic Problemz entries/epic-problemz http://www.mccormick.cx/news/entries/epic-problemz epic-problemz.png

    ]]>
    /tags/all Sun, 09 Sep 2012 02:40 GMT
    Priority Queue entries/priority-queue http://www.mccormick.cx/news/entries/priority-queue scout-and-dad-photo-wall-at-harukis-house.png

    Photo by John Leonard.

    Warning: post contains serious navel gazing.

    Lying around in the dark trying to get my sleeping patterns back into Western Australia time from Western Scotland time has got me thinking a lot about focus and priorities.

    • I used to spend about twenty hours per week in my spare time doing Free-Libre and Open Source Software. I currently manage to allocate about zero hours per week to FLOSS.

    • Almost all of my time is now taken up with commercial work, social life, and family time. Although I would love to write more Free Software, I am ok with this balance for now because spending time with family and friends is definitely not the worst thing to do with your life.

    • I am officially orphaning the Infinite 8-Bit Platformer project. If you are a Free Software developer interested in taking over that project please contact me! There have been a ton of irregular users but the codebase badly needs some love. It's written in Python and Pygame and is GPL licensed.

    Infinite 8-Bit 
Platformer

    • I still get to contribute a bit to Free Software projects during the course of my commercial work - I just don't have the luxury of pioneering my other vanity projects any more - except maybe jsGameSoup which gets used by one of my clients.

    • This whole shift is in general probably a good thing as it is turning me into more of a team oriented and social programmer. It forces me to re-use other people's code and work on other people's ideas more which is a good and efficient way to roll.

    • I have a plan to recover some of my commercial time for specific use on Free Software again in future. This basically comes down to making a way to fund some of that time myself and still keep my family in sustenance. Hopefully that pans out!

    • The one thing I wish I had more time to do is make music. I guess if I wanted this bad enough I would just make it happen but right now, no.

    None of this is really a bad thing, just a fact of life. Friends and family are super-important to me right now, life is happy, and I still get to write a crapload of code for my wonderful clients and the very interesting projects they have created. :)

    ]]>
    /tags/all Wed, 08 Aug 2012 13:57 GMT
    Kilchurn Castle With Dad and Dirk entries/kilchurn-castle-with-dad-and-dirk http://www.mccormick.cx/news/entries/kilchurn-castle-with-dad-and-dirk dad-chris-kilchurn.png

    photo by Dirk McCormick

    ]]>
    /tags/all Sat, 04 Aug 2012 22:27 GMT
    Recent Work, and a Scotland 2012 Trip entries/recent-work-and-a-glasgow-2012-trip http://www.mccormick.cx/news/entries/recent-work-and-a-glasgow-2012-trip I don't talk about my professional work a lot on this blog so this is a bit of a departure. Lately I've been very lucky to be working on some really interesting projects with really great people. Here is something I've nearly finished (shipping to app stores as we speak!) with the wonderful PVI Collective and friends:

    how to play deviator movie from pvi collective on Vimeo.

    deviator is an immersive, real-world, outdoor game which invites players to temporarily transform their city into a playground. your mission is to seek out 15 audio instructions hidden in public spaces and play as many of the games as possible. as a deviator you can explore the local area, play a series of on-site games, interact with on-site performers, receive points and send text messages within this application.

    using gps and the camera on your phone, deviator allows you to select a game from an on-screen map, locate it and scan a strategically placed qr code to activate the game instructions. games are scored in terms of difficulty and range from activities such as "guerrilla pole dancing" and "ring-a-ring-a-roses", to "spin the bottle" and "twister". each game encourages the player to explore their public space in a new way.

    There were just so many great things about working on this project.

    • As an artwork I think it's pretty compelling.
    • The technology was a lot of fun:
      • Fully "vertically integrated" software stack - got to code up both the clients and server.
      • Cross-platform smartphone clients for Android OS and iOS using PhoneGap (HTML5, Ajax, etc.).
      • Python + Django back-end and API.
      • Multiplayer game-like server features, messaging, point scoring, real-time map with player locations.
      • QR codes!
    • PVI Collective are just really nice people and easy to work with (happily this seems to be a trend with my clients at the moment).
    • Got to ride my bike to work which is always invigorating.

    The first tour of the work is showing in a few weeks - the last week of July 2012 - at Surge Festival in Glasgow, Scotland. I'll be there as "tech guy", so if you are a fellow geek into Free Software, video games programming, Pure Data, makerbots, etc. and want to share a beer look me up!

    There will be other tours coming up around the world, and if you are interested in booking the tour at a festival in your city, please contact projects@pvicollective.com for more info.

    Bye!

    ]]>
    /tags/all Fri, 22 Jun 2012 06:41 GMT
    squeakyshoecore ep out now on ChordPunch! entries/squeakyshoecore-ep-on-chordpunch http://www.mccormick.cx/news/entries/squeakyshoecore-ep-on-chordpunch I'm excited to let you know that my new EP is out now on UK label ChordPunch!

    ChordPunch release cp0x07 - squeakyshoecore ep

    It's called squeakyshoecore EP and you can find it in most mp3 shops now. I would really appreciate it if you would give it a review, or tweet/facebook it, do a blog post, give it a listen, or buy it.

    Visit the squeakyshoecore page to like/share it on Facebook, Twitter, Google Plus

    Any help you can give me getting the word out would be very appreciated.

    Thank you so much!

    ]]>
    /tags/all Mon, 30 Apr 2012 04:14 GMT
    Nano snooze entries/nano-snooze http://www.mccormick.cx/news/entries/nano-snooze Nano Snooze

    ]]>
    /tags/all Fri, 13 Apr 2012 08:05 GMT
    Nano nano entries/nano-nano http://www.mccormick.cx/news/entries/nano-nano nanos.png

    ]]>
    /tags/all Wed, 21 Mar 2012 12:56 GMT
    Squeaky polygons entries/squeaky-polygons http://www.mccormick.cx/news/entries/squeaky-polygons 1.png

    ]]>
    /tags/all Fri, 09 Mar 2012 02:01 GMT
    Global Game Jam 2012 - postmortem entries/global-game-jam-2012-postmortem http://www.mccormick.cx/news/entries/global-game-jam-2012-postmortem Here is what I ended up with at the end of GGJ 2012. I've cleaned it up a bit, got it working under Internet Explorer (mostly) and put it online here.

    Screen shot of commit 31

    I ended up with more of a virtual world or virtual ecosystem than a video game. I ran out of time to put probably the most important thing into the game - game mechanics. Also no time for sound, the player has very little agency in the world, and there are no win or lose conditions.

    Overall it was a lot of fun to build though, and I got some pretty neat new technology for jsGameSoup out of it, namely the isometric camera library, and a lightweight vector math library.

    GGJ was also really fun just because of the social aspect of being crammed into a room with like minded people for 48 hours. Can't wait for next year!

    ]]>
    /tags/all Wed, 01 Feb 2012 14:17 GMT
    Global Game Jam 2012 - day 2 entries/global-game-jam-2012-day-2 http://www.mccormick.cx/news/entries/global-game-jam-2012-day-2 End of Saturday night, day two:

    The Cycle - day two

    Got some sleep. Lots of on the TODO list for today. About 7 hours left. :)

    ]]>
    /tags/all Sun, 29 Jan 2012 02:21 GMT
    Global Game Jam 2012 - day 1 entries/global-game-jam-2012-day-1 http://www.mccormick.cx/news/entries/global-game-jam-2012-day-1 The theme is "Ouroboros". Progress as at midnight day 1:

    The Cycle - title screen

    The Cycle - current gameplay

    I have a reasonably concrete idea of where I am going. Hopefully there will be time to iterate on my idea and "find the fun".

    ]]>
    /tags/all Sat, 28 Jan 2012 03:26 GMT
    Global Game Jam 2012 entries/global-game-jam-2012 http://www.mccormick.cx/news/entries/global-game-jam-2012
  • jsGameSoup super mega fun pack - CHECK
  • back to back NOFX records - CHECK
  • 48hr coffee supply - CHECK
  • I am ready for Global Game Jam, Perth 2012!

    Not going to globalgamejam? Check out Wai-con - it was a lot of fun last year and the costumes and atmosphere are enjoyable even if you are not that into anime.

    PS I'll probably throw on a little bit of Disasterpeace too. :)

    ]]>
    /tags/all Fri, 27 Jan 2012 08:17 GMT
    Coherent Noise in jsGameSoup entries/coherent-noise-in-jsgamesoup http://www.mccormick.cx/news/entries/coherent-noise-in-jsgamesoup Recently I added Sean McCullough's Javascript implementation of the Perlin noise algorithms to jsGameSoup. These Academy Award winning algorithms by Ken Perlin are fantastic for adding procedural content to your games.

    Simple noise generated RPG map

    The RPG map above with grass, water, road, sand, and tree tiles represented in the different colours, was produced with the simplex noise demo here. It can randomly generate a basically infinite number of unique RPG maps of basically infinite size. Check the jsGameSoup documentation for more details.

    ]]>
    /tags/all Tue, 24 Jan 2012 13:50 GMT
    Will Phobos Grunt Hit My Head? entries/will-phobos-grunt-hit-my-head- http://www.mccormick.cx/news/entries/will-phobos-grunt-hit-my-head- Worried an out-of-control Russian satellite may land upon your head?

    ]]>
    /tags/all Sun, 15 Jan 2012 15:27 GMT
    A* Path Finding for jsGameSoup entries/astar-path-finding-for-jsgamesoup http://www.mccormick.cx/news/entries/astar-path-finding-for-jsgamesoup A* Path finding algorithm demo in jsGameSoup

    I have included a modified version of Benjamin Hardin's 2009 A* implementation in jsGameSoup. This is a nice general way for entities in your game to find a path between two squares on a two dimensional board with some obstructed squares. Check the demo here and the documentation here.

    Have fun!

    ]]>
    /tags/all Sat, 14 Jan 2012 10:25 GMT
    D-Link DNS-320 ShareCenter NAS review entries/dlink-dns-320-sharecenter-nas-review http://www.mccormick.cx/news/entries/dlink-dns-320-sharecenter-nas-review This thing is great. I got it from VTech Industries for about $220 AUD. It is basically a mini GNU/Linux server with 2 giant hard drives in it. That price gets you a single 1TB drive and you can install your own drive in the other bay by removing the lid and dropping it in place. The unit, pictured below, is a bit taller and wider than three PC hard drives stacked together.

    DNS-320

    It comes with a reasonable web interface you can access over your LAN, but I installed the fun_plug hack on it by copying the files across the network and restarting the device - easy. That hack gets you SSH access, rsync, and a bunch of other Linuxy stuff.

    We are storing our media and backups on it and it is basically perfect for that use-case. I now once again have a cron-and-rsync based regular backup of all of my servers in the USA, hooray! I'm also routing all SSH traffic to our ADSL router through to it so I can access the files on the device from outside our network if neccessary.

    All in all I am very pleased with this purchase.

    ]]>
    /tags/all Tue, 03 Jan 2012 01:58 GMT
    We can do this entries/we-can-do-this http://www.mccormick.cx/news/entries/we-can-do-this fighty-dude.png

    inspiration here

    ]]>
    /tags/all Thu, 29 Dec 2011 00:38 GMT
    Herdsman lake entries/herdsman-lake http://www.mccormick.cx/news/entries/herdsman-lake IMG_20111211_182613.jpg IMG_20111211_182346.jpg IMG_20111211_182752.jpg

    A piece of the world I really enjoy.

    ]]>
    /tags/all Wed, 21 Dec 2011 07:44 GMT
    Local PHP Dev Server with Mongoose entries/local-php-dev-server-with-mongoose http://www.mccormick.cx/news/entries/local-php-dev-server-with-mongoose Sometimes you want to test a bit of PHP code on your local machine without installing a full LAMP stack. Mongoose is a web server that will let you do that.

    Under Ubuntu I first downloaded and installed the mongoose source code, then I installed the package php-cgi and here is the script called phpserve that I use to launch Mongoose in the top level directory of my PHP project:

    #!/bin/bash
    mongoose -e error.log -r `pwd` -i index.php -p 8000 -C .php -I /usr/bin/php-cgi
    

    After that you can browse to http://localhost:8000/ and you should see your site.

    Enjoy!

    ]]>
    /tags/all Sat, 17 Dec 2011 09:01 GMT
    McCormick Family Portrait Nov 2011 entries/mccormick-family-portrait-nov-2011 http://www.mccormick.cx/news/entries/mccormick-family-portrait-nov-2011 mccormick-family-portrait-tallulah-birthday.jpg

    Photo by Renee Glastonbury. Altered to obscure one nipple. :)

    ]]>
    /tags/all Wed, 07 Dec 2011 02:01 GMT
    Your Handwriting as a Web Font entries/your-handwriting-as-a-web-font http://www.mccormick.cx/news/entries/your-handwriting-as-a-web-font If you visit my website you will notice everything is in a scrawly hand-written font now. This is a digitized version of my own handwriting. Here is how I produced it:

    • Went to YourFonts and printed the templates twice.
    • Scanned both copies, used the best version of each letter, and tweaked some stuff in an image editor.
    • Uploaded the templates, paid $15, and downloaded the resulting TTF file.
    • Tested it out on my blog (see the cross-browser CSS font-face declaration below).
    • Loaded up the TTF in font forge and tweaked more stuff.

    To get it as a web useable font:

    • Use a program called ttf2eot to create a web font file that Internet Explorer likes.
    • Use the following CSS font-face declaration, which works on pretty much all mainstream browsers including Internet Explorer 6.

    Font-face declaration:

    @font-face {
        font-family: 'MyFont'; /* Use the real name of your actual font */
        src: url('MyFont.eot');
        src: url('MyFont.eot?#iefix') format('embedded-opentype'),
        url('MyFont.ttf') format('truetype');
    }
    

    You can do this with basically any TTF font, but watch out for the legal implications of using commercial fonts on the web. It's obviously fine to do it with a font of your own handwriting. There are probably lots of other free fonts you can do it with too, but read the licensing information first.

    Here's to more flexible web typography!

    ]]>
    /tags/all Fri, 02 Dec 2011 00:10 GMT
    Piwik Web Analytics Is Great entries/piwik-analytics-software http://www.mccormick.cx/news/entries/piwik-analytics-software Looking for a good open source Software Libre alternative to Google Analytics? I can't recommend Piwik highly enough.

    Piwik graph example

    • Setup was easy - PHP & MySQL with a simple web based installer.
    • Basic mechanism is similar to G.A. - add a code snippet to the bottom of your HTML code and you are done.
    • Reporting seems more comprehensive than G.A. - all kinds of interesting data, visitor trails, etc.
    • Take back ownership of your stats data!

    Have fun.

    ]]>
    /tags/all Thu, 01 Dec 2011 04:57 GMT
    I Am Back entries/i-am-back http://www.mccormick.cx/news/entries/i-am-back Calm down, Internet, I am back! My server had a small mishap.

    My new hosting provider is much more reliable than my old one. Hooray!

    My new one is called prgmr.com and they are great.

    I have also taken the opportunity to redesign my website. I hope you like it.

    ]]>
    /tags/all Sat, 26 Nov 2011 13:38 GMT
    Google Reader is Dead entries/google-reader-is-dead http://www.mccormick.cx/news/entries/google-reader-is-dead Linus Torvalds in a Speedo.jpg

    (image of Linus Torvalds in a speedo originally from xkcdsucks.blogspot.com)

    Google recently announced that they are discontinuing the social features of Google Reader and folding that functionality into Google+. So basically the thing that I liked most about Google Reader, not it's social network features but it's actual social network - the one made of the real people who inhabit my Google Reader friends list - is going to disappear this some time this week. Google Reader was by far my favorite and most active social network so this is pretty crummy from my perspective.

    Maybe Google don't realise the value in that network aside from the features of the software itself. Maybe they don't care because they just want to get people into Google+. Either way, we the users lose.

    Oh well, this is what you get when you use proprietary software. At some point the company that develops and controls that software will do something you don't like. There is basically nothing you can do about it.

    So long, Reader friends, it has been a genuine pleasure! (and for the OCD amongst you, I am very sorry for the hypersharing) :)

    ]]>
    /tags/all Sat, 22 Oct 2011 10:05 GMT
    WApp submission entries/wapp-submission http://www.mccormick.cx/news/entries/wapp-submission pocketloops-design.png

    Today I submitted this PocketLoops prototype app to the Univation WApp competition.

    This builds on my PdDroidParty work, which is the engine of the app (as well as the impending CanOfBeats re-release!).

    Fun mobile-music times. :)

    ]]>
    /tags/all Fri, 07 Oct 2011 03:56 GMT
    Sweet hacks entries/sweet-hacks http://www.mccormick.cx/news/entries/sweet-hacks IMG_20111005_132435.jpg

    ]]>
    /tags/all Wed, 05 Oct 2011 05:52 GMT
    Openness is the Only Usability Feature That Matters entries/openness-is-the-only-feature http://www.mccormick.cx/news/entries/openness-is-the-only-feature Android versus iOS use amongst Stackoverflow users

    ]]>
    /tags/all Wed, 21 Sep 2011 01:03 GMT
    Like Father Like Daughter entries/like-father-like-daughter http://www.mccormick.cx/news/entries/like-father-like-daughter IMG20110816_002.jpg IMG20110816_001.jpg IMG20110816_005.jpg

    ]]>
    /tags/all Sun, 04 Sep 2011 01:36 GMT
    PyConAU 2011 talk entries/pycon-2011-talk http://www.mccormick.cx/news/entries/pycon-2011-talk

    Here is the talk I gave in Sydney last weekend about Infinite 8-Bit Platformer.

    ]]>
    /tags/all Tue, 23 Aug 2011 11:44 GMT
    Infinite 8-Bit Platformer at PyConAU 2011 entries/pycon-2011 http://www.mccormick.cx/news/entries/pycon-2011 masthead6.png

    I'm in Sydney for PyConAU 2011 to give a talk about Infinite 8-Bit Platformer. Hopefully you've registered already because I'm very late in posting about this!

    I'll post a link to the video after it goes up.

    ]]>
    /tags/all Fri, 19 Aug 2011 04:12 GMT
    Squeakyshoecore live in Sydney entries/squeakyshoecore-live-in-sydney http://www.mccormick.cx/news/entries/squeakyshoecore-live-in-sydney squeakyshoecore-upright.png

    I'll be playing some squeakyshoecore algorithmic acid this Thursday afternoon at Hermann's Bar at the University of Sydney. I'm on at 5pm. See you there!

    ]]>
    /tags/all Tue, 16 Aug 2011 05:32 GMT