Ir al contenido principal

Ralsina.Me — El sitio web de Roberto Alsina

Ahí lo tenés al pelotude...

He te­ni­do el des­agra­do de que Google me su­gie­ra leer la "no­ta" in­ti­tu­la­da "Un len­gua­je in­clu­si­vo que di­vi­de" es­cri­ta por Al­ber­to Be­ne­gas Lyn­ch (h) en In­fo­bae.

Mi pri­me­ra reac­ción es ... que pe­lo­tu­do es Be­ne­gas Lyn­ch (h) pe­ro no, eso no le ha­ce jus­ti­cia. Be­ne­gas Lyn­ch(h) es pe­lo­tu­de. Por­que sé que di­cho así le mo­les­ta un po­co má­s.

Co­mo es do­min­go a la no­che y es­toy es­pe­ran­do el de­li­ve­r­y, va­mos a gri­tar­le a la nu­be un ra­ti­to con ex­ten­sas ci­tas de esa "no­ta" y mu­cho más ex­ten­sos co­men­ta­rios so­bre la mis­ma, por­que siem­pre hay que dar por el bu­rro más de lo que el bu­rro va­le.

Has­ta la irrup­ción de es­ta mo­da el idio­ma co­mún era un puen­te de unión

Ehhh en se­rio? El len­gua­je es un me­dio de co­mu­ni­ca­ción. Se usa tan­to pa­ra unir co­mo pa­ra se­pa­ra­r. Cuan­do te di­go "Al­ber­to Be­ne­gas Lyn­ch(h), sos un pe­lo­tu­do a cuer­da" así, usan­do el len­gua­je "co­mú­n" co­mo le de­cís, no in­clu­si­vo, no es­toy ten­dien­do un puen­te de unión con vo­s, es­toy ca­van­do un fo­so, y lle­nán­do­lo de co­co­dri­los es­pe­ran­do que me aís­le de vo­s. En­tien­de?

Los dic­cio­na­rios son li­bros de his­to­ria que mu­tan con el tiem­po se­gún sean las uti­li­za­cio­nes del len­gua­je, un ins­tru­men­to es­en­cial en pri­mer tér­mino pa­ra pen­sar y en se­gun­do lu­gar pa­ra la co­mu­ni­ca­ció­n.

Esa fra­se so­bre los dic­cio­na­rios le gus­ta al es­ti­ma­do Be­ne­gas Lyn­ch (h). Por ejem­plo en su no­ta de ene­ro "Las cla­ves pa­ra en­ten­der y ha­blar co­mo co­rres­pon­de so­bre el con­ser­va­du­ris­mo" la usa. Por­que ya sa­be­n, co­mo di­ce Mir­tha, el pú­bli­co se re­nue­va.

De to­das for­ma­s, no, no son eso y no son pa­ra eso.

¿Ah, qué, que ten­go que jus­ti­fi­car­lo? ¿Por qué, si Al­ber­to (h) no lo jus­ti­fi­ca un ca­z­zo y sa­le en In­fo­bae?

Co­mo se ha con­sig­na­do en el pre­fa­cio a la obra del cé­le­bre pro­fe­sor de la Uni­ver­si­dad de Pa­rís Jo­se­ph Ven­dr­yes ti­tu­la­da El len­gua­je. In­tro­duc­ción lin­güís­ti­ca a la his­to­ria, el len­gua­je mar­ca “el fin de la his­to­ria zooló­gi­ca y el prin­ci­pio de la his­to­ria hu­ma­na”.

Efec­ti­va­men­te, Jo­se­ph Ven­dr­yes ... no di­jo eso. Ven­dr­yes era un lin­güis­ta es­pe­cia­li­za­do en len­gua­jes cel­tas que sí di­jo "C'est un ac­te so­cial en ce qu'il ré­pond à un be­soin de co­m­mu­ni­ca­tion en­tre les ho­m­me­s." ... por­que ese li­bro salió en 1921 y pro­ba­ble­men­te aho­ra no hu­bie­ra di­cho "les ho­m­me­s", pe­ro co­mo les di­je ... no di­jo eso que ci­ta Be­ne­gas (h) por­que eso lo di­jo Hen­ri Be­rr, que es el que es­cri­bió el pre­fa­cio.

View post on imgur.com

Pe­ro bué, igual no apor­ta una go­ma a lo que quie­re de­cir Al­berti­to­(h), na­da más ci­ta fran­ce­ses muer­tos por­que en sus cír­cu­los so­cia­les eso da una pá­ti­na de res­pe­ta­bi­li­da­d, aun­que los ci­te ma­l.

Tam­bién el ex­tra­or­di­na­rio lin­güis­ta Noam Cho­msky (tan le­jos de la tra­di­ción de pen­sa­mien­to li­be­ra­l) que “la len­gua cons­ti­tu­ye una ma­ni­fes­ta­ción cla­ve de la men­te dis­tin­ta de la es­truc­tu­ra ma­te­rial del hom­bre”

Mas allá de que Lyn­ch(h) se ol­vi­dó el ver­bo, sí, Noam Cho­msky di­jo "el hom­bre". Ah no, por­que Cho­msky no es­cri­be en cas­te­llano. Cho­msky di­jo al­go pa­re­ci­do? Tal ve­z. Pe­ro así, tex­tual co­mo lo ci­ta Be­ne­gas (h)? No, no lo di­jo, o si lo di­jo na­die nun­ca lo pu­so en In­ter­ne­t.

Pe­ro ... sa­bían que al­guien le pre­gun­tó una vez a Cho­msky acer­ca del len­gua­je in­clu­si­vo? Y que de he­cho le pre­gun­ta­ron con re­fe­ren­cia a ... Ar­gen­ti­na? No pue­do con­fir­mar la ve­ra­ci­da­d, pe­ro es el ni­vel que es­ta­mos ma­ne­jan­do:

Me: So­rry to bo­ther you wi­th so many ques­tions but I al­so wanted to ask you about in­clu­si­ve lan­gua­ge, I'm from Ar­gen­ti­na, I do­n't know if you speak spa­nish or not but nor­ma­lly ma­le things fi­nish wi­th "O" and fe­ma­le fi­nish wi­th "A". For exam­ple, ga­to means ma­le ca­t, and ga­ta means fe­ma­le ca­t. And so­me peo­ple want to chan­ge lan­gua­ge in or­der to be in­clu­si­ve. They use x, or @, or so­me peo­ple even use "E" be­cau­se peo­ple do­n't know how to pro­noun­ce wi­th x or @. And I thi­nk in the US so­me peo­ple of the sa­me mo­ve­ment say peo­ple should start sa­ying "the­y" ins­tead of he or she in ca­se a per­son is tran­s. What do you thi­nk about this?

Cho­msk­y: It’s a bit of a nui­s­an­ce, but if peo­ple thi­nk it’s im­por­tan­t, OK

Si, tal vez Cho­msky opi­na que el len­gua­je in­clu­si­vo "es un po­co mo­les­to, pe­ro si a al­guien le pa­re­ce im­por­tan­te, OK". Lo que sí se­gu­ro que di­jo es "Po­li­ti­cal co­rrec­tness is a heal­thy ex­pan­sion of mo­ral con­cer­n". La te­sis pro­pues­ta por Be­ne­gas en es­ta pe­lo­tu­dez que es­cri­bió se­ría in­com­pren­si­ble pa­ra Cho­msky mas allá de "Wha­t's this ass­ho­le ta­lking about and why did he men­tion me?".

