No.
Para dar solo un contraejemplo: mi compañero de 13 años y finalmente logré colaborar en un papel. Es una ecóloga teórica y estaba ejecutando una simulación para comprender mejor la dispersión larval estocástica en los océanos. El código fue escrito en R, y como su doctorado es en física en lugar de informática, quedaba mucho rendimiento en el piso.
Al leer el código, cambié varios algoritmos y tomé un orden de magnitud de aceleración en serie, luego paralelicé el código para que se ejecutara en ~ 10k núcleos de procesador.
- Alguien en mi escuela secundaria dijo que en realidad no puedo resolver un cubo de Rubik porque tengo que confiar en patrones (algoritmos). ¿Cuán verdadera es esta afirmación?
- ¿Se requiere un buen conocimiento de la estructura de datos y algoritmos para saltar a la codificación competitiva?
- En Kaggle Competition, ¿qué algoritmo de aprendizaje por conjuntos prefiere? ¿Voto mayoritario, promedio ponderado o algunos algoritmos avanzados como el embolsado?
- ¿Cómo deberíamos hacer un seguimiento de la mediana de una matriz en expansión?
- ¿Cómo están sucediendo los campos de entrenamiento de algoritmos?
¿Entiendo ese código? Al nivel de los bits en movimiento, sí. A nivel matemático o ecológico, absolutamente no.
A partir de ahí, puedo ir a la lista de códigos de misión crítica que le importan a LLNL: UMT para el transporte de fotones, ParaDiS para la simulación de dislocación, CCSM para la investigación climática, etc. Comprender los algoritmos utilizados le permitirá comprender cómo rebotan los bits, pero esos los bits significan algo en un nivel superior, y necesita tener una buena cantidad de conocimiento específico del dominio para comprender si esos bits tienen sentido desde un punto de vista físico / químico / climático.