Teoría VS Práctica en la Programación

Hola mundo ¿cómo están? Mi nombre es José como seguro que saben, sino me presento y venga vamos a responder más preguntas de usuarios Espero que tú también compartas tú opinión

Me dice, Alfonso Izaguirre, que está empezando… no lo voy a leerlo todo para resumir dice, que está empezando a aprender, que no se siente listo para esto de las grandes empresas y la pregunta es: “¿Es bueno estudiar los paradigmas con código, sin teoría o desde el libro de manera teórica y complementando con código?”, es decir, llegado al punto de tener que estudiar pues tipos de programación, algoritmos, estructuras de código y ese tipo de cuestiones ¿Es necesaria la teoría o directamente nos metemos a hacer código a saco sin entender la base teórica? Dale tu opinión, espero que sea la misma que la mía, porque está respuesta no creo que dé lugar a dos opciones; así que ahí va mi respuesta Si no conoces la teoría, no vas a ser un buen programador Fíjate que tajante que soy, no sé, a veces me parece que soy el Risto de la programación A ver… la teoría vas… es importantísima, es más importante de lo que la gente cree, hay muchos que van por ahí en la vida pensando que: “bueno, lo que importa que mientras que sepas a programar y la cosa funcione ya es suficiente”

Perdona que te diga, un programa puede funcionar teniendo un código coherente o teniendo un código “pichulero” que, bueno, que te funciona casi de casualidad, te has tenido… porque has tenido que estar en el código escribiendo 50000 “If” para todos los casos de error que te estaba dando antes y así como lo has depurado, en lugar de hacer un algoritmo, en el que se tenga en cuenta todas las posibles circunstancias desde el mismo principio para evitar errores y hacer un filtro de situaciones, y finalmente la cosa funciona pero de una forma mucho más elegante; eso no es casualidad, ahí hay conocimientos teóricos detrás, de hecho incluso conocimientos matemáticos en muchos casos Estas famosas entrevistas que hace Google, en la que te ponen un problema un poco así medio adivinanzas, acertijos y te dice: “que a ver como lo resolverías” y la gente piensa: “ven, lo que le importa Google, es simplemente que tú sepas, no te ha preguntado nada de teoría” Pues mentira, porque muchos de esos retos o “exámenes” (no son como exámenes, no) como test que te hace Google te lo hacen aposta, porque eso que te están pidiendo que desarrolles: el algoritmo que te están pidiendo o el juego que te están pidiendo Detrás de ellos, hay una base matemática o hay algún tipo de concepto teórico/paradigma, como tú dices, que si no se sabe, no se puede solucionar de la forma más eficaz; quizás se te pueda ocurrir alguna alternativa que sea también correcta, pero no la eficaz

Si se te ocurre algo, así de la nada sin teoría, y si se te ocurre la solución correcta; es porque tú eres un superdotado o en fin eres una máquina Pero normalmente ese tipo de cosas te lo ofrece la teoría, porque ya habido gente que se ha roto la cabeza en pensar, que ha descubierto nuevas maneras de hacer las cosas más optimizada y lo ha enseñado, y cuando tú lo lees aprendes de los que tienen más experiencia En realidad no estarías estudiando teoría, estas estudiando conocimientos de gente, que después de años y de décadas ha llegado a una posición mucho más avanzada, de la que tiene una persona que está empezando; entonces estudia la teoría, porque eso es como ganar experiencia de golpe Por supuesto, sin teoría, yo veo imposible ser un buen programador e incluso te diría que dentro de los programadores, los que saben matemáticas pueden ser excelentísimos programadores Un programador que no tenga conocimientos avanzados de matemáticas, puede ser un buen programador, ¡ojo!, pero llega a un punto que algoritmos de cierto tipo de comprensión de datos, de cosas analíticas, ya se quedan cortos; porque les falta esa base, yo no tengo esa base y yo hay retos en los que veo que digo: “Esto seguro que se podrá hacer de alguna forma, con algo matemático, en tres líneas de código y seguro que se puede hacer

Y yo aquí me estoy rompiéndome la cabeza”, porque me falta en algunos momentos esa base, esos conocimientos teóricos, así que, por supuesto Si quieres estudiar por tu cuenta o… hazlo Pero la teoría no te la puedes saltar, aunque te parezca odiosa, tienes que pasar por esa… obligatorio Lo siento, pero es lo que hay y si eres un genio y se te ocurren solo los conceptos teóricos que la gente ha descubierto con los siglos, pues adelante Pero Alfonso, lo siento, te toca hincar los codos

Me gustaría saber la opinión del resto de la gente y si Alfonso ves el vídeo, pues oye lo hecho para ti, pues chico coméntame que te ha parecido mi respuesta Espero que te haya gustado y un saludo