1. Improve ColdFusion performance by 1000x?

I recently had to deal with some ColdFusion page optimization. Although the result was not 1000 better like in this case, the approach was more or less similar. Instead of SQL indexes + rewriting queries inside loops + caching queries, I only had to do a combination of:
– reducing the number of DB queries by moving them outside loops
– using cfqueryparam. In addition to making things more secure, turns out it also has a significant impact on performance tuning.

Update: Some more improvements:
– ColdFusion whitespace management
getting rid of the old cfform
gzipping the content transferred to the browser

The end result was a 30x-50x performance improvement.

2. About helping others

Apparently helping others is embedded in every human’s DNA. Here’s an excerpt (no spoilers) from Andy Meir’s ‘The Martian’ – one of the best SF novels I ever read:

Every human being has a basic instinct to help each other out. It might not seem that way sometimes, but it’s true. […] This is so fundamentally human that it’s found in every culture without exception. Yes, there are assholes who just don’t care, buy they’re massively outnumbered by the people who do.
The Martian (coming in a theater near you in 2015)

The downside of this ‘feature’ of the human behavior is that it can be exploited. For example, in computer security, individuals who are attempting to social engineer some piece of information strongly rely on this aspect of the human nature:

Donโ€™t rely on network safeguards and firewalls to protect your information. Look to your most vulnerable spot. Youโ€™ll usually find that vulnerability lies in your people. […]
Most people generally want to help somebody who is requesting help.
CompTIA Security

3. The Rosie Project

The Rosie project is an amazingly enjoyable book about a socially-challenged scientist who is working his way through the process of finding a life partner. Also recommended by Bill Gates. If anyone makes a movie out of it, I hope they pick Jim Parsons for the main role ๐Ÿ™‚

My own fitness tracker

Written on 15 February 2014, 11:05pm

Tagged with: , ,

The awkward Tanita incident in the beginning of February inspired me to build my own fitness data input + visualising tool. After some nights of work, they are done; and I am pretty happy with the result. Screenshots and description below.

1. Background

I spent some time choosing the new repository for my data. After considering multiple options (like MongoDB, Google Fusion Tables, Dropbox xml, AWS), I chose a MySQL database + periodic Dropbox backup.
So, the measurement data was migrated from Tanita XML to MySQL. Funny enough, shortly after I started to work on this tool, my shared hosting provider had a data corruption incident (for the first time in 5 years since I am using them), and the database had to be restored. This is just another reminder to always backup ๐Ÿ™‚
(more…)