jump to navigation

Ubiquity rocks! September 16, 2009

Posted by Da in Development.
add a comment

See http://labs.mozilla.com/ubiquity/ . Basically you now have a launcher in your Firefox now! Very convenient!

Also check out other cool projects at the Mozilla Labs. Somehow Microsoft are never able to do these kind of cool things in their IE (maybe it is just that I don’t know, since I have not used IE for ages…)

Google tools for coding September 11, 2009

Posted by Da in Development.
Tags: ,
add a comment

Google has make some of their software library available to public via Google code, and I found the following quite useful or interesting:

And you may want to take a look at Google Style Guide. My feeling is that learning the philosophy reflected by a style guide is usually helpful.

Resuming blogging September 2, 2009

Posted by Da in Personal.
1 comment so far

People usually say they are too busy to blog, and that’s the reason I would use for not writing much here in the past half year. But no more excuse… there are stuff I found interesting and I will talk about them here. So I will resume blogging, with the hope that I will be able to write on a weekly basis.. let’s see how far can this go..

A funny story from qdb.mit.edu September 2, 2009

Posted by Da in Uncategorized.
add a comment

Quite outdated now, but somehow I found it funny:

Student walks into elevator with random woman holding flowers.

Student: Nice Flowers, what’s the occasion?

Woman: I won the Turing award.

Read more or add yours at: http://qdb.mit.edu

Efficient Simulation Management? September 2, 2009

Posted by Da in Research.
2 comments

Simulation is an important research tool to reveal insight and for performance demonstration (but not proof). Sometimes, it is not uncommon that we obtain large amount of output from simulations and need to process them in different ways, which poses two questions: how to efficiently output the data, and how to store them.

The first question is quite important when you want to simulate really fast — writing data to the disk is very very slow so you don’t want that to slow down the entire program. A solution is to use a separate thread to do it, if your programming language supports it. For example, I use the Boost Thread library if I wrote my program in C++. The data sharing between the main program and the writer thread can, most of the time, be implemented in a producer-consumer queue.

The second question is equally important, because we want to automate this process as much as possible, when facing large volume of data. A good candidate would be sqlite, which can be accessed from many programming interfaces, and then you can manipulate the data via regular SQL statements.

In general, writing to a database may take longer as there is more work to do, so one may want to simply flush it to disk in files, and import it to a database later..

Above are some experience from myself, anyone has any other ideas on the tools or methods to deal with these kind of problems? That’ll be much appreciated!