Skip to main content

Ralsina.Me — Roberto Alsina's website

Run Program

Cover for Run Program

Review:

I want­ed to love this book like I love the au­thor's pre­vi­ous ones. But I could not.

It's prob­a­bly me, not him, since I am hav­ing a hard time fin­ish­ing books late­ly, which means I am sort of forc­ing it. So, don't wor­ry Scot­t!

Mentiras y Estadísticas, edición Martin Tetaz

No­ta: No soy economista. Martín Tetaz sí. Si yo sé es­to que es­cri­bo en es­ta no­ta, no les quepa du­da que Martín Tetaz tam­bién lo sabe. La difer­en­cia es que él pre­fiere no de­cir­lo, por mo­tivos que él sabrá.

Hace un­os días el cono­ci­do economista Martín Tetaz di­jo es­to:

Y es, lit­eral­mente, cier­to (de he­cho, no sé si es cier­to porque no me ca­len­té en ver­i­fi­car­lo, pero asumamos que lo es­). Mas o menos. O sea, es cier­to que CFK asum­ió con esa can­ti­dad de deu­da y se fué con esa can­ti­dad de deu­da. Has­ta ahí es "cier­to".

Hay al­gunos de­talles, claro.

Primero: no son lo mis­mo 144.000 mil­lones de dólares en 2007 que 144.000 mil­lones de dólares en 2015. De he­cho, 144.000 mil­lones de dólares de 2007 son 167.500 mil­lones de dólares de 2015. Porque el dólar pierde val­or con el tiem­po. Y es­os 250.000 mil­lones de 2015 son 214.853 mil­lones de 2007.

O sea que si ten­emos en cuen­ta al­go tan bási­co co­mo us­ar una vara con­stante para medir la deu­da, ese au­men­to del 74% que dice Tetaz en re­al­i­dad fué del 50%.

Por otro lado, es­os 144.000 mil­lones los de­bían 40 mil­lones de per­sonas (39,97 mil­lones, para ser ex­ac­tos), mien­tras que en 2015, es­os 250.000 mil­lones los de­bían 43,42 mil­lones de per­sonas.

Así que saque­mos al­gu­nas cuen­tas. A val­or con­stan­te:

Per cápi­ta, en 2007, ca­da ar­genti­no de­bía 3602,70 dólares.

Per cápi­ta, en 2015, ca­da ar­genti­no de­bía 4951,64 dólares.

O sea, si tomamos una me­di­da un po­quito mas ra­zon­able que peras con ba­nanas, da que ese in­cre­men­to en la deu­da del 74% re­sul­ta ser en re­al­i­dad más o menos 37%. O sea, la mi­tad.

Pero en re­al­i­dad, para saber si una deu­da es mucha o poca, im­por­ta la ca­paci­dad de pa­go. Si gano $1.000 y de­bo $5.000 es un mon­tón. Pero si gano $100.000, $5.000 es una ce­na con ami­gos.

Y para país­es, eso se hace cal­cu­lan­do la deu­da co­mo por­centa­je del PBI. Y el PBI fue, en 2007, 287.500 mil­lones de dólares. En 2015, fué de 584.700 mil­lones de dólares. Eso no es a dólar con­stan­te, por lo que volve­mos a los 250.000 mil­lones de dólares de deu­da en 2015.

Y re­sul­ta que me­di­do co­mo por­centa­je del PBI, pasamos de de­ber 50% del PBI a de­ber el 42.7%.

O sea que la deu­da, me­di­da de la man­era en que tiene sen­ti­do medirla, ba­jó un 15%

Y no hable­mos de que cam­bió a quién le de­bíamos plata, porque eso es opin­able, pero lo que sí es­tá claro es que Tetaz sabe que lo que di­jo lo di­jo de man­era ten­den­ciosa. Porque si yo sé es­tas cosas, Tetaz tam­bién las sabe. La difer­en­cia es que él no te las dice.

Trabajar Gratis no es Gratis, o Meritocracia mis Polainas.

A ve­ces uno hace cosas gratis. Yo lo hago, vos lo hacés, to­dos lo hace­mos. A ve­ces esas cosas que hace­mos gratis traen un pa­go por otro lado:

  • Te hacés cono­ci­do, y eso te per­mite obten­er al­go.
  • Te deben un fa­vor, y te lo ter­minás co­bran­do.
  • Sim­ple­mente te sen­tís bi­en por hac­er es­o, gratis.

Pero siem­pre, siem­pre, siem­pre, al­guien pa­ga.

  • Pa­ga el que te da ex­posi­ción, dán­dotela.
  • Pa­ga el que te debe el fa­vor, de­volvién­do­lo.

Pero cuan­do hacés al­go gratis so­la­mente porque te hace sen­tir bi­en hac­er­lo ... ¿quién lo pa­ga? ¿Ese no es tan ob­vio, no? Si doy un cur­so gratis, si ha­go un pro­gra­ma open source, si pin­to una es­cue­la, si paseo al per­ro de un ve­ci­no, si te cui­do a tu hi­jo... ¿quién pa­ga?

