Looks like Mark Shuttleworth has created a storm by uttering something which is not well received by a few Feminine Geeks. First I thought that ‘asking for apology’ is only my country’s national pastime, but probably it’s international.

The way everything is put forward, I can only say that things are blown out of proportion. Did Mark say that women are incompetent? Did he say that they are dumb or anything even faintly similar?  Quoting from Skud’s article  on geekfeminism

I’m sorry I wasn’t able to make it to LinuxCon this year; I hear it’s a pretty good event. I’ve been listening with some interest to people’s reports of what’s going on there, and this afternoon I heard from multiple sources about your keynote, in which you referred to our work in Linux as being “hard to explain to girls”.

She was herself not on the venue and all she knows is from *multiple* sources. Sometimes words get distorted and lose their context if they get passed from person to person. LinuxCon is not a place to  vent someone’s anger, nor to abuse anyone. If Mark wanted to abuse them, he would have said it somewhere else.

It just works
It just works

The reality is that the population of girls/women in FOSS world is very marginal. I know that situation is improving, but it would not happen overnight. In my country girls are more attracted towards  medical, healthcare, product services etc. First, India’s female literacy is less than male’s. Secondly,  the percentage of girls in Indian engineering colleges is quite less. Thirdly, most of the female engineering graduates want to pursue MBA. So, hardly girls are left whom you would find interested in FOSS. Those who are really enthusiastic surely go a long way.

Shuttleworth said that Linux is hard to explain to girls. I can only say that it’s even tough to explain to guys who are not interested in technical matters. Probably Mark must have tried explaining it to girls who are not even interested in computers. Neither me nor Mark has any intention to look down upon women, but nit-picking at each and every phrase is somewhat lame. This actually does more harm to women who want to be more involved in FOSS.

For those who are still trapped up in the same array of tweets and dents related to this event, you may prefer reading Matthew Brennan Jones’s response to geekfeminism. He has written a post on his blog clearing the misconceptions. Go read it as he was physically present that time of the event.

I know am late expressing my views, but it hardly matters.

List of useful Python libraries

If you are a .NET programmer, then you find Python a bit tough. Reason? Python does not include library for each and every operation possible in this world. You may have to work around to find the necessary packages, download them and continue with your development.

Python’s standard module list has a finite number of entries as opposed to .NET    ( I use .NET at my workplace). Here this is an attempt to collect all such libraries which are outside standard modules, which you might badly need for your development. Many of them are extensions or wrapper packages for already existing libraries.

1 ) scapy

This is a library for  TCP/IP stack wherein you can have full control over the lowest detail of the Packet that leaves your computer. It supports many protocols like ETH, IP, ARP, ICMP, TCP, UDP etc. You can create custom TCP/IP packet and send it to any host. Typical implementation is ARP Ping, ICMP Ping.

Experience: Tried. Works perfectly. Havn’t stumbled across any bugs as of now.

2) soaplib

Used for creating lightweight web services. As the page says, it comes with a client and server built in and on-demand WSDL generation.

Experience: Havn’t tried. Heard about it’s existence.

3) mysql

Uh? Do I really have to tell what this is actually. I hope everyone knows.

Documentation for python-mysql

Experience: Obviously! Obviously! I think I should remove this line.

4) aubio

Stating directly from it’s site – “aubio is a library for audio labelling. Its features include segmenting a sound file before each of its attacks, performing pitch detection, tapping the beat and producing midi streams from live audio. The name aubio comes from ‘audio’ with a typo”

Experience: None. Presently in To-Do List.

5) Beautiful Soup

BeautifulSoup is an SGML parser which is highly robust and doesn’t die straight-off even if you give it poorly formed data. To make it scream and die all you have to do is to give something that isn’t SGML at all. It even has a parser class named BeautifulSOAP which is used to parse SOAP message (as the name applies). It even has a class named ICantBelieveItsBeautifulSoup. Sounds stupid? Who cares as long as it does it work.

Experience: Tried when I saw Anomit using it. Need more experience as I have lost touch as of now. Never tried BeautifulSOAP.

6) python-clamav

It is pending in my To-Do list. Will start working as I get time.  Check a small tutorial

Experience: No! Read the line above.

7) python-crypto

Presently in #1 position of To-Do list. Sounds just too promising. Hope it is as I thought it to be.

Check the API and it’s general overview

Experience: No

8 ) django

Now if you don’t know django – Go shoot yourself or read about it here if you somehow survive.

[ As pointed by Anomit, it isnt a framework, but library is a general name I have used for the title ]

Experience: Obviously!

9) gd

I have used GD a lot in PHP, but hardly on Python. GD is simpler than ImageMagik (never used) as people told me. Hope to use this library if I ever require.

If you ever require the documentation, head yourself to this page.

Experience: Not used in Python, but in PHP

10) gmp

GMP stands for GMP Multi Precision and gmpy is a python wrapper over it. Though you might not need it in Python, but if you are coming from C background, this might be a familiar name.

Experience: Normal, not an expert

11) python-jabber

Python-Jabber is a python module which implements jabber instant messaging protocol. Check out the documentation and a funny example .

Experience: Little experience. Not much. After all it doesn’t look so tough, so will sit down for a hacking session,

12) python-irclib

I encountered this library when I was searching more on python-jabber library. This also falls in the category of real-time messaging. The problem I can see is that there is no documentation. How to proceed? Use dir() and inspect module extensively?

Experience: Kidding? Please show me the documentation. I don’t have more time for hacks as I did with scapy.

Till now ,I had kept this list for my own reference. Many more required libraries are missing. If you have any more in mind, please mention it. I would be glad to add it.