Quiero ser programador pero no tengo dinero para ir a la universidad o la universidad. ¿Qué tengo que hacer? ¿Estudiar en casa? ¿Encontrar un trabajo en una tienda de PC y aprender?

Soy ingeniero mecánico por título universitario, pero cambié a una carrera en programación después de graduarme de la universidad y pasé 25 años en desarrollo de software (tanto autoempleados como haciendo 5 startups consecutivas). Entonces, ciertamente puedes enseñarte a ti mismo cómo escribir software.

Como divulgación completa, tomé dos clases de programación básica en la escuela (una en Fortran con tarjetas perforadas, sí, fue hace mucho tiempo y otra en Algol W, una de las precursoras de Pascal). Esas dos clases me dieron los conceptos básicos de la programación, aunque nunca escribí otro programa en ninguno de esos idiomas.

Entonces, lo que quieres comenzar es lo básico de la programación. El lenguaje exacto no es crítico, aunque si es un lenguaje que puede usar más adelante (como Javascript, Java, Python, C #), entonces eso es bueno. Entonces, el primer paso es averiguar cómo aprenderá los conceptos básicos de la programación en uno de estos tipos de lenguajes. Puede encontrar algunos recursos en línea (muchos de los cuales son gratuitos) y hacerlo de esa manera o, si desea más estructura para comenzar, puede consultar el plan de estudios de su escuela secundaria local y encontrar un buen curso de introducción allí (muchos de los cuales Puede tomar por la noche si tiene un trabajo de día).

Debido al alcance de Internet, hay miles de millones de recursos, muchos de ellos gratuitos para aprender a programar. Si está buscando un tipo específico de programación / lenguaje, puede ir aquí: Los mejores sitios web para aprender codificación en línea. Aquí están algunos de los recursos de aprendizaje:

http://www.codecademy.com/
https://www.khanacademy.org/comp…

Y, mucho más se enumeran aquí: ¿Cuáles son los mejores recursos (sitios, libros o tutoriales) para aprender a programar?

Además, hay una serie de foros de programación en Internet donde puedes aprender mucho de los demás. Por ejemplo, supongamos que intentaba ser efectivo en Javascript para poder crear una aplicación cliente de navegador y un servidor backend en nodejs (ambos usando Javascript). Puede ir a Stack Overflow, registrarse y crear una consulta para todas las preguntas con Javascript y node.js como etiquetas. Luego, cada día seleccione 10-20 preguntas que parezcan interesantes (no triviales y útiles) y comience a tratar de encontrar la respuesta para cada pregunta. Luego, después de algunas horas en cada pregunta, lea las respuestas para ver cómo otros resolverían cada problema. Eventualmente, debería poder comenzar a proporcionar respuestas usted mismo y obtener comentarios sobre sus respuestas. Aunque he estado programando durante mucho tiempo, si quiero captar un tema nuevo (por ejemplo, quiero aprender a usar el CouchDB desde nodejs), puedo configurar una consulta en StackOverflow para esas etiquetas en particular y comenzar Leyendo las preguntas que vienen en cada día. Al principio, solo leeré las respuestas proporcionadas. Entonces, comenzaré a investigar por mí mismo para tratar de proporcionar respuestas. Luego, eventualmente, comenzaré a escribir aplicaciones de prueba para probar los conceptos que aprendí o para probar las respuestas que quiero brindar. Inevitablemente, investigar algunas de estas respuestas hará que mire el código de otras personas que usa esa base de datos y aprenderá aún más al ver ese código.

Una vez que haya tenido los conceptos básicos de un idioma y haya creado algunos programas pequeños en ese idioma, estará listo para comenzar a crear su primera aplicación útil desde cero. Elige algo que realmente quieras usar. Cuando aprendí Javascript por primera vez, comencé a escribir personalizaciones de Javascript para agregar capacidades a un sitio web de fotos que estaba usando. Cree una lista de las capacidades que desea que tenga esta aplicación y luego comience a averiguar cómo escribir el código para hacerlo. El progreso será dolorosamente lento al principio, pero debes comenzar en algún lugar. Una vez que haya activado y ejecutado un shell de una aplicación, podrá agregar nuevas funciones a un ritmo más rápido.

Una vez que tenga más de unas pocas páginas de código, familiarícese con una herramienta de análisis de código como JSLint o JSHint (estas son herramientas para Javascript, pero la mayoría de los idiomas tienen dichas herramientas). Estas herramientas analizarán su código y le darán todo tipo de consejos sobre su código. Aunque a menudo pienso que estas herramientas son demasiado estrictas en algunas cosas, están tratando de forzarte en buenas prácticas de codificación, por lo que es una buena práctica comprender cómo escribir código para hacer felices a estas herramientas.

Luego, mientras trabaja en su proyecto, aproveche cada oportunidad que pueda encontrar para ver el código de otras personas, ya que es un recurso enorme para el aprendizaje. Hoy en día, con la enorme cantidad de código fuente abierto, esto es fácil de hacer. Cada vez que escoja algún tipo de biblioteca para usar, asegúrese de pasar un tiempo mirando el código fuente en bruto de la biblioteca. Las bibliotecas de código abierto exitosas con muchos colaboradores han sido examinadas por un gran número de desarrolladores y, por lo general, estarán libres de malas prácticas y siempre encontrará nuevas construcciones de programación para aprender. Estudia el código. Recorra algunas funciones de la biblioteca en el depurador para ver cómo funciona internamente, etc.

Una vez que haya puesto en marcha su aplicación, busque algunas personas que quieran usarla. Mira lo que dicen al respecto. Ver qué problemas encuentran con él. Hacerlo mejor. Añadir más características.

En este punto, debe conocer y comprender los conceptos básicos de la programación y haber creado algunas aplicaciones no triviales que otras personas han utilizado. Ahora está listo para tomar algunas decisiones sobre el tipo de desarrollo en el que desea especializarse inicialmente (por ejemplo, desarrollo de navegador en Javascript / HTML, desarrollo de back-end en PHP o Java o incluso Javascript, aplicaciones de teléfonos inteligentes personalizadas en Objective C o Java, etc…) y adquiera destreza en esa especialidad en particular. El objetivo aquí sería llegar a un punto en el que pudiera crear su propia aplicación comercial (solo o en equipo con otras personas), solicitar trabajos de nivel de iniciación en esa área particular de experiencia o encontrar algunas oportunidades de consultoría que pueda hacer.

Puedes aprender a programar por tu cuenta. De hecho, la mayoría de la gente lo hace. Realmente no piensas que todos los programadores profesionales fueron a la universidad y estudiaron CS, ¿verdad?

Tampoco todos fueron a codificar bootcamp. Y hay muy pocas prácticas de programación. La mayoría de las compañías no lo contratarán solo para capacitarlo en programación.

La buena noticia es que aprender a programar no es demasiado difícil, si está motivado y dispuesto a trabajar duro . Es lo mismo con cualquier otra actividad intelectual como tocar el piano o jugar al ajedrez.

La clave es comenzar con un buen lenguaje de enseñanza . Solo hay algunos de estos, como Basic, Logo, Pascal, Scheme y Smalltalk. Recomiendo altamente Smalltalk .

Es sumamente sencillo y fácil de aprender. ¡Toda su sintaxis puede caber en una tarjeta postal!

Smalltalk fue diseñado en Xerox PARC para enseñar programación a niños . Pero no te preocupes, ¡también es perfecto para adultos!

Smalltalk es absolutamente la mejor manera de aprender programación orientada a objetos (POO), el estilo de programación más importante en la industria de TI.

Para comenzar a aprender Smalltalk, aquí hay un tutorial agradable y delicado: Aprenda Smalltalk con el Prof Stef.

Luego siga esta guía de introducción para Pharo: Inicio rápido de Pharo.

Un buen libro de texto (gratuito) realmente ayuda: Pharo actualizado por ejemplo.

Aquí hay algunos videos excelentes: Smalltalk 4 You.

Para más diversión y desafío, considere este tutorial de programación que escribí: Aprenda cómo programar. Es para la programación en una computadora Raspberry Pi muy económica (~ $ 60). ¡La Raspberry Pi ha demostrado ser un gran éxito entre los niños!

También hay un MOOC (Curso en línea abierto masivo): programación de objetos en vivo en Pharo.

Después de haber aprendido la programación de Smalltalk, seleccionar lenguajes subsiguientes como Python y Java es muy fácil. Eso es porque ahora tienes una base sólida.

Espero que esto ayude.

Comience a programar! Puedes comenzar con cualquier cosa, en cualquier lugar, comenzar con aprender un idioma. Podría ser cualquier idioma, si quieres hacer diseño web, podría ser PHP combinado con HTML, CSS, JavaScript, Jquery. Si desea crear aplicaciones móviles, podría ser JAVA, Objective C, etc. Si desea aprender a crear aplicaciones independientes, podría ser JAVA, Microsoft C #, C ++, etc.

Hay toneladas de cosas que aprender en cada campo. Debe decidir qué quiere construir o qué problema quiere resolver y seguir adelante aprendiendo un idioma en esa dirección. No necesitas un título para ser programador, aunque es bueno tener uno. He visto titulares de grado fallando miserablemente en una tarea de programación. Es tu amor y tu pasión resolver un problema que te lleva a aprender cosas nuevas al final.

Ya estás aquí haciendo esta pregunta, entonces, ¿qué más motivación buscas exactamente? Sabes que es una buena decisión por varias razones para tratar de aspirar a algo más de lo que eres ahora. Lo único que puedes hacer es aprender. No importa lo difícil que sea o lo que lleve, sin importar quién crea que tendrá éxito o fracasará.

No necesitas dinero para aprender. Soy ingeniero informático y aproximadamente la décima parte de lo que hago a diario aprendí en la escuela. El hardware es definitivamente un poco más desafiante y amplio, pero el software es realmente muy, muy fácil de aprender y jugar si tiene una computadora y una conexión a Internet.

Use google, seleccione algo que quiera hacer, conceptualmente, una aplicación de teléfono, una aplicación de escritorio, un sitio web, etc. Luego, investigue qué necesita hacer para hacerlo: aprenda los idiomas que necesita aprender, instale el software que necesita para instalar. Cometerás muchos errores, pero esa es la mejor parte del software. Si puede cometer un error, recuerde que no debe volver a hacerlo, ¡y puede cometer muchos errores muy rápidamente! Entonces, ensucie, cometa errores, recuérdelos y continúe programando sin importar qué.

No sé dónde vive, pero la mayoría de las escuelas tienen programas para ayudar a las personas con necesidades financieras a obtener un título. Tuve que trabajar (en McDonald’s) cuando empecé la universidad. La escuela finalmente me encontró un programa de estudio de trabajo. Muchas personas hacen la escuela nocturna. Entonces, incluso si empiezas a trabajar sin un título, pondría la universidad en mis planes.

regístrese en cualquiera de los sitios de programación e intente completar los desafíos mensuales y diarios en esos sitios. Es un buen punto para usted que no se encuentre en una universidad o un colegio universitario, ya que la programación requiere una auto dedicación que es difícil de contribuir cuando está en Universidad.
Algunos buenos sitios buenos son eulerproject.org y codechef.

buena suerte

Definitivamente no necesita dinero para convertirse en programador, si tiene una computadora con Internet y su cerebro, está listo para ir, hay muchos cursos en línea gratuitos como codeacademy – Bienvenido a The Starter League.
Otras personas ya mencionaron un poco más en sus respuestas. Solo mantente motivado y enfocado.

Consiga un trabajo primero y ahorre para sus ambiciones. Tómalo paso a paso. Sé paciente y el cielo es tu límite. * Lea más ideas inspiradoras en el blog de entretenimiento Maverix

Ven a la Argentina, la educación es pública y GRATIS. Enseñar inglés para sobrevivir.

🙂

More Interesting

¿Es la maestría en análisis de datos de CUNY School of Professional Studies un buen programa para pasar a la ciencia de datos?

¿Hay un doctorado en cada materia?

¿Puede alguien ayudar a mi amigo a elegir / elegir una buena sucursal para hacer un MTech a tiempo parcial de una escuela de ingeniería de renombre en MH o MP?

¿Qué debo hacer después del 10 para unirme a IIT?

¿Qué clases de AP deberías tomar para la carrera de biología?

¿Se considera un fracaso en la escuela obtener un grado inferior al promedio?

¿Cuál es la mejor opción para los abandonos del nivel secundario?

¿Sobre qué factores debo elegir una MBA en el extranjero o en la India teniendo en cuenta los gastos a cubrir que pueden obtener un empleo extranjero rentable?

¿Qué debo elegir en MBA HR o Finanace?

Cómo obtener más calificaciones en Aptitud cuantitativa en IBPS PO 2016

¿Cómo es para un estudiante indio obtener una maestría o un doctorado de una universidad estadounidense o europea?

Si me auto educo sin certificación, ¿cómo puedo convencer a los empleadores de que soy apto para trabajar?

Necesito terminar el programa de estudios de química del HSC 12 en 2 semanas y no sé mucho. Los exámenes de las juntas están llegando. ¿Es posible?

Tengo 25 años, trabajo a tiempo completo y voy a la escuela. Quiero comenzar mi propio negocio en 2015. ¿Estoy haciendo demasiado?

Si quiero ser programador, pero tener un título universitario en algo que no esté relacionado con ciencias / matemáticas, ¿debo solicitar una maestría en ciencias de la computación para comenzar una carrera?