No se me daban bien las matemáticas en el instituto y la carrera, pero soy buen programador

Basta mirar las asignaturas de la Ingeniería en Informática para darse cuenta de que las matemáticas son la base de estos estudios: álgebra, matemática discreta, lógica, cálculo, probabilidad y estadística…

No todos los programadores son ingenieros, pero existe la creencia de que aquellas personas que se dedican a programar suelen tener unos buenos conocimientos y destrezas con los números. Aunque, como ya hemos visto, también hay profesionales del mundo de las letras que se dedican a "picar código", hemos querido saber si realmente es necesario ser bueno en matemáticas para ser un buen programador.

Independientemente de la destreza (o falta de ella) con las matemáticas o alguna de sus áreas de los programadores con los que hemos hablado, todos coinciden en que habría que desterrar el miedo a los números para saber programar. Hay habilidades y aptitudes que son más relevantes para llegar a ser un buen programador.

El momento en que se me atragantaron los números

Antonio Djigo es desarrollador de Ruby on Rails, aunque previamente ha pasado por trabajar en WordPress, Drupal, y tecnologías de front-end varias. Su “decadencia” en las matemáticas empezó en segundo de la ESO, más concretamente con el álgebra. “Al no salir con buenos conocimientos de ahí (fue la primera vez que suspendí matemáticas en mi vida), todo empezó a crecer como una bola de nieve y cada concepto nuevo que intentaba aprender quedaba en nada”, recuerda.

Aunque David Arcos ha desarrollado plataformas SaaS (Software as a Service) en diversos sectores, ahora se dedica ahora a liderar equipos de desarrollo. Reconoce que fue en secundaria “o en el Bachillerato” cuando se decidió a dedicarse al mundo de la programación, pese a que reconoce que se le empezaron a dar mal las matemáticas "desde que tuve un profesor especialmente nefasto. Eso me desmotivó durante una temporada, e hizo que no me gustaran. Si el profesor no te enseña el temario bien, no le salen sus propios ejercicios, lo han “obligado” a dar esa clase… ¿qué interés va a tener el alumno?”, se pregunta.

Fue también en el último año de la ESO cuando a Fran Asensi, analista programador de Microsoft Dynamics 365 Business Central, se le empezaron a dar mal las matemáticas. “Fui a trancas y barrancas con ellas durante 4º de la ESO y el bachillerato”, recuerda. “Las de 2º las aprobé en septiembre después de pasarme todo el verano en una academia. La rama que peor se me dio sin duda fue la trigonometría, el álgebra acabó gustándome”, asegura.

Noe Medina es UI Frontend Developer y sus problemas con los números llegaron en 3º de secundaria. “Al final siempre sacaba más o menos buena nota, pero era sin duda la asignatura que más me costaba. Creo que cuando empezó a “complicarse” la cosa con lógicas algebraicas empezó a irme realmente mal”, asegura, reconociendo que en la carrera las asignaturas de física y estadística “me costaron bastante”.

Por su parte, María Teresa Nieto, Blockchain Technological Specialist en Telefónica, no duda en reconocer que “de siempre” las matemáticas han sido la asignatura que más esfuerzo le ha supuesto. “Mientras que a algunas asignaturas le dedicaba muy poco tiempo a las matemáticas le dedicaba horas y horas”, recuerda. Y aunque hay ramas de matemáticas que se le han dado mejor que otras, “la estadística y la geometría analítica en el plano no las entendía y creo que si me lo vuelvo a estudiar, me volvería a costar muchísimo entenderlo”.

¿Una piedra en mi camino? Quizá no tanto

Pese a estas dificultades con las matemáticas, la mayoría de estos programadores aseguran que esto no ha supuesto un escollo ni a la hora de aprender a programar ni a la hora de desarrollar su carrera. “Quizá en algunos aspectos de la parte más lógica, pero para mí sigue siendo más sencillo la lógica programática que la de las mates”, asegura Noe Medina.

Asensi cree que todo depende del trabajo que se desempeñe. “En mi trabajo del día a día no ha afectado, pero entiendo que si mi trabajo consistiese en llevar una sonda a Marte no estaría capacitado”. No obstante, reconoce que sí se ha encontrado con algunas dificultades cunado quiso hacer un juego, calculando las físicas o haciendo una pantalla de introducción con elementos moviéndose de una determinada forma. “También cuando hice el bootcamp de Machine Learning, la falta de base matemática me hizo avanzar más lento y no llegar a comprender del todo algunas cosas”.

Una visión en parte compartida por Antonio Djigo, quien cree que algunas puertas sí se han podido, en parte, cerrar: aquellas en las que hacen falta las mates (como Data Science, gráficos 3D, videojuegos…) para interactuar con físicas, generar formas geométricas animadas o gráficas de datos. “Digo en parte porque tendría que poner mucho más esfuerzo para aprenderlo debido a la falta de conocimientos básicos, por lo que me ha quitado las ganas. Aun así, estoy muy seguro de que si quisiera empezar a aprenderlo, podría hacerlo sin problemas”.

