Archive for July, 2008

Okay, I discovered this today when looking to increase the speed at which uploaded documents were saved to disk. Now, I can’t explain the inner workings of why it is fast(er), all I know is that with the exact same form upload test ran 100 times with a 25MB file over a 100Mbit/s network this method was on average a whole 2.3 seconds faster over traditional methods of write, writelines, etc..

How does this extend to real-world production usage over external networks, well no idea. Though I plan to find out. So you all will be the first to know as soon as I find some guinea pig site that does enough file uploads to implement this on.

# Minus some boiler plate for validity and variable setup.
import os
import shutil
memory_file = request.POST['upload']
disk_file = open(os.path.join(save_folder, save_name),'w')
shutil.copyfileobj(memory_file.file, disk_file)
disk_file.close()

The amount of package sites and updating I had to do to get Eclipse 3.4 setup the way I wanted wasn’t too bad, I just hope I don’t have to do that again any time soon. So in an effort to potentially ease any future installation and configuration of Eclipse I have composed the list of Eclipse Update URLs right here.

I play a game called EVE Online and I create and support a lot of software for our in-game corporation. After recently migrating forums away from punBB over to vBulletin I was stuck with the choice to either migrate our existing Ship Insurance script (written in PHP) or create a whole new system from scratch. Being a lover of Python, TDD, and sausage, I of course picked the rewrite option since it would be the most difficult and suck up more resources and time than just migrating some shitty PHP script.

The requirements are very simple.

Allow claim to be entered.
Allow claim to be approved.
Allow a claim to be denied.
Allow an agent to see a listing of all claims.
Allow filter options by ship type and pilot.
Allow agent to enter in the payout.
Save all past claim information. (reporting)
My personal goals for this project.

100% coverage with unittests.
Use TDD methods to develop the project.
Use the Trac system to support development.
Use Pylons with a SQLite DB
Use Ext for any fancy shit.

Code available soon as I get my repository back online.

The traditional first post.

Should it have content? Should it just say welcome to my blog I plan to only update for the next 2 weeks, then try to revive it after a couple months without an update by doing some posting foo and slamming out 10 updates in 1 week. Then after burning myself out in the revival week, I end up closing the blog after 3 more months without an update and try starting another one. We’ll see if this one will be any different.