Porque al­guien siem­pre pa­ga. En par­tic­u­lar, siem­pre al­guien pa­ga si uno labu­ra gratis. Si me que­do dos ho­ras tarde sin pedir ho­ras ex­tra (cosa que no sucede), pa­go yo. Tal vez no en­seguida, pero lo pa­go en no pasar esas dos ho­ras con mi fa­mil­i­a, o en no hac­er al­go que yo quería hac­er.

Si ha­go un tra­ba­jo que nor­mal­mente se pa­garía pero lo ha­go "de on­da", lo pa­ga el que no lo va a hac­er co­brán­do­lo. Si le ha­go un soft a al­guien en­tonces el­los no se lo van a com­prar a nadie.

To­do ese soft­ware open source que vos ves, flotan­do por la in­ter­net co­mo si surgiera de una fuente in­agotable de soft­ware gratis, es­tá pa­gado, es­tá pa­ga­do con los fines de se­m­anas y las noches de un mil­lón de de­sar­rol­ladores que lo pa­garon. Es­tá pa­ga­do con las quiebras de miles de em­pre­sas de soft­ware que no ex­is­ten más porque sus pro­duc­tos aho­ra son com­modi­ties.

Sí, prob­a­ble­mente val­ió la pe­na. Yo tal vez no iba a hac­er na­da más in­tere­sante en mis 20s y mis 30s, pero sabés qué, tal vez lo hu­biera he­cho. Tal vez hu­biera toma­do cosas que no tomé, vi­a­ja­do a lu­gares que no vi­a­jé, cono­ci­do gente que no conocí. A cam­bio, hay un­os cuan­tos proyec­tos aban­don­a­dos en Github y al­guno que no.

Sí, por otro la­do co­bré, porque hace 17 años que ca­da tra­ba­jo que ten­go en parte lo he con­segui­do por to­do eso que hice "gratis".

Pero tam­bién se pa­ga de otra man­er­a: se pa­ga en que se es­pera que pase. Se pa­ga en que hoy en día por lo menos yo siem­pre bus­co que to­do el soft­ware sea gratis. ¿Y qué pasaría si en 2025 nos damos cuen­ta que era to­do una bur­bu­ja? ¿Qué hace­mos si de golpe re­sul­ta que no, que es­ta man­era de pro­ducir soft­ware no fun­ciona? ¿Bus­camos otra?

Se es­pera que ha­gas proyec­tos gratis para pro­bar tu val­or. Los posi­bles em­pleadores es­per­an poder ver un proyec­to tuyo en Github, y yo soy cul­pa­ble de de­cir­le a pibes "ha­gan un proyec­to, ayu­da a con­seguir laburo" ... ¡porque es cier­to! ¡ayu­da! Si hacés un proyec­to con códi­go no hor­ren­do, me­di­ana­mente or­ga­ni­zado, etc. es casi fá­cil con­seguir un puesto en al­gu­na em­pre­sa.

Va­mos de linkedin a top­tal car­gan­do nue­stros proyec­tos igual que un apren­diz de her­rero iba de un pueblo a otro con su yun­que, que era su "mas­ter­piece", lo que prob­a­ba que sabía lo que hacía.

Y, lo pe­or de todo, lo pa­gan los que no pueden tomarse sus 20s pro­ducien­do códi­go "vis­i­ble" para im­pre­sion­ar a sus fu­tur­os pa­trones. Tra­ba­jar gratis es un priv­i­le­gio que ten­emos al­gunos, y los que no pueden hac­er­lo ar­ran­can en desven­ta­ja. Es co­mo ser "mer­i­to­rio ju­di­cial". Si podés tra­ba­jar gratis un­os años (porque te ban­can, o lo que sea) hacés es­o, y te va a ser más fá­cil en­trar al poder ju­di­cial. Y los que no pueden, bueno, no serán ju­di­ciales. O no ten­drán la mis­ma car­rera en soft­ware.

Porque no tenían ese priv­i­le­gio. Porque no pudieron tirar sus fines de se­m­ana en es­o, o in­ver­tir­los en su fu­tu­ra car­rera, o co­mo quieras de­cir­le.

Y de­spués, claro, para los que re­clu­ta­mos es muy fá­cil de­cir "claro, este mucha­cho mirá, tiene es­to en GH, y es­to otro, y par­ticipó acá, es groso" ... y nos com­pramos la idea de mer­i­toc­ra­ci­a, de que ob­vi­a­mente, es­ta­mos mi­di­en­do una cosa re­al, que un can­dida­to la tiene y otro no, en­tonces no es­ta­mos dis­crim­i­nan­do. ¿Có­mo po­dríamos es­tar dis­crim­i­nan­do si es­ta­mos mi­di­en­do cosas ob­je­ti­vas?

