Optimize your programs

December 2nd, 2008

The last time I blogged about a new course I’m fol­low­ing at my uni­ver­sity. This course, held by Pasquale Lops and Gio­vanni Semer­aro, is very inter­est­ing at the point that I’ll be devel­op­ing a custom infor­ma­tion retrieval engine as part of my intern­ship project. I can’t tell much more at this point since the intern­ship haven’t started yet and I’m not sure I can release more details about this project (we’re still in the process of decid­ing if and how the whole thing will be released to the world).

In the mean­time, I’ve been doing sev­eral exper­i­ments on this topic mostly about the memory usage and the per­for­mances of such system on lim­ited hard­ware. This prac­ti­cally means imple­ment­ing the algo­rithms you’ll be using and mea­sur­ing the com­pu­ta­tional time they require.

(Con­tinue reading…)

0 Comments, tagged with Coding,Python

What I learned by information retrieval in one week

October 19th, 2008

It has been about a week since I began doing a deeper study of infor­ma­tion retrieval. Actu­ally, every­thing just began with a new course at my uni­ver­sity about that and I just fallen in love almost imme­di­ately. The fact is that this thing really got me inter­ested, and I began doing some exper­i­ments (one involves django as well, keep read­ing to know more).

In this week I learned a lot of things about infor­ma­tion retrieval, text cat­e­go­riza­tion, nat­ural lan­guage pro­cess­ing and machine learn­ing. But the most rel­e­vant thing is: the prin­ci­ples are easy, their imple­men­ta­tion is not. The fact is that most of the tech­niques are rel­a­tively simple but you usu­ally have to deal with very large datasets and this could be chal­leng­ing, since one of the main require­ments about infor­ma­tion retrieval is time. It’s really much more impor­tant that you give less results in one second rather than giving better results in one hour. No one will ever care to use your system if it takes an hour to get some result. And if you’re con­sid­er­ing to store your data in a data­base forget about nor­mal­iza­tion, it wouldn’t really take you anywhere.

(Con­tinue reading…)

Announcing Pytagram

August 21st, 2008

Today I just ended one of my side projects: pyta­gram. Basi­cally it gen­er­ates an SVG file (that can suc­ces­sively be saved as eps/pdf/whatever and even­tu­ally man­u­ally manip­u­lated) start­ing from a tree-​like plain text file. This can be useful for gen­er­at­ing cheat sheets or quick ref­er­ences to classes or func­tions that belongs to some project.

I did this for gen­er­at­ing a django quick ref­er­ence (here it is) since it has a lot of func­tions and I know what’s their pur­pose, but I can never remem­ber the names (and now two A4 papers are right in front of me).

If you’re inter­ested in this, check out the google code project page and grab your copy from the SVN repository.

There are tons of things that can be changed/optimized (i.e.: add some optional short expla­na­tion of the func­tion, add more exam­ples, easier way to change colors, …) but now the code is work­ing quite well so that can be already useful to the people out there.

Google, codejam and number conversions

June 26th, 2008

The dec­i­mal numeral system is com­posed of ten digits, which we rep­re­sent as “0123456789” (the digits in a system are writ­ten from lowest to high­est). Imag­ine you have dis­cov­ered an alien numeral system com­posed of some number of digits, which may or may not be the same as those used in dec­i­mal. For exam­ple, if the alien numeral system were rep­re­sented as “oF8”, then the num­bers one through ten would be (F, 8, Fo, FF, F8, 8o, 8F, 88, Foo, FoF). We would like to be able to work with num­bers in arbi­trary alien sys­tems. More gen­er­ally, we want to be able to con­vert an arbi­trary number that’s writ­ten in one alien system into a second alien system.

(Con­tinue reading…)

1 Comment, tagged with Coding,Python

« Previous PageNext Page »

Microblogging

  1. January 28th

    1. Finally something to eat! http://t.co/FH3x3oGR [krat]

      1:10am via Twitter

  2. January 27th

    1. Finally some cleanup on my inbox. Feels cleaner now. [krat]

      5:13pm via Twitter

  3. January 26th

    1. panzerotti & peroni [krat]

      7:49pm via Twitter

  4. January 25th

    1. I lost count of how many times I wanted to expand the tweet stream and clicked "favorite" instead [krat]

      11:15am via Twitter

  5. January 23rd

    1. It's hateful when you have to chase people who owe you some money [krat]

      5:45pm via Twitter

    Powered by Lifestream.

Search