December 30, 2023 22:53 +0000  |  Blogger Python 0

71 files changed, 2242 insertions(+), 1405 deletions(-)

It's been a very long time since I started working on supporting video in my former image gallery, but it's finally finished. This site has had a substantial overhaul, dropping the old easy-thumbnails library in favour of rolling my own thumbnailer that stores the thumbnail locations on the Media object. I also employed some light-touch polymorphism to support rendering out a page of media to include both images and video. There were a bunch of backflips required (tinkering with ffmpeg) to extract metadata from videos as well as to thumbnail them, and the geometry I had to fiddle with to make it look just right wasn't fun either.

I also dropped the old js Packery library in favour of CSS grid and then spent literally weeks testing migrations since we're talking about around 77GB of images and video that I not only didn't want to lose, but I also wanted to interrogate further for higher quality metadata. Finally, my 16-core, 64GB desktop machine was getting taxed to its limits.

I don't know how well this is going to perform on the Raspberry Pi Kubernetes cluster though. Simple image thumbnailing works just fine, but video transcoding on arm64? It's going to be interesting.

Anyway, it was a shittone of work, so I thought it worth posting about. Chances are, you won't see any of the videos unless you login since it's all of my kid anyway :-) If none of the above makes sense to you, don't feel bad. This is a very nerdy subject.

March 04, 2015 00:23 +0000  |  Blogger 4

It's just past 1am as I type this. Christina is curled up next to me in bed, trying to sleep, but I'm still up, hacking away at this site. This site, my labour of love now for more than a decade has just undergone its sixth update.

Mostly a face-lift, version 6 of my blogger now sports a sexy new image gallery and a pretty template that should make it easier to read stuff.

Technically speaking, I'm running Django 1.7.x now, and I've dropped support for the built-in comments framework (as it was deprecated already) in favour of a custom system that supports markdown properly. There's also tonnes of UX changes, and I've switched to Bootstrap 3 for all of it.

Please take a look around and let me know what you think, and if you find any bugs, please let me know.

January 01, 2014 15:37 +0000  |  Blogger 0

Would you believe that it's been more than ten years since I started this blog? I only realised this fact last night as I was talking about blogging in general with Christina's parents. Her father thought that the whole pattern of blogging as quite strange, and really didn't see the point to it all, so I pointed out that I'd been blogging for years... and that's when I realised:

I've been writing on this website for a decade

That's just under ⅓ of my life. My life, as clumsy and convoluted as it has been, since I left Ottawa back in 2003. It includes stories about how I tried to build a life in Toronto, got my feet wet in political action, and even eventually running for office myself years later. There's stuff in here about the friends I've made, the women I've dated, and even the family that I've lost.

This blog is an archive of my life, and it's already ten years in.

This life is messy and rough, sometimes boring, and even remarkable at times, but more than anything, it's my life, and I must say that it's pretty amazing to have it all here, in print, forever on the Internet.

May 15, 2013 22:20 +0000  |  Blogger Programming 1

So I hope you've noticed by now, but this site has been completely rewritten.

Would you believe that this site is almost 10 years old? I've been running a personal blog since December of 2003. The first few incarnations were written in PHP, and the most recent two were both written in Python, using Django as the framework.

Some notes about this version:

  • Complete markdown support in blog posts and comments. Honestly, I got tired of writing HTML blog posts. The text was getting to be illegible so I wrote this version to make my life easier. Then I added markdown support to the comments so you can make prettier comments. Go ahead, give it a shot :-)
  • A prettier image gallery - The layout is prettier, with larger thumbnails, and some fun layout tricks too. It might be a bit buggy with non-standard image sizes, but I'll work those out.
  • A smarter image gallery - Now supporting multi-upload, and it'll auto-generate the various sizes... but only if it has to. If I want to photoshop some images before I post them, this makes it so much easier.
  • Prettier interface and shiny icons!
  • Expanded projects pages

...and that's about it. You'd think that given the fact that it took me so long to write, that there'd be more to it, but this is it. Well, that and the code is just... better :-) For those who might be interested, here's a list of some of the packages this site is using:

And sadly, I have yet to add a Django Pony anywhere yet. I'll do that soon though. There's also a few kinks to work out with the image uploader, hence the delay in posting my Warsaw/Krakow shots. I'll get to them soon enough though.

Anyway, if you haven't already, please poke through the site and let me know if you run into any problems. Now that I've made it (slightly) easier to post, I hope to be writing more in the future.

October 04, 2010 01:41 +0000  |  Blogger Django Python Software 8

I haz a new site! I've been hacking at this for a few months now in my free time and it's finally in a position where I can replace the old one. Some of the features of the old site aren't here though, in fact this one is rather limited by comparison (no search, no snapshots, etc.) but the underlying code is the usual cleaner, better, faster, more extendable etc. so the site will grow beyond the old one eventually.

