Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Consulta de programador en potencia
#1
Hola a todos:
Estoy seguro de que la consulta que voy a dirigiros ha sido ya mil veces planteada, pero necesito trasladaros lo más fielmente mi situación actual.
Tengo formación en Economía y Finanzas, y llevo trabajando en el sector bancario más de una década: área de mercados financieros primeramente y análisis de riesgos actualmente.
Estoy muy interesado en aprender lenguaje de programación, inicialmente Python y ya veremos luego, para aplicarlo principalmente al ámbito del análisis de riesgos. Aunque supongo que también me sería muy útil para las finanzas y para la economía en general. Es decir, aunque no descarto otras aplicaciones, mi prioridad pasa por enriquecer mis capacidades profesionales en el marco en que me he movido desde que terminé mis estudios.
Carezco de formación en programación. Soy un usuario habitual de software, tengo un nivel de inglés B2 cercano al C1, buenos conocimientos de lógica formal (soy graduado en Filosofía, en la especialidad e Lógica, Historia y Filosofía de la Ciencia  y mi TFG versó sobre los trabajos de Leibniz para elaborar un lenguaje característico universal),  y ciertos conocimientos de Álgebra, etc.
Recientemente he adquirido tres libros: “Aprende Python en un fin de semana”, “Python, los fundamentos del lenguaje” y “Python 3, curso práctico”. Mi idea es probar inicialmente de modo autodidacto estudiando estos tres libros. Mi tiempo de estudio está algo limitado por mi trabajo y otros quehaceres. Digamos que dispondré de una hora al día de lunes a viernes y de unas dos o tres horas los sábados y los domingos.
Mi consulta tiene que ver con la planificación del estudio. ¿Creéis que me convendría complementarlo con algún curso para iniciados? En caso afirmativo, ¿qué cursos oficiales, no presenciales y de duración razonable (4, 5, 6 meses) me recomendaríais? ¿Se os ocurre algún consejo adicional sobre algo que yo esté pasando por alto?
Os agradecería enormemente cualquier indicación que podáis darme.
Saludos.
Responder
#2
Hola, bienvenido.

Aprender Python es un fin de semana es imposible desde todo punto de vista, así que no hay que fiarse de esos títulos. Volverse un programador competente lleva años, lo mismo que adquirir pericia en cualquier rubro en el que uno está empezando. El inglés lógicamente ayuda porque todos los lenguajes de programación (o al menos los que se usan para algo serio) tienen los nombres de sus instrucciones en inglés. Además, y más importante, hay mucho material en inglés para leer (libros, tutoriales, videos, sitios de Q&A, etc.), pero los recursos en español tampoco son menores, y menos en Python.

Ya que somos colegas en el ámbito de la filosofía, me permito darte un consejo desde ese lugar. Pensá el aprendizaje de la programación como el aprendizaje del latín o griego: no se los aprende leyendo manuales de gramática. Por más que leas todos los libros del tema habidos y por haber, cuando mucho habrás aprendido unas pocas reglas, pero de ningún modo tendrás la capacidad de leer (y mucho menos fluido) textos en esas lenguas. Desde luego que la gramática es importante, pero para aprender latín o griego hay que leer en latín o griego, desde pequeñas oraciones muy básicas y textos sencillos hasta las grandes obras de la cultura grecorromana. Y ese es un proceso que lleva años. Lo mismo ocurre con la programación. Te aseguro que no te vas a volver un programador tras leer por completo esos tres libros que compraste. Los libros de programación son referencias sobre un lenguaje determinado, a los que se vuelve recurrentemente para repasar algún tema específico; por lo general no se leen de una punta a la otra, y rara vez se leen completos. Sí te pueden servir mucho en esta etapa introductoria para encontrar explicaciones desde cero sobre aspectos fundamentales de la programación (expresiones, variables, condicionales, bucles, funciones, clases). Pero todos esos conceptos los vas a poder adquirir solamente si los usás en un proyecto real, por fuera de los ejercicios (si es que hay) que te sugiera tu libro de referencia. Así que mi recomendación es que, sea lo que quieras hacer con Python, empieces a desarrollarlo cuanto antes. Si querés hacer scripts o aplicaciones para el mundo de las finanzas, empezá con pequeños prototipos de programas que solucionen problemas reales de ese mundo (como un programa que le pida al usuario un precio en una moneda y lo convierta a otra moneda). El mismo desarrollo de esos programas te mandará constantemente a tu libro de referencia para aprender conceptos nuevos o repasar los ya aprendidos. Te vas a encontrar con muchos problemas, vas a estar días y días tratando de resolver algo sin saber bien cómo, vas a tener muchas frustraciones, pero de eso se trata justamente el aprendizaje. Si tenés ganas de aprender y te gusta lo programación, cada problema lo vas a tomar como un desafío y una oportunidad para seguir aprendiendo. Por supuesto que no hay que proponerse desafíos demasiado avanzados para el propio nivel (no vas a querer hacer un modelo de aprendizaje automático en los primeros meses). Ahora, si no te gusta la programación y solo querés aprenderla para ser más competitivo en tu área de conocimiento (como la gente que quiere aprender solo porque la paga de los programadores es buena), todo se vuelve mucho más difícil, por no decir imposible.

