Conozco bien C y los conceptos básicos de Python. ¿Puedo aprender Kotlin?

Puedes aprender todo lo que te propongas. Kotlin no es exótico, estarás bien.

Si hubieras dicho Haskell, habría dicho que debes estar preparado para que te lleve un tiempo, porque es un idioma muy diferente … y útil para aprender, no porque escribirás mucho Haskell en tu carrera, sino porque aprenda tanta teoría que se está introduciendo en lenguajes más nuevos y prácticos como Kotlin y Rust.

No dude en saltar a nuevos idiomas … Estoy en una carrera de idiomas en los que he escrito código de producción en más de 30, y agregué uno más este año (escribí algunos Javascript de producción por primera vez, créanlo o no…). Después de un tiempo, ni siquiera es difícil, es más una cuestión de a) en qué familia está este idioma, b) lo extraño de este idioma en particular, y c) cuáles son los modismos para las cosas de uso común. Y, por supuesto, d) dónde encuentro la documentación estándar de la biblioteca.

(nota: solo me considero realmente experto en tres lenguajes de programación a gran escala, que son C, C ++ y Python; la mayoría de esos 30 idiomas son pequeñas cosas específicas de dominio, mientras que los tres he enviado un montón de código en, algunos de ellos de código abierto, algunos de los cuales seguramente ha utilizado sin saberlo)

Si sabes bien inglés y un poco de italiano, ¿puedes aprender español?

Por supuesto que si .

Todos estos idiomas son solo herramientas, usted aprende la sintaxis y lee la documentación, y puede usar esta herramienta. Pero lo más importante es aprender a codificar.

Sí. Pero deberías aprender Java en su lugar. O tal vez incluso C ++.

Creo que Java es mucho mejor para enseñar los fundamentos de OOP en comparación con Kotlin, debido a la forma en que están estructurados los lenguajes, pero más aún la cantidad de material en Java en comparación con Kotlin.

He estado escribiendo Kotlin por un tiempo, y todavía no lo recomiendo como primer idioma (primero porque eres nuevo en OOP) porque simplemente no tiene el soporte que Java tiene.

C ++ tampoco sería una idea tan mala ya que ya conoces C. No sería una mala forma de entrar en OOP utilizando un lenguaje que sea bastante similar al que ya conoces.

Pero creo que lo importante es centrarse no en los lenguajes de programación que conoces, sino en el software que creas.

¿Qué programas has hecho? ¿Te impresionaron? ¿Qué tan grandes eran?

Lo importante en la programación no es aprender lenguajes de programación, se está volviendo bueno en la programación. Entonces, si no ha hecho un programa significativo, entonces no debería estar aprendiendo nuevos lenguajes de programación, debería estar programando.

Por qué no, adelante.