Skip to main content

Ralsina.Me — Roberto Alsina's website

The Lowly Symbols

Two nights ago, I was at a birth­day par­ty. In it, some­one (name pre­served be­cause you don't know the guy) said some­thing like "sym­bols are use­ful to ral­ly peo­ple for a fight­".

I an­swered "if I ev­er need to ral­ly peo­ple to a fight, I would make sure to choose some un­cool sym­bol (maybe a naked mole rat, ram­pan­t), so I at least know they are there be­cause they un­der­stand the is­sue, and not be­cause of cool mar­ket­ing". Which is prob­a­bly a pret­ty stupid thing to say, but:

  1. I was on my 3rd fer­­net

  2. I was trolling the oth­­er guy

  3. Fer­­net troll is drunk

  4. I kin­­da be­lieve it

It's stupid be­cause on­ly ac­cept­ing the help of true be­liev­ers and not ac­tive­ly try­ing to make peo­ple be­lieve are good ways to en­sure you have a very mo­ti­vat­ed tiny mi­nor­i­ty on your side (Lin­ux Year of The Desk­top anal­o­gy ges here).

But I kin­da be­lieve it any­way, be­cause be­ing ug­ly and loved is warmer than be­ing pret­ty and loved, be­cause be­ing dif­fi­cult and ap­pre­ci­at­ed is more valu­able than be­ing ac­ces­si­ble and liked. But that on­ly works if you are tru­ly dif­fi­cult, and not in­ten­tion­al­ly so, that's just be­ing a poseur. And tru­ly ug­ly, not Char­l­ize-Theron-on-­fat-­make­up ug­ly.

So, to what point is any of us hon­est­ly an­noy­ing? That, friend­s, is the is­sue here. And if I ev­er have to lead oth­ers in­to some­thing, I hope I do it as my­self, and they come be­cause of a rea­son that is theirs and not mine.

I am not here to con­vince peo­ple. I am here to know peo­ple.

Six Years


And she's still here.

Scraping doesn't hurt

I am in gen­er­al al­ler­gic to HTM­L, spe­cial­ly when it comes to pars­ing it. How­ev­er, ev­ery now and then some­thing comes up and it's fun to keep the mus­cles stretched.

So, con­sid­er the Ted Talks site. They have a re­al­ly nice ta­ble with in­for­ma­tion about their talk­s, just in case you want to do some­thing with them.

But how do you get that in­for­ma­tion? By scrap­ing it. And what's an easy way to do it? By us­ing Python and Beau­ti­ful­Soup:

from BeautifulSoup import BeautifulSoup
import urllib

# Read the whole page.
data = urllib.urlopen('').read()
# Parse it
soup = BeautifulSoup(data)

# Find the table with the data
table = soup.findAll('table', attrs= {"class": "downloads notranslate"})[0]
# Get the rows, skip the first one
rows = table.findAll('tr')[1:]

items = []
# For each row, get the data
# And store it somewhere
for row in rows:
    cells = row.findAll('td')
    item = {}
    item['date'] = cells[0].text
    item['event'] = cells[1].text
    item['title'] = cells[2].text
    item['duration'] = cells[3].text
    item['links'] = [a['href'] for a in cells[4].findAll('a')]

And that's it! Sur­pris­ing­ly pain-free!

To write, and to write what.

Some of you may know I have writ­ten about 30% of a book, called "Python No Muerde", avail­able at http://no­­man­ager­s.­ (in span­ish on­ly).That book has stag­nat­ed for a long time.

On the oth­er hand, I wrote a very pop­u­lar se­ries of post­s, called PyQt by Ex­am­ple, which has (y­ou guessed it) stag­nat­ed for a long time.

The main prob­lem with the book was that I tried to cov­er way too much ground. When com­plete, it would be a 500 page book, and that would in­volve writ­ing half a dozen ex­am­ple app­s, some of them in ar­eas I am no ex­pert.

The main prob­lem with the post se­ries is that the ex­am­ple is lame (a TO­DO ap­p!) and ex­pand­ing it is bor­ing.

¡So, what bet­ter way to fix both things at on­ce, than to merge them!

I will leave Python No Muerde as it is, and will do a new book, called PyQt No Muerde. It will keep the tone and lan­guage of Python No Muerde, and will even share some chap­ter­s, but will fo­cus on de­vel­op­ing a PyQt app or two, in­stead of the much more am­bi­tious goals of Python No Muerde. It will be about 200 pages.

I have ac­quired per­mis­sion from my su­pe­ri­ors (my wife) to work on this project a cou­ple of hours a day, in the ear­ly morn­ing. So, it may move for­ward, or it may not. This is, as usu­al, an ex­per­i­men­t, not a prom­ise.

Contents © 2000-2023 Roberto Alsina