Dicho esto, si te parece que te cuesta mucho dar los primeros pasos por tu cuenta propia, hay muchos cursos introductorios en la web, en todos los formatos, que podrías hacer para dar el primer paso. Una vez adquiridos los fundamentos (los que te comentaba antes: variables, condicionales, bucles, etc., que se hayan en cualquier lenguaje), algo que se puede hacer en poco tiempo, luego la misma práctica de la programación lleva al aprendizaje de asuntos intermedios y avanzados. Por eso es tan importante desde el primer momento que empieces a escribir código para tus propios proyectos, por más que esos programas sean tan sencillos como un conversor de divisas y un software que solo usarás vos. Yo doy Python para principiantes en un instituto en Argentina con clases en vivo a distancia. Si te interesa, te paso el dato por mensaje privado.

Saludos
Responder
#3
Hola, Francisco:

Muy agradecido por tu bienvenida y tus consejos. Siempre es agradable encontrar a un colega de estudios de Filosofía en este tipo de foros. 

De momento, he empezado a leer los libros que comenté para intentar crear un mapa mental, circunstanciar el lenguaje Python en el inmenso mundo de la programación y lanzarme a la piscina con mis primeros scripts sencillitos. Cuanta más información busco en la red, más desbordado me encuentro en cuanto a las posibilidades que ofrece la programación en general. 

No obstante, creo que tengo bastante claro mi objetivo: estudio de programación para aplicarla a modelaje de riesgos crediticios. Esta sería mi idea específica, ampliable posteriormente, si me fuese posible, a las Finanzas bancarias. Tengo entendido que lo más adecuado para mi plan concreto es aprender al menos R, Python y SQL. Quizás tú u otro compañero del foro estáis en disposición de confirmarlo, desmentirlo o matizarlo. 

En relación con esto, me han surgido un par de dudas. ¿Es Anaconda una especie de entorno de trabajo de Python aplicado a las Finanzas o al Data Science o algo por el estilo? Ayer instalé la última versión de Anaconda para Windows (ya tengo instalado Python 10.3) y el programa se ejecuta, pero se cierra automáticamente tras un par de segundos. ¿Quizá porque son incompatibles? 

Finalmente, echare un vistazo a los recursos que ponéis a disposición en esta página. En mi primera visita no advertí que hay habilitada una sección de recursos para Python. Gracias por hacérmelo saber.

Un saludo a todos.
Responder
#4
Hola.

Sí, efectivamente Python, R y SQL son tecnologías que toda persona que quiera analizar datos debe saber. R es prescindible: Python puede hacer todo lo que R y más, pero igualmente aprenderlo puede aportarte mucho. Yo empezaría con Python y SQL.

Anaconda es una distribución que no solo incluye Python sino también librerías y herramientas para el análisis de datos. Puede convivir con la distribución oficial de python.org. Pero tené en cuenta que cuando escribas "python" en la terminal, solo una de esas dos distribuciones se va a ejecutar. Podés chequear cuál tiene prioridad (la que aparece primero) vía el comando "where python" en la terminal. Si no estás familiarizado con ella, te dejo un artículo introductorio: Línea de comandos (o terminal) para pythonistas.

El error que comentás parece estar relacionado con la forma de ejecutar el código: recordá ejecutarlo desde la terminal. Si seguís teniendo, podés crear un nuevo tema mostrando una imagen de lo que ocurre para ver cómo sortearlo.

Saludos
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)