So, fun facts about this new version:

  • Written in Python, based on Django.
  • 317133 lines of code
  • Fun libraries used:
    • Flot (for the résumé skillset charts)
  • Neat stuff I added:
    • A new, hideous design!
    • A hierarchical tagging system
    • A custom image resizing library. I couldn't find a use for the other ones out there.
    • The Konami Code. Try it, it's fun :-)
  • Stuff that's coming:
    • Search
    • Mobile image upload (snapshots)
    • The image gallery will be up as soon as the shots are done uploading.

Anyway, if you feel so inclined, please poke around and look for problems. I'll fix them as soon as I can.

August 10, 2010 12:16 +0000  |  Blogger Django PHP Python 1

For those who have been demanding that I post something, anything, (*cough* Noreen *cough*) I apologise for the delay, but it won't be long now. I've been using all this time to write a new version of my site, done up in Python/Django. The next version will be a watered-down version of this one (on account of the complete rewrite) but will grow with time.

I may also decide to abandon all attempts at making it pretty... 'cause well... I suck at that :-)

June 23, 2008 16:54 +0000  |  Blogger Geek Stuff 1

For those a bit slow on the uptake of movie references, the title of this post is from Resident Evil 2... you know, the one filmed in Toronto ;-)

I just noticed a hack attempt on this site by someone assuming that I was running WordPress: /wp-trackback.php?p=1 exploder /wp-trackback.php?p=1 exploder /wp-admin/admin-ajax.php? exploder /wp-trackback.php?tb_id=1 exploder exploder,user_pass,CHAR(58),user_login,CHAR(58))+FROM+wp_users+where+id=1/* exploder,CONCAT(CHAR(58),user_pass,CHAR(58),user_login,CHAR(58)),null,null,null+FROM+wp_users+where+id=1/* exploder /wp-trackback.php?p=1 exploder /wp-trackback.php?p=1 exploder /wp-admin/admin-ajax.php? exploder /wp-trackback.php?tb_id=1 exploder exploder,user_pass,CHAR(58),user_login,CHAR(58))+FROM+wp_users+where+id=1/* exploder,CONCAT(CHAR(58),user_pass,CHAR(58),user_login,CHAR(58)),null,null,null+FROM+wp_users+where+id=1/* exploder

If you're running WordPress on your own servers, please update your software. It would appear that there's security holes in one of the older versions of which some less-than-noble people are aware.

Also, Python is cool. I just wanted to share that ;-)

April 10, 2008 17:42 +0000  |  Blogger 0

For those of you who don't already know, I'm currently in Toronto for a few more days. Much has happened about which I'd like to blog, but the thing about vacation is that you're supposed to enjoy it first, and talk about it later ;-)

It should be noted though that part of my trip out East includes the retrieval of my server from Melanie's house, and that means that this site is going offline as of Saturday and won't be back up 'till I've figured everything out in BC and re-setup the whole thing. So yeah, if when you come back here, you find nothing, know that it's temporary :-)

Alright, back to the vacationing!

January 02, 2008 04:53 +0000  |  Blogger Photography 5

A while back, I added a new section to this site called Snapshots, the purpose of which is to have a sort of live-photoblogging feature for the site. If I see something neat, I snap it with my camera phone and upload the pics to my site. I don't know if anyone's checked it out yet though since Melanie recently asked: "has that always been there?"

Anyway, it's been there for a while and it can be neat to browse through when you have the time. Tonight however, I added an RSS component to it so people who use aggregators can get the pics as they happen.

I don't have comments enabled in there yet, so if you see something neat, or even if you're just looking at the pics, please post a comment here.

October 17, 2007 18:38 +0000  |  Blogger Italy 3

I've been rather busy since I left Venice writing code for this site. The changes are finished and (mostly) tested, so I'm releasing them now. Please let me know if you find anything broken eh?

Changes include:

  • Imager comments
  • Offsite-linking disabled (if a site tries to link to my images rather than copy them (thereby stealing bandwidth) they get a nasty message instead).
  • Lots of bug fixes

I saw a great deal of Rome today and yesterday, but only have 25minutes here to write it all out... so I won't. I'll write it later and upload it even later than that. Just know that I walked through Piazza San Pietro (the square in front of the Vatican), saw the Pantheon, and the Coliseum briefly (my Dad and I will go for a more detailed visit later) and checked out the Protestant Cemetary (and cat sanctuary!) as well as Piazza Popoli. It's very pretty, but Rome, on the whole, is quite dirty. You should see the subway.

Alright, I'm rambling and I'm running out of time. I'll post in a couple days :-)

Oh right. I forgot to mention that I finished Harry Potter on my first night in Rome.