No.
Para explicar por qué, asumiré que tienes poco o ningún fondo de programación e intentaré usar una analogía. Pido disculpas de antemano si esta respuesta se hace larga.
Digamos que quieres construir una pequeña casa de juguetes con un niño. Usted compra algunos ladrillos de lego y ustedes dos trabajan apilando ladrillos de tal manera que el resultado final se vea
como una casa Eres feliz y el niño es feliz. La casa de juguetes se encuentra en
por un tiempo, ya que los ladrillos de lego son livianos y básicamente indestructibles.
- Cómo pasar de un buen programador a uno excelente
- ¿Alguien consiguió un trabajo después de usar Code Academy?
- ¿Qué cantidad de programación hay en ingeniería electrónica y de comunicación?
- ¿Qué certificación de Java es mejor: OCA Java 6 o Java 8, cuando tengo 5 años de experiencia en Java 6?
- ¿Cómo se convierte uno en un experto en IA?
Ahora di que quieres una casa de verdad . Uno en el que puedes vivir con tu familia. ¿Confiaría en una casa que fue construida de la misma manera, sin usar
conocimiento de ingeniería para garantizar su seguridad? Yo diría que la mayoría de las personas sanas en la tierra no lo harían.
La programación sin una buena base en algoritmos y matemáticas es similar a construir la casa de juguetes con lego. Puedes ser bastante bueno con la práctica. Incluso puede comenzar a notar patrones con el tiempo, como el hecho de que algunos arreglos de piezas de lego conducen a mejores resultados. Aún así, será casi imposible hacer declaraciones al respecto, tales como: “esto puede manejar hasta X kg” o “esta casa es segura para vivir” o “podríamos construir uno de estos con cemento y sería válido por sí mismo”.
Peor aún, la brecha en la confiabilidad entre los dos enfoques para la construcción de viviendas aumenta a medida que el proyecto es más complejo. Construir una pequeña cabaña como los niños construyen casas de juguetes con lego podría funcionar, pero es muy poco probable que un gran puente hecho siguiendo ese mismo enfoque se mantenga. Del mismo modo, tareas más simples como escribir un sitio web pequeño serán factibles para un equipo o programadores sin experiencia en matemáticas y algoritmos, mientras que mantener algo tan grande como Amazon o Google trabajando será casi imposible.
La idea de que las matemáticas y los algoritmos no son importantes no es infrecuente entre estudiantes de pregrado o incluso entre programadores experimentados. Yo solía pensar así hace años. Luego ingresé a la universidad y comencé a aprender algoritmos, matemáticas, probabilidad, etc. Incluso me formé para ICPC, que es una competencia entre programadores universitarios que requiere bastante conocimiento en estos campos.
El resultado final de ese proceso es que ahora puedo escribir mejor código en menos tiempo. También soy capaz de escribir código para tareas que no tenía idea de cómo podía realizar una computadora hace años. Y sé cómo analizar el código para tener una buena idea de cómo funcionará cuando se ejecute. En resumen, soy un orden de magnitud mejor de lo que solía ser de muchas maneras diferentes.
Finalmente, me gustaría agregar algo con respecto a la idea de que aprenda algoritmos básicos para poder hacer coincidir patrones. Con eso, me refiero a ser capaz de reconocer cuándo se necesitan estos algoritmos y luego usarlos sin cambios. Esa idea es totalmente errónea. Si bien saber qué algoritmo emplear es una habilidad valiosa, la razón principal por la que uno debería estudiar estas cosas es aprender a pensar y resolver nuevos problemas.
TL; DR: No.