Ir al contenido principal

Ralsina.Me — El sitio web de Roberto Alsina

Sería un vendido, pero nadie me compra!

For Sale Portobello Mkt
For Sale Portobello Mkt by Jason Jones, under a CC-by-nc-sa license.

Es na­tu­ral pa­ra al­guien que no me co­no­ce pen­sar que vi­vo una vi­da de lu­jo, via­je in­ter­na­cio­nal y pla­ce­res exó­ti­cos [1] pe­ro hay una pe­que­ña co­sa que me da ver­güen­ci­ta:

Ra­ra vez me han pa­ga­do pa­ra pro­gra­ma­r.

¡En se­rio! La ma­yor par­te del di­ne­ro con el que vi­vo pro­vie­ne de co­sas que no tie­nen na­da que ver con lo que lean en mi blo­g.

Me gano la vi­da ha­cien­do co­sas co­mo ins­ta­lar As­te­risk en ca­ll cen­ter­s, o con­fi­gu­rar re­pli­ca­ción de MyS­QL o ha­cer VP­Ns usan­do rou­ters ba­zo­fia y des­de ya que si ne­ce­si­tás esa cla­se de tra­ba­jo por fa­vor lla­má a Net Ma­na­gers so­mos bue­ní­si­mos y co­bra­mos ba­ra­to.

Pe­ro si bien amo esa cla­se de co­sas [2] hay otras que me gus­tan má­s. Me gus­ta más pro­gra­mar que cn­fi­gu­rar As­te­risk.

Por otro la­do, no soy un gran pro­gra­ma­do­r. Soy pro­me­dio, pe­ro más rá­pi­do que la ma­yo­ría.

Y úl­ti­ma­men­te no­té un fe­nó­meno in­te­re­san­te.

cuán­to ga­né por mis pri­me­ros 14 años de de­sa­rro­llo li­bre y open sour­ce? $0 [3]

Cuan­to ga­né es­te úl­ti­mo año? U$S 500 (y va a ser un po­co más tam­bién).

Pa­ra al­guien del pri­mer mun­do eso es chau­cha­s, pe­ro acá en la tie­rra de la car­ne ba­ra­ta, eso es... unos 50 ki­los de pe­ce­to, o 10 ce­nas afue­ra en bue­nos res­tau­ran­tes con mi es­po­sa. [4]

Me pre­gun­to si es par­te de una ten­den­cia? Hay otros que ha­yan re­ci­bi­do co­sas de es­te ti­po ul­ti­ma­men­te?

De cual­quier for­ma, se sien­te ex­ce­len­te cuan­do un tra­ba­jo que uno ha­ce por amor es apre­cia­do (y crean­me, na­die ha­ce al­go por 14 años sin co­brar na­da, ex­cep­to por amo­r).

Por las du­da­s: es­to no sig­ni­fi­ca que hay que pa­gar­me pa­ra que arre­gle un bug o im­ple­men­te un fea­tu­re. Sí quie­re de­cir que si usas uno de mis pro­gra­mas y que­rés que me sien­ta bien ... me po­dés man­dar un lin­do mail :-)


Quick hack: rss2epub -- hace lo que dice

Por ejem­plo, Aran­duka es­tá cer­ca de po­der sin­cro­ni­zar mi co­lec­ción de li­bros con my te­lé­fono. Pe­ro­... que pa­sa si lo que quie­ro leer en el tren no es un li­bro sino un blo­g?

Bue­no, los blogs te dan fee­d­s. Y un feed es una co­lec­ción de pe­da­zos de HT­ML pe­go­tea­dos en una es­truc­tu­ra más unos da­tos co­mo au­tor y co­sas así.

Y hay un mó­du­lo ex­ce­len­te pa­ra par­sear­lo­s, qu se lla­ma fee­dpar­se­r. Y yo no es­cri­bí uno, ni do­s, ni tres, sino cua­tro pro­gra­mas pa­ra leer RSS!