... y Mi­cha­el Po­lan­yi, el gran pro­fe­sor de la Uni­ver­si­dad de Ox­for­d, des­ta­ca que “la era pre-­ver­bal es­ta­ba ro­dea­da de una gran os­cu­ri­da­d”.

Ahhh Po­lan­yi. Un gro­so.

Sa­brá Hi­jo de Be­ne­gas a qué se re­fe­ría Po­lan­yi? No creo. Po­lan­yi es el que de­fi­nió el con­cep­to de "co­no­ci­mien­to tá­ci­to­". Cuan­do Po­lan­yi ha­bla de que al­go es "pre­ver­ba­l" se re­fie­re a que es un co­no­ci­mien­to im­plí­ci­to y no ex­pre­sa­do ver­bal­men­te. En otras pa­la­bra­s, no tie­ne ca­z­zo que ver con lo que es­tá bal­bu­cean­do Be­ne­ga­s­so­n, pe­ro ... ya les di­je, ci­tar fi­ló­so­fos que­da lin­do.

Aun­que en es­te ca­so "ci­ta­r" es me­dio una exa­ge­ra­ción por­que a pe­sar de bus­car to­das las com­bi­na­cio­nes y si­nó­ni­mos que se me ocu­rrie­ron no he po­di­do en­con­trar na­da que ha­ya di­cho Po­lan­yi que se pa­rez­ca un po­co a lo que "ci­ta" es­te co­so.

Co­mo ha se­ña­la­do Ma­rio Var­gas Llo­sa “el len­gua­je in­clu­si­vo es una abe­rra­ció­n” y Ar­tu­ro Pé­re­z-­Re­ver­te con­clu­ye que “el len­gua­je in­clu­si­vo es una es­tu­pi­de­z”.

Es ver­dad que am­bos se­ño­res pe­lo­tu­dos es­cri­to­res han di­cho eso.

Es­to por for­zar las co­sas, des­na­tu­ra­li­zar el len­gua­je y pre­ten­der la im­po­si­ción de un dis­cur­so a contra­ma­no de los usos co­rrien­tes.

No me ca­be du­da que pue­de tal vez ha­ber si­do por eso. Son opi­nio­nes.

In­clu­so hay go­ber­nan­tes que se han di­ri­gi­do a sus au­dien­cias co­mo “mi­llo­nes y mi­llo­na­s”, co­mo “miem­bros y miem­bra­s” co­mo “por­ta­vo­ce­s” y “por­ta­vo­sas” y de­más dis­la­tes.

  • Na­die ja­más di­jo "mi­llo­nes y mi­llo­na­s"
  • Miem­bros y miem­bras es­tá bien (¿­por qué? Por­que me pla­ce. Y el len­gua­je es así.)
  • Na­die ja­más di­jo "por­ta­vo­sas" an­tes de que lo di­je­ra Al­ber­to Be­ne­gas Lyn­ch, se­gun­do de su nom­bre.

En es­te cu­rio­so y pri­mi­ti­vo len­gua­je so­lo fal­ta que se sus­ti­tu­ya el no por na o ne “pa­ra no ser ma­chis­ta” o la san­dez de re­fe­rir­se a la de­lin­cuen­ta, la nar­co­tra­fi­can­ta y pa­ra no ofen­der a los va­ro­nes alu­dir al poe­to. Tam­bién Ri­car­do Güi­ral­des de­bió ha­cer fi­gu­rar a su co­no­ci­do per­so­na­je co­mo Se­gun­de Som­bre y, en es­ta mis­ma lí­nea ar­gu­men­tal re­fe­rir­se a los “gau­che­s” y nues­tro him­no, en­tre otras co­sas, de­be­ría in­cluir “el gri­te sagra­de”. Y an­tes que na­da la par­la de­bie­ra ser “len­gua­je in­clu­si­ve” pa­ra even­tual­men­te “e­vi­tar cier­ta re­mi­nis­cen­cia ma­chis­ta”.

Eso se lla­ma "hom­bre de pa­ja". Es plan­tear una po­si­ción ex­tre­ma que na­die en rea­li­dad pro­po­ne y pro­ce­der a de­mo­ler­la con fa­ci­li­da­d. Es una fa­la­cia por­que es­tá bá­si­ca­men­te dis­cu­tien­do con su pro­pia ima­gi­na­ción y fe­li­ci­tán­do­se por ga­nar­le.

Pro­pon­go que la re­nom­bre­mos co­mo "u­na pa­je­rea­da". Por ejem­plo: "Al­ber­to el pe­que­ño es­tá di­cien­do una pa­je­rea­da".

Pun­tos ex­tras por usar co­mi­llas pa­ra ci­tar a las vo­ces den­tro de la ca­be­za de Al­ber­ti­co Be­ne­ga­s.

Hay por una par­te el prin­ci­pio de eco­no­mía del len­gua­je pa­ra no ex­ten­der­se in­ne­ce­sa­ria­men­te, por ejem­plo, en “los y las es­tu­dian­tes” y equi­va­len­tes que re­ve­lan un gus­to des­me­di­do por las re­dun­dan­cia­s. Por otra par­te, hay sus­tan­ti­vos que in­di­can sexo (pe­rro­/­pe­rra) y otros que no lo in­di­can (pe­rio­dis­ta, per­so­na). Mu­chas pa­la­bras ter­mi­nan en la le­tra a que son ase­xua­das (a­le­g­ría, día, dog­ma, si­lla, ca­sa,) y otros de la mis­ma na­tu­ra­le­za que ter­mi­nan en la le­tra o (cua­der­no, li­bi­do, ma­no, odio, puer­to­).

Si real­men­te el que ci­to tu­vie­ra al­go contra ex­ten­der­se in­ne­ce­sa­ria­men­te su co­lum­na po­dría re­su­mir­se co­mo "El len­gua­je in­clu­si­vo no me gus­ta, me pa­re­ce feo y hay un mon­tón de gen­te que es­tá de acuer­do con­mi­go­", así que me pa­re­ce hi­pó­cri­ta.

Lo de­más ... ob­vie­da­des.

El len­gua­je in­clu­si­vo co­mo par­te de lo “po­lí­ti­ca­men­te co­rrec­to” des­co­no­ce la gra­má­ti­ca co­mo es­truc­tu­ras de la len­gua, la se­mán­ti­ca co­mo sig­ni­fi­ca­do­s, la sin­ta­xis co­mo for­mas de com­bi­nar pa­la­bras y has­ta la fo­né­ti­ca de­bi­do a so­ni­dos ina­pro­pia­dos en el uso de los tér­mi­nos y a ve­ces la mis­ma pro­so­dia pues­to que la pun­tua­ción sue­le ser in­co­rrec­ta en es­tos tex­to­s.

Pri­me­ro: al­guien que es­cri­be tan pom­po­so y ho­rri­ble co­mo Al­ber­to hi­jo de Al­ber­to no de­be­ría ti­rar pie­dras vi­vien­do co­mo vi­ve en un in­ver­na­de­ro, pe­ro ... no? Sim­ple­men­te no. Lo que di­ce no es cier­to.

