GeistHaus
log in · sign up

https://blog.rabidgremlin.com/index.xml

rss
100 posts
Polling state
Status active
Last polled May 19, 2026 00:41 UTC
Next poll May 20, 2026 02:27 UTC
Poll interval 86400s
ETag W/"dfd0cf70a95d1daeb41b8797fcd7a365"
Last-Modified Wed, 11 Mar 2026 20:26:16 GMT

Posts

Minimal devcontainer with Codex for messing around with AI stuff
This is my minimal devcontainer for playing around with AI stuff, using Codex. It includes Python, uv, Node, gh and the Codex CLI. Running in a devcontainer gives me a clean environment to mess with and further sandboxes the coding agent. To use create a .devcontainer directory in your project and add the following devcontainer.json file: { "name": "Minimal Codex And Dev Container", "image": "mcr.microsoft.com/devcontainers/base:trixie", "features": { "ghcr.io/devcontainers/features/github-cli:1": {}, "ghcr.io/devcontainers/features/node:1": {}, "ghcr.
https://blog.rabidgremlin.com/2026/03/11/minimal-devcontainer-with-codex-for-messing-around-with-ai-stuff/
Using Docker to run Manim in Jupyter notebooks
If you want to develop Manim animations easily the a Jupyter notebook makes as great working environment. However it can be fiddly to get set up. Luckily there is a pre-built Docker image that can get you up and running with two simple commands: cd <your working directory> docker run --rm -it -p 8888:8888 -v "%cd%:/manim" manimcommunity/manim jupyter lab --ip=0.0.0.0 In the console you will then see a URL looking something like http://127.
https://blog.rabidgremlin.com/2021/08/27/using-docker-to-run-manim-in-jupyter-notebooks/
Using Docker to run Jupyter notebooks
If you are messing with data then, you can’t beat a Jupyter notebook as a working environment. Not only are they super easy to use but they are effective ways of sharing your workings and findings. Even better, the Jupyter project have a created a bunch of Docker containers that contain all the tooling you need which, makes getting up and running as simple as running a two simple commands:
https://blog.rabidgremlin.com/2020/02/25/using-docker-to-run-jupyter-notebooks/
Right-sizing User Stories
I was asked by a customer to give a talk about right-sizing user stories. Below is the summary I gave them. This is by no means an original bit of thinking but ideas pulled from a number of sources (1, 2), however it made a nice little summary so I thought I’d post it. Form A User Story typically takes the form of: As <type of user> I want <some goal> So that <some reason> So what is the right size ?
https://blog.rabidgremlin.com/2016/09/02/right-sizing-user-stories/
Docker: Cleaning up after yourself
I’ve been doing a lot of work with Docker of late mostly for creating easy dev and test environments. One of the problems you come across when doing this, is that you land up with all sorts of orphaned images and containers which chew up disk space and systems resources. The following commands will give you a clean slate. Stopping all running containers, removing them and deleting any images. docker stop $(docker ps -a -q) docker rm $(docker ps -a -q) docker rmi $(docker images -q) Obviously take care when running these commands, you don’t want to nuke something important :)
https://blog.rabidgremlin.com/2016/08/10/docker-cleaning-up-after-yourself/
Google IO 2016 Highlights
Last month Google held it’s annual Google IO conference. Not really a surprise but it was chock full off conversation and AI based tech which is all the buzz of late. Three bits in particular stood out for me. The first is the demo of Allo, their new chat app. The app itself wasn’t particularly groundbreaking but the embedding of their new digital assistant tech (the Google assistant) is very interesting and it really shows where Google thinks things are going.
https://blog.rabidgremlin.com/2016/07/01/google-io-2016-highlights/
Creating a 2D game using Unity
After much delay I’ve finally started recording a series of videos on creating a 2D game using Unity. Here are the first two videos. If you want to play the game then check out the Run Bunny, Run! website Watch all the videos in the series here
https://blog.rabidgremlin.com/2015/12/09/creating-a-2d-game-using-unity/
Lego Mindstorms Colour Sorting Machine
Built this with the kids last weekend, using the Lego Mindstorms EV3 set they bought be for my birthday. It was the first project we have built without a set of instructions.
https://blog.rabidgremlin.com/2015/11/23/lego-mindstorms-colour-sorting-machine/
How to create a private key for signing Android apps
To create a private key to sign your Android apps with, you need to run the keytool command (installed when you install a Java development kit) as follows. keytool -genkey -v -keystore myandroid.keystore -alias myandroidkey -keyalg RSA -keysize 2048 -validity 10000 -dname "O=Acme Ltd" Replace Acme Ltd with your company name. When the tool runs it will prompt you for a password and then generate a file called myandroid.keystore. You will need this file, your password and the key’s alias (myandroidkey in this example) to sign your app.
https://blog.rabidgremlin.com/2015/11/06/how-to-create-a-private-key-for-signing-android-apps/
Writing a game using PICO-8 – Part 2
Finally got over a cold so I could record part 2 of my tutorial :)   You can play the game here on the PICO-8 website
https://blog.rabidgremlin.com/2015/09/22/writing-a-game-using-pico-8--part-2/
Writing a game using PICO-8 – Part 1
My first attempt at YouTube video/tutorial thing. Gonna try to get one of these done a week…
https://blog.rabidgremlin.com/2015/09/10/writing-a-game-using-pico-8-part-1/
Another interview
Got myself on the radio again last week talking about “scrubbing yourself from the Internet”. Here is the audio clip: And here is a link to Daily Mail article about the Oblivion tool
https://blog.rabidgremlin.com/2015/08/13/another-interview/
Simple script to monitor Postfix
This script uses qshape to print out the details of deferred emails in Postfix. Useful when monitoring delivery issues. #!/bin/sh while: do sudoqshapedeferred sleep30 done
https://blog.rabidgremlin.com/2015/05/04/simple-script-to-monitor-postfix/
Procedural content generation: Creating a universe
23114, 584, 46931, these three numbers were used to create the entire universe for Elite. Released in 1984, Elite featured cutting edge 3D graphics (with hidden line removal no less) and a rich universe of 2048 planetary systems, spread across 8 galaxies, each with a unique name, offbeat description, technology level, government type and even an economy. It was an instant hit and it set the standard for space combat and trading simulators for years to come.
https://blog.rabidgremlin.com/2015/01/14/procedural-content-generation-creating-a-universe/
Tutorial: Creating your first Unity Android App [2015 Update]
This is a quick, step by step guide to creating a simple app for Android using Unity. This tutorial is for windows but other then the install instructions it should work for other platforms. By the end of this tutorial you will have created an app that displays a red spinning cube on a blue background running on your Android device.   Setup the Android SDK To create an Android app you need to install the Android SDK, which can be downloaded from here.
https://blog.rabidgremlin.com/2015/01/11/tutorial-creating-your-first-unity-android-app-2015-update/
Procedural content generation: L-Systems
After watching this fantastic interview with Sean Murray about No Man’s Sky I’ve been inspired to write a bit about procedural content generation. I’ve been tinkering with procedural content generation for years, using it for everything from creating games levels to generating sample data for testing and it is a fascinating subject. So what is procedural content generation? Wikipedia says “procedural generation is generating content algorithmically rather than manually… The term procedural refers to the process that computes a particular function”.
https://blog.rabidgremlin.com/2014/12/09/procedural-content-generation-l-systems/
Hacking Interview on Radio Hauraki
Last Friday I got to do live radio for the first time! Since I didn’t come across as a complete idiot I thought I’d share the clip with everyone. The subject was hacking and the clip was recorded during the breakfast show on Radio Hauraki. Unfortunately I miss-heard the question about the Whaleoil hack and landing up talking about the likely attack vector for The Fappening (the August 2014 celebrity photo leaks)… the perils of live radio I guess :)
https://blog.rabidgremlin.com/2014/09/09/hacking-interview-on-radio-hauraki/
Random pic: Morning Moon
It looked a lot bigger to the naked eye…
https://blog.rabidgremlin.com/2014/07/16/random-pic-morning-moon/
Project Frankensapien – Part 1
Years ago I was given a shiny, silver Robosapien. It’s an awesome humanoid robot controlled and programmed with an infrared remote. Unfortunately with 90+ commands and functions the remote is pretty cumbersome. So I always intended to see if I could put something together to control him from a PC, but I never got around to doing it. My 5 year old is in his first year of school and since he now has some basic reading skills I thought I’d try to introduce him to programming.
https://blog.rabidgremlin.com/2014/07/16/project-frankensapien-part-1/
Tech Tip: Start a simple web server
Python ships with a handy little web server that will serve up the files in the folder from which it is run. This is really handy for development. Run the following command to start the server: python -m SimpleHTTPServer Or if you are using Python 3, run: python -m http.server
https://blog.rabidgremlin.com/2014/07/07/tech-tip-start-a-simple-web-server/
Z is for Zentraedi
In the mid 80’s my tweenish self was introduced to something that blew my mind and that was Robotech. I (and most of the western world) had not encountered Japanese animation or Anime before. With it’s complex story arc, the alien Zentraedi intent on wiping out humanity, cool transforming robots and awesome mass battles, I was hooked. When the story started to span generations of characters and the even bigger threat of the Invid was revealed, young me was stunned.
https://blog.rabidgremlin.com/2014/04/30/z-is-for-zentraedi/
Y is for YouTube facts and figures
YouTube has changed the way we watch and shared videos so I thought that I would collate some fun facts about YouTube for this post. First off YouTube was created by 3 PayPal employees: Chad Hurley, Steve Chen, and Jawed Karim. The site was officially launched in 2005 and this was the first video ever uploaded to it (a video of Jawed at the zoo): A year later YouTube was purchased by Google for $1.
https://blog.rabidgremlin.com/2014/04/30/y-is-for-youtube-facts-and-figures/
X is for lots of things
It turns out X is for quite a lot of things: In mathematics, ‘x’ is commonly used as the name for an independent variable or unknown value. ‘x’ is used to signify the multiplication operation when a more appropriate glyph is unavailable. As a result of its use in algebra, X is often used to represent unknowns in other circumstances (e.g. Malcolm X). In the Cartesian coordinate system x is used to refer to the horizontal axis.
https://blog.rabidgremlin.com/2014/04/29/x-is-for-lots-of-things/
W is for White Rabbit
I’m late, I’m late , I’m Late… with this blog post :(
https://blog.rabidgremlin.com/2014/04/29/w-is-for-white-rabbit/
V is for Velocity
Physics based games, especially on mobile devices have become de rigueur. It’s pretty amazing what can be done with some simply math. I recently came across this game mechanics site which provides short examples of different game mechanics, algorithms and effects. Many of these are of course physics based and involve velocity. Some of my favorites: Basic spaceship motion Lunar lander Artillery Flocking Yay for maths and physics!
https://blog.rabidgremlin.com/2014/04/29/v-is-for-velocity/
U is for Unity
If you want to make games, Unity is a tool you should look at. It allows you to easily create games (both 3D and 2D) for a variety of platforms including Windows, Linux, Mac , Web , iOS, Android and Windows Phone. It also has a free version and if you ever need the pro version it is reasonable cheap to buy or subscribe to. Check out some of the features in the upcoming version:
https://blog.rabidgremlin.com/2014/04/29/u-is-for-unity/
T is for Taxes (and delayed blog posts)
Been working on my taxes so have been a bit slack in posting… However I thought that I would share this graph which shows where all your tax money was planned to go for 2013⁄2014 (if you are New Zealander that is): Source http://www.interest.co.nz/news/64515/budget-2013-summary-all-spending-plans Pretty much what you’d expect, Social Welfare: 27%, Health: 17.7%, Education: 15.3% which is the price you “pay” for free education, healthcare and a good social welfare program.
https://blog.rabidgremlin.com/2014/04/27/t-is-for-taxes-and-delayed-blog-posts/
S is for Strange conversations
I use public transport religiously. It means we are a one car family which saves a bucket of money and helps out the environment to boot. Even better I get to walk about 40 minutes a day which helps with the waistline! But there is an added “bonus” and that is: strange conversations with strangers. Over the years I have had some seriously good ones, point in case, two days ago I was walking alongside an elderly polynesian man…
https://blog.rabidgremlin.com/2014/04/25/s-is-for-strange-conversations/
R is for Role Playing Games
Traylix waited, he wasn’t nervous but he was pretty sure that something was about to go wrong; it always did. He glanced over to the prince and the two marines standing further down the alley. They all wore long, shapeless cloaks with the hoods up, as did he. Hopefully this subterfuge would deprive any would-be assassins an obvious target. From up the street Traylix heard the sound of a horse and cart and out of the darkness came two more cloaked figures, Datura and Winnowen.
https://blog.rabidgremlin.com/2014/04/22/r-is-for-role-playing-games/
Q is for ???
Well, I was going to blog about Quaternions and how Unity really makes it easy to do 3D stuff without you having to have a deep understanding of math but I ran out of time! So instead here are a list of things starting with Q that I had no idea existed… Quassin Quassin is a white bitter, crystalline substance extracted from the quassia tree. It is one of the most bitter substances found in nature with a bitter threshold of 0.
https://blog.rabidgremlin.com/2014/04/22/q-is-for-/
P is for Productivity in New Zealand
It costs 40c to produce every dollar in New Zealand which, is pretty astounding figure. A report released this week by the New Zealand Productivity Commission tries to determine why New Zealand’s GDP per capita is generating over 20% below the OECD average when (based on it’s broad policy settings) it should be generating 20% above the OECD average. It identifies a number of causes: The country has good resources – investment in physical capital and average years of schooling are broadly consistent with other countries.
https://blog.rabidgremlin.com/2014/04/19/p-is-for-productivity-in-new-zealand/
O is for Open Source I use (and create)
Today I thought I’d go through some of the Open Source software that I regularly use. The Open Source movement is a interesting one, basically it calls for the source code of software to be released alongside the software. This allows anyone who can (or needs to) to modify the software and pass these changes back to the community thus benefiting all. Traditionally Open Source products have been less polished then commercial software but these days, many rival or even better their commercial counterparts and Open Source software powers much of the Internet and even the mobile devices that you use everyday.
https://blog.rabidgremlin.com/2014/04/17/o-is-for-open-source-i-use-and-create/
N is for Ni
Busy day, so no deep and meaningful post today :( Instead I give you a clip from one of the funniest movies ever:
https://blog.rabidgremlin.com/2014/04/16/n-is-for-ni/
M is for Monkey – the evilest testing tool around
I do a heaps of Android development and whilst it appears straightforward there are quite a lot of subtleties, particularly when dealing with threads and UI updates, that generate all sorts of app crashes. Unfortunately these race conditions are often very hard to reproduce. Thankfully (and evilly) we have the monkey testing tool. Set it loose and it frantically taps and swipes away, switching activities, causing mayhem and inevitably crashing your app.
https://blog.rabidgremlin.com/2014/04/15/m-is-for-monkey--the-evilest-testing-tool-around/
L is for Logo and wee little turtles
Logo was one of first programming languages (after BASIC) that I really learned in depth. The most famous aspect of Logo is its turtle graphics which simulates a tiny turtle to which you can give commands such as forward, backward, left turn and right turn. As the turtle moves on the screen it draws a line behind it. With its graphical feedback, turtle graphics is an ideal way to introduce people to programming.
https://blog.rabidgremlin.com/2014/04/14/l-is-logo-and-wee-little-turtles/
K is for Kinect Fusion & 3D selfies
I’d thought I’d give the Kinect Fusion demos a try. Kinect Fusion allows you to take 3D scans of things by waving your Kinect around. It’s designed to work with the desktop/Windows version of the Kinect but I’d thought I’d give it a go with the Kinect from my old XBox 360. Turns out it works pretty well. The resolution is pretty low but if you were using one of the new Kinect v2s things would be a lot cripser.
https://blog.rabidgremlin.com/2014/04/13/k-is-for-kinect-fusion--3d-selfies/
J is for Jasper – control anything with your voice
So I bought a Raspberry Pi a couple of months ago and I’ve been having all sorts of fun trying out different things. I’ve created a wifi packet sniffer to track mobile devices and turned it into an arcade game machine, all sorts of interesting things. Jasper is going to be my next weekend project. It basically lets you build your own J.A.R.V.I.S (from the IronMan movies). Here is a video of it in action:
https://blog.rabidgremlin.com/2014/04/11/j-is-for-jasper--control-anything-with-your-voice/
I is for Insel – an fantasy setting I’m working on
Insel is a fantasy setting I’ve been working on for a role playing game. Imagine a island covered by a crowded, renaissance city surrounded by a vast ocean. In all of history no one who has left the island has ever come back. Metal is plentiful and intricate “clockwork ” machines power the society. Food and “wood” is grown from fungus and giant mushrooms which are farmed in the many abandoned mine tunnels under the city.
https://blog.rabidgremlin.com/2014/04/10/i-is-for-insel--an-fantasy-setting-im-working-on/
H is for Hosted network
Windows 7 and above has a neat feature called hosted networking. This allows you to turn your laptop into a wireless access point. This is very useful if you want to share your laptop’s Internet connection with other wireless devices or (the reason I use it) for testing. To set up a network open a command prompt and run the following commands netsh wlan set hostednetwork mode=allow ssid=”GremlinsTestAP” key=”Pa$$w0rd” netsh wlan start hostednetwork This will create a wireless access point named GremlinsTestAP with a password of Pa$$w0rd
https://blog.rabidgremlin.com/2014/04/09/h-is-for-hosted-network/
G is for Games I own
The last decade has seen a renaissance in board gaming. The Internet and crowd funding platforms such as Kickstarter have made it particularly easy to publish a game and 1000s of new games are released each year. For this post I thought I’d go over my collection and talk about the games I own. Battlestar Galactica This game is based on the recent TV series. The players are the humans trying to escape the Cylons.
https://blog.rabidgremlin.com/2014/04/08/g-is-for-games-i-own/
F is for Feature Driven Development
Feature Driven Development (FDD) is my favorite Agile methodology. I have been using it for a number of years and it works really, really well. Here is a quick intro to FDD that I wrote a while back. An introduction to Feature Driven Development Feature Driven Development (FDD) is an Agile software development methodology. It provides a simple 5 step process that focuses on the delivery of quality software aligned with business needs.
https://blog.rabidgremlin.com/2014/04/07/f-is-for-feature-driven-development/
E is for Elastic band contraption
My eldest (currently 5) is big on “making” inventions” and experiments. Last weekend he desperately wanted to invent something with engines. Not having any engines handy I figured we could perhaps do something with elastic bands. Googling didn’t turn up anything too exciting but I did come across a picture of something from my childhood: a cotton reel with and elastic band threaded through the middle of the reel and held in place with a matchstick which you then wind to make a wind up toy:
https://blog.rabidgremlin.com/2014/04/05/e-is-for-elastic-band-contraption/
D is for DNS
Alright, I thought I’d do a quick blog on the DNS or the Domain Name Service? Why? Well because without it the Internet as we know it would not work and subversion of the DNS system is how Turkey recently blocked access to Twitter, Facebook and YouTube so it’s very topical! First off you need to know that every computer connected to the Internet has a unique numeric address, kinda like a phone number.
https://blog.rabidgremlin.com/2014/04/04/d-is-for-dns/
C is for Code
I believe that everyone should be able to program a computer! Now I can see you all rolling your eyes but bear with me for a moment. We live in the Information Age, computers are everywhere and computer literacy is a skill everyone needs. Unfortunately most people stop short, learning to drive a computer but not really learning to use its full potential. Now don’t get me wrong, I’m not advocating that everyone become professional programmers.
https://blog.rabidgremlin.com/2014/04/03/c-is-for-code/
B is for Blender
I have tinkered with 3D graphics for years, using POV-Ray in the mid nineties and later Hash Animation:Master. However these tools were pretty limited or not widely supported and commercial tools costed (and still do) a small fortune which put them out of reach of hobbyists. So I was very excited when Blender was released in 2002 . With its commercial features and it being free (open source) the scene was set for great things to happen.
https://blog.rabidgremlin.com/2014/04/02/b-is-for-blender/
A is for Apathy
I started this blog way back in 2001, the 2nd of October 2001 to be exact (according to the Way Back Machine) However in the last year or so I’ve been very slack at posting anything (other then my automated tweet logs). This is a shame because my blog does get a fair bit of traffic (about 5000 unique visitors a month) and contains popular posts such as my Creating your first Unity Android App post which averages about 150 views a day.
https://blog.rabidgremlin.com/2014/04/01/a-is-for-apathy/
Tech Tip: Change AngularJS template delimiters
I have recently been doing some development with the Bottle Python web app framework. Unfortunately it’s simple template system uses the same template delimiters as Angular (“{{” and “}}”). Worse you cannot change these delimiters in Bottle. Fortunately you can change them in Angular using the following: var myApp = angular.module('talkpoint', [], function($interpolateProvider) { // set custom delimiters for angular templates $interpolateProvider.startSymbol('[['); $interpolateProvider.endSymbol(']]'); }); Which given a Controller looking like this:
https://blog.rabidgremlin.com/2014/02/27/tech-tip-change-angularjs-template-delimiters/
A is for Artemis
A few months ago, I had a group of friends over. Usually we just sit around and socialize, sometimes we play a board games or watch a movie but this time we did something different…. we played Artemis. So what is Artemis? Well its a multi-player Starship Bridge Simulator where each player is assigned a different station (played on a PC or iPad) of a Starship Bridge. For instance there are helm, weapons, sensor, comms and engineering stations.
https://blog.rabidgremlin.com/2013/08/24/a-is-for-artemis/
Word War III – Dev Diary – 05: The app meets real players
Oops it has been a while since I last posted but I have actually been working on the game! As I mentioned in at the end of my last post, the plan was to get the game working end to end. First off I created a number of new classes most extending FContainer. LetterButton for each of the letter buttons that the player can tap, Letter for each of the letters of the word, Keyboard to hold and manage the letter buttons and Word to manage the word.
https://blog.rabidgremlin.com/2012/12/31/word-war-iii-dev-diary-05-the-app-meets-real-players/
Word War III – Dev Diary – 04: Tween you and me
As this slightly over the top presentation shows adding motion, bounce and wiggle to your game elements can really make a game feel rich and alive:   Luckily this is easy to achieve with the GoKit tweening library that is included with Futile. The library allows you to easily change any property of an object over a specific period of time. For instance this bit of code: skyline.scaleY =0.1f; Go.
https://blog.rabidgremlin.com/2012/11/28/word-war-iii-dev-diary-04-tween-you-and-me/
Word War III – Dev Diary – 03: Some Structure
Next up is some “boring” housekeeping work on the code. Eventually the game will consist of four screens. If I keep up with my current approach of putting everything in a single script things will get pretty messy, pretty fast. Luckily there is a better way which is highlighted in the Futile videos and in the Banana Demo project . The idea is to subclass the FContainer for each screen and then add and remove these objects from the Futile stage.
https://blog.rabidgremlin.com/2012/11/19/word-war-iii-dev-diary-03-some-structure/
Word War III – Dev Diary – 02: Word Smithing
So I need to find some words, more importantly I need a list of words that gradually gets more and more difficult to guess. So what makes a word hard to guess? Doing some research on the web turns up a couple of interesting posts such as this one and this one. It turns out that short words are harder to guess, especially ones that have “non-obvious” letters. Thus words such as “jazz”, “jug”, “by” and “gym” are much harder to guess then words such as “deployments”, “historical” or “compartmentalised”.
https://blog.rabidgremlin.com/2012/11/13/word-war-iii-dev-diary-02-word-smithing/
Word War III – Dev Diary – 01: Getting started
So I’ve decided to knuckle down and build AND actually release a game. I read somewhere (probably Reddit) that publishing a development diary really helps on the motivation front. It sounds like a good idea so here we are :-) Some constraints First off to narrow my focus I have decided that: I will make a 2D game. My 3D modeling is OK but it takes a loooong time. My target is a mobile app.
https://blog.rabidgremlin.com/2012/11/10/word-war-iii-dev-diary-01-getting-started/
Did Microsoft just kill Flash? IE10 won’t run Flash unless your site is on a Microsoft whitelist!
Yeah you read that right. I just received an interesting email from Brightcove (the video delivery guys) about issues with their Flash based solution and Windows 8 running the new Internet Explorer 10. To quote: We wanted to make you aware of a development with Microsoft around Windows 8 that may affect your video content delivered through Brightcove Video Cloud. Background Microsoft is expected to release the next version of Windows, Windows 8, on October 26th.
https://blog.rabidgremlin.com/2012/10/11/did-microsoft-just-kill-flash-ie10-wont-run-flash-unless-your-site-is-on-a-microsoft-whitelist/
My Romo has arrived
My Romo smartphone robot turned up yesterday! Romo is the brain child of a couple of guys in Las Vegas and the result of a pretty sucessful Kickstarter project (the first I have ever contributed to). Romo is a simple tracked bot, about 15cm long, which charges via USB. What makes the Romo very cool, is the fact that it’s brains is your smartphone! The Romo connects via the headphones jack to your smartphone and it accepts commands via short bursts of sound, created by the apps you run on your phone.
https://blog.rabidgremlin.com/2012/03/30/my-romo-has-arrived/
Tutorial: Creating your first Unity Android App
This tutorial is out of date. See here for an updated tutorial covering the latest version of Unity. This is a quick, step by step guide to creating a simple spinning cube app for Android using Unity. This tutorial is for windows but other then the install instructions it should work for other platforms. By the end of this tutorial you will have created an app that displays a red spinning cube on a blue background on your Android device.
https://blog.rabidgremlin.com/2012/03/10/tutorial-creating-your-first-unity-android-app/
Building a modern web app, some learnings
I recently built a fairly rich web application from the ground up. Whilst I’ve being building web apps since the mid-nineties this little project had a different flavour to it and I thought I’d go over my learnings here. Firstly why was this project different: its a Facebook app and uses their JavaScript SDK. This means that 99% of the app runs client side with only a small bit of server side code.
https://blog.rabidgremlin.com/2012/01/09/building-a-modern-web-app-some-learnings/
Help Stop SOPA
Please help stop SOPA by completing this form! If you aren’t in the USA click on the “Not In US” option at the bottom of the form. SOPA is a new US law that is getting voted on in the next few days, it will fundamently affect the way the Internet works and it will therefore directly affect you! Want to know more about SOAP ? Checkout this infographic or this video
https://blog.rabidgremlin.com/2011/12/15/help-stop-sopa/
AnimfxNZ 2011 – day 3
[oops I totally forgot to post this sooner!] Day 3 of the conference was spent at Park Rd post productions for Weta’s digital day. This was awesome. The first part of the day was largely focused on Rise of the Planet of the Apes and the latter half on the new Adventures of Tintin movie. Chris White (VFX Supervisor) covered the huge amount of research and work that went into creating the digital apes for the movie.
https://blog.rabidgremlin.com/2011/12/02/animfxnz-2011--day-3/
AnimfxNZ 2011 – day 2
Just finished up Day 2 which was spent in the Games Master class. I took a ton of notes but I’ll just jot down some interesting points otherwise it will be a long long post :-) Patrick Hudson – covered launching new IP by walking through the development of “Orcs must die”. Interesting to me was the fact that marketing was 10% – 20% of development budget, the issues with getting the game on XBL (needing a publisher and some middleware performance issues).
https://blog.rabidgremlin.com/2011/11/16/animfxnz-2011--day-2/
AnimfxNZ 2011 – day 1
Just a quick post to cover my first day at Animfx. Apart from some AV glitches everything ran pretty smoothly and all the speakers were fantastic. The MC is hilarious but he didn’t really introduce himself so I have no idea who he is! The speakers that I saw today were: Lance Priebe – who gave a good account of Club Penguin and its history. Very interesting. Patrick Hudson – ex Ensemble Studios who talked about their move from big budget to smaller scale games.
https://blog.rabidgremlin.com/2011/11/15/animfxnz-2011--day-1/
The Food Bill
Yesterday I read Lance Wiggs’ post on making everyone in NZ part of the 1% which I believe is a fantastic idea. Of course to do this we need a government that works for the people and I’m not sure that it fully is… Point in case, this week NZ signed the ACTA (when instead it could have being announcing a bill such as Brazil’s Civil Rights Based Internet laws) and of course there is the new Food Bill.
https://blog.rabidgremlin.com/2011/10/06/the-food-bill/
(Un)happy Skynet day !
The Skynet Bill is passed. The system goes on-line September 1, 2011. Human rights are removed from the Internet. Skynet begins to accuse at a geometric rate. It becomes self-aware at 2:14 a.m. New Zealand time, September 29th. In a panic, they try to pull the plug… but it is too late the NZ government has sold it’s soul and the people to the lobby groups (Un)happy Skynet Day everyone!
https://blog.rabidgremlin.com/2011/09/01/unhappy-skynet-day-/
Response to my Auckland Train Signage rant
Well, I received a response from Auckland Transport about my Auckland Train Signage FAIL post. Unfortunately it wasn’t very helpful as they merely (and carefully) explained how the signs are going to work and why they removed the scrolling list of stations: Thank you for contacting Auckland Transport regarding the new Real Time boards to be installed across the Auckland public transport network. Your comments were forwarded to the Customer Information team who have provided the following feedback.
https://blog.rabidgremlin.com/2011/08/17/response-to-my-auckland-train-signage-rant/
Ask Gremlin…
I’ve received a couple of interesting emails recently from people asking for advice. I figured my answers might be of use to others so here are the (redacted) emails: Android App The email: I am wanting a Android Application designed for me. I am wanting to know a little more about Android Applications and how to go about getting one designed for me. How do the laws work around making a app and around how much would someone have to pay to get one designed?
https://blog.rabidgremlin.com/2011/08/15/ask-gremlin/
Auckland Train Signage FAIL
I’m an avid user of the trains in Auckland. It takes me 20 minutes to get from my house to downtown (and that includes a 8 minute walk) which sure beats getting stuck in rush hour traffic. But one thing that has been driving me crazy for a long, long time now is the poor quality of digital signage. In it’s current state it is awfully confusing for first time travellers which why (with the RWC looming) I was pleased to hear that MAXX was investing in some new real-time signs.
https://blog.rabidgremlin.com/2011/08/10/auckland-train-signage-fail/
Android Tips: Using a live wallpaper as your app’s background
This one took a while to find so it’s worthy of a tip :) To use the current live wallpaper as your app’s background, simply set the theme for your activity to @android:style/Theme.Wallpaper in your AndroidManifest.xml: ... <activity .... android:theme="@android:style/Theme.Wallpaper"> ... </activity>
https://blog.rabidgremlin.com/2011/04/28/android-tips-using-a-live-wallpaper-as-your-apps-background/
What I did last week – 15 Feb 2011
Actually it’s more what I did last month. RC simulator A mate of mine bought himself a swish RC quad-copter. As part of the package he bought Phoenix RC. It is a simulator that allows you to plug your RC controller into a PC and you can then practice flying (and crashing) virtual RC models before tackling the real ones. Very useful and it clearly proved that I should never attempt to fly a real RC helicopter.
https://blog.rabidgremlin.com/2011/02/09/what-i-did-last-week--15-feb-2011/
Things I did last week – 4 Jan 2011
Gonna try a new thing here, every week I’m going to post up a quick summary of what I’ve been up to tech wise. Hopefully you find something useful in here. Lightworks Beta I tried out the beta of Lightworks, the newly open-sourced video editor from EditShare. It seems amazingly powerful and the UI is very pretty. Unfortunately I had a hard time with its concepts of bins, racks and edits.
https://blog.rabidgremlin.com/2011/01/04/things-i-did-last-week--4-jan-2011/
How Anonymous is attacking Mastercard et al.
During lunch I was browsing the web and catching up on the news, when I saw this image on an article by TechEye.net: Apparently it is a call-to-arms flyer for Operation Payback which is being run by Anonymous and is an exercise in “retribution” against those companies and organizations seen to be censoring Wikileaks. What caught my eye was the statement towards the end of the flier: Set your LOIC HIVE server to
https://blog.rabidgremlin.com/2010/12/09/how-anonymous-is-attacking-mastercard-et-al./
4 little words
I was horrified to see that the Department of Homeland Security has begun to seize the domains of copyright infringing websites. Now I’m all for copyright protection and theft is theft but this kinda of censorship is a slippery slope. But it did get me thinking… Since it is only the DNS entries that have been seized and you are still able to visit these sites if you know their IP address, wouldn’t be nice to have a DNS like way of remembering these IP addresses?
https://blog.rabidgremlin.com/2010/11/28/4-little-words/
Android Tips: Generating a coverage report for your unit tests
The Android testing framework has the built-in ability to generate a code coverage report for your unit tests. Unfortunately this functionality is not available within the Eclipse IDE, so you have to resort to some command line and Ant fu. First off, you need to create a test project for your Android app and some unit tests. Next, run the following command: android update test-project -m <path to app project> -p <path to test project> This will create a Ant build.
https://blog.rabidgremlin.com/2010/11/19/android-tips-generating-a-coverage-report-for-your-unit-tests/
Android Tips: The emulator
In the last two months I have written two Android apps, in doing so I have uncovered a number of tricks and quirks which I thought I’d share. To start with, the Android emulator… Keyboard shortcuts Surprisingly, the GUI for the emulator does not provide controls for a number of functions such as emulating a change in orientation, instead you need to use keyboard short-cuts. Two particularly useful ones are:
https://blog.rabidgremlin.com/2010/11/05/android-tips-the-emulator/
MeterRec released
I’ve just released my first purchasable app on the Android market. The app is called MeterRec and it allows you to easily record readings for gas, water and power or other similar meters. These readings can then be exported as a .csv file for manipulation and graphing in applications such as Excel. This app is ideal for property managers, flat mates or those (like me) who just want to keep tabs on what they are using.
https://blog.rabidgremlin.com/2010/10/17/meterrec-released/
If Star Trek’s computers were real…
Posted by a friend of mine on Facebook… I LMAO: To be more realistic, Star Trek interactions with the computer should have gone more like this: “Computer, hail the Klingons.” “What was that?” “Hail the Klingons!” “To help me understand you better, please tell me what you just said….. 1) Ale to Vogons 2) Hail on Vulcan 3) Bale for Klingons” “None of the above!” “Initiating death from above.”
https://blog.rabidgremlin.com/2010/08/08/if-star-treks-computers-were-real/
Playlist dumper for iTunes
I’ve been meaning to write this bit of software for a while now, its a simple app that dumps out all your playlists in iTunes into .m3u playlist files. I use it to generate playlists that my HTPC (running Boxee) can play. It’s a .NET app. You can download it here: PlaylistDumper_v101.zip If the “dump folder” is the root of your music library then the .m3u file will contain relative paths which is useful for playing across network shares.
https://blog.rabidgremlin.com/2010/07/13/playlist-dumper-for-itunes/
Auckland bus stops in Google Earth
Since Jonah asked for it, I have generated a KML file of the Auckland bus stop data. If you have Google Earth installed then click on this link to see the stops overlaid on an actual map: http://www.rabidgremlin.com/viz/auckland_bus_stops_kml/auckland_bus_stops.kmz If you hover over a red dot you will get the stop’s number. Interestingly if you zoom in enough, you will see that Google already has all the stops loaded and if you click on a little bus icon under a red dot, you will get the route info for that stop.
https://blog.rabidgremlin.com/2010/07/13/auckland-bus-stops-in-google-earth/
Fun with Auckland bus data
A couple of days ago I discovered that Auckland Regional Transport Authority (ARTA) make all of their bus schedule data available for download from the maxx.co.nz site. The data is in the Google Transit Feed format, which means that it consists of a bunch of comma separated value text files, describing things like stops, routes, trips and calendars. I decided to see what I could do with this data. Below is my first attempt.
https://blog.rabidgremlin.com/2010/07/09/fun-with-auckland-bus-data/
The Amen Break
Came across this fascinating clip about the “Amen Break”, a 5 second sample taken from a 1960 b-side recording by a funk and soul bank. Amazingly this loop became the basis for drum-and-bass and jungle music. Not to mention that it has been used on numerous hip-tracks too. Watch the video below and check out the Wikipedia page for more info BTW if you ever played with MOD trackers in the 90's then check out Sony's free ACID Xpress and relive those glory days :)
https://blog.rabidgremlin.com/2010/07/02/the-amen-break/
Jumbler, my first flash game
Over the weekend I published my first flash game, it’s called Jumbler. There is not too much to the game, to be honest. It was really more the result of me tinkering with the Flixel game framework to see what it could do; rather then my idea of a “blow your mind, addictive game”. I’m must say that I’m pretty impressed with Flixel. Jumbler took less then 10 hours to put together and the bulk of the time was spent on the theme and graphics (such as they are).
https://blog.rabidgremlin.com/2010/06/08/jumbler-my-first-flash-game/
The viral spread of my privacy check app for Facebook
Last week, interested by the noise on the interwebs about Facebook and privacy, I put together a small app using Facebook’s API that shows exactly what information you are giving away to Facebook enabled sites. Thinking that others might be interested, I tweeted a link and shared the app with my friends in Facebook. Now I don’t have a large social network about 220 followers on Twitter and 125 friends on Facebook, but the “like” counter for the app quickly started to grow first 10, then 20 and after a day close to 100!
https://blog.rabidgremlin.com/2010/06/01/the-viral-spread-of-my-privacy-check-app-for-facebook/
They’re baaack! Revenge of the blobs
Well they’re back., those supposed slime moulds that have previously turned up on my lawn. This year they seem a bit more widespread. They are just so weird I had to take some more pictures: For reference they are about 7cm to 15cm in diameter. I still not convinced that they slime moulds as they don’t appear to match any picture of a slime mould that I have found on the web…
https://blog.rabidgremlin.com/2010/05/29/theyre-baaack-revenge-of-the-blobs/
New theme is a go
Well, it has been a while since I posted something meaty, I’ve been kinda doing a lot of micro-blogging and tinkering with other things like my Privacy Check for Facebook, so haven’t really had time to sit down and write a decent post. Of course as soon as I did sit down to write something, I got hideously distracted with the idea of creating a new theme for my blog…
https://blog.rabidgremlin.com/2010/05/23/new-theme-is-a-go/
Odd attractions
I found these fantastic flyers in my hotel lobby this morning. Alarmingly the Amish Attractions seems to simply consist only of quilts. The Castle Winery however, sounds pretty impressive with its authentic 12th century, 121000 square foot Tuscan castle consisting of 107 rooms, 8000 tons of hand squared stones, 8 levels (with 4 below ground), 900 feet of caves, a moat, dungeon, a torture chamber, a consecrated chapel and a hand-painted grand hall.
https://blog.rabidgremlin.com/2010/04/29/odd-attractions/
YouTube drops IE6 support
Earlier this week YouTube officially dropped support for older browsers such as Internet Explorer 6. If you try access YouTube with IE6 you get this nice warning message: The order of the browsers appears to be random, refreshing on each load. Hopefully they used a better random algorithm then Microsoft recently used for their EU browser choice site. I’m really hoping that this trend will be followed by more mainstream sites and we will finally, finally see the death of IE6 which still holds around about a 20% market share!
https://blog.rabidgremlin.com/2010/03/17/youtube-drops-ie6-support/
Google’s timetable for dropping IE6
I received the following email from Google yesterday. It details their timetable for dropping IE6 support: _Dear Google Apps admin, In order to continue to improve our products and deliver more sophisticated features and performance, we are harnessing some of the latest improvements in web browser technology. This includes faster JavaScript processing and new standards like HTML5. As a result, over the course of 2010, we will be phasing out support for Microsoft Internet Explorer 6.
https://blog.rabidgremlin.com/2010/02/04/googles-timetable-for-dropping-ie6/
Paper ship markers for Rogue Trader
I've just started GMing the Rogue Trader game (from Fantasy Flight Games) with my regular gaming group and I realised, I needed some way of tracking ships. Now ideally I'd love to have some Battlefleet Gothic models out on the table but apart from the expense, I do not want to freak out the newbie (and female) players in the group by plonking down some "toy" spaceships. So I went in search of some paper markers that I could print out and use.
https://blog.rabidgremlin.com/2010/01/25/paper-ship-markers-for-rogue-trader/
Tip: Creating easy to remember passwords
Passwords are a pain in the butt, if you use a computer or the Internet then you no doubt have a list of passwords bouncing around in your skull or worse yet a single password that you use everywhere! Here is a simple technique for creating good, easy to remember passwords. First off here are some golden rules for passwords: A password needs to be strong (see below) You should only use a password for one site or account You should never write a password down You should never tell anyone else your password (duh) Of course all of us break these rules…
https://blog.rabidgremlin.com/2009/12/28/tip-creating-easy-to-remember-passwords/
Configuring a test SSL certificate for Jboss
I just had to set up a test certificate for my local install of Jboss 4.2.3 to try out some SSL code. It wasn’t completely obvious so here are some notes on how to do it. First off you need to create a self-signed certificate. You do this using the keytools application that comes with Java. Open a command prompt and run the following command. You will need to change the path to your Jboss conf directory to reflect your install:
https://blog.rabidgremlin.com/2009/11/18/configuring-a-test-ssl-certificate-for-jboss/
Inside Google Wave
ClearPoint held one of its regular tech-drop get-togethers last night covering Google Wave. The Cloudbreak team gave a good walk-through of the product and I gave a quick overview of some of the technology inside Google Wave and it’s APIs. Here is my slide deck: Click to see next slide The PDF (with notes) can be downloaded here. For those of you who know nothing about the wave, here is short intro video:
https://blog.rabidgremlin.com/2009/11/04/inside-google-wave/
Ok I’ve done it now…
Wow, I have just announced the launch of my pet project: split-the-bill.com I’m feeling excited yet panicked at the same time. It will be very interesting to see how this pans out (hopefully well). For more details check out http://blog.split-the-bill.com/the-cat-is-out-of-the-bag-2
https://blog.rabidgremlin.com/2009/11/02/ok-ive-done-it-now/
Vodafone NZ settings for Android phones
I have an Android G1 Developer phone (based on the HTC Dream) and have had major issues getting MMS to work with the Vodafone network in New Zealand. Vodafone was next to useless in resolving this problem but after bashing my head against a wall for ages and “phoning a friend” (thanks Nick) I finally have a configuration that works. Interesting enough I actually resorted to debugging my phone to see where the issue was and then took a wander through the Android source code to see why things were going wrong.
https://blog.rabidgremlin.com/2009/09/16/vodafone-nz-settings-for-android-phones/
SvnViz 1.0.0 Released
Finally got off my butt and packaged up version 1.0.0 of SvnViz. It can be downloaded from sourceforge. SvnViz builds visualizations of the activity within a Subversion repository. Here is an example of the default visualization run against the project that I am currently working on. Green dots indicate file adds, blue dots are modified files and red dots are deleted files. The greater the activity of the user the higher their score.
https://blog.rabidgremlin.com/2009/08/12/svnviz-1-0-0-released/
Expose /var/www using Samba
This is actually more of a note for myself but it may be of use to you. I often find myself running up Linux VMs to test and build LAMP based systems but since I (generally) use Windows it is a major pain to have to transfer files via scp or worse edit files using vi. However is you install Samba into your test VM, you can simply browse to the folder using Windows explorer and edit the files directly.
https://blog.rabidgremlin.com/2009/08/10/expose-/var/www-using-samba/
Cross-browser testing and virtualization
_Update: The latest images from Microsoft now ONLY work under MS Virtual PC ! Not so useful if you are a Mac developer or you want to run under VMware like we are. Microsoft is aware of the problem, hopefully they fix it soon. _ I’ve been setting up a bunch of VMware images for testing various browser and OS combinations. This has worked out very nicely and the best thing is you can do it all for free !
https://blog.rabidgremlin.com/2009/07/24/cross-browser-testing-and-virtualization/
Facebook: Keeping things between friends
One of the most visited posts on my blog is titled “FaceBook:Do you know who is watching you?” which details how to keep your Facebook profile out of the public eye. In light of the MI6 chief/Facebook scandal (his wife obviously doesn’t read my blog), I thought I’d update the instructions so you can avoid suffering a similar embarrassment :) Log in to Facebook and from the Settings menu (top right of the page) select Privacy Settings Now select the Profile section (alternatively click on this link: http://www.
https://blog.rabidgremlin.com/2009/07/07/facebook-keeping-things-between-friends/
99 Things You Should Have Already Experienced On The Internet
A work colleague just showed me this site (yep its Friday): Greg Rutter’s Definitive List of The 99 Things You Should Have Already Experienced On The Internet Unless You’re a Loser or Old or Something Its a fantastic collection of Internet sites and videos. Check it out. Here are some of my favourites:
https://blog.rabidgremlin.com/2009/07/03/99-things-you-should-have-already-experienced-on-the-internet/
ScanPaste – My first app released to the Android Market
Last week I released by first Android application on the Android Market. It is called ScanPaste. The application lets you scan barcodes and then copy the scanned data to the phone’s clipboard for pasting into web pages, emails etc. I had been looking for a simple app to build, to test out the end to end Android Market publishing process and when I saw this blog post by about populating your Google books list using barcodes scanned with a USB scanner, I figured why not build an Android app to do it.
https://blog.rabidgremlin.com/2009/06/20/scanpaste--my-first-app-released-to-the-android-market/