Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/public/blog/wp-includes/classes.php on line 576

Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/public/blog/wp-includes/classes.php on line 576

Strict Standards: Declaration of Walker_Page::start_el() should be compatible with Walker::start_el(&$output) in /home/public/blog/wp-includes/classes.php on line 576

Strict Standards: Declaration of Walker_Page::end_el() should be compatible with Walker::end_el(&$output) in /home/public/blog/wp-includes/classes.php on line 576

Strict Standards: Declaration of Walker_PageDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/public/blog/wp-includes/classes.php on line 593

Strict Standards: Declaration of Walker_Category::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/public/blog/wp-includes/classes.php on line 687

Strict Standards: Declaration of Walker_Category::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/public/blog/wp-includes/classes.php on line 687

Strict Standards: Declaration of Walker_Category::start_el() should be compatible with Walker::start_el(&$output) in /home/public/blog/wp-includes/classes.php on line 687

Strict Standards: Declaration of Walker_Category::end_el() should be compatible with Walker::end_el(&$output) in /home/public/blog/wp-includes/classes.php on line 687

Strict Standards: Declaration of Walker_CategoryDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/public/blog/wp-includes/classes.php on line 710

Strict Standards: Redefining already defined constructor for class wpdb in /home/public/blog/wp-includes/wp-db.php on line 58

Strict Standards: Redefining already defined constructor for class WP_Object_Cache in /home/public/blog/wp-includes/cache.php on line 405

Strict Standards: Non-static method K2::init() should not be called statically in /home/public/blog/wp-content/themes/k2/functions.php on line 34

Strict Standards: Non-static method K2::register_scripts() should not be called statically in /home/public/blog/wp-content/themes/k2/app/classes/k2.php on line 51

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method K2Options::init() should not be called statically in /home/public/blog/wp-includes/plugin.php on line 311

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method K2Header::init() should not be called statically in /home/public/blog/wp-includes/plugin.php on line 311

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method K2::filter_post_comments() should not be called statically in /home/public/blog/wp-includes/plugin.php on line 163

Strict Standards: array_filter() expects parameter 2 to be a valid callback, non-static method K2::strip_trackback() should not be called statically in /home/public/blog/wp-content/themes/k2/app/classes/k2.php on line 483
2008 June Archive at Lightspeed Blog
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method K2Header::output_header_css() should not be called statically in /home/public/blog/wp-includes/plugin.php on line 311

Strict Standards: Non-static method K2Header::random_picture() should not be called statically in /home/public/blog/wp-content/themes/k2/app/classes/header.php on line 50

Strict Standards: Non-static method K2Header::get_header_images() should not be called statically in /home/public/blog/wp-content/themes/k2/app/classes/header.php on line 35

Strict Standards: Non-static method K2::files_scan() should not be called statically in /home/public/blog/wp-content/themes/k2/app/classes/header.php on line 24

Strict Standards: Non-static method K2::_files_scan() should not be called statically in /home/public/blog/wp-content/themes/k2/app/classes/k2.php on line 349

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 932

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/public/blog/wp-includes/kses.php on line 933

Monthly Archive for June, 2008

Jog Blog

I’ve been toying with an idea for a while; a personal challenge of sorts. I didn’t want to mention it here until I was completely certain I would do it, but after an eye-opening event yesterday I’m ready to announce it with full confidence (I realise that I’m being just a little cryptic). So;

I plan to run the Dublin City Marathon this year.

The event that convinced this is a good idea was running 4.5 miles on my first proper training jog. While that seems like nothing compared to the mammoth challenge of 26 odd miles a full marathon requires, I honestly wasn’t sure if I could do it, and achieving my target has given me a huge boost of enthusiasm for running and fitness in general.

Having said that, there were some things about my performance that were less than satisfactory. In the interest of improvement, I’ll go through them in a listular format:

  • I didn’t bring any water with me, due to my own stupidity.
  • I ran about 20 minutes after eating, due to my own stupidity.
  • I was wearing DC skateboarding shoes, due to my own stupidity and lack of owning anything better.

(Feel free to substitute “naivety” for “stupidity” if you’re in the mood to cut me some slack). I thought the shoes would be okay; but about 3 miles in my ankles really started to hurt, so I had to slow down for the rest of the journey. I took 50 minutes in total, which isn’t bad considering it was my first proper run, but in a marathon situation those would be my 50 fastest minutes; at that rate it could take me all day to finish.