Al­ber­to Jr con­fun­de "la gra­má­ti­ca" con "las re­glas de gra­má­ti­ca que él co­no­ce", "la sin­ta­xis" con "la sin­ta­xis que le gus­ta" y así to­do. Con­vier­te lo sub­je­ti­vo pro­pio en ob­je­ti­vo mien­tras en el mis­mo pa­so les nie­ga a los de­más la ca­pa­ci­dad de te­ner su pro­pia sub­je­ti­vi­da­d. Aún la RAE no se arro­ga el de­re­cho de de­fi­nir el len­gua­je. Na­da más lo re­gis­tra.

El con­cep­to cla­ve en la ge­nui­na in­clu­sión es el res­pe­to lo cual cons­ti­tu­ye pre­ci­sa­men­te el al­ma del li­be­ra­lis­mo, sin em­bar­go, apa­ren­te­men­te los que pre­ten­den im­po­ner el lla­ma­do len­gua­je in­clu­si­vo ex­clu­yen ma­la­men­te a los que no adhie­ren y re­ve­lan vi­sos au­to­ri­ta­rio­s. Has­ta la irrup­ción de es­ta mo­da el len­gua­je in­cluía a to­dos pe­ro hoy di­vi­de.

¿Quién te obli­ga a ha­blar en in­clu­si­vo, Be­ne­gui­ta­s? ¿Vos ves mu­chas no­tas en dia­rios di­cien­do que los que no ha­blan en in­clu­si­vo ha­blan ma­l? ¿En se­rio, me lo es­tás di­cien­do acá des­de una co­lum­na pu­bli­ca­da en un dia­rio que de­di­cás a de­cir que los que no es­tán de acuer­do con vos son bu­rros y au­to­ri­ta­rio­s?

Lo que les ocu­rre a quie­nes in­sis­ten en el de­no­mi­na­do len­gua­je in­clu­si­vo es que, por un la­do y fue­ra ya del len­gua­je, no com­pren­den lo que im­pli­ca la dis­cri­mi­na­ción y, por otro, no en­tien­den el va­lio­so fe­mi­nis­mo ori­gi­na­l. He es­cri­to so­bre am­bos con­cep­tos pe­ro se ha­ce ne­ce­sa­rio rei­te­rar aun­que más no sea de un mo­do re­su­mi­do y te­le­grá­fi­co so­bre las dos ex­pre­sio­nes.

Ahhh aho­ra Lyn­ch el pos­tre­ro nos va a ex­pli­car el fe­mi­nis­mo. Pe­ro ojo, el "o­ri­gi­na­l", el "va­lio­so­". OG FE­MI­NIST BE­NE­GAS LYN­CH IN DA HOU­SE.

Igual no lo ha­ce. Pos­ta, no es­tá eso en la no­ta. Creo que sa­be que na­die las lee has­ta el fi­nal ... has­ta que vi­ne yo.

Se­gún el dic­cio­na­rio, dis­cri­mi­nar quie­re de­cir di­fe­ren­ciar y dis­cer­ni­r. No hay ac­ción hu­ma­na que no dis­cri­mi­ne: la co­mi­da que ele­gi­mos en­gu­lli­r, los ami­gos con que com­par­ti­re­mos reu­nio­nes, el pe­rió­di­co que lee­mo­s, la aso­cia­ción a la que per­te­ne­ce­mo­s, las li­bre­rías que vi­si­ta­mo­s, la mar­ca del au­to­mó­vil que usa­mo­s, el ti­po de ca­sa en la que ha­bi­ta­mo­s, con quién contrae­mos nup­cia­s, a qué uni­ver­si­dad asis­ti­mo­s, con qué ja­bón nos la­va­mos las ma­no­s, qué tra­ba­jo nos atrae má­s, quié­nes se­rán nues­tros so­cio­s, a qué re­li­gión adhe­ri­mos (o a nin­gu­na), qué arre­glos con­trac­tua­les apro­ba­mos y qué mer­me­la­da les po­ne­mos a las tos­ta­da­s. Sin dis­cri­mi­na­ción no hay ac­ción po­si­ble. El que es in­di­fe­ren­te no ac­túa. En­ton­ces la ac­ción es pre­fe­ren­cia, elec­ció­n, di­fe­ren­cia­ció­n, dis­cer­ni­mien­to y, por en­de, im­pli­ca dis­cri­mi­na­r.

Que ra­ro que el hi­jo del vie­jo Lyn­ch vio la pri­me­ra de­fi­ni­ción del dic­cio­na­rio "S­elec­cio­nar ex­clu­yen­do" y no vió la se­gun­da: "Dar tra­to de­si­gual a una per­so­na o co­lec­ti­vi­dad por mo­ti­vos ra­cia­le­s, re­li­gio­so­s, po­lí­ti­co­s, de sexo, de eda­d, de con­di­ción fí­si­ca o men­ta­l, etc." se le de­be ha­ber pa­sa­do.

Pe­ro aún mas allá de eso .. que es es­to, Fe­liz Do­min­go? Me acuer­do cuan­do esos es­tu­dian­tes te­nían que dar una es­pe­cie de dis­cur­so so­bre cual­quier te­ma, siem­pre em­pe­za­ban "Se­gún el dic­cio­na­rio de la real aca­de­mia es­pa­ño­la, la de­mo­cra­cia es ...." y así.

No es­pe­ra­ba na­da de tí Al­ber­to 2, y aún así lo­gras de­cep­cio­nar­me.

Es­to de­be ser ní­ti­da­men­te se­pa­ra­do de la pre­ten­sió­n, a to­das lu­ces des­ca­be­lla­da, de in­ten­tar el es­ta­ble­ci­mien­to de de­re­chos dis­tin­tos por par­te del apa­ra­to es­ta­ta­l, que, pre­ci­sa­men­te, exis­te pa­ra ve­lar por los de­re­chos y pa­ra ga­ran­ti­zar­lo­s.

Des­de ya. Na­da que ver con na­da, pe­ro des­de ya.

Es­ta dis­cri­mi­na­ción ile­gí­ti­ma echa por tie­rra la po­si­bi­li­dad de que ca­da uno ma­ne­je su vi­da y ha­cien­da co­mo le pa­rez­ca ade­cua­do, es de­ci­r, blo­quea las po­si­bi­li­da­des de que ca­da uno dis­cri­mi­ne acer­ca de sus pre­fe­ren­cia­s,

Ajá

lo cual de­be ser res­pe­ta­do en una so­cie­dad li­bre, siem­pre que no se le­sio­nen igua­les de­re­chos de ter­ce­ro­s. La igual­dad an­te la ley re­sul­ta cru­cia­l, con­cep­to ín­ti­ma­men­te ata­do a la jus­ti­cia, es de­ci­r, a la pro­pie­da­d, del pro­pio cuer­po, a sus pen­sa­mien­tos y a sus per­te­nen­cia­s, en otras pa­la­bra­s, el “dar a ca­da uno lo su­yo­”.

Siem­pre y cuan­do, cla­ro, tus pen­sa­mien­tos no in­clu­yan "el len­gua­je in­clu­si­vo es bue­no­", cla­ro. Si pen­sás eso pen­sás feo, se­gún Be­ne­gas Lyn­ch, Al­ber­to (hi­jo­).

