The Curious Engineer

All blogs / General

GreenAsh

greenash.net.au

All-natural web development, poignant wit, and hippie ramblings since 2004

GeneralWeb developmentSociety / politics / economyEssays / personal

Posts
170 from 16 Jan 2005 to 7 Jan 2025
Posting
now and then
Kind
personal blog
Feed
https://greenash.net.au/atom/

2025 3

  1. Getting MapLibre working for both native and web in Expo
  2. Thoughts
  3. Sea level rise is gonna get a whole lot realer

2024 3

  1. Introducing: World Locality Transit Graph
  2. Introducing: Floyd-Warshall CSV Generator
  3. On FastAPI

2023 1

  1. What (I think) the Voice is all about

2022 10

  1. Ozersk: the city on the edge of plutonium
  2. GDPR-compliant Google reCAPTCHA
  3. Introducing: Instant-runoff voting simulator
  4. Scott Morrison is not keen on ABC interviews
  5. Is Australia supporting atrocities in West Papua?
  6. On the Proof of Humanity project
  7. Introducing: Hack Your Bradfield Vote
  8. I don't need a VPS anymore
  9. Email-based comment moderation with Netlify Functions
  10. Introducing GreenAsh 5

2021 8

  1. The lost Armidale to Wallangarra railway
  2. Japan's cherry blossom: as indisputable as climate change evidence gets
  3. On Tina
  4. Introducing: Is Pacific Highway Upgraded Yet?
  5. On Eleventy
  6. On Hugo
  7. Private photo collections with AWSPics
  8. Good devs care about code

2020 1

  1. Tolstoy: the forgotten philosopher

2019 1

  1. How can we make AI that reasons?

2018 3

  1. The eccentric tale of Gustave Eiffel and his Tower
  2. Twelve ASX stocks with record growth since 2000
  3. DNA: the most chaotic, most illegible, most mature, most brilliant codebase ever

2017 5

  1. Mobile phone IMEI whitelisting in Chile and elsewhere
  2. A lightweight per-transaction Python function queue for Flask
  3. How successful was the 20th century communism experiment?
  4. Using Python's namedtuple for mock objects in tests
  5. The Jobless Games

2016 5

  1. Ten rival national top cities of the world
  2. Orientalists of the East India Company
  3. Where is the official centre of Sydney?
  4. Where there be no roads
  5. Running a real Windows install in VirtualBox on Linux

2015 7

  1. Introducing Flask Editable Site
  2. Cookies can't be more than 4KiB in size
  3. Robert Dawson: the first anthropologist of Aborigines?
  4. Splitting a Python codebase into dependencies for fun and profit
  5. Generating a Postgres DB dump of a filtered relational set
  6. Storing Flask uploaded images and files on Amazon S3
  7. Five long-distance and long-way-off Australian infrastructure links

2014 10

  1. Conditionally adding HTTP response headers in Flask and Apache
  2. Forgotten realms of the Oxus region
  3. First experiences developing a single-page JS-driven web app
  4. Mixing GData auth with Google Discovery API queries
  5. Australian LGA to postcode mappings with PostGIS and Intersects
  6. Database-free content tagging with files and glob
  7. Sharing templates between multiple Drupal views
  8. The cost of building a "perfect" custom Drupal installation profile
  9. Using PayPal WPS with Cartridge (Mezzanine / Django)
  10. Protect the children, but don't blindfold them

2013 9

  1. Some observations on living in Chile
  2. How smart are smartphones?
  3. Symfony2: as good as PHP gets?
  4. Current state of the Cape to Cairo Railway
  5. Money: the ongoing evolution
  6. Configuring Silex (Symfony2) and Monolog to email errors
  7. Show a video's duration with Media: YouTube and Computed Field
  8. Natural disaster risk levels of the world's largest cities
  9. Rendering a Silex (Symfony2) app via Drupal 7

2012 11

  1. Node.js itself is blocking, only its I/O is non-blocking
  2. Batch updating Drupal 7 field data
  3. How compatible are the world's major religions?
  4. How close is the European Union to being a federation?
  5. Syria, past and present: mover and shaken
  6. Israel's new Law of Return
  7. Introducing the Drupal Handy Block module
  8. Introducing the Drupal Template Field Variables module
  9. Flattening many-to-many fields for MySQL to CSV export
  10. Enriching user-entered HTML markup with PHP parsing
  11. Argentina: ¿que onda?