María Teresa Nieto asegura que a la hora de aprender programación es necesario tener un pensamiento lógico, pero cree que ese pensamiento lógico se puede adquirir “con el tiempo y trabajándolo”. En su caso, y aunque hubo cosas de programación que le costaban, “un día algo nuevo se despertó en mi cerebro y empecé a ver y a analizar las cosas de una manera distinta”.

Esto es un terreno vedado para mi

Sin embargo, algunos de desarrolladores también reconocen que hay ciertas áreas de la programación o determinados lenguajes que son una especie de territorio vetado para profesionales que, como ellos, tienen dificultades con las matemáticas.

Por ejemplo, Fran Asensi pone como ejemplo R, aunque más que por el lenguaje, por el uso que se le da a ese lenguaje. “No es difícil aprender R. Lo difícil es aprender para lo que se usa”, asegura. “Python es un lenguaje muy orientado al análisis de datos, al Machine Learning y al Deep Learning, pero es uno de los lenguajes más fáciles de aprender y usar de la forma en la que se usan la mayoría de lenguajes”, expone, “pero si nos adentramos al mundo del Machine Learning sí necesitaríamos esa base matemática”.

En este punto, David Arcos insiste en que la base lógica y matemática es “imprescindible” para entender un lenguaje de software. “Puedes empezar a programar sin entenderlo todo, claro. Pero antes o después te encontrarás con ese obstáculo, y necesitarás volver ahí”, augura. “Una cosa es hacer scripting, para automatizar tareas sencillas: no hace falta demasiada base, no hace falta entender un lenguaje, se aprende en unas horas. Pero la Ingeniería de Software va mucho más allá, la base de conocimiento teórico es imprescindible”.

Para Antonio Djigo, la dificultad a la hora de empezar a trabajar con determinados lenguajes viene determinado por el nivel al que trabajen esos lenguajes. “Aquellos que interactúan de manera directa con el hardware, que usan ceros y unos, o lenguajes como “ensamblador”, esos que por alguna razón siguen enseñando en la Universidad y todo el mundo ama (sarcasmo, sí)” son los que más dificultad planean. Y aunque también habla de otros reconocidos por ser más difíciles de aprender que el resto, “me atrevo a decir que las mates no serían el mayor de los impedimentos para empezar con estos, sino lo “extraño” que puede parecer su sintaxis”, asegura.

Pero, a nivel laboral, “en ningún momento nadie me ha minusvalorado; al contrario, durante la carrera mis compañeros y mi familia me han apoyado siempre y me han dado fuerzas en los momentos que más dudas tenía sobre si era lo mío o no”, asegura María Teresa Nieto.

A Fran Asensi sí que intentaron quitarle de la cabeza la idea de dedicarse a la programación cuando era más joven, más concretamente los profesores de matemáticas del instituto “porque habían visto cómo me había ido en bachiller con ellas”, al igual que un familiar que estaba haciendo la superior. En el trabajo “no me he encontrado con que alguien me minusvalore por no saber matemáticas, pero sí por no tener la carrera”, explica. Una situación con la que no se ha topado Antonio Djigo. “Aún no he tenido problemas con empresas que solo aceptasen gente con grados universitarios de ingeniería o computer science en los que se profundice mates (cualquiera), ni a ninguna que lo pida. Además, ningún compañero/a de trabajo me ha juzgado por ello. Todos tenemos nuestras flaquezas y virtudes, y se trata de suplirlas y ayudarse mutuamente, no de degradar a nadie”, asegura.

Soy programadora y sí, se me dan bien las mates

Pero dentro de la programación también hay muchos perfiles a los que se les dan muy bien las operaciones matemáticas Es el caso de Sara Subijana, ingeniera informática y consultora tecnológica de software en Autentia.

“Tenía claro que quería estudiar ingeniería informática desde bien temprano, ya que siempre se me dieron muy bien las asignaturas de ciencias y me gustaban mucho los ordenadores”, nos cuenta. Y siempre se le dieron bien las matemáticas, tanto en el instituto como luego en la carrera. “En concreto, me gustaba mucho la parte de álgebra y se me daba bastante bien”, reconoce.