Cu­rio­sa­men­te se han in­ver­ti­do los pa­pe­le­s: se alien­ta la dis­cri­mi­na­ción es­ta­tal con lo que no les per­te­ne­ce a los go­bier­nos y se com­ba­te y con­de­na la dis­cri­mi­na­ción que ca­da uno ha­ce con sus per­te­nen­cia­s. Me­nu­do pro­ble­ma en el que es­ta­mos por es­te ca­mino de la sin­ra­zó­n, en el con­tex­to de una li­ber­tad hoy siem­pre men­guan­te.

Dón­de ire­mos a pa­ra­r!

Por otra par­te, en nom­bre de la no­vel “ac­ción po­si­ti­va” (a­ffir­ma­ti­ve ac­tio­n), im­po­ne cuo­tas com­pul­si­vas en cen­tros aca­dé­mi­cos y lu­ga­res de tra­ba­jo “pa­ra equi­li­brar los dis­tin­tos com­po­nen­tes de la so­cie­da­d”, al efec­to de obli­gar a que se in­cor­po­ren cier­tas pro­por­cio­nes, por ejem­plo, de asiá­ti­co­s, les­bia­na­s, gor­dos y bu­dis­ta­s.

La "no­vel ac­ción po­si­ti­va" (que tra­duc­ción del or­to) exis­te des­de ... 1961. Y to­da­vía le pa­re­ce nue­va al pre­cám­bri­co es­te.

Es­ta im­po­si­ción na­tu­ral­men­te afec­ta de for­ma ne­ga­ti­va la ex­ce­len­cia aca­dé­mi­ca y la ca­li­dad la­bo­ra­l, ya que de­ben se­lec­cio­nar­se can­di­da­tos por ra­zo­nes dis­tin­tas a la com­pe­ten­cia pro­fe­sio­na­l, lo cual de­te­rio­ra la pro­duc­ti­vi­dad con­jun­ta, que, a su ve­z, in­ci­de en el ni­vel de vi­da de to­da la po­bla­ció­n, muy es­pe­cial­men­te de los más ne­ce­si­ta­do­s, cu­yo de­te­rio­ro en los sa­la­rios re­per­cu­te de mo­do más con­tun­den­te da­da su pre­ca­rie­da­d.

Cla­ro, ob­via­men­te la cau­sa de la po­bre­za es que ha­ya un cu­po fe­men­ino en las lis­tas elec­to­ra­le­s. Ha­go mías las pa­la­bras de Ru­th Ba­der Guins­bur­g, cuan­do le pre­gun­ta­ron ¿Cuán­tas mu­je­res le pa­re­ce que se­rían de­ma­sia­das en la cor­te su­pre­ma? y di­jo 9. ¿Por qué? Por­que du­ran­te dos­cien­tos años hu­bo nue­ve hom­bres y a na­die le pa­re­cía ra­ro. En­ton­ces si creés en la igual­dad de de­re­cho­s, ¿por qué no po­dría ha­ber nue­ve mu­je­res?

Por to­do es­to es que re­sul­ta ne­ce­sa­rio in­sis­tir una vez más en que el pre­cep­to me­du­lar de una so­cie­dad abier­ta que la igual­dad de de­re­chos es an­te la ley y no me­dian­te ella, pues­to que es­to úl­ti­mo sig­ni­fi­ca la li­qui­da­ción del de­re­cho, es de­ci­r, la ma­ni­pu­la­ción del apa­ra­to es­ta­tal pa­ra for­zar pseu­do­de­re­chos que siem­pre sig­ni­fi­ca la in­va­sión de de­re­chos de otro­s, quie­nes, con­se­cuen­te­men­te, se ven obli­ga­dos a fi­nan­ciar las pre­ten­sio­nes de aque­llos que con­si­de­ran que les per­te­ne­ce el fru­to del tra­ba­jo ajeno.

Na­die te va a co­brar por usar len­gua­je in­clu­si­vo, Al­ber­to hi­jo de tu ho­mó­ni­mo, así que es­tás di­cien­do irre­le­van­cias re­tró­gra­das peo­res a lo ha­bi­tua­l.

Vi­vi­mos la era de los pre-­jui­cio­s, es de­cir el emi­tir jui­cios so­bre al­go an­tes de co­no­cer­lo: la fo­bia a la dis­cri­mi­na­ción de ca­da uno en sus asun­tos per­so­na­les y el apo­yo in­con­di­cio­nal a la dis­cri­mi­na­ción de de­re­chos por par­te del Le­via­tán es, en gran me­di­da, el re­sul­ta­do de la en­vi­dia, es­to es, el mi­rar con ma­le­vo­len­cia el bien­es­tar aje­no, no el de­seo de emu­lar al me­jo­r, sino que apun­ta a la des­truc­ción del que so­bre­sa­le por sus ca­pa­ci­da­des ata­can­do el mé­ri­to.

Voy a res­pon­der de la úni­ca ma­ne­ra apro­pia­da a es­te so­re­te en for­ma de pá­rra­fo. Prrrrrrrrrrrrr­fffffffffrrrrrrrrrr­t. En tu ca­ra te ti­ro ese pe­do he­dion­do de gor­do que co­mió sus­hi, pe­lo­tu­de que no te­nés ni si­quie­ra un nom­bre que no ha­yas he­re­da­do.

Vi­vi­mos en una era en la que se dis­cri­mi­na lo que no de­be­ría dis­cri­mi­nar­se y no se per­mi­te dis­cri­mi­nar lo que de­be dis­cri­mi­nar­se. Por cier­to, una con­fu­sión muy pe­li­gro­sa. Res­pec­to al fe­mi­nis­mo mo­derno tan adic­to al len­gua­je in­clu­si­vo, rei­te­ro que hay dos ti­pos de fe­mi­nis­mo­s. Uno con­sis­ten­te con la tra­di­ción de pen­sa­mien­to li­be­ral y su eje cen­tral de res­pe­to re­cí­pro­co; el otro, la em­pren­de contra los de­re­chos de las per­so­na­s.

Esa co­ma, ese pun­to y co­ma... ¿Es és­te ma­mer­to el que se atre­ve a acu­sar a otros de des­co­no­cer la gra­má­ti­ca, la sin­ta­xis y la mis­ma pro­so­dia? Des­apa­rez­ca, már­tir de la len­gua, jiha­dis­ta del cas­te­llano con su pe­cho cu­bier­to de pá­rra­fos re­bus­ca­do­s, ci­tas irre­le­van­tes y ar­gu­men­tos fa­la­ces co­mo si fue­ran bom­bas ca­se­ra­s.

Con to­da ra­zón nos re­pug­na y alar­ma la idea de la es­cla­vi­tu­d. Nos re­sul­ta di­fí­cil acep­tar que se pu­die­ra im­plan­tar esa ins­ti­tu­ción a to­das lu­ces es­pan­to­sa, pe­ro a ve­ces se pa­sa por al­to la es­cla­vi­tud en­cu­bier­ta de la mu­jer en la épo­ca del ca­ver­na­rio ma­chis­mo. En­tris­te­ce la si­tua­ción de un ser fe­men­ino que tu­vie­ra al­gu­na am­bi­ción más allá de co­pu­la­r, in­ter­nar­se en la co­ci­na y zur­ci­r.

Sí.

