ArticlePDF Available

Consejos y reglas de un simple programador

Article

Consejos y reglas de un simple programador

Abstract

Este breve documento pretende dar una lista de consejos y reglas de lo que he aprendido en mi vida personal y profesional. La cual ha girado en torno a la informática y, en particular, a la programación. Cada una de estas máximas no pretenden ser algo irrefutable ni le pido a usted lector que las acepte sin una reflexión previa. Más bien, debe pensar que cada una de ellas es producto de mi propia vivencia personal, de mis esfuerzos, de mi voluntad, pero también de mi suerte. Y he tenido mucha. No obstante, he tenido la oportunidad de leer a las grandes mentes de la informática que, me han permitido, ampliar mi panorama, reducir mis sesgos, hacerme cambiar de opinión y, porque no decirlo, de mejorar como programador y, sobre todo, como persona. Así que muchos de estos consejos no son solo míos, vienen desde una influencia previa, como cualquier persona que ama la lectura. Hace poco cumplí 32 años, y aunque no creo que ser más viejo haga a una persona más sabia, sino más bien, las vivencia que tuvo y cómo reaccionó a ellas, es importante darse cuenta de que ya ha pasado bastantes años desde que comencé en estas ligas; siento, pues, la necesidad de escribir lo que he aprendido en un poco más de una década. Después de todo, es el documento que me hubiera gustado leer cuando recién comencé. Los consejos se dividen en cuatro grupos: el aprendizaje, la vida personal, especializarse para luego generalizar y más allá de lo técnico; cada uno contiene varios consejos, los cuales puede ser leídos de manera aleatoria. Son todos independientes de los demás.
CCS-5
Consejos y reglas de un simple programador1
Camilo Chacón Sartori2
Actualizado: 22 de mayo de 2022
Introducción
Este breve documento pretende dar una lista de consejos y reglas de lo que he aprendido en mi vida
personal y profesional. La cual ha girado en torno a la informática y, en particular, a la programación.
Cada una de estas máximas no pretende ser algo irrefutable ni le pido a usted lector que las acepte sin
una reexión previa. Más bien, debe pensar que cada una de ellas es producto de mi propia vivencia
personal, de mis esfuerzos, de mi voluntad, pero también de mi suerte. Y he tenido mucha.
No obstante, he tenido la oportunidad de leer a las grandes mentes de la informática, que, me han
permitido ampliar mi panorama, reducir mis sesgos, hacerme cambiar de opinión y, por qué no decirlo
de mejorar como programador y, sobre todo, como persona. Así que muchos de estos consejos no son
solo míos, vienen desde una inuencia previa, como cualquier persona que ama la lectura.
Hace poco cumplí 32 años, y aunque no creo que ser más viejo haga a una persona más sabia, sino más
bien, las vivencias que tuvo y cómo reaccionó a ellas, es importante darse cuenta de que ya ha pasado
bastantes años desde que comencé en estas ligas; siento, pues, la necesidad de escribir lo que he
aprendido en un poco más de una década. Después detodo,es el documento que me hubiera gustado
leer cuando recién comencé.
Los consejos se dividen en cuatro grupos: el aprendizaje, la vida personal, especializarse para luego
generalizar y más allá de lo técnico; cada uno contiene varios consejos, los cuales puede ser leídos de
manera aleatoria. Son todos independientes de los demás.
1. El aprendizaje
¿Cómo debo ingresar a la «jungla» de la programación? Un buen aprendizaje puede ahorrarte
muchos años de sufrimientos. He visto a pobres desdichados que tuvieron una mala base y nunca la
mejoraron, ahora en pleno siglo XXI son los más cercanos a los zombis. Están vivos y muertos a la vez.
1. La herramienta (tecnología) no es lo importante, sino resolver problemas.
2. En mi primer año de universidad un profesor dijo: «Si quieren ser programadores no
estudien ingeniería, solo saquen una carrera técnica». En ese momento no tenía el
conocimiento para rebatirlo, pero intuía que estaba equivocado. ¿Cuántos programadores
habremos perdido por culpa de estos ignorantes? Esta falacia reside en la idea de que un
programador solo es una persona que sigue instrucciones, algo así como un autómata que
solo realiza acciones previamente establecidas. No haga caso a esta creencia. Mire a los
creadores de lenguajes de programación, base de datos, frameworks, bibliotecas,
programadores para programadores, muchos de ellos con doctorados. ¿Qué tienen en
común? Son también programadores.
3. ¡Ah, mi amigo/a! Habrá cosas difíciles de aprender. Es normal que algo no «compile» o que
sientas que no vas a ningún lado. A todos nos ha pasado. La capacidad se encuentra en resistir.
4. Una voluntad de hierro es el único ingrediente para ser un buen informático.
2www.camilochacon.com
1En honor al libro The humble programmer (El programador humilde) de Edsger W. Dijkstra.
CCS-5
5. Pensar antes de programar . No escribas código sin un objetivo; tome todo el tiempo
3
necesario para entender bien el problema, dibuje, escriba sus ideas, una vez lo tenga claro,
entonces vaya a programar.
6. Si ves a una persona que lleva una camiseta de una tecnología (por ejemplo, JavaScript [de
moda por estos días]), omítelo, aléjate, que su dogmatismo no te contagie y te saque del
camino de la informática. Si hay un camino hacia la informática es con la teoría, pero la única
forma de superar los baches de este frágil territorio es a través de la práctica. Teoría y práctica,
una delicada armonía. Recuerda a los grandes informáticos del pasado.
7. Si va a comenzar un proyecto técnico procure terminarlo. Si siente que es mucho trabajo,
dena un proyecto más acotado. Dejar proyectos a medio camino, inconclusos, afecta su
propia conanza.
8. No conozco ningún mejor consejo para alguien que quiera alcanzar la maestría en su campo
que: leer, después leer, y para concluir, seguir leyendo. Solo procura, ampliar tus lecturas y no
encasillarte en un mismo tema o autor.
9. ¡Te he dicho que no! No aceptaré seguir una moda sin analizarla previamente.
10. Recuerda: no hay problema con decir «no» ni «no sé». Es mejor ser honesto que decir a
todo «sí» sin saber de lo que hablas. Ante la duda suspende el juicio, investiga y entrega una
respuesta. Eso, tus jefes lo valorarán. Y si no lo valoran: es el momento de cambiar de trabajo.
11. Si no te motiva programar, si no te entusiasma ver código, ni leer sobre ello, ni te interesa
conocer sobre la historia de la informática, tengo malas noticias. La vida es muy corta como
para forzarte a estar en un lugar que no te motiva. Porquesi algún día pierdes todo, al menos
tendrás eso que te motiva que es intrínseco a ti y no depende de otras personas.
12. Al igual que las matemáticas en la programación no debemos ir por un tema complejo antes
de aprender los fundamentos. No puedo aprender cálculo sin saber álgebra; no puedo
aprender álgebra sin saber aritmética. En la programación ocurre lo mismo.
13. Se debe aprender a enseñar lo que sabes; pues es un mecanismo de agradecimiento hacia las
personas de las cuales aprendiste, ya sea en un aula o por medio de sus escritos. Además,
una de las ventajas de enseñar es que entenderás con mayor profundidad el tema en cuestión.
14. Esos informáticos que vanpor ahí sin saber nada de la historia de su campo me producen una
leve pena, luego una risa. No cometas su error.
15. Un buen programador es aquel que piensa con claridad sus ideas, ya sea frente a un
ordenador o frente a una pizarra o frente a un papel. Se busca reducir la complejidad de los
pensamientos.
16. Que risa me dan aquellos interesados en la computación cuántica , pero que no saben nada
4
de la teoría de la computación clásica. Se olvidan de la importancia del orden en el
conocimiento, no puedes aprender a correr sin antes caminar.
17. La moda actual es la Inteligencia Articial, o su subcampo el aprendizaje automático (para
que suene aún mejor, Machine Learning), y a su vez, ahora ha surgido otro subcampo de este
último: Deep Learning. ¿Qué tienen que ver estas aceptables áreas de estudio con la moda?
Pues que ahora todos querrán estudiarlas, ¿Para qué? Dinero. Por ello, nunca use como
variable principal para dirigir su carrera el dinero. Es una estrategia cortoplacista, absurda y
peligrosa. En cambio, abrace la informática en todo su espectro, con todos sus colores y
sabores. Buscando siempre el deseo genuino de aprender sin esperar nada a cambio.
18. Cuando ves tu propio código después de varios años y no ves nada mejorable, signica que no
has aprendido nada desde ese tiempo.
4Para una buena introducción de la computación cuántica puede dirigirse al libro Mathematics of Quantum
Computing: An Introduction, de Wolfgang Scherer, publicado por Springer en 2019. No conozco ningún libro
de calidad en español. ¿Conoce a alguno? Escríbame un e-mail.
3Este consejo es inspirado por Leslie Lamport. Él dio una brillante charla titulada Thinking Above the Code
(Pensar más allá del código) https://www.youtube.com/watch?v=-4Yp3j_jk8Q
CCS-5
19. Sé crítico. No hay peor programador que aquel que dócilmente no se cuestiona nada, porque
con cada armación, cercena su creatividad.
20. No hay mayor pena que tratar de aprender un tema «Z» cuando recién vas en «H». Es una
sensación de desolación terrible. Es como chocar con una pared. Solo queda tener paciencia.
21. A más cursos disponibles en Internet, más probabilidad de encontrar basura. Sé cuidadoso
con lo que pagas por aprender. Para la elección, cerciórate de pedir un consejo a alguien con
más experiencia, es decir, alguien que fue timado tantas veces que aprendió a no caer en la
trampa otra vez.
22. ¡Práctica mucho! ¿Parece obvio? No lo es, si crees que entendiste algo dale más vueltas e
implementa el algoritmo de otra forma, ese es el camino para formar un conocimiento
profundo sobre la programación.
23. ¿Quiere aprender los fundamentos del Machine Learning? Pues la estadística y las
matemáticas son lo más importante. El mejor libro sobre este tema es: Mathematics for
Machine Learning , de Marc Peter Deisenroth, A. Aldo Faisal y Cheng Soon Ong.
5
24. No dejes de lado la teoría. La mayoría de los programadores que conozco no saben qué es la
tesis de Church-Turing, la computabilidad, los algoritmos de aproximación, las redes
neuronales, el lambda cálculo, la lógica matemática, las heurísticas, etc. No sigas sus errores.
25. Debemos agregar formalismo a lo que hacemos. Por eso los mejores programadores fueron
matemáticos con inquietudes a hacer cosas aplicadas.
26. No al fanatismo por las tecnologías.
27. Aprende el contexto. Es decir, ¿quién creó tal tecnología que usas y por qué la creó? ¿Qué
problema intentaba resolver? ¿Publicó algún artículo o libro donde explica sus ideas? Debes
tener las referencias en tu cabeza para hablar con fundamento.
28. Aprende a escribir en tu lengua nativa. No hay mayor vergüenza que escribir mal, redactar
mal, y que lo vean cientos de personas. He visto esto en muchos grupos de Facebook, siento
una profunda vergüenza ajena. Y habla pésimo de usted. Procure sentir vergüenza cada vez
que cometa hasta el más mínimo error, porque cuando ello sucede signica que el aprendizaje
ha comenzado.
29. El buen CV de un programador es breve y conciso. Ojalá de una página. Céntrate en lo que
lograste y no en las herramientas que empleaste. Agrega tus proyectos personales.
30. Leer un libro técnico sin hacer los ejercicios al nal de cada capítulo es similar a intentar tener
novia solo leyendo libros.
31. Algo obvio: aprenda inglés; la literatura de calidad –y por cantidad– se encuentra en dicho
idioma. Al menos aprende a leer, ten un diccionario al lado , entonces traduzca frase a frase.
6
Ya verás que con el paso del tiempo necesitaras cada vez menos el diccionario.
32. Más que centrarse en aprender muchos lenguajes de programación, es mejor intentar
aprender diversos paradigmas de la programación. Buscando siempre el lenguaje más
representativo de cada uno.
33. Escribir ayuda a pensar con claridad. Escribe sobre los conceptos que vas aprendiendo. La
programación tiene una gran cantidad de conceptos que debes ir aprendiendo. Por ejemplo:
clase, objeto, instancia, puntero, referencia, arreglo, función, nodo, grafo, paralelismo,
concurrencia, síncrono/asíncrono, recursión, método, encapsulación, abstracción, variable,
etc. Escriba su propia denición para cada una.
34. Si conoce a un buen programador, abrácelo, regálele una cerveza, pues están en vías de
extinción. Es como un soldado que regresa a casa después de pasar por una de las peores
batallas.
35. Un informático que ve las tecnologías solo como un medio para resolver los problemas, ya
puede comenzar a llamarse informático o programador. Bienvenido al club.
6Puede ayudarle en esta labor: https://www.deepl.com/translator
5https://mml-book.github.io/
CCS-5
36. ¿Quiere aprender a diseñar un lenguaje de programación y su implementación (compilador)?
Lea el libro Compiler Construction de Niklaus Wirth. Una maravilla. ¡Espero que una vez
7
termine de crear su lenguaje me lo haga saber, ya que con gusto lo usaré!
37. ¡No lo puedo creer! Acabo de leer la mejor introducción a la ciencia de la computación en
español, se trata del libro: La máquina que cambió el mundo, génesis, desarrollo y evolución del
ordenador, de Salvador Lucas Alba. Breve y conciso. Nada sobra.
38. ¿Ada Lovelace? Irrelevante. Aprenda de Barbara Liskov, una de las grandes mujeres de la
informática. Ella trabajó en la abstracción de datos, si usted ha usado algún lenguaje orientado
a objeto, usted ha usado las ideas de Liskov. En denitiva, todo en informática trata de
abstracciones.
39. La informática comienza con Alan Turing, porque fue la primera persona en dar un
mecanismo abstracto sobre la idea de computar, secuencialmente, a través de una cinta,
aplicando operaciones muy básicas . Los creadores del primer ordenador digital, más tarde, se
8
inspirarían en estas ideas .
9
40. Un programador no se debe quedar solo en lo abstracto (software). Debe conocer sobre lo
concreto: el hardware. Ante tal situación, aprenda sobre arquitectura de ordenadores. No es
necesario profundizar si no lo necesita, pero sí debe tener una idea de cómo funciona cada
componente de un ordenador y cómo interactúan. Además, debe saber el lenguaje
ensamblador, que es el puente directo hacia el hardware.
41. La Wikipedia es una fuente de información importante, pero únicamente como
introducción. Para profundizar vaya a los libros de los especialistas.
42. Aprender a documentar lo que programas es sinónimo de calidad. Lo mismo al realizar las
pruebas unitarias de tus creaciones. Anticiparte a los problemas. Evite la máxima tan popular
entre los programadores: «lo crucial es que funciona», ya que en ella guarda una cierta
aceptación a la desprolijidad y a la irresponsabilidad; es un asalto a la perfección y a la calidad.
43. Mientras más matemáticas aprendas, tu nivel de abstracción y pensamiento lógico se
incrementará. Lo que se traduce en ser un mejor programador.
44. A los 20 años tuve la suerte de que alguien me guiara. Recuerdo uno de sus consejos: «No te
daré la solución a los problemas, no obstante, solo te dejaré pistas, debes aprender a resolver
los problemas por ti mismo». Ahora me doy cuenta de la razón que tenía.
45. Cuando voy a eventos de programación y veo por todos lados fanáticos de la herramienta,
siento una tristeza, desazón, seguida por unas ganas de salir corriendo de ahí. Ahora ya no voy
a esos nefastos lugares. Es mejor observar dichos eventos con cierta prudencia y distancia.
Pues me recuerdan lo que no quiero ser.
46. La obsesión es necesaria para ahondar en las profundidades de la informática. O en cualquier
área del conocimiento. No obstante, no olvide su salud. Puede ser contraproducente. Pero sin
una obsesión es difícil avanzar sobre el promedio de la gente. La vida trata de ello: para ganar
algo hay un costo que pagar. ¿Está usted dispuesto a pagarlo?
47. Cada año, cada mes, cada semana, cada día, aprenda algo nuevo; verá, entonces, como muchas
cosas que antes le costaba entender ahora son intuitivas. Esto es producto de la experiencia.
La intuición es experiencia.
48. Un informático debe saber de algoritmos y estructuras de datos. Son los cimientos de todo,
realmente de todo lo demás.
49. No tema a escribir en los bordes de las páginas de un libro. Antes, yo tenía ese temor,
respetaba a los libros como objetos sagrados. Era imposible pensar en escribir en ellos. Pero
me di cuenta de que la mejor forma para aprender, recordar, cuestionar, reexionar, era
9Léase el libro de Martin Davis (existe una traducción al español): La computadora universal.
8Le recomiendo la biografía de Alan Turing escrita por Jack Copeland, se encuentra en español, Alan Turing:
El pionero de la era de la información.
7https://people.inf.ethz.ch/wirth/CompilerConstruction/index.html
CCS-5
anotar en las mismas, más práctico que tener notas externas añadidas entre las páginas. Eso sí,
si es un libro antiguo, no lo haga, y siga el mecanismo de las notas externas.
50. Cuando no podía resolver un problema algorítmico, curiosamente me salía del ordenador, me
alejaba, caminaba por ahí; entonces tomaba un lápiz y papel e intentaba la solución.
Mágicamente, ahora todo uía mejor. Cuando sienta un bloqueo mental, aléjese del
ordenador.
51. Las personas que ocupan su conocimiento en programación para hacer daño han traicionado
uno de los principios de la informática: ayudar a las personas a tener una mejor vida. Se han
traicionado a sí mismos.
52. Un buen programador es aquel que busca simplicar su trabajo, es decir, sabe escoger las
herramientas que debe usar, pero, sobre todo, que herramientas no debe usar. Realiza un
análisis previo, no es impulsivo.
53. Es paradójico, cuando comenzamos a programar lo hacemos de manera impulsiva, escribimos
y escribimos código, sin reexión. Anhelamos resolver problemas. Con el paso del tiempo, y
cuando nos hacemos más viejos, más que escribir código se trata de que código no debemos
escribir. Qué batalla no luchar. Ya que hemos entendido una máxima de la programación:
cada nueva línea que añadimos, la complejidad aumenta, lo que se traduce en una mayor
posibilidad de cometer un error.
54. La recursividad es una técnica importante en la programación. Para más detalles, véase el
punto 1.54.
55. ¿Un programador distraído? No es posible, es contradictorio. Un buen programador es aquel
que puede quedarse sentado pensando en un problema que intenta resolver, por varios
minutos, aunque tenga ruido a su alrededor. Imperturbable. Nada lo va a desconcentrar si él
no quiere.
56. Cuidado. Cuando menciono que las tecnologías no son lo más valioso, no signica que no
deba estar al tanto de lo nuevo que aparece ni que no deba aprenderlas. Todo lo contrario. No
sea como esos programadores que creen –en su ignorancia– que con solo saber conceptos es
suciente, pues, cuando vayan a entrevistas de trabajo se encontraran de frente con la
realidad. O aquellos que desprecian todo lo nuevo y quieren seguir reinventando la rueda. Sea
inteligente, la idea es resolver problemas, no hacer su vida más difícil. Para criticar algo hay
que conocerlo. No lo olvide.
57. Qué risa me dan aquellos que dicen «ese lenguaje X es una m…», ¿has usado la última
versión? Responden: «Mmm, no». Evite los prejuicios y las generalizaciones.
58. Me temo que si usted no aprende nada nuevo en un año, ya se encuentra obsoleto. Advierta
que estoy siendo generoso con lo de «un año». Considera un plan de estudios, ¿qué debo
aprender en los próximos meses? Luego responda, ¿por qué?, y entonces ¿cómo?
59. No lea los libros técnicos como si fuera una novela. Acceda a ellos de manera aleatoria,
atáquelos por todos los frentes, escriba en los márgenes, escriba lo que lee y entiende,
cuestione al autor.
2. La vida personal
No piense que hablar de estos menesteres es rebajarme a trivialidades. Para nada. Mantener una vida
personal tranquila, libre de infortunios, es muy importante para alcanzar un nivel decente en
cualquier actividad intelectual o técnica. Es decir, en su vida profesional o para alcanzar su propia
felicidad (que es lo más relevante).
1. El equilibrio, el equilibrio. Está bien estudiar, pero no olvides lo social, cultiva esta parte
valiosa de tu vida. Te evitará muchas penas y soledades. Te lo dice un introvertido, sé de lo que
hablo.
CCS-5
2. Lo fundamental es arriesgarse, aunque siempre esperando lo peor. Así, si sucede lo
excepcional (buenas noticias) estaremos sorprendidos por nuestra buena suerte, y si no, pues
no hay nada que preocuparse, ocurrió lo previsible.
3. Viaja, sal en busca del mundo. Pero viaja con los ojos abiertos, mirando a los demás, no
mirando a una pantalla para tomar una foto e irte al próximo lugar. Intégrate, haz amigos en
tus nuevas aventuras. El viajar es el mejor antídoto a cualquier variante de nacionalismo y de
tonto isleño.
4. Casi todos los «amigos» que tuve en mi adolescencia los reduje a cero en mi vida, los removí
eternamente. No me arrepiento. Fue la mejor decisión de mi vida. No saben todo el daño que
pueden causar malas inuencias en la vida de una persona. No por querer pertenecer a un
grupo debes traicionarte a ti mismo.
5. Bebe con moderación. Los excesos dañan el cerebro, además dicen algo más sobre ti: no tienes
autocontrol. Eso es como despertarse todos los días con una bomba al lado, pero que no sabes
cuantos segundos quedan antes detonar.
6. Un buen amigo es un buen apoyo. Se les conoce cuando te pasa algo malo, antes de eso,solo
son «posibles amigos». También es aplicable cuando te pasa algo bueno y se lo cuentas. En
ambos casos se conocen a los amigos.
7. Si eres mujer: ten presente que tendrás que desarrollar una mayor habilidad de resistencia
emocional. Todavía existen los tontos que, a priori, te subestimaran. No te preocupes, es
previsible. Para contraatacar a estos ignorantes es preciso continuar estudiando, alcanzar una
gran preparación. No hay nada peor para un ignorante que encontrarse con alguien más
inteligente que él. Nada más tendrá una opción: quedarse callado. Cuando ello ocurra: vas
por un buen camino.
8. Amo el conocimiento, omito la ignorancia, y por ello, a los que la promulgan. Estos últimos
se promocionan en las redes sociales, de todo tipo, incluso en las de citas, donde la volatilidad
y lo desechable pulula, sin pudor y elegancia. No obstante, debemos mantener el ánimo rme
y sin tomar las cosas de manera personal. Esperar lo peor.
9. Cuando una persona se acuerde de ti después de muchos años; después de recibir su «Hola»,
pregúntale, ¿En qué puedo ayudarte?
10. Una pareja marcará el éxito o el fracaso de tu carrera como programador. También es aplicable
a los amigos. Pero en el primer caso es peor, pues, el enemigo podría estar en tu propia casa.
11. El amor es querer lo mejor del otro sin esperar nada a cambio. Apoyarla a ser mejor de que
cuando la conociste.
12. ¿Quiere ser cientíco? Lea el libro: Los tónicos de la voluntad, reglas y consejos sobre la
investigación científica, de Santiago Ramón y Cajal. Totalmente recomendado.
13. Aprende a relacionarte con las personas. ¡Ve a un meetup; si tienes timidez, da charlas; crea un
canal de YouTube; o un podcast; escribe un blog (o en Quora); pero comunícate!
14. Cultive en sus hijos la creatividad, procure que no pierdan las ganas de preguntar. La
adolescencia es la época más peligrosa, pues, la mayoría la pierde. Le recomiendo un libro, le
pido que si no sabe inglés haga el esfuerzo de entenderlo, ya que es una obramaestra: Sparks
of genius, the 13 thinking tolos of the world’s most creative people, de Robert y Michele
Root-Bernstein. Enseña las herramientas mentales que se debe desarrollan para mantener la
creatividad en las personas, después de un largo estudio realizado sobre la vida de los grandes
genios de la historia de la humanidad en sus diversas áreas.
15. Llevar una libreta para anotar, puede marcar la diferencia entre tener una gran idea y otra que
ya no la recuerdas.
16. ¿Solo sabes hablar de informática? ¿Acaso eres un autómata? Qué aburrido. Aprende a tocar
un instrumento, lee novelas, aprende historia, visite museos; amplía tus horizontes. Un
verdadero informático es curioso por naturaleza. No un ser monotemático.
CCS-5
17. No seas desprolijo en nada de lo que haces. En los detalles se encuentra todo. Escribe bien,
habla bien, comunícate bien, es demasiado importante para omitirlo. ¡Cuántas dicultades te
creas solamente por tener una personalidad desagradable!
18. La arrogancia es sinónimo de la ignorancia. Claramente, es producto de una falta de lectura y
de trabajo.
19. Tuve excelentes padres. Fui un afortunado. Ellos tuvieron doble mérito, pues, a pesar de no
tener una formación universitaria tenían respeto por la cultura, respeto por los libros, respeto
por el escribir bien, respeto por el conocimiento, aunque ellos no leyeran ni escribieran. ¿Qué
mejor que eso? Valorar lo que no tuviste la oportunidad de vivir sus ventajas, pero, aun así,
saber que era importante. Los buenos padres son los que aspiran a que sus hijos sean mejores
de lo que fueron ellos. Y mis padres cumplieron con esa máxima en su totalidad.
20. De niño conocí a un estoico y lo tuve en casa: mi madre. Nunca he vuelto conocer a una
persona que mantuviera su ánimo y alegría a pesar de las enormes penas de su vida.
21. La política es crucial. Tenga una opinión bien argumentada sobre estos menesteres. También
rescate las ideas positivas de tus adversarios políticos, y aprenda de ellas, así evitar el
dogmatismo. Tan arraigado en los ignorantes.
22. Pasar mucho tiempo encerrado en tu habitación es peligroso. Si le gusta la soledad, disfrútela,
pero es mucho mejor cuando la compartes y le cuentas a otros tus aventuras. Haga un paseo
por un parque, use una bicicleta, corra, todo ello ayuda bastante. Esto le dará mayor claridad
en sus pensamientos. Un mal estado físico solo añade lentitud a tu cerebro, lo hace funcionar
peor.
23. Sé agradecido de las personas que dieron algo por ti en la vida (sobre todo cuando no tenían
por qué hacerlo).
24. Memento mori (Recuerda que morirás). La vida no es eterna, no dejes para mañana lo que
puedes hacer hoy. Produce. Agradece. Sonríe. No hagas daño.
25. Mi padre murió de cáncer cuando tenía 25 años. Casi todaslas personas comparten el hecho
que cuando muere un ser querido, ese evento se vuelve en un despertador en su vida,ocurre
una transformación. Aún recuerdo las frases que decía mi padre a mi madre: «cuando seamos
más viejos podríamos viajar a tal lugar», «este proyecto lo haremos más adelante», nada de
eso ocurrió. Como dijo Séneca: «Oirás a la mayor parte de los hombres, que dicen: “A partir
de mis cincuenta años me retiraré a descansar,y cuando cumpla los sesenta abandonaré todas
mis ocupaciones.” ¿Y quién te garantiza, a n de cuentas, que has de vivir una vida tan
larga?» Después de los 25 años he tratado de luchar contra ello, así que, si la muerte me
10
atrapa antes de tiempo, pues, me encontrará haciendo lo que siempre he deseado. Me iré
tranquilo.
26. El principal enemigo para no hacer nada de valía en la vida es la pereza. Atáquela sin
contemplación. Tenga armas para defenderse, por ejemplo, leer o inundarse de historias que le
inspiren, y entonces comience a trabajar. Pues ella no tendrá piedad con usted.
27. No se guarde las cosas, dígalas. No sabe cuanto daño hace acumular temores, rabias y
cualquier otro sentimiento negativo.
28. No hay mayor satisfacción al caer la noche que de haber tenido un día productivo. Haber
hecho lo que se debía hacer.
29. Es mejor fallar que nunca haber intentado triunfar. Al menos con el paso del tiempo no
tendrá ningún remordimiento, dirá «fracasé, sí, pero hice todo lo posible». Cuanta
satisfacción y paz genera ello. Ya que no hay nada peor que decir «que hubiera pasado si…».
30. Cada día que pasa, más me doy cuenta de que mi vida se dirige hacia la informática, en
particular, a la escritura sobre informática; es como estar en un tren que ya no puedes detener,
solo te transformas en un mero espectador impasible del paisaje que ves a través de la ventana
del carro; no es de extrañar entonces, que, por esta pasión, por este sueño, quizás lo sacrique
todo en esta vida.
10 Sobre la felicidad, Sobre la brevedad de la vida. Séneca. Editorial Edaf. Página 145.
CCS-5
3. Especializarse para luego generalizar
Ser programador frontend obackend, son ejemplos de especialización. O ser un desarrollador de
Machine Learning, o ser un investigador en un tema «X». Un generalista es el que conoce todas esas
áreas, algunas más, otras menos, pero tiene un conocimiento sobre el tema. Y lo diferencia de un
fullstack en que sabe de teoría, es decir, sabe de ciencia de la computación. Aunque, como verá, el
generalista puede romper las fronteras de la propia informática.
1. Tendrás que especializarte para avanzar en tu carrera, pero eso no implica que no estés al tanto
de las demás áreas de la informática. Puede que en el futuro tengas que cambiar. No te quedes
mucho tiempo en tu zona de confort. Pues, el tiempo juega en tu contra.
2. Para lograr tener una óptica amplia sobre la informática hace falta mucho estudio. Y es
indispensable especializarse en algo para avanzar a lo siguiente, una especialización que aspira
a algo más. Pero la especialización no es el n, es el comienzo.
3. Alguien que comenzó siendo especialista y terminó siendo lo mismo. Es una persona que no
cultivo su curiosidad. Alguien se la truncó en el camino: quizás él mismo.
4. Un generalista fue antes un especialista ingenuo que luchó por dejar de serlo.
5. Existen dos tipos de generalista: el interno y el externo. El interno sabe bastante del tema en
cuestión, en este caso, sobre la informática. En cambio, el externo aprende sobre otras áreas
del conocimiento. Amplía su campo de acción.
6. Evita los libros técnicos cuyo título contenga la palabra de una tecnología. Estarán obsoletos
muy pronto. En cambio, mira con entusiasmo los libros que, en sus títulos, contengan
palabras como: compiladores, lenguajes de programación, programación, computación,
estructura de datos, algoritmos, etc. Palabras que sean generales, muy generales. Que traten de
conceptos, fundamentos al n de cuentas. Pues estos son intemporales.
7. Un generalista es un informático que sobrevivió a la moda. A las tentaciones de seguir al
rebaño.
8. Cuando quieras especializarte en algo técnico no cometas el error de solo aprender de una
fuente de conocimiento. Inúndate de libros, compáralos, critícalos, saca lo mejor de cada uno.
Si con uno no entiendes, no te desanimes, todos hemos pasado por lo mismo. Camina,
descansa. Ahora vuelve a intentarlo.
9. El diccionario es la obra cumbre de la generalización, es decir, del sistemismo. Usted debe
tener un diccionario sobre su campo.
10. Un generalista es una persona que ama los sistemas. Y la informática es un gran sistema en
evolución.
11. Una vez Mario Bunge dijo: «La síntesis es el mejor análisis», nunca lo he olvidado, es uno de
los principios para ampliar tus conocimientos.
12. ¿Sueñas con trabajar en una gran empresa de EE. UU.? Pues bien, debes saber que ahí no hay
camino más allá de una especialización. Es el reino de los que cavan y cavan hasta ya no ver
nada más a sus lados, hasta solo tener oscuridad. No obstante, con varios ceros en su cuenta
bancaria.
13. Un camino para ser un generalista es cambiar de empresa cada cierta cantidad de años. Pero
en un puesto de trabajo diferente al anterior, con más desafíos, con nuevas tecnologías, pero,
sobre todo, con nuevos problemas interesantes.
14. ¿Qué es imposible tener conocimiento de tantas cosas? Le respondo con otra pregunta:
¿Usted es curioso?
15. ¡He encontrado el libro que representa a los generalistas de la informática! Escrito por Peter J.
Denning y Craigh H. Martell, titulado: Great principles of computing.
16. La mayor desgracia de un generalista es sentirse como una hormiga en mitad de una
tormenta. Una angustia terrible.
CCS-5
4. Más allá de lo técnico
No todo en la vida puede ser reducido a lo técnico. La informática se enriquece cuando se aprende de
otras áreas del conocimiento. Por ejemplo, la mayor, la síntesis nal de todas: la losofía.
1. Solo leer y aprender de informática te hace una persona muy limitada en tu espectro de
conocimiento. Leer losofía y seguir aprendiendo matemáticas es enriquecedor. Y si
incursionas en el arte, todavía mejor.
2. Un informático que rechaza la especialización a ultranza termina siendo un lósofo de la
computación.
3. Ética, es una palabra en boca de todos, pero pocos profesionales la aplican a su día a día. ¿Por
qué?Quizás la respuesta está en dos poderosas palabras que mueven a los humanos: dinero y
poder.
4. Con Mario Bunge entendí lo que era el sistemismo, el orden, el emergentismo, he aprendido
tanto de él. Que, si escribo en algún momento sobre la losofía de la computación, sus ideas
trascurrirán en mi pensamiento.
5. Acércate a la matemática, ciencia y losofía. Esta última, sobre todo, es útil para evitar a los
charlatanes (que existen en una gran cantidad en el entorno informático) y para tener un
pensamiento crítico. Procura eso sí, leer buena losofía, que en la mala losofía hay todavía
más charlatanes. Un buen camino para comenzar es por Bertrand Russell.
6. Cuidado con el pesimismo. Hay motivos para no rechazarlo, pero si profundizas en ello será
difícil encontrar una salida (un camino seguro al existencialismo). Busca inundarte de cosas
positivas. Busca personas que admires y aprende de ellos. De su trabajo, de su perseverancia.
Es el mejor antídoto a la falta de ánimo.
7. Lea a Arthur Schopenhauer, pero no se crea todolo que dice, recuerde que ha pasado más de
un siglo desde que escribió sus importantes obras. (Sobre todo su opinión hacia las mujeres,
pero su lucidez sobre otras cuestiones de la vida sigue aún vigente.)
8. He encontrado una profunda tranquilidad leyendo a los lósofos estoicos. Pruebe usted
leyendo a Séneca , Epicteto, Marco Aurelio, no se va a arrepentir.
11
9. He aprendido que la lógica matemática es una poderosa herramienta para entregar un
mensaje claro y sistémico. Un libro interesante es: Introducción a la lógica y a las ciencias
deductivas, de Alfred Tarski. ¡Cuanta claridad!. Sueño con escribir —aunque sea una
página— algo de tan magna calidad.
10. Algunos informáticos en su profundo desconocimiento suponen que la lógica se reduce a la
lógica booleana (en particular, a las tablas de verdad), pues no, hay mucho más allá (véase el
punto 4.9). La lógica nos entrega las herramientas para pensar y exponer con claridad
nuestros argumentos, reduciendo la ambigüedad de nuestras palabras. La lógica es
abstracción pura; la informática es abstracción aplicada; la lógica es el núcleo de la
informática.
11. En la losofía de la ciencia he encontrado lo que necesito para poder ser un mejor
informático.
12. ¿Cuál es la naturaleza de un programa computacional? ¿Es abstracta (simbólica) o concreta
(física) o dual abstracta-concreta? La ontología de la informática intenta dar claridad a este
apasionante tema. La intuición nos dice que, para que un programa exista, necesita estar
escrito en un lenguaje formal e instalado en un artefacto físico (hardware), pero ¿por qué? y
¿cómo? No está claro.
13. La losofía analítica es una excelente forma para aprender argumentar con claridad. Todo es
transparente, no como algunos lósofos acostumbrados a hacer juegos semánticos con las
palabras.
11 Le recomiendo el libro: Sobre la brevedad de la vida, cambió mi modo de ver la vida.
CCS-5
14. Las paradojas guardan el misterio de la lógica. Quizáspor eso los grandes lógicos han luchado
por evitarlas. Le recomiendo leer la biografía de unos de los grandes lógicos de la historia:
Kurt Gödel; titulado, Gödel: Paradoja y vida, escrito por Rebecca Goldstein.
15. ¿Quiere aprender sobre la losofía de la informática? Lea: Computational Artifacts: Towards
a Philosophy of Computer Science de Raymond Turner. Es la mejor introducción –por
ahora–.
16. El ordenador es una máquina que maneja información. Ahora bien, ¿qué tipo de
información? ¿Cuáles son las implicaciones de ello? Lea sobre la losofía de la información; le
dará un mayor entendimiento sobre el artefacto que usa a diario. Una mayor profundidad de
lo que entiende por informática. Un autor que escribe sobre este tema es Luciano Floridi.
17. Aquellos informáticos que desprecian las humanidades son solo informáticos de carrera. No
les interesa la informática, les interesa únicamente verse al espejo.
18. Las humanidades necesitan de la informática; la informática necesita aún más de las
humanidades, pues los informáticos, en muchos casos, no saben escribir y hablar
correctamente.
Agradecimientos
A José A. Alonso, por tomarse el tiempo de hacer una revisión de este texto. Y a Oscar Fernandez
Sierra por sus invaluables correcciones y sugerencias.
ResearchGate has not been able to resolve any citations for this publication.
es una palabra en boca de todos, pero pocos profesionales la aplican a su día a día. ¿Por qué? Quizás la respuesta está en dos poderosas palabras que mueven a los humanos: dinero y poder
  • Ética
