Getting Bicho Running as a process on Heroku with a Scheduler

For our almost complete MoFo Interim Dashboard, I’m planning to use an issue tracker parsing tool called Bicho to work out how many people are involved in the Webmaker project in Bugzilla. Bicho is part of a suite of tools called Metrics Grimoire which I’ll explore in more detail in near future. When combined with vizGrimoire, you can generate interesting things like this which are very closely related to (but not exactly solving the same challenge) as our own contribution tracking efforts. I recently installed a local copy of Bicho, and ran this against some products on Bugzilla to test it out. It generates a nicely structured relational database including the things I want to count and feed into our contributor numbers. This morning I got this running on Heroku, which means it can run periodically and update a hosted … Continue reading »

Messing with Processing and a black hole

I put together a Sketch in Processing this evening. It generates a canvas at whatever size you want, adds a black hole and a couple of thousand pixels that get sucked into the black hole with some simulated gravity. The final result is a bit like the image I had in my head when I started, so I’m happy with that. I would like it to be more awesome, but this will do for the time I have to play with right now. I quite like the scratchy ‘pixely’ quality at ‘actual’ size, but that might be my nostalgia for older games and my taste in scrappy painting. The code’s available over at http://www.openprocessing.org/sketch/119499 where you can hit the page a few times and generate variations of the image. Anyway, enough with this post as I should be doing some … Continue reading »

Concept Game – Simple Evolutionary Model

I’ve spent enough time on this now to submit it, even if it’s still a bit rough around the edges. I’ve included a bit of a write up below. This demo will run best in Chrome or Opera. Click to play. I’ve built a simple ‘game’ called Digital Husbandry. It’s more of a time killer as it doesn’t have any serious game mechanics, but there is a visual reward to keep the user engaged. It’s based on the idea of simulating progressive evolution through selective breeding. Much as generations of farmers have done with livestock. The player brings together critters on the screen based on visual qualities that appeal to them, and produces offspring that drive the overall appearance of the group closer to those qualities selected by the player. The ‘critters’ die when they reach the ‘deadzone’ at the … Continue reading »

Critters Processing Sketch – Round 3

This is taking a little bit more shape now… Coming up next is user interaction.

Critters Processing Sketch – Part 2

I’m just posting some progress as this concept develops. Code etc is hosted on Open Processing if you want to have a look. I’m really enjoying Processing as a sketchbook for code. It’s definitely a good tool for teaching programming.

Critters Sketch in Processing

If your browser is up to scratch, here’s a little JavaScript based sketch from a current personal project… This is some early code for a simple game I’m working on for the Coursera Creative Programming course (it’s my first time building a game rather than regular software). These shapes are generated from a limited range of numbers, which can later be turned into a simple genetic code to define these critters. I’ve hosted this on OpenProcessing.org, so you can get to the source-code etc. http://www.openprocessing.org/sketch/103410

Evening coding

With lots of interesting client work on at the moment, I’ve decided to spend some evening time moving along the next version of Done by When. This is nothing too stressful, but the project is getting really interesting now. I think I’m over the initial conceptual learning curve and now I’m making proper progress. Where the launch version of Done by When was primarily a working proof of concept, this next version is about attention to detail and responsiveness (that’s the speed of interactions as opposed to the adaptive layout stuff that’s already in place). I feel like I’m properly upgrading something when I’m spending as much time removing code as I am writing it new. More updates soon.

jQuery UI Sortable slow in FireFox

This is just a note for other developers searching on the same issue, as I didn’t find anything online when I was looking for ideas. jQuery UI Sortable is a great way to work with drag and drop web interfaces but I found it was running painfully slow in Firefox. It was snappy in Chrome, and surprisingly responsive in IE, but Firefox was lagging. As the official Sortable demo ran fine in Firefox it was easy enough to work out that it was something in my own code causing the problem. After cutting out items and returning them one by one it seems that having too much CSS3-niceness within the draggable elements was the culprit. Each item I was dragging included a set of mini buttons styled with the lovely Bootstrap effects (gradients, rounded corners, shadows etc.) and although Chrome … Continue reading »

Loading a new version of jQuery without breaking an old version

Sometimes you’re working on a website that already uses an old version of jQuery and upgrading is not an option at that moment in time; if for example the jQuery library is bundled with a version of Drupal and works with a set of existing plugins. The following code will allow you to load in a newer version of jQuery and still leave the $ variable assigned to the old version… The code: <script type=’text/javascript’ src=’https://www.google.com/jsapi’></script> <script type=’text/javascript’> //<![CDATA[ google.load('jquery', '1.7.1'); //]]> </script> <script type=”text/javascript”> // save the new version of jquery to a variable and revert $ to the existing version on the page var jQuery_1_7_1 = $.noConflict(false); </script> The same code with console logging for testing: <script type=’text/javascript’ src=’https://www.google.com/jsapi’></script> <script type=’text/javascript’> // outputs jquery version to Firebug/chrome console to test console.log(“$=” + $().jquery); //<![CDATA[ google.load('jquery', '1.7.1'); //]]> </script> … Continue reading »