Today is March 24th, that means Ada Lovelace Day, and it is being pushed as an international day of blogging to celebrate the achievements of women in technology and science. The aim of Ada Lovelace Day is to focus on building female role models not just for girls and young women but also for those of us in tech who would like to feel that we are not alone in our endeavours.
There are some very good examples of women that have been important in the development of science and technology, starting with Ada Lovelace herself (the first developer of an algorithm intended to be processed by a machine), Rear Admiral Grace Murray Hopper (developer of the first compiler for a computer programming language), Adele Goldstine (who wrote the complete technical description for the first digital computer, ENIAC), as well as the six women who did most of the programming of if (Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas and Ruth Lichterman), or women scientists, or women inventors, etc.
Well, I’m not going to write about any of those, even when any of them would surely deserve that and more for sure. I’m going to write about a woman who has definitely been very inspiring and supportive for me when I was starting to get in touch with Free Software and Debian, and who is probably the most important single reason I decided to go for it. It is definitely hard to write about someone you admire when she happens to be one of your best friends, and in fact I’m pretty sure that most of the people reading this article already know her, so there’s no great mistery. I’m talking about Amaya Rodrigo, the first european female Debian Developer (AFAIK) and co-founder of the Debian Women project, and also member of Hispalinux Board in the golden days.
The first time I met her she was giving a talk in Madrid about a project that was starting then, Debian Women, and it was very inspiring for me. Inspiring enough for me to join the project. Afterwards I’ve learnt more about her, how she overcame many dificulties, like starting to work with computers quite late, among others. The real merit of a pioneer is not really to be the best techie out there, but to overcome the difficulties and doing it the best you can, when no one else has done it before. I’m not going to write her biography here, it’s not really the purpose of this blog entry, and you probably can ask herself directly. This blog entry is, as I said at the beginning, to highlight women in technology that I consider inspiring and relevant. You know, I admire you, Amaya
It seems that I’m not blogging as often as I was some months ago. The main reason is microblogging, which is somehow quicker, even though briefer. It is also less informative, I guess, because 140 characters is a very limited length. Probably because of that, a friend of mine asked me to write a proper blog entry about this, and I think that he’s probably right.
openFrameworks is an open source toolkit, released under the MIT license, written in C++ and designed to assist the creative process by providing a simple and intuitive framework for experimentation. According to its authors, it was developed for folks using computers for creative, artistic expression, and who would like low level access to the data inside of media in order manipulate, analyze or explore. I attended a short course in openFrameworks some months ago, and decided that if I wanted to experiment with it, I should somehow structure the building process of the library a bit, remove the dependency on FMOD, which is not DFSG-free, even though that might require remove the whole audio subsystem, make it buildable without Code::Blocks, and hopefully build some more-or-less proper packages. I’ve also added some pkg-config files, so that it becomes easier to build projects based in openFrameworks (as easy as ‘g++ source.cpp -o test $(pkg-config openframeworks openframeworks-addons –cflags –libs)‘).
Even though the packages are still not as good as they should, they’re absolutely usable right now. I’ve uploaded them, as well as their dependencies, to my Ubuntu PPA (although I’m using those packages in my Debian), in case that someone is interested. I’ve also uploaded a couple of tiny examples (the second one downloaded from here) of openFrameworks.
Zaz (“Zaz ain’t Z***”) is nice action puzzle game, similar to Zuma, in which you have to get rid of all the balls that roll around the screen through some given paths by rearranging their order in the chain. The balls explode and dissapear when three or more of the same color get in contact. The whole game is controlled through the mouse device.
Through the game some special balls appear, with a tiny symbol over them, that makes your life easier by doing thinks like make all the balls step back a bit, making them move more slowly, stopping them for a while or giving you a ray to help you point your device and get and drop the balls where you want. You lose a life when the balls reach their destination hole, so be quick!
The game currently has 10 different levels, but will probably have more in the future, and needs a 3D accelerator for decent gameplay. Zaz has just entered Debian repositories. If you like arcade puzzles, you should definitely give it a try. If you use Ubuntu Jaunty, you can also find it in my PPA.
The original game included CC-by-sa-nc 3.0 music from Nine Inch Nails, which had to be removed for the game to go into Debian Main.
The game has already been translated to Polish and Spanish, probably other translations will follow in the future, but it is not really text-based at all, so that shouldn’t really be a problem for anyone.
I’ve been lately playing with 389 Directory Server (previously Fedora Directory Server, previously Netscape Directory Server). Along with the LDAP server itself comes an admin tool and a console GUI for managing the system. The admin tool is built on Apache2, and it needs it to use the worker MPM (high speed threaded model), provided by the package apache2-mpm-worker. The problem is that libapache2-mod-php5 seems to depend on apache2-mpm-prefork, so I have to use php5-cgi to provide the PHP scripting functionality instead. That seems to work properly out-of-the-box ™ for stuff like phpldapadmin, but not so properly for phpmyadmin and phppgadmin. In those cases the browser seems to try to download the PHP script instead of executing it.
The quickest solution for that is to add some configuration stuff to Apache2, telling it to do things properly:
# cd /etc/apache2/mods-available/
# cat >> php5-cgi.conf
AddType application/x-httpd-php .php .phtml .php3
Action application/x-httpd-php /cgi-bin/php5
AddType application/x-httpd-php .php .phtml .php3
Action application/x-httpd-php /cgi-bin/php5
# cd ../mods-enabled/
# ln -s ../mods-available/php5-cgi.conf
# /etc/init.d/apache2 stop
# /etc/init.d/apache2 start
That should do the trick. Don’t forget to restart Iceweasel/Firefox, or some kind of caches inside it will keep trying to download the PHP scripts anyway.
Structure Synth is an application for creating 3D structures from a set of user specified rules. It is an attempt to make a 3D version of Context Free (a free -GPL’ed- program that generates images from written instructions called a grammar). The cool thing about Structure Synth is that it has a simple language for writing recursive scripts that can generate complex structures (kinda Processing, but in 3D), and you can feed the result into Sunflow (a rendering system for photo-realistic image synthesis, already available in Debian) to generate Escher-like cool images. The program is waiting in the NEW queue, but you can temporarily download my packages (for Debian SID amd64) if you want. Even though I’ve tried hard to be the one to blog about this, my friend Javier Candeira has won the competition and has been able to write about this earlier than me
Spanish readers might want to have a look at JoSeKBlog, where he describes how to combine Structure Synth and Sunflow, and where I first read about the existence of the program.
Easy: Install this, and add this bookmarklet to your favourites.
Patio Maravillas is a self-managed government-independent social center in Madrid, placed in a squatted building that long ago belonged to school. The place currently belongs to a Real Estate company, Grupo 2 Reunidos. According to the law, the place has to be used for providing services to the community, which hasn’t happened for 10 years. Nobody knows what plans they do have for the building, but there are suspicions that it might be related to property speculation. Nothing new on the horizon.
The police are throwing them out of the building tomorrow morning, “incidentally” coinciding with the opening of the Foro Social Mundial (World Social Forum), for which Patio Maravillas was going to be one of the hosting buildings. Madrid isn’t really known for supporting social movements in general, and has a conservative government, so feel free to think that the coincidence is not random. Patio Maravillas has been giving courses and workshops to the community since July 2007, and is very well considered and supported by different organizations.
Supposedly whatever happens tomorrow will be without violence, but knowing how the Spanish Police behaves in this situations that is not very likely. The event will be streamed and probably recorded, and information will be twittered, so hopefully nothing serious will happen. I really hope the best for them.
I’d love to be able to be there with them, but as it is really not possible for me, I’m giving them all my support from here. Good luck! Keep up the good work!
Instant messaging through web interfaces is not really the most comfortable thing to use. While their ubiquity is nice, and they can be used from whatever computer you want without having to install anything, for my own computer I prefer a real desktop application. Pidgin (formerly called gaim) is a multi-platform instant messaging client that supports many commonly used instant messaging protocols, so different services can be used from the same application. Being a user of many different messaging systems, I kinda use Pidgin as an abstraction layer from the services I use.
Yesterday I discovered pidgin-facebookchat, a Facebook chat plugin for Pidgin and libpurple messengers, that is able to connects to the new Facebook Chat IM service without the need for an API key. It works quite well, all things considered.
Some weeks ago I bought myself an e-book reader, Sony Reader PRS 505. It is a really cool gadget, and as I usually read a lot of stuff in my computer, it is somehow an investment in my eyes. I decided on this one because the support for Linux is quite well, through the unofficial Free Software project Calibre.
Calibre is primarily an e-book cataloging program: it manages your e-book collection for you, and it is designed around the concept of the logical book (i.e. a single entry in the database that may correspond to ebooks in several formats). It also upports conversion from a dozen different ebook formats to LRF and EPUB. A graphical interface to the conversion software can be accessed easily by just clicking the “Convert E-books” button. A lot of input formats are supported: MOBI, LIT, PRC, EPUB, ODT, HTML, CBR, CBZ, RTF, TXT, PDF and LRS.
After some weeks of work, Martin Pitt and I have finished the packages for Debian and Ubuntu, which are right now waiting in the Debian NEW Queue. You can temporarily get them from here, compiled for Debian SID AMD64, but of course you can build them for your platform, or wait until they enter Debian.