Y nos mo­lesta­mos si al­gu­na vez nos di­cen que tal vez, que se yo, es­ta­mos dis­crim­i­nan­do con­tra los que no son co­mo nosotros, con­tra los que no tenían li­bres las noches de­spués de la facu para boludear con la com­pu, o con­tra los que em­pezaron a es­tu­di­ar más tarde por lo que fuera y ya tenían un laburo, o con­tra las mu­jeres, o con­tra los de otra clase so­cial, etc.

¿Nosotros? Que locu­ra. Co­mo que dis­crim­i­namos nosotros. Nosotros so­mos racionales. So­mos mer­i­tocráti­cos. So­mos ob­je­tivos. Y so­bre todo, so­mos buenísi­mos mintién­donos.

Gyro 0.3

Gyro grows some legs

It was just a few days ago that I start­ed an ex­per­i­men­tal wi­ki project called Gy­ro ... it's al­ways fun when a project just grows fea­tures or­gan­i­cal­ly. It does this, so it makes sense to make it do that, and then this oth­er thing is easy, and so on.

So, here is what hap­pened with Gy­ro:

  • Fed­eri­co Cin­golani made it run on dock­er
  • I added some fea­tures:
    • UI for cre­at­ing new pages
    • UI for delet­ing pages
    • Sup­­port for mul­ti­lev­el pages (so you can have "foo" and "foo/bar")
    • Au­­to­­com­­ple­­tion with ti­­tles in search
    • Bread­­crumbs so you can ac­­tu­al­­ly fol­low the mul­ti­lev­el pages
    • Lots of code cleanup
    • Themes (via Bootswatch)
    • Cus­­tom fonts (via Google We­b­­Fonts)
    • Au­­to­­mat­ic link­ing for Wik­i­­Words if you like that kind of thing

And, I pub­lished it as a Google Chrome Ex­ten­sion ... so you can now have a wi­ki on your chrome. If you saw how it worked be­fore, you may won­der how it be­came an ex­ten­sion, since those are pure Javascrip­t. Well... I made it have plug­gable back­end­s, so it can ei­ther use the old­er San­ic-based python API or use Lo­cal­Stor­age and just save things in­side your brows­er.

The be­hav­ior is iden­ti­cal in both cas­es, it's just a mat­ter of where things are saved, and how they are re­trieved. The goal is that you should not be able to tell apart one im­ple­men­ta­tion from the oth­er, but of course YM­MV.

And since I was al­ready do­ing a chrome ex­ten­sion ... how hard would it be to run it as an elec­tron "desk­top" ap­p? Well, not very. In fac­t, there are no code changes at al­l. It's just a mat­ter of pack­ag­ing.

And then how about releasing it as a snap for Ubuntu? Well, easy too, just try snap install gyro --beta

All the Gyros

Is it fin­ished? Of course not! A non ex­haus­tive list of miss­ing MVP fea­tures in­clude:

  • Im­port / Ex­port da­ta
  • A sync­ing back­end
  • Gen­er­al UI pol­ish (wid­get fo­cus, kbd short­cut­s)
  • Bet­ter er­ror han­dling
  • Gen­er­al test­ing

But in any case, it's nice to see an app take shape this fast and this pain­less­ly.

New mini-project: Gyro

History

Facu­batis­ta: ralsi­na, yo, vos, cerveza, un lo­cal-wik­i-server-he­cho-en-un-­solo-.py-­con-in­ter­faz-web en tres ho­ras, pen­sa­lo

Facu­batis­ta: ralsi­na, you, me, beer, a lo­cal-wik­i-server-­done-in-one-.py-with­-we­b-in­ter­face in three hours, think about it

/images/gyro-1.thumbnail.png

The next day.

So, I could not get to­geth­er with Facu, but I did sort of write it, and it's Gy­ro. [1]

Technical Details

Gy­ro has two part­s: a very sim­ple back­end, im­ple­ment­ed us­ing San­ic [2] which does a few things:

  • Serve stat­ic files out of _stat­ic/

  • Serve tem­plat­ed mark­down out of pages/

  • Save mark­down to pages/

  • Keep an in­dex of file con­tents up­dat­ed in _stat­ic/in­dex.js

The oth­er part is a web­page, im­plem­nt­ed us­ing Boot­strap [3] and JQuery [4]. That page can:

  • Show mark­­down, us­ing Show­­down [5]

  • Ed­it mark­­down, us­ing Sim­­pleMDE [6]

  • Search in your pages us­ing Lunr [7]

And that's it. Open the site on any URL that doesn't start with _static and contains only letters and numbers:

  • http://lo­­cal­host:8000/My­­Page : GOOD

  • http://lo­­cal­host:8000/My­Dir/My­­Page: BAD

  • http://lo­­cal­host:8000/__­­foo­bar__: BAD

At first the page will be sort of empty, but if you edit it and save it, it won't be empty anymore. You can link to other pages (even ones you have not created) using the standard markdown syntax: [go to Foo­Bar](­Foo­Bar)

There is re­al­ly not much else to say about it, if you try it and find bugs, file an is­sue and as usu­al patch­es are wel­come.



Contents © 2000-2024 Roberto Alsina