En­ton­ce­s, por­qué no con­ver­tir el feed en al­go que mi te­lé­fono pue­da di­ge­ri­r? [#] Es di­fí­ci­l?

Bue­no­... no mu­cho. Fue cues­tión de to­mar un do­cu­men­to ePub chi­qui­to de ejem­plo (ge­ne­ra­do con Ca­li­bre), es­cri­bir al­gu­nos tem­pla­tes, dar­le los da­tos de fee­dpar­se­r, y zi­pear to­do.

Por ejem­plo, es­te ar­chi­vo es es­te blog co­mo ePub y así se ve FBRea­der le­yén­do­lo.

Share photos on twitter with Twitpic

Co­mo siem­pre, el co­di­go es abier­to, y es­tá acá en el mer­cu­rial de aran­duka.

No es có­di­go in­te­re­san­te, y re­quie­re tem­pli­te fee­dpar­ser y quién sa­be que ma­s.

El ePub pro­du­ci­do no va­li­da, y pro­ba­ble­men­te nun­ca lo ha­ga, ya que tie­ne pe­da­zos de los fee­ds ori­gi­na­les aden­tro, por lo que la va­li­da­ción no de­pen­de de rss2e­pu­b.

Ade­más no te­nés imá­ge­nes. Eso im­pli­ca­ría par­sear y arre­glar to­dos los ele­men­tos img o al­go así y no ten­go ga­nas en es­te mo­men­to.

[#] Es­te fea­tu­re lo ví por pri­me­ra vez en plu­cker ha­ce aña­res, y sé que Ca­li­bre lo tie­ne.

eBooks y PyQt: una linda pareja

Pe­ro en­ton­ces pen­sé... se­rá di­fí­cil leer ePu­b? Bue­no, es re fá­ci­l!

Acá hay una ex­pli­ca­ción en sta­cko­ver­flo­w.­com <http://s­ta­cko­ver­flo­w.­co­m/­ques­tion­s/1388467/­rea­din­g-e­pu­b-­for­mat>`_ pe­ro la ver­sión cor­ta es... es un zip con XML aden­tro.

Uno de esos XML te di­ce adon­de es­tá ca­da co­sa, otro es el ín­di­ce, el res­to es una co­lec­ción de HT­M­L/­CSS/i­má­ge­nes.

En­ton­ce­s: es­tos son los in­gre­dien­tes pa­ra co­ci­nar­te un lec­tor ca­se­ro de ePub en 150 lí­nea­s:

  • Usá el mó­­­du­­lo zi­­pfi­­le pa­­ra no ex­­pan­­dir el zip (e­­so es be­­­rre­­ta)

  • Usá Ele­­ment Tree pa­­ra pa­r­­sear el XM­­L.

  • Usá QtWe­­bkit de Py­­Qt pa­­ra mo­s­­trar esa co­­­le­c­­ción de XM­­L/­­CSS/I­­ma­­ges

  • Usá es­­ta re­­ce­­ta pa­­ra que QtWe­­bkit te avi­­se que quie­­re al­­go del zi­­p.

En­chu­fá una co­sa con otra, sa­cu­dí, y ter­mi­nás con es­to:

Share photos on twitter with Twitpic

Acá es­tá el có­di­go (has­ta aho­ra) <http://­co­de.­google.­co­m/­p/a­ran­duka/­sour­ce/­bro­wse/sr­c/e­pub­viewe­r.­p­y?­r=1­d5­df32­bf717651e5e­d5­d1­d22012666ee06­d63a2>`_ y el ar­chi­vo UI fi­le que ne­ce­si­tás.

Que le fal­ta:

  • No mues­­tra la ta­­pa.

  • Só­­­lo mues­­tra el pri­­mer ni­­vel del ín­­di­­ce.

  • Só­­­lo lo pro­­­bé en dos li­­bros ;-)

  • Ne­­ce­­si­­ta re­­fa­c­­to­­­ri­­zar a mo­­­ri­­r.

Nin­gu­na de esas co­sas es te­rri­ble­men­te di­fí­cil de ha­ce­r!


Contents © 2000-2024 Roberto Alsina