So as well as general fitness training (consisting of a heady cocktail of squash, football and cycling) I’m going to need to run more. LOTS more. And for that to happen, I need proper running shoes. There’s a specialist shop in Bray I’ve been heavily advised to visit - they supposedly videotape you running and analyse the playback to determine the right shoe for you. Any decent pair are going to cost over €100 - combined with the marathon entry fee (€60) and milestone training races (€45) it seems proving your worth on the streets of Dublin isn’t cheap. But you can’t put a price on fitness…

Researchers Are Go

I feel a bit like this at the moment:

…because I’ve started a summer research project in UCD entitled Odysseus/ODCSSS (whichever you prefer). The broad research area for this year is “Technologies for Social Connectedness”, which includes some projects focused on social networking. Mine falls into this category; I’m probably not allowed to discuss it openly (too many eager startups out there who would take underlying concept and turn it into the next bebo or facebook!) but I’m pretty sure I’m being vague enough when I say it involves allowing you to identify which friends you’re neglecting and take steps to get back in contact with them. Hey, look at that - I’m contributing to society and human well-being!

Because the project involves visualisation, I’m currently learning the Processing programming language. I was sceptical at first; rather than a language in its own right, Processing wraps Java to let you get graphical applications up and running without the overhead of learning about JFrames, Canvases and Graphics Contexts. I’ve been burnt by this kind of setup before - I don’t see why I can’t just spent a few hours learning the tedious stuff; then I’ll know it permanently and won’t need to bother with the overhead and restrictions of another language-ette.

Most of these niggling fears were eliminated, though, when I discovered you could type something like this:

size(600, 400);
background(0);
for (int i = 100; i < 200; i+=10) {
  for (int j = 100; j < 200; j+=10) {
    stroke(i + j - 75, i - j + 125, - i + j + 25);
    line(i, j, 300+i, 100+j);
  }
}

and get something like this:

Maybe it doesn’t look like much to the casual observer, but anyone who has dabbled with drawing even primitive graphics in Java will tell you that it’s a significant improvement. Even if I end up rewriting most of what I do in “vanilla” Java, I can see Processing saving me a lot of time just trying things out.

So I’ll be in UCD for the next 12 weeks, working on the above. I’ve been asked to keep a development blog to track my progress; and as much as I the thought of being unfaithful to lightspeed blog it’s a neccessity. However, I don’t think posts about hair dye or photos of me drunk would fit very well alongside research journal entries, so this blog will still serve a useful(?) function…

Catastrophic Failure

I have something quite important to talk about (namely this) but it’s going to take me a while to collect my thoughts and explain it properly. In the meantime here’s a cautionary tale about the perils of not backing up your data.

A few months ago my ageing external hard drive started making an odd clicking noise whenever it was left on for too long. Puzzlement grew to worry as I realised my precious data may be in jeopardy - and this particular drive was where my mp3 collection resided. Some of those files date back to the era of Napster, and as such I’ve grown quite attached to them. Since I didn’t have anywhere to transfer the files to, I took the safe route and stopped using the drive until I could safely rescue the data.

Cut forward to April, my birthday - friends from college get me a Network Attached Storage device and two 500GB hard drives (thanks, guys!). Now that I had oodles of delicious hard drive space, it was time to rescue those files. I turned on the drive and quickly copied the mp3s to their new location, watching them transfer anxiously. It was a nail-biting few minutes, but fortunately the transfer finished with no problems. Huzzah! I decided to have a celebratory dinner straight away, and salvage what other files I could from the drive later on.

When I returned to my room, belly full and mind at ease, there was an unholy sound coming from the hard drive (I had forgotten to turn it off). I wish I had had the presence of mind to record it so I could show you how badly the drive was mutilating itself, but my first priority was making sure no explosions occurred. After turning off the drive, I took it apart to perform my autopsy.

Melted Hard Drive

Notice the melted plastic.

Hard Drive near the bin

Now, notice the close proximity of the drive to the bin.

Seems it’s dead… which is a shame, but also a wake up call. Stuff physically breaks sometimes! With this abrupt and jarring loss as a catalyst, I finally got around to burning a backup of all my important files (college work, web design projects, etc.) It spanned three DVDs, totalling about 12GB of data - who knew I had so much important stuff!