Ética, es una palabra en boca de todos, pero pocos profesionales la aplican a su día a día. ¿Por qué? Quizás la respuesta está en dos poderosas palabras que mueven a los humanos: dinero y poder.
Esta última, sobre todo, es útil para evitar a los charlatanes (que existen en una gran cantidad en el entorno informático) y para tener un pensamiento crítico. Procura eso sí, leer buena losofía, que en la mala losofía hay todavía más charlatanes
  • Acércate A La Matemática
Acércate a la matemática, ciencia y losofía. Esta última, sobre todo, es útil para evitar a los charlatanes (que existen en una gran cantidad en el entorno informático) y para tener un pensamiento crítico. Procura eso sí, leer buena losofía, que en la mala losofía hay todavía más charlatanes. Un buen camino para comenzar es por Bertrand Russell.
pero no se crea todo lo que dice, recuerde que ha pasado más de un siglo desde que escribió sus importantes obras. (Sobre todo su opinión hacia las mujeres, pero su lucidez sobre otras cuestiones de la vida sigue aún vigente
  • Arthur Schopenhauer
Lea a Arthur Schopenhauer, pero no se crea todo lo que dice, recuerde que ha pasado más de un siglo desde que escribió sus importantes obras. (Sobre todo su opinión hacia las mujeres, pero su lucidez sobre otras cuestiones de la vida sigue aún vigente.)
He encontrado una profunda tranquilidad leyendo a los lósofos estoicos
  • Epicteto Séneca
  • Marco Aurelio
He encontrado una profunda tranquilidad leyendo a los lósofos estoicos. Pruebe usted leyendo a Séneca, Epicteto, Marco Aurelio, no se va a arrepentir. 11
Computational Artifacts: Towards a Philosophy of Computer Science de Raymond Turner. Es la mejor introducción -por ahora
  • Lea
¿Quiere aprender sobre la losofía de la informática? Lea: Computational Artifacts: Towards a Philosophy of Computer Science de Raymond Turner. Es la mejor introducción -por ahora-.