Esta facilidad con las matemáticas, ¿es buena para aprender programación o dedicarte a ello? “No creo que sea algo imprescindible. Poder "programar" se puede aprender, sobre todo teniendo muchas ganas y dedicando tiempo puedes ser un buen desarrollador software de aplicaciones web, y móvil”, responde. Sin embargo, añade que, para ciertas ramas (como la Inteligencia Artificial, el machine learning o el desarrollo de videojuegos “sí que son importantes y, por tanto, cuanto mejor se te den, aplicas los conceptos con mayor facilidad”.

Pese a todo, no cree que quienes sean menos hábiles en números lo tengan más complicado. “Conociendo el porqué de las cosas y cuándo aplicarlas ofrece mucha ventaja y da soluciones más elegantes”, explica. “Por ejemplo, si estamos trabajando en el desarrollo de un juego de béisbol, las matemáticas son importantes para programar la trayectoria de la pelota al batear”.

Estas son las habilidades de todo buen programador

En su opinión, para ser un buen programador, más que las matemáticas, lo que hay que tener son “muchas ganas de aprender, no quedarte estancado (en Autentia decimos que no es lo mismo tener 11 años de experiencia que repetir 1 año 11 veces) y tener capacidad para trabajar en equipo”.

Como hemos visto, David Arcos sí considera que es necesario tener una buena destreza matemática para programar. Aunque tenía ciertas carencias en este sentido, asegura que “por suerte” fue consciente de ello y “decidí ponerme las pilas, y juntarme a estudiar con otros alumnos”. Para él, la lógica y las matemáticas constituyen las habilidades más básicas para programar porque “para implementar un algoritmo hay que entender cómo funciona un algoritmo”. Pero, para ser bueno en el trabajo “no basta con “programar”, hay que ir más allá. Además de amplios conocimientos técnicos, es importante ser buen comunicador, y saber trabajar en equipos multidisciplinares”.

Pero, para Antonio Djigo, más que habilidades hay que tener “ambición, que te guste lo que haces, y dedicación, así como no estancarse nunca en el “esto funciona”. Siempre hay que intentar dar lo mejor de sí, aprender de las experiencias, y mejorar en todo lo posible”. Este programador defiende que las habilidades necesarias para la programación se desarrollan “a la vez que aprendes y trabajas en esto, así que realmente no creo que haga falta algo específico que no todo el mundo tenga”. Algo parecido a lo que opina Noemí Medina, para quien la clave reside en “tener ganas, constancia y tolerancia a la frustración. Como con cualquier otra profesión, vaya”.

Como resume Maria Teresa Nieto, la constancia y el esfuerzo son claves. “Si algo no te sale a la primera es totalmente lógico, hay que seguir intentándolo y rodearte de gente que te ayude. Además, ahora que vivimos en la era de Internet, casi todo está en la red. Y si tienes cualquier duda o problema hay muchísima gente que ya se ha enfrentado a ello y puedes aprender en base a su experiencia”.

Me dan miedo las mates. ¿De verdad puedo programar?

Por la experiencia de todos estos programadores, hemos querido preguntarles qué les dirían a todas aquellas personas a las que quizá les gustaría aprender a programar pero que sienten que su falta de destreza con las matemáticas puede ser un lastre.

Aunque David Arcos no cree que exista el miedo a programar, sino que “lo que hay es falta de formación” (algo que, según él, es de fácil solución, puesto que “hay una inmensidad de recursos para aprender a programar”), lo que les diría a esas personas es que ignoren el miedo “y que se ponga a programar. El miedo es nuestro mayor enemigo”. En su opinión, las carencias “hoy en día son fáciles de solucionar. Hay multitud de recursos, documentación, tutoriales y foros. Con suerte, podrás asistir a algún grupo de programación cercano, incluso algún mentor”. Y, asegura, “en cuanto le salgan las cosas, lo disfrutará, y habrá perdido el miedo. Eventualmente, querrá subir de nivel, y encontrará la motivación para mejorar su base matemática”.

Noe Medina insiste en que no toda la programación necesita que seas un crack en matemáticas. “Con unos conocimientos básicos es suficiente (haber aprobado justito en el instituto, vaya). Todo dependerá de lo que quieras desarrollar hay parte del desarrollo de software (gestiones de memoria, recursos físicos del ordenador…) que sí necesitarán mucha matemática, pero en la parte del desarrollo de software relacionado con el mundo web no existe esa dependencia generalmente”.

Un mensaje con el que coincide Fran Asensi, quien subraya que para saber programar no hace falta necesariamente tener un amplio conocimiento de matemáticas. “Es necesaria una base, y cierto pensamiento abstracto, pero no es necesario saber derivar o integrar. A la hora de ser programador pesa más la actitud que la aptitud”.

“Quien la sigue la consigue. Con esfuerzo y trabajo, si algo te apasiona no tienes por qué rendirte”, asegura Maria Teresa Nieto, quien añade un consejo: “siempre que puedas, rodéate de gente que pueda transmitirte su conocimiento y enseñarte nuevos caminos y distintos puntos de vista”.

Por su parte, Antonio Djigo cree que estamos ante un miedo que no se debería tener. “Jamás será una barrera imposible de sobrepasar, sea lo que sea que quieras hacer con la programación, siempre que le pongas un poco de empeño”.

Como resume Sara Subijana, “con ganas, esfuerzo y voluntad, se puede llegar a programar muy bien. Lo importante es formarte, rodearte de gente que te aporte y te pueda enseñar (tenemos una comunidad increíble detrás) e ir adquiriendo experiencia poco a poco”.

Ver todos los comentarios en https://www.xataka.com

VER 44 Comentarios

Portada de Xataka