2011 16

  1. Django Facebook user integration with whitelisting
  2. A blood pledge to never vote for Tony Abbott
  3. Geeks vs hippies
  4. Don't trust Facebook with your data
  5. World domination by box office cinema admissions
  6. Kosher and the Land that G-d forgot
  7. Thread progress monitoring in Python
  8. FotoJazz: A tool for cleaning up your photo collection
  9. On the Torah and the Word of G-d
  10. Five good reasons to not take drugs
  11. Highway border crossings between Chile and Argentina
  12. Travel is a luxury
  13. Solr, Jetty, and daemons: debugging jetty.sh
  14. Jimmy Page: site-wide Django page caching made simple
  15. On and off
  16. The Art of Sport

2010 10

  1. The English Language and The Celtic Question
  2. Boycott GPS
  3. An inline image Django template filter
  4. An autop Django template filter
  5. Introducing GreenAsh 4
  6. Non-Shelbyville Sydney map
  7. Taking PHP Fat-Free Framework for a test drive
  8. Generating unique integer IDs from strings in MySQL
  9. Haiti coverage in OpenStreetMap vs Google Maps
  10. Refugee Buddy: a project of OzSiCamp Sydney 2010

2009 7

  1. Media through the ages
  2. What are fossil fuels?
  3. jQuery text separator plugin
  4. Hook soup
  5. Installing the uploadprogress PECL extension on Leopard
  6. Self-referencing symlinks can hang your IDE
  7. Deployment and migration: hot at DrupalCon DC

2008 11

  1. First DrupalCamp Australia was a success
  2. Listing every possible combination of a set
  3. A count of Unicode characters grouped by script
  4. Randfixedsum ports in C# and PHP
  5. Legislation and programming: two peas in a pod
  6. On the causes of the First World War
  7. Drupal and Apache in Vista: some tips
  8. Drupal at the 2008 Sydney CeBIT Expo
  9. The Net, ten years ago
  10. Step one: consume less
  11. Robotic garbage sorting

2007 8

  1. The bicycle-powered home
  2. Consciously directed healing
  3. Developing home + developed income = paradise
  4. Useful SQL error reporting in Drupal 6
  5. Economics and doomed jobs
  6. Let the cameras do the snapping
  7. OSCMS Summit 2007: my first DrupalCon
  8. You're part of this world... aren't you?

2006 20

  1. GreenAsh ground-up videocast: Part III: Custom theming with Drupal 4.7
  2. GreenAsh ground-up videocast: Part II: Installing and using add-on modules with Drupal 4.7
  3. Freaky Teletubby hypnosis
  4. GreenAsh ground-up videocast: Part I: Installing and configuring Drupal 4.7
  5. Pleasure vs pro
  6. GreenAsh 3.0: how did they do it?
  7. Must have, must do
  8. Import / Export API: final thoughts
  9. Stop shining that light in my face
  10. Import / Export API: progress report #4
  11. Import / Export API: progress report #3
  12. Drupal lite: Drupal minus its parts
  13. Import / Export API: progress report #2
  14. On death and free minds
  15. Import / Export API: progress report #1
  16. An undo button for Drupal
  17. Australia's first Drupal meetup, and my weekend in Melbourne
  18. An IE AJAX gotcha: page caching
  19. A patch of flowers, a patch of code
  20. A novel style

2005 21

  1. One year of Drupal
  2. Draft dodging: the first and final version
  3. A plain-text program design standard
  4. Web 2.0, and other nauseating buzzwords
  5. The river without a river-bed
  6. What a mean word
  7. Room to swing a cat
  8. The glossy future
  9. Movies for the masses
  10. Busker bigotry
  11. In search of an all-weather bike
  12. Showing sneak previews in Drupal
  13. Aussie Daylight Savings PHP function
  14. Desire and suffering
  15. The fantasy genre: an attempt to explain its success
  16. Hierarchical URL aliasing
  17. Cross-vocabulary taxonomy hierarchies
  18. Basic breadcrumbs and taxonomy
  19. Vive la HTML
  20. Why junk collecting is good
  21. Always read the book first