Si su pregunta es “¿Puedo aprender a programar (desde cero) en un día? – entonces la respuesta es” más o menos “. Claro, puede ir a través de un tutorial y aprender algunos conceptos básicos, y tal vez incluso hacer algo útil (dibuje un imagen en el logotipo, escriba una macro de excel, escriba una página web básica). ¿Eso significa que usted “sabe cómo programar”? Sólo en el sentido más rudimentario.
Ahora, si se pregunta si puede “aprender un nuevo lenguaje de programación en un día” (como sospecho que podría haber sido), la respuesta es “más o menos”.
- Si conoce un idioma en profundidad, entonces es bastante fácil escoger un idioma diferente, DE UN TIPO SIMILAR. Todo lo que estás haciendo es buscar construcciones e instrucciones comparables. Un “for loop” es un “for loop” si el operador es “FOR” o “DO”. Un constructor se parece mucho a otro. Sí, la sintaxis y el comportamiento varían un poco de un idioma a otro, pero los conceptos son los mismos. Entonces, por ejemplo, si tu objetivo es descifrar una parte del software de código abierto, tal vez para modificar un comportamiento, tal vez nunca hayas visto perl, o php antes, pero es bastante fácil de entender y modificar. Deberá mantener abierto un manual de referencia (para comprender las peculiaridades del idioma), pero sabrá qué buscar y esa es la parte difícil. [Como punto de referencia. Cuando escribí el código a diario, era sobre todo lenguaje ensamblador y FORTRAN. Cuando, años más tarde, tuve que escribir un código de sitio web, recoger PHP fue trivial. Desde entonces, cuando se me pidió que hiciera un trabajo de administrador de sistemas, recoger lo que necesito para modificar varios programas de código abierto y escribir algo de código de cola, nunca ha sido un gran problema.]
- Por otro lado, escoger un TIPO de lenguaje diferente puede llevar un tiempo, más porque puede que tenga que aprender diferentes maneras de pensar acerca de los problemas. (En realidad, a menudo se elige un nuevo lenguaje, precisamente porque es compatible con constructos que se adaptan mejor a un problema en cuestión.) Algo tan simple como pasar de la programación del estilo SI, ENTONCES, A OTROS, a los bucles MALDOS cambia el pensamiento. La recursión toma mucho más. Y luego están los lenguajes funcionales: aprenda LISP y usted puede aprender otros fácilmente; pero pasar de FORTRAN o C o Python a LISP es mucho más difícil. [Otro punto de referencia: si todo lo que ha escrito es un código secuencial en C, tratar de captar Erlang le tomará un tiempo, tanto porque la concurrencia masiva es una forma radicalmente diferente de organizar programas, como porque los “actores” individuales están escritos en un lenguaje funcional.]
- Y luego están los lenguajes específicos del dominio: si no conoce el dominio del problema, ni siquiera piense en tratar de aprender el idioma. No tiene sentido.