Archives
This is the complete archive of posts at Passing Curiosity in reverse chronological order.
Posts before September 2007 were originally posted on other – now defunct – blogs. I’m gradually cleaning them up, but there may be some broken links and the like.
Sydney Python User Group, May 2013
The May meeting of the Sydney Python user group had talks about Python on the Raspberry-Pi, the pandas library, R, and gstreamer.
FP-Syd, April 2013
The April 2013 meeting of the FP-Syd group had presentations about GPU programming with Accelerate and little languages using the Free data structure.
AWS Summit, Sydney
My thoughts on the Amazon Web Services Summit 2013 in Sydney.
Sydney Drupal Meetup, March 2013
My first Drupal meetup since moving to Sydney.
Injection avoidance in Haskell
A proof of concept technique for writing injection-proof APIs in Haskell.
PyconAU 2012: Server performance
Notes from a talk about server performance at Pycon AU 2012.
PyconAU 2012: No, Bad Pony!
Notes from a talk about Django feature requests and why they don’t get implemented at Pycon AU 2012.
PyconAU 2012: Message queueing
Notes from a talk about message queue solutions at Pycon AU 2012.
PyconAU 2012: Django Testing
Notes from a talk about testing Django solutions at Pycon AU 2012.
PyconAU 2012: Continuous Deployment
Notes from a talk about continuous deployment at Pycon AU 2012.
PyconAU 2012: Unexpected Day
Notes from a talk about using the Python FFI and libpcap at Pycon AU 2012.
PyconAU 2012: Testing and being lazy and stuff
Notes from a talk about testing Python web projects at Pycon AU 2012.
PyconAU 2012: Natural language processing
Notes from a talk at Pycon AU 2012.
PyconAU 2012: Notes on Mike Ramm’s keynote
Notes from a talk at Pycon AU 2012.
PyconAU 2012: Python’s dark corners
Notes from a talk at Pycon AU 2012.
PyconAU 2012: Writing command-line applications
Notes from a talk about writing command-line applications in Python at Pycon AU 2012.
PyconAU 2012: Implementing a cloud service in Python
Notes from a talk at Pycon AU 2012.
Tweaking the configuration of cabal-dev
While cabal-dev is great, I need to make a few tweaks to its default configuration before it’s useful.
Using git repositories for platform versioning
This is a guide to my current thoughts on using git to maintain and distribute platform releases for Drupal-based projects.
“Drupal 7: theming forms with tables”
This is a quick guide to using tables for layout of forms in Drupal 7 without being naughty.
Trip to Japan
I’m on holiday in Japan right now.
Getting rid of Boot Camp volumes
A short overview of my last few hours fighting to get rid of the Boot Camp, Ubuntu Linux and rEFIt volumes on my Macbook Pro with Snow Leopard. It was a struggle, but I got there.
Planning for DrupalDownunder
I’m off to Brisbane later this month for DrupalDownunder (and LCA). This is a quick overview of the things I’m looking forward to.
IE performance problem turns out to be images not found
A quick post describing a performance problem I encountered in Internet Explorer and what it turned out to be.
Fixing the “Reformat Quoted Text” command in TextMate
How to fix the “Reformat Quoted Text” command in TextMate so that it works on Intel Macs (without installing Rosetta).
Using ImageMagick and GD2 together with Drupal ImageCache
A quick (working!) introduction to using ImageMagick in custom ImageCache actions while using GD as your default toolkit.
Going Further with Litecal
This article builds on my last by adding additional features to a calendar view based on litecal.
Using Litecal
This is a quick introduction to using the litecal module to display month calendars on Drupal powered web-sites.
Providing default settings for Django applications
There doesn’t seem to be an official way for a Django application to provide default values for its “custom” settings - you just document them somewhere and hope that the users take note. Here is some proof of concept code to automatically inject an application’s defaults into Django’s settings.
Updating an INI file with AWK
A colleague asked if I knew a way to edit a line in a particular section of a .ini file in a shell script. There are plenty of ways to do this, but my answer is in AWK.
Barcamp Perth rides again
Barcamp Perth 4.0 (or 2010, there seems to be some confusion) was held today at the Central Institute of Technology. Here are some notes about the day.
Attribute Oriented Programming in PHP
The fourth talk at the Open Programming Language Miniconf 2010 was Peter Serwylo’s presentation about Attribute Oriented Programming in PHP.
Notes on Preparing for PHP6
My notes on Ben Balbo’s talk at Open Programming Language Miniconf 2010: Preparing for PHP6.
Notes on Introducing Gearman
My notes on Giuseppe Maxia’s talk at Open Programming Language Miniconf 2010: Introducing Gearman – Distributed server for all languages.
Notes on Haskell, and all the wonderful things it doesn’t let you do
My notes on Stephen Blackheath’s talk at Open Programming Language Miniconf 2010: Haskell, and all the wonderful things it doesn’t let you do.
Welcome to LCA2010
So LCA2010 is underway. It’s been busy and it’s only day two (day one really), so I’ll give a brief recap so that I can remember it later.
Progress with Jekyll
I’ve made a bit of progress hacking on this blog the last few nights…
Converting to Jekyll
This blog has been languishing for months now, nearly untouched. I’m changing that now, by throwing WordPress away and replacing it with Jekyll.
Nick Cowie’s talk on Progressive Enhancement with CSS3
My notes on Nick Cowie’s talk “Progressive Enhancement with CSS3” at Edge of the Web 2009.
Dmitry Baranovskiy’s talk on Your JavaScript Library
My notes on Dmitry Baranovskiy’s talk “Your JavaScript Library” at Edge of the Web, 2009.
Lachlan Hardy’s session The Open Web
My notes on Lachlan Hardy’s presentation “The Open Web” at Edge of the Web, 2009.
Anil Dash’s keynote on “Next Year’s Web”
My notes on Anil Dash’s keynot speech on “Next Year’s Web” at Edge of the Web, 2009.
Logging the locking in SPIP
The rather hackish way I instrumented SPIP to record debugging information about its file locking to a remote syslog server.
Edge of the Web 2009
A list of the sessions I plan to attend at the Edge of the Web, 2009.
Treatments, Typography, and Markdown for SPIP
A quick and rather hackish way to replace SPIP’s built-in text markup format with Markdown.
Adding a distance function to MySQL
This is a quick and rather hackish way to add a “distance” function to MySQL and call it from the Django ORM framework.
Writing view decorators for Django
Using decorators to wrap and modify Django views is quick, easy, composable, and just about the most awesome thing I’ve seen in a while. It also takes a little bit of figuring out. Here’s my explanation…
Notes on “Statecharts and Numbats”
This post consists of my notes on the Statecharts and Numbats presentation by Harry McNally at Perth Barcamp 3.0.
Notes on Perth Barcamp 3
Some notes about Barcamp Perth 3.0.
Notes on “Adruino hacking”
Notes from a session on Arduino hacking are Barcamp Perth.
Haskell FastCGI with Apache
Getting started writing web applications in Haskell is pretty easy with FastCGI.
Django form fields and templates
Determining the type of a form field object from a Django template requires writing a new filter.
Specifying a UNIX socket using MySQL with Django
Configuring Django to connect to MySQL with a socket according to the official documentation works fine (for me), but it breaks the dbshell command (for me). This is how I configured it so that Django works and so does the dbshell command.
Authorising user actions in SPIP
One of the APIs that many SPIP plug-ins will need to use is autoriser() – the function which determines whether a user should be permitted to perform a given operation. As I couldn’t find any document on using this function, here are a few notes.
SPIP tags with multiple aliases
This post describes creating SPIP tags with multiple “names” (like #INCLURE and #INCLUDE) and taking the technique further to implement families of related tags.
Dynamic tags, fake arguments, and AST mangling in SPIP
Sometimes a dynamic SPIP tag (one evaluated at request time) needs details about the template, but this information is not available. This post describes a technique for passing data from the AST into the tag’s static and dynamic evaluation functions.
Hierarchical Rights in Drupal
There’s been a bit of noise about alternatives to the rather limited permissions system in Drupal. Here are a few of my thoughts about one proposal.
Content types and dispositions in PHP
Exporting data as CSV is pretty run of the mill for most web developers (though generating “valid” CSV is not exactly trivial), but every time I do I find myself figuring out how to force the browsers to save it to a file. This quick post is about using a Content-Disposition header to strongly suggest that browsers save the data to a file.
Literate Haskell with Markdown and Syntax Highlighting
This post describes the scripts I (used to) use to turn a literate Haskell programme (with Markdown formatted literate comments) into HTML and PDFs using Pandoc.
A better way to control attributes in SPIP templates
This post describes a PHP function to replace SPIP’s inserer_attribut and extraire_attribut filters with a single jQuery-inspired attr filter.
Matching Brackets in Cocoa
Once you’ve got a piece of code to check that a string uses correctly matched brackets, hooking it up to widgets in Interface Builder is pretty simple.
World Blog Awards
Notes from an announcement at Barcamp Perth 2009 about the “World Blog Awards”.
Using Rails and Flex
Notes from a talk on Using Rails and Flex at Barcamp Perth 2009.
TiddlyWiki presentation
Notes on a talk about TiddlyWiki at Barcamp Perth 2009.
Starting your own web-business
Notes from a Barcamp Perth 3.0 talk on starting your own web business by Paul Faix.
Myles-i the web guy
Notes from a question and answer session with Myles Eftos at Barcamp Perth 3.0.
Model View Controller
Some notes from a Barcamp talk about Model-View-Controller in ASP.Net.
Angel Funding Q & A session
Some questions and answers about angel funding and venture capital for web projects and about Silicon Valley.
Megatokyo volume four
A quick review of Megatokyo book four.
Transactional memory with data invariants
A few thoughts about a Transactional memory with data invariants by Tim Harris and SPJ.
Transactional memory with data invariants (DRAFT)
A few thoughts about a draft paper Transactional memory with data invariants.
RSChem is Burning Down, Burning Down, Burning Down…
There was a fire at the Research School of Chemistry.
A Comics Update
Notes on a few new comics including Nightmares & Fairy Tales, Courtney Crumrin, and Gloom Cookie.
Some More Comics
Notes on a few new comics and manga: Dead@17, Aria, and Remote.
A Radial Layout
My first approach at generating a radial layout of the graph data logged by the theorem prover.
“Verbosity: Not always a bad thing!”
It appears that we need to set very_verbose to get the prover to output clauses generated by factorisation, etc. Without this, we get only 5 clauses from LCL403 instead of the nearly 30,000 expected.
Data, Data, Everywhere
The amount of data produced by the problems may pose a problem. LCL005 produces more than 600MB of output and generates over 6,000,000 events. Processing this data into a graph description is the next phase of the project.
Graphviz, Dot, Large Graphs and Crashing!
Running GraphViz on my generated dot files exhausts memory and dies. I’ll need to either use a smaller problem, or another visualisation tool.
Graphviz, Dot and Large Graphs
Notes on my graph visualisation project.