Ima­gi­ne­mos más con­tem­po­rá­nea­men­te a la ex­tra­or­di­na­ria So­phie Scho­ll, ob­je­to de bur­la por ser mu­jer y por se­ña­lar a los ase­si­na­tos del na­zis­mo en una no­ta­ble de­mos­tra­ción de co­ra­je al dis­tri­buir ma­te­rial so­bre la li­ber­tad en me­dios uni­ver­si­ta­rios del na­cio­nal­so­cia­lis­mo (fue con­de­na­da a muer­te, sen­ten­cia eje­cu­ta­da de in­me­dia­to pa­ra que no dar lu­gar a de­fen­sa al­gu­na).

Sí.

Más cer­ca aún en el tiem­po, ima­gi­ne­mos a la in­trépi­da pe­rio­dis­ta An­na Po­li­tko­vska­ya, tam­bién vi­li­pen­dia­da por ser mu­jer y ase­si­na­da en un as­cen­sor por de­nun­ciar la co­rrup­ció­n, los frau­des y el es­píri­tu ma­fio­so de la Ru­sia ac­tua­l.

Ajá.

Pe­ro sin lle­gar a es­tos ac­tos de arro­jo y va­len­tía ex­tre­mo­s, la mu­jer co­mún fue tra­ta­da du­ran­te dé­ca­das y dé­ca­das co­mo un ani­ma­li­to que de­bía ser dúc­til fren­te a los ca­pri­chos y los des­plan­tes de su ma­ri­do, sus her­ma­nos y to­dos los hom­bres que la ro­dea­ran. Mu­chas han si­do vi­das des­per­di­cia­das y ul­tra­ja­das que no de­bían es­tu­diar ni edu­car­se en na­da re­le­van­te pa­ra po­der hun­dir­las más en el fan­go de la to­tal in­di­fe­ren­cia, em­bre­ta­das en una ru­ti­na in­dig­na que so­la­men­te re­sis­tían los es­píri­tus ser­vi­le­s. En otro pla­no, de­be su­bra­yar­se de mo­do en­fá­ti­co el ho­rror de la co­bar­día cri­mi­nal más es­pe­luz­nan­te y ca­na­lles­ca de abu­sos y vio­la­cio­nes.

Cier­to.

En rea­li­da­d, de­jan­do de la­do es­tas úl­ti­mas ac­cio­nes de­lic­ti­vas y vol­vien­do al de­no­mi­na­do ma­chis­mo, en al­gu­nos ca­sos to­da­vía se no­tan ves­ti­gios de tro­glo­di­tas a los que no hay más que mi­rar­les los ros­tros cuan­do ha­ce uso de la pa­la­bra una mu­jer so­bre te­mas que con­si­de­ran pri­va­ti­vos del sexo mas­cu­lino.

Ok.

To­da­vía en al­gu­nas reu­nio­nes so­cia­les se se­pa­ran los sexos en am­bien­tes dis­tin­to­s: unos pa­ra re­fle­xio­nar so­bre “te­mas im­por­tan­tes” y otro pa­ra ha­blar de pa­ña­les y equi­va­len­tes. Hay to­da­vía ma­ri­dos que no pa­re­cen per­ca­tar­se de las in­men­sas ven­ta­jas que le re­por­ta el in­ter­cam­biar opi­nio­nes con sus cón­yu­ges for­ma­do un equi­po pa­ra ha­cer fren­te a to­dos los ava­ta­res y los an­da­ri­ve­les de la vi­da. Los acom­ple­ja­dos sien­ten que pier­den po­si­cio­nes o son des­co­lo­ca­dos si se les die­ra rien­da suel­ta a las de­li­be­ra­cio­nes del sexo fe­men­ino. En ver­dad son in­fra­do­ta­dos que úni­ca­men­te pue­den des­ta­car­se amor­da­zan­do a otra­s.

Bue­no.

Lo di­cho pa­ra na­da su­bes­ti­ma al ama de ca­sa, cu­ya mi­sión cen­tral es na­da me­nos que la for­ma­ción de las al­mas de sus hi­jo­s, por cier­to una ta­rea mu­cho más sig­ni­fi­ca­ti­va y tras­cen­den­te que la de com­prar ba­ra­to y ven­der ca­ro, es de­ci­r, el ar­bi­tra­je a que usual­men­te se de­di­can los ma­ri­dos co­mo si se tra­ta­ra del des­cu­bri­mien­to de la pie­dra fi­lo­so­fa­l, en lu­gar de com­pren­der que se tra­ta de un me­ro me­dio pa­ra, pre­ci­sa­men­te, for­mar­se y for­mar a sus des­cen­dien­tes.

¿Se dan cuen­ta lo que es­tá ha­cien­do, no? Lo de­jo que si­ga un par de pá­rra­fos y lo char­la­mo­s.

La pio­ne­ra en el fe­mi­nis­mo o, en otros tér­mi­no­s, la li­be­ra­ción de la mu­jer de la ante­di­cha es­cla­vi­tud en­cu­bier­ta fue Ma­ry Wo­lls­to­ne­cra­ft, una ex­tra­or­di­na­ria pre­cur­so­ra que es­cri­bió, en 1792, A Vin­di­ca­tion of the Ri­gh­ts of Wo­men, li­bro en el que se leen pá­rra­fos del te­nor del si­guien­te: “¿­Quién ha de­cre­ta­do que el hom­bre es el úni­co juez cuan­do la mu­jer com­par­te con él el don de la ra­zó­n? Es­te es el ti­po de ar­gu­men­ta­ción que uti­li­zan los ti­ra­nos pu­si­lá­ni­mes de to­da es­pe­cie”.

Gro­sa.

Pen­se­mos en lo que sig­ni­fi­ca­ba es­cri­bir y pu­bli­car en esa épo­ca en me­dio de la más en­fá­ti­ca con­de­na so­cia­l. A es­ta lí­nea rei­vin­di­ca­to­ria adhi­rie­ron mu­chas fi­gu­ras de muy di­ver­sa per­sua­sión in­te­lec­tua­l, des­de las li­be­ra­les Is­abel Pa­ter­so­n, Ro­se Wil­der La­ne, Vol­ta­ri­ne de Cle­y­re y Su­zan­ne La­Fo­lle­tte. Des­ta­co tam­bién el ca­so de Vir­gi­nia Wool­f, que sos­te­nía: “No hay ba­rre­ra, ce­rra­du­ra ni ce­rro­jo que pue­das im­po­ner a la li­ber­tad de mi men­te”.

Muy bien.

En to­do ca­so, es­fuer­zos en di­ver­sas di­rec­cio­nes pa­ra que se re­co­noz­ca un lu­gar dig­no a las mu­je­res se des­per­di­cian ma­la­men­te a tra­vés del inau­di­to “fe­mi­nis­mo mo­der­no­”, in­te­gra­do en su ma­yor par­te por mi­li­tan­tes re­sen­ti­da­s, ge­ne­ral­men­te abor­tis­tas y a ve­ces gol­pea­do­ras (co­mo lo ocu­rri­do en una mar­cha fe­mi­nis­ta en Bue­nos Ai­res con mu­cha­chos que pre­ten­dían lim­piar la Ca­te­dral de ins­crip­cio­nes obs­ce­na­s).

Y ahí lle­gó. Era tan ob­vio, se lo vio ve­nir de le­jos co­mo ma­lón en tiem­po de se­ca. ¿Las mu­je­res del pa­sa­do, ya muer­ta­s, cu­yos lo­gros ya es­tán na­tu­ra­li­za­do­s? ¡Son he­ro­í­na­s! ¡Un ejem­plo a se­gui­r!

¿Las que si­gan su ejem­plo? Son mons­truo­s.

Lo chis­to­so es que se­res de la ca­la­ña de Al­ber­ti­nho, cuan­do Vir­gi­nia Woolf es­ta­ba vi­va, y cuan­do Ma­ry Sto­newo­ll­cra­ft es­ta­ba vi­va, y cuan­do ca­da una de las que men­cio­na es­ta­ba vi­va ... de­cían co­sas si­mi­la­res de ella­s.

Co­men­zó es­ta tra­di­ción ne­fas­ta An­na Do­y­le Whee­le­r, quien es­ta­ba muy in­fluen­cia­da por Sain­t-­Si­mon y mu­cho más ade­lan­te si­guie­ron Cla­ra Fra­se­r, Em­ma Gold­man, Don­na Ha­raway y Syl­via Wal­bur­g, quie­nes apli­ca­ron la te­sis ma­r­xis­ta de la opre­sión a las rei­vin­di­ca­cio­nes fe­mi­nis­tas y sos­tie­nen que la pro­pie­dad pri­va­da cons­ti­tu­ye una ins­ti­tu­ción que de­be abo­lir­se.

Ma­r­xis­ta­s. Siem­pre es cul­pa de los ma­r­xis­ta­s. Aún cuan­do no eran los ma­r­xis­ta­s, eran los ma­r­xis­ta­s.

La ma­yo­ría de las que ci­ta eran sim­ple­men­te so­cia­lis­ta­s.

Car­los Gra­né, en El pu­ño in­vi­si­ble, de­nun­cia un pre­ten­di­do fe­mi­nis­mo en­ca­ja­do de contra­ban­do en el ar­te. En es­te sen­ti­do es­cri­be que “la fi­ló­so­fa” Lu­ce Iri­ga­ray es­cri­be que “La ecua­ción de Eins­tein de e = m.­c2 [la ener­gía es igual a la ma­sa por la ve­lo­ci­dad de la luz al cua­dra­do] es ma­chis­ta. ¿La ra­zó­n? en jer­ga fe­mi­nis­ta sig­ni­fi­ca que la ecua­ción de Eins­tein fo­men­ta la ló­gi­ca del más rá­pi­do, lo cual res­pon­de a un tí­pi­co pre­jui­cio ma­chis­ta”.

Tam­bién hay ma­chis­tas que han di­cho pe­lo­tu­de­ce­s. De to­das for­mas no di­jo exac­ta­men­te eso. Di­jo al­go pa­re­ci­do, pe­ro no eso. Pa­re­ce que lo de ci­tar no se le da bien a es­te mu­cha­cho.

Y es­a, gen­te (¡­Fí­jen­se co­mo ha­blo en in­clu­si­vo, su­fra, Be­ne­gas el exi­guo­!) es su su­pues­ta ex­pli­ca­ción so­bre el fe­mi­nis­mo. Dar una lis­ta de fe­mi­nis­ta­s, unos lu­ga­res co­mu­nes, de­cir que las fe­mi­nis­tas de aho­ra son ma­las y las de an­tes eran bue­na­s. Mi­rá vo­s, che. ¿Al­go pa­ra de­cir no te­nía?

Se tra­ta de “in­di­vi­dua­s” di­rían las del len­gua­je in­clu­si­vo pe­ro que son va­cías in­te­rior­men­te, con com­ple­jo de in­fe­rio­ri­dad y es­píri­tu to­ta­li­ta­rio. Es­te es el con­tex­to en el que Nati Mis­tral afir­mó: “Soy an­ti­fe­mi­nis­ta por­que soy muy fe­men­i­na”.

Co­mo di­jo tam­bién Nati Mis­tra­l: "Las fe­mi­nis­tas os es­tán ama­ri­co­nan­do­". ¿Ves que es cier­to que mu­cha gen­te di­ce pe­lo­tu­de­ce­s?

El si­guien­te pá­rra­fo es ho­rren­do. Va­mos a des­pie­zar­lo co­mo un po­llo, a ver si hay car­ne.

En re­su­men, co­mo ano­ta­mos al abrir es­ta no­ta,

"Ig­no­ran la gra­má­ti­ca y la pro­so­dia" se atre­vió a de­ci­r.

el len­gua­je sir­ve prin­ci­pal­men­te pa­ra pen­sar y lue­go pa­ra trans­mi­tir nues­tros pen­sa­mien­tos

Ehhhh no. Hay pen­sa­mien­to pre­ver­ba­l. Si se hu­bie­ra mo­les­ta­do en leer a Po­lan­yi en vez de a ci­tar­lo lo sa­bría. Por ejem­plo, co­mo re­su­me Lo­ren­zo Mag­na­ni: "Si to­do el co­no­ci­mien­to es ex­plí­ci­to y po­si­ble de ex­pre­sar­se cla­ra­men­te, no es po­si­ble co­no­cer un pro­ble­ma o bus­car su so­lu­ció­n; si los pro­ble­mas exis­ten y se pue­den des­cu­brir co­sas re­sol­vién­do­lo­s, po­de­mos co­no­cer co­sas que no po­de­mos ex­pre­sar".

Ve­s, Lyn­ch, que es me­jor leer que ci­ta­r?

por lo que fa­bri­ca­cio­nes fan­ta­sio­sas im­pi­den el ade­cua­do pen­sa­mien­to y la co­mu­ni­ca­ción

Ya sa­be­n, si ha­blan de for­ma in­clu­si­va pien­san feo y Al­ber­to no en­tien­de.

No me ex­tra­ña­ría que si es­to si­gue su cur­so se sus­ti­tui­rá una de las fa­la­cias más es­tu­dia­das en ló­gi­ca des­de tiem­po in­me­mo­rial por al­gu­na cu­rio­si­dad gra­ma­ti­ca­l: me re­fie­ro a la fa­la­cia ad ho­mi­ne­m.

¿¿¿¿¿­QUE TIE­NE QUE VE­R????

Vo­s, Al­ber­to Be­ne­gas Lyn­ch (2), que usa co­mo úni­co ar­gu­men­to contra el fe­mi­nis­mo mo­derno cri­ti­car a al­gu­nas de sus pro­po­nen­tes... ¿Te es­tás que­jan­do de la fa­la­cia ad ho­mi­ne­m? Es má­s, de que le cam­bien el nom­bre por­que em­pie­za con "ho­m"? ¿E­se es el re­ma­te de la co­lum­na? Que ma­ne­ra de que­dar­se sin na­fta el fiti­to de tu in­te­lec­to, Al­ber­to Be­ne­gas Lyn­ch, hi­jo.

¿Es es­to lo que pa­sa por un co­lum­nis­ta de opi­nión en Ar­gen­ti­na 2020?

Mi con­se­jo, In­fo­bae:

  • Bus­quen a al­guien que se­pa es­cri­bir
  • Bus­quen a al­guien que ha­ya leí­do a los au­to­res que ci­ta, y que de vez en cuan­do los ci­te co­rrec­ta­men­te
  • Bus­quen a al­guien que ten­ga al­gu­na idea en su ca­be­za que no sea "el pa­sa­do era me­jor y la mo­der­ni­dad me con­fun­de"

Nin­guno de esos se va a lla­mar Al­ber­to Be­ne­gas Lyn­ch, hi­jo o no.

Own your data: mirroring your Github

Yes, you SHOULD own your da­ta. Specif­i­cal­ly, if you are cod­ing some­thing, you should own it. And I don't mean own­ing in the sense of "I have the copy­right" be­cause sure, you al­ready do. There are thou­sands of lines of code I wrote in the 90s and 2000s of which there is no ex­tant copy. NONE. Weeks and months of code, all gone, for­ev­er.

I mean own in the sense of HAV­ING A COPY OF IT. You should have a copy of your code.

No, hav­ing it up in GitHub is not the same as hav­ing a copy, be­cause you may lose the ac­count (seen it hap­pen) or delete the re­po (done it ac­ci­den­tal­ly) or they may just delete it for what­ev­er rea­son (it hap­pens)

No, having it up in GitHub and having a git clone in your machine is not enough, because you are not going to pull every day, and checkout every branch.

No, us­ing Git­Lab in­stead or in ad­di­tion to GitHub is not the same as own­ing a copy.

So, how do you own a copy?

You set­up your own pri­vate GitHub-­like-thingie.

My favourite one is Gitea ... it does 80% of what GitHub does, for free, from a sin­gle self­-­con­tained bi­na­ry and it runs just fine in a Rasp­ber­ry Pi 3.

It has a fea­ture to clone a GH re­po. It will pe­ri­od­i­cal­ly clone all the branch­es, and keep them up to date. You can then con­tin­ue to work as usu­al and it will do its thing in the back­ground, unat­tend­ed.

Or you can use it as source of truth and make GH the mir­ror. Your choice.

So, what's left? Mak­ing a copy of all your GH re­pos.

Turns out there is a nice script to do that: http­s://github.­com/­jaedle/mir­ror-­to-gitea

You will need:

  • Gitea run­ning some­where with some free disk space
  • Dock­er run­ning some­where
  • Gen­er­ate a app to­ken in Gitea
  • Fol­low sim­ple in­struc­tions (it's one com­mand)
  • Wait from a few min­utes to a few hours, de­pend­ing on how much you are mir­ror­ing.

And voilá.

Soft skill: naming things

Intro

There is a some­what ar­bi­­trary sep­a­ra­­tion in tech be­tween soft and hard skil­l­s.

Hard skills are tech­ni­­cal skil­l­s. Know­ing a pro­­gram­ming lan­guage. Un­der­­s­tand­ing a pro­­to­­col. Ex­pe­ri­ence with a spe­­cif­ic piece of soft­­ware. Which is all good and nice, of course. Most of us work­ing in tech en­joy these "hard skil­l­s", or we would work on some­thing else, right?

Soft skills is ev­ery­thing else. Know­ing how to ne­­go­ti­ate your sal­lary? Soft. Be­ing good man­ag­ing your tick­­et­s? Soft. Com­­mu­ni­­ca­­tion? Pre­sen­­ta­­tion of knowl­­edge? Knowl­­edge shar­ing? Soft, soft, soft.

See more about soft skills here.

To­day's soft skil­l?

Naming Things

Which is, of course, one of the fa­mous two hard things in com­put­er sci­ence1

There are on­ly two hard things in Com­put­er Sci­ence: cache in­val­i­da­tion and nam­ing things.

-- Phil Karl­ton

This is an un­der­rat­ed skil­l. Ad­ver­tis­ers and wiz­ards know a good name is a big deal, and once a name is ap­plied, get­ting rid of it is very dif­fi­cult, so it's a good idea to try to get it right (or at least not hor­ri­bly wrong) the first time.

Know your audience

You will see here rules. They are all meant to be bro­ken on oc­ca­sion. Which ones can be bro­ken and which ones can't?

It de­pend­s.

If it's an in­ter­nal tool in a com­pa­ny where ev­ery­one speaks en­glish, then you don't need to spend much ef­fort mak­ing sure it does­n't mean "tes­ti­cles" in ger­man (it's Ho­den, BTW)

If it's a niche open source tool then the rule against ob­scure jokes does­n't re­al­ly ap­ply be­cause there's tra­di­tion.

OTOH call­ing things by of­fen­sive names with in­tent is prob­a­bly al­ways a bad idea.

Where do you draw the line? Well, if I could give you an al­go­rithm for that it would not be a soft skil­l, would it?

Rules For Names

So, what's a good name?

It's not a common word.

Make it easy to google. Please. Make it be some­thing that's not al­ready a much larg­er thing. Do not call your big­int li­brary "Grande". No­body will be able to ask about it with­out be­ing flood­ed by links about tiny singers and large (not not the largest) cof­fees.

So, if you can't come up with a very un­com­mon word ... go to oth­er lan­guages. Go to un­usu­al lan­guages. That, plus con­tex­t, will help.

It's not a "bad word" in another language.

Yeah, that suck­s. But hey, it's al­so hard to fig­ure out in ad­vance. At least check Eng­lish Span­ish and Can­tonese ?

There is a rea­son why the Mit­subishi Pa­jero is called "Mon­tero" in span­ish-s­peak­ing coun­tries.

It's not an obscure joke.

Python is called Python be­cause of Mon­ty Python. Which means the place where you down­load­ed pack­ages was called "The Cheese Shop". And the for­mat for the pack­ages was called a wheel (as in "a wheel of cheese").

Ob­scure jokes have a ten­den­cy to en­cour­age sec­ondary, more ob­scure jokes to the point of in­co­her­ence. Try ex­plain­ing "why is this called a wheel?".

Re­cur­sive acronyms count as ob­scure jokes. Yes.

Make it memorable and descriptive.

Not "Ob­ject Adapter Li­brary"

Not "Lan­guage Ex­ten­sion Pack­age"

Yes, those names are "de­scrip­tive" in a dry, to­tal­ly un­in­for­ma­tive way, but I am go­ing to for­get them in 30 sec­onds and I just made them up right now.

So, use an ar­bi­trary, mem­o­rable name. If it works as a men­motech­nic for what the thing does, bet­ter. Good ex­am­ples:

  • SQLAlche­my: mem­o­rable. It's about SQL. It sug­­gest com­­pli­­ca­­tion and prob­a­bly some su­per­­nat­u­ral in­­ter­ven­­tion will be nec­es­sary.

  • Djan­­go: mem­o­rable.

  • Ru­­by on Rail­s: mem­o­rable. It's about Ru­­by. Ok, so it's not about train­s, but "on rail­s" has metaphor­i­­cal mean­ing.

And yes, this rule 65% of the time col­lides with "not an ob­scure joke".

Make it short

"L­lan­fair­p­wl­l-g­wyn­gyll­gogerych­wyrn­drob-wl­l­l­lan­tysil­i­o­gogogoch En­ter­prise Edi­tion" is bad.

Don't make it too short

"C" is bad (it was good in the 70s!).

Make it clear in context

Nam­ing things is not on­ly about nam­ing soft­ware or things, it's al­so about vari­ables, class­es, and iden­ti­fiers in code in gen­er­al.

  • "i" is of­ten bad
  • "str­First­Name" is al­ways bad
  • "data" is al­ways re­al­ly bad
  • "Ob­jec­tAdapter­In­ter­face" is mak­ing my eyes bleed.

A name is not a de­scrip­tion. So, "str­First­Name" is try­ing to de­scribe "it's a string with the first name in it". What else is it go­ing to be? A boolean? Do you call your pet "dog­Fi­do"?

But a name has to be a name. If you call your dog "dog", then "data" and "i" will look good to you.

And a name is not a DNA test. You don't need to de­scribe the an­ces­try of things, just say what they are. A glass is not a Drink­ing­Wa­ter­Con­tain­er. It's a glass. 2

Name things what they are, or some­thing that lets you iden­ti­fy them. I know, rad­i­cal.

Conclusion

You did­n't ex­pect me to solve one of the hard prob­lem­s, did you? No, I won't. These are just, like I said, rules meant to be bro­ken. But you need to break them con­scious­ly.

For ex­am­ple, I am nam­ing a project of mine Co­braPy. be­cause it's an 80s-style retro thing, and in the 80s Karate Kid was cool, and in Karate Kid there's Co­bra Kai, and that sort of sounds like Co­braPy and Py is for Python, and Co­bras are al­so snakes.

But I named it that on pur­pose.


  1. Which is the source of an in­­­fi­nite num­ber of jokes.  

  2. See This com­ic  

CobraPy? CobraPew! Pew!

It has been a week and I had not re­al­ly touched Co­braPy my 80s-style python en­vi­ronem­nt at al­l. UN­TIL YES­TER­DAY.

So, how is it look­ing now? Like this, us­ing as­sets from the AWE­SOME ken­ney.nl:

I have added:

  • Sup­port for mu­sic (y­ou are lis­ten­ing to 80616-lunchip.xm)
  • Sup­port for sounds
  • Some im­prove­ments to the sprite en­gine (reusing tex­tures and such)
  • Bet­ter key­board sup­port, or at least one that's more use­ful for games
  • Fixed a bunch of bugs
  • Added col­li­sion de­tec­tion (did not make it to the video but it's there)

So let's go over the whole source code for that "game" and see how it work­s? Keep in mind that this code will look bizarre for your stan­dard Python pro­gram­mer be­cause it's de­lib­er­ate­ly done in a ... "ba­sic" style? Even in a BA­SIC style. Which means it aims to be more "struc­tured pro­gram­ming" than what you are used to see­ing.

Al­so, there are no guar­an­tees that any of the APIs ex­posed will even ex­ist to­mor­row, since this is still in a pro­to­typ­ing phase and things will change.

import time

load_sprite("player", "assets/PNG/playerShip3_orange.png")
x = 100
y = 500
step = 3
move_sprite("player", x, y)

We cre­at­ed the in­trepid play­er's ship, and put it "some­where". Sprites are iden­ti­fied by a name. All sprite op­er­a­tions will use that name to know what sprite should be af­fect­ed.

# A fleet of bad ships
fleet = [
    [f"enemy-1-{x}" for x in range(7)],
    [f"enemy-2-{x}" for x in range(7)],
    [f"enemy-3-{x}" for x in range(7)],
    [f"enemy-4-{x}" for x in range(7)],
]

for invader in fleet[0]:
    load_sprite(invader, "assets/PNG/Enemies/enemyBlack1.png")
for invader in fleet[1]:
    load_sprite(invader, "assets/PNG/Enemies/enemyBlue2.png")
for invader in fleet[2]:
    load_sprite(invader, "assets/PNG/Enemies/enemyGreen3.png")
for invader in fleet[3]:
    load_sprite(invader, "assets/PNG/Enemies/enemyRed4.png")

Again, just a few ships with dif­fer­ent look­s.


def move_fleet(x, y):
    """Move fleet so the left-top alien is in position x, y"""
    for inv_y, row in enumerate(fleet):
        for inv_x, invader in enumerate(row):
            move_sprite(invader, x + 90 * inv_x, y + 90 * inv_y)


fleet_x = 50
fleet_y = 50
fleet_step_x = 1
fleet_step_y = 5

A func­tion to move the fleet as a whole, and some in­fo about it, lo­ca­tion and speed.

load_sprite("laser", "assets/PNG/Lasers/laserBlue01.png")
load_sound("laser", "assets/Audio/laserRetro_004.ogg")
laser_last_shot = time.time()
laser_x = -100
laser_y = 0


def shoot():
    global laser_x, laser_y, x, y, laser_last_shot
    play_sound("laser")
    laser_x = x
    laser_y = y
    laser_last_shot = time.time()

Same for our lonely bullet, but we have a couple of new things. With load_sound we load into the program a sound (surprise!) and with play_sound it's played. Just like sprites, they are identified by name.

We keep track of when we shoot be­cause this is a ship, not a ma­chine­gun, Jim!

def check_hit():
    global laser_last_shot
    t1 = time.time()
    global laser_x
    for row in fleet:
        for invader in row:
            if check_collision("laser", invader):
                laser_x = -100
                laser_last_shot = 0

Col­li­sion de­tec­tion! If the bul­let hits an in­vad­er ... well, we can't make it ex­plode yet, but we move the bul­let out and al­low the us­er to shoot again, at least.

load_music_stream("background", "80616-lunchip.xm")
play_music_stream("background")

Just load and play a nice chip­tune! As usu­al, mu­sic is iden­ti­fied by a la­bel, so we can have more than one and play the one we wan­t.

def gameloop():
    global x, fleet_x, fleet_y, fleet_step_x, fleet_step_y, laser_y

The gameloop function is special. Whatever you put here CobraPy will try to run it 60 times a second. No faster, maybe slower if your gameloop takes too long. So this is where you do things like update the screen and interact with the user. You know ... a game loop.

    if is_pressed(114) and x < 720:  # right arrow
        x += step
    if is_pressed(113) and x > 0:  # left arrow
        x -= step
    if is_pressed(38): # a
        if time.time() - laser_last_shot > 1:
            shoot()

User interaction! Basically is_pressed takes a key identifier (nice constants coming soonish) and tells you if it's pressed or not. So, if right-arrow is pressed, increase x (within limits), if left-arrow is, decrease it (within limits). If "a" is pressed and you have not shot for a second, shoot.

    move_sprite("player", x, 500)

Well, that's why we in­creased / de­creased it, right?

    fleet_x += fleet_step_x
    move_fleet(fleet_x, fleet_y)
    if fleet_x < 50 or fleet_x > 150:
        fleet_step_x = -fleet_step_x
        fleet_y += fleet_step_y

The fleet moves to the right, then to the left, and at ev­ery turn, down. Does it re­mind you of any game you've seen?

    laser_y -= step
    move_sprite("laser", laser_x, laser_y)

Bul­let go up.

    check_hit()

En­e­my go boom. Even­tu­al­ly.

Audio! Navecitas!

Un­os min­u­tos eligien­do as­sets de ken­ney.n­l, un par de fun­ciones para que ten­ga so­porte de au­dio (sí, to­do el au­dio viene del código) ... ob­vi­a­mente no hay col­i­siones to­davía, y to­do es ... pre­cari­o.

El códi­go del jue­go: http://linkode.org/#E­Ja2EXWn­ToRI4zFr7vof15


Contents © 2000-2020 Roberto Alsina