¿Cómo aprendiste a programar?

Solo hay una forma de aprender a codificar; empezar a codificar

Hay muchas maneras en que puede ayudarlo a aprender cómo codificar; CS o SE, bootcamps y otros. No escribiré sobre ellos ya que quiero darte una alternativa. ¡Tu conocimiento o edad no es importante!

Estoy trabajando en Holberton School y le ofrecemos una oportunidad. En nuestro sitio web puede encontrar todo lo que necesita saber, pero a continuación le doy algunas de las cosas más importantes :

  • Holberton School ofrece una alternativa para los que se preguntan acerca de los campamentos de entrenamiento, así como un grado de 4 años en ciencias de la computación.
  • Básicamente, es un programa que combina la vida en el campus en el centro de San Francisco, una pasantía y un empleo a tiempo parcial contratado de forma remota o en el campus trabajando por especialización.
  • Su duración es de 2 años. La Escuela Holberton realmente ofrece una alternativa increíble para muchos de los beneficios que produce. No hay costos iniciales para Holberton.

La Escuela Holberton entrenará en 3 cosas que harán que nuestros estudiantes sean excelentes Ingenieros de Software:

  1. Tener un conocimiento de la pila completa
  2. Poder aprender por ti mismo
  3. Habilidades blandas
  • El programa está organizado de tal manera que se basa en la formalidad. ¿Qué significa esto? No hay educación formal en las clases y con los maestros. Usted tiene mentores que supervisan su trabajo y están disponibles para consultas.
  • Holberton actualmente trabaja con 100 mentores que trabajan en la misma industria. Además, de esta manera, los estudiantes siempre están actualizados con información en nichos específicos. Uno de los mentores, Louis Monier es, por ejemplo, el líder del curso de Aprendizaje automático. Primero les dio a los estudiantes un seminario de un día completo y una capacitación práctica que puso a los estudiantes en el lugar. Este tipo de educación es exclusiva de la Escuela Holberton.
  • Aprender sobre ingeniería de software no es solo aprender sobre la tecnología. Requiere conocimientos sobre redes, habilidades blandas y tutoría por expertos en el campo. Lo que pasa con Holberton es que te permite adquirir habilidades que te ayudarán a iniciarte en el mundo de la tecnología.

Sin embargo, si su pasión realmente reside en el mundo de la tecnología, comprenderá que convertirse en un experto en varias áreas requiere tiempo y esfuerzo.

Me encantó la idea de los videojuegos. Teníamos una consola de pong y la gastábamos. Vi juegos más avanzados en la televisión y algunos amigos tenían uno o dos juegos en las máquinas de trabajo de los padres. Realmente no dividí la idea de una computadora y los juegos en ese momento, y quería este dispositivo místico.

Mi padre comenzó a llevarme a programas de computadora, que en los años 70 eran más bien una manifestación en los principales centros de convenciones de la ciudad (armería de DC para nosotros). Esperaría jugar un poco. Intentaría tocar en la pantalla de la computadora de Radio Shack. Al final, esto habría significado una inversión de $ 1500 dólares y una cinta de correr de dinero después. Mi papá era profesor y eso era mucho dinero.

Me inscribió en una clase de programación en una tienda de informática local. La clase fue más sobre cómo conseguir que los padres compren una computadora o actualicen. El propietario nos mostró lo que era más como un tablero de evaluación alrededor de un 8008. Un poco de dinero, pero más asequible y mucho menos divertido.

Un milagro ocurrió alrededor de ese tiempo. Clive Sinclair presentó su ZX80.

Fue una brillante reducción en el recuento de piezas al poner solo el mínimo de RAM y ROM con un BASIC reducido para un Z80. Apenas funcional, pero funcionó y costaba $ 200. Conseguimos uno de los primeros y lo conectamos a un viejo televisor en blanco y negro.

No podía jugar juegos en él, pero podía escribir los pequeños programas en el libro. Comenzamos una suscripción a las revistas Sync que siempre tenían algo divertido, pero tenía que escribirlo. Muchos de los mejores programas requiere que el modelo más nuevo con más RAM y ROM tenga un BÁSICO más avanzado. Intentaba convertir o salvar algo del programa y terminaba aprendiendo mucho sobre programación.

Terminamos de actualizar al ZX81 con un kilobyte completo de RAM. Compramos un mejor televisor en blanco y negro (probablemente uno de los últimos que se vendieron y todavía lo tengo), una actualización de 16K, y eventualmente modifiqué un teclado mecánico por $ 5 para trabajar con él. Casi al mismo tiempo, mis padres y yo (ruta en papel) se nos ocurrió suficiente dinero para comprar un Atari 800, pero no los juegos. Aprendí un BASIC más completo y comencé a aprender ensamblaje del libro de Rodney Zak.

A estas alturas, estaba menos interesado en los juegos y la programación era cada vez más importante. Los procedimientos y lenguajes primitivos que estaba usando me detuvieron, pero se estableció la tendencia.

Pronto me pasé a una Atari ST y me encantaba la asamblea de 68000, pero escuché sobre C. Recibí una copia de K&R y nunca miré hacia atrás. En un par de años estuve programando en sistemas Unix y lo he estado haciendo desde entonces (iniciando sesión en los sistemas de la Universidad hasta que Minix y luego Linux estuvieron disponibles para ejecutarse localmente). La mayor parte de mi carrera en programación proviene de esta combinación de C y Unix con una sólida formación en hardware y ensamblaje que obtuve antes.

En el mundo de hoy, todos tienen la superpotencia, también conocida como internet. Para comenzar a aprender en línea, lo único que tiene que hacer es encontrar las fuentes adecuadas y confiables (es decir, sitios web).

Para aprender a programar en línea debes visitar estos sitios web …

  1. Tutoriales para Java Concurrencia, Spring AOP, Gerrit, Spring MVC, Apache Solr, Excel Power View, Sencha Touch, Tex Comandos, Agile Test, Apache Tajo, C ++ Library, MariaDB, SAP QM, SAP SOLMAN, SAP SCM, MS Access, KoaJS , OAuth2.0, Scrapy, SAP CCA, SAP PM, SAPUI5, Cognos, Internet of Things, Marketing rural, Trampolining, Golf, CakePHP, SAP EWM, Web Dynpro, Angular2, Framework7, Arduino, CherryPy, Firebase, SAP C4C, SAP Panel de control, SAP PI, ExpressJS, Design Thinking, Internet Security, PyGTK, Apache Drill, Excel Charts, Elastic Search, Seguridad informática, Programación extrema, Desarrollo impulsado por el comportamiento, Optimización de la tasa de conversión, Base de SAP, Derecho empresarial, Kanban, Erlang, Nómina de SAP , ASP.Net WP, PouchDB, MFC, SAP HR, Yii, Clojure, Aurelia, CoffeeScript, CPanel, Laravel, SAP Webi, MS SQL Server, pinterest, Indian Polity, Teradata, Windows10
  2. YouTube (para videos tutoriales, ayudan mucho \ U0001f60a)
  3. Codecademy – aprende a codificar, interactivamente, gratis
  4. Udacity – Clases en línea gratuitas y Nanodegrees Udacity es la unificación de conferencias de video intuitivas y pruebas mejoradas para lograr la sensación interactiva para los estudiantes.
  5. Google.com

Cuando empecé la universidad en 2012, estaba entrevistando para un trabajo de estudiante. Sabía que no tenía experiencia, pero mi jefe decidió darme una oportunidad y ella me contrató.

Mientras estaba en el trabajo, estaba ayudando a un colega con un proyecto HTML y mi colega dijo “wow, eres realmente bueno en esto” por cualquier razón, eso me dio el deseo de aprender todo lo posible para ser realmente bueno en la programación.

Como primer proyecto, decidí crear mi propia JQuery para aprender cómo funcionaba. Aprendí más sobre eso de lo que tendría solo. Luego, proyecto tras proyecto, la universidad me contrató a tiempo completo con mi salario antes de graduarme. Desde entonces, he estado aprendiendo cómo diseñar software y cómo codificar mejor. Solo lleva tiempo y motivación.

Colegio, cursos en línea y nunca decir que no.

Me encantan los rompecabezas y cada desarrollo se considera un nuevo rompecabezas.

Cuando comencé, después de estudiar, lo admitiré, fui a Craigslist e intenté encontrar clientes que permitieran una curva de aprendizaje. Sabía que podía resolver cualquier cosa, pero en ese momento no sabía cuánto tiempo tomaría. Rápidamente me di cuenta de lo que pensaba y lo que es real son dos cosas muy diferentes. Necesitas ser humilde como un buen desarrollador. Lo que crees que es ideal, no significa que eso es lo que quiere el cliente.

A lo largo de los años, quise hacer que las cosas que son comunes se conviertan en algo de plantilla, así que no tuve que dedicar tiempo a hacerlas una y otra vez. Esto se convirtió en la necesidad de estudiar y aprender nuevas tecnologías de desarrollo, así como técnicas.

Ahora con más de 15 años en todo tipo de desarrollos, incluido un CMS completamente desarrollado desde el archivo uno, línea uno, columna uno; Sé que puedo hacer cualquier cosa.

Muchas veces he asesorado a personas y siempre me preguntan “¿cómo sabes eso?”. La respuesta siempre será “porque he resuelto este problema y lo he resuelto”.

Creo que puedes aprender y leer todo lo que quieras; Al final solo debes ir a hacerlo. Nada ayuda a retener información mejor que estar atascado y hacerlo.

Si tuviera el mismo conjunto de habilidades de desarrollador de dos personas y una fuera enseñada en la escuela y otra fuera yo misma; Yo personalmente preferiría la autodidacta. Sé que esa persona vendrá por problemas propios. El lugar donde se enseña en la escuela es más probable que necesite la ayuda de una persona mayor. Eso NO va para todas las personas. Entiendo completamente que todos aprenden de manera diferente. Honestamente, tu trabajo y el trabajo bajo presión te responderán quién es mejor.

En general, no tengo problemas para enseñar, guiar y asesorar a personas. Me encanta hacerlo porque creo que se puede enseñar a cualquiera; tienes que encontrar una manera de relacionarlo con ellos para que lo recuerden y puedan “verlo” funcionar sin escribir ningún código.

Cuando se trata de trabajar, busco personas auto motivadas, solucionadores de problemas y personas que hacen cosas. Cuando estamos en un momento de crisis; la mano es difícil de tratar. Sin embargo, no dude en preguntar temprano. Preferiría tratar los problemas más temprano que tarde. NUNCA TENGA MIEDO de admitir que no sabe. El PEOR error que puede cometer es sobre comprometerse y no cumplir.

Todos los desarrolladores, en algún momento, no sabían lo que estaban haciendo. Aquellos que no pueden admitir ayuda siempre son necesarios en algún momento, o tienen un complejo de Dios de cualquier tipo, no los considero desarrolladores realmente buenos. Son excelentes en lo que saben; Dales algo que no saben y siempre tratarán de encajar en lo que sí saben. Un buen desarrollador evaluará qué es lo mejor para el proyecto, no su base de conocimientos. He trabajado con demasiadas empresas / desarrolladores que tomaron la decisión de tecnología equivocada porque era lo que sabían o escuchaban, y no algo que se ajustara a los requisitos.

Un buen desarrollador no tiene límites, pero entiende sus limitaciones … luego rompe esas limitaciones cada vez que surgen.

Al copiar el código de los libros, en su mayoría sin entender una sola letra de lo que estoy haciendo (no, realmente, usamos el alfabeto cirílico aquí, y BASIC usó el alfabeto latino, con el que no estaba familiarizado).

Por supuesto, no hay Internet, ni tutoriales, ni aprendizaje estructurado en absoluto. Solo los libros antiguos que usaban un dialecto de BASIC diferente al que tenía en mi computadora (lo que significaba que los ejemplos que escribía no siempre funcionaban, así que tenía que intentar corregirlos, en mi caso, eliminando y reemplazando cosas al azar). y viendo que pasa).

Si esto suena como la peor forma de aprender a programar, probablemente lo sea. Y sin embargo, aquí estamos…

Aprendí a programar un poco en la escuela secundaria (es decir, formal, instrucción en clase), por mi cuenta (como aprendiz autodirigido) y en el trabajo.

Aprendí un poco en la escuela secundaria. En la escuela, esto significaba Tandy BASIC en las computadoras TRS-80. En casa, significaba Atari Basic en mi amada Atari 400. Pero (erróneamente) pensé que la programación involucraba principalmente las matemáticas y que no podría hacerlo, ya que mis habilidades matemáticas no eran sólidas. Tuve algunos malos consejos y algunos conceptos erróneos en este punto.

Así que fui a la universidad primero como estudiante no declarado, luego pasé a la psicología por un período. Luego me cambié al inglés. Hacia el final de la universidad, obtuve una Mac Classic II y descubrí HyperCard (y su lenguaje de programación, HyperScript). Luego sucedió la web y aprendí HTML, no un lenguaje de programación, sino un paso en el camino para volver a la programación.

Después de crear muchos sitios estáticos, empecé a querer que los sitios hicieran más cosas involucradas. Me enteré de los scripts CGI y del lado del servidor. He oído hablar de JavaScript. Aprendí algo de JavaScript y algo de Perl. Luego apareció CSS, y no un lenguaje de programación, y lo aprendí. En este punto, tenía un amigo que era un desarrollador web. Quería trabajar para su firma. Me dijo que fuera a aprender PHP, ya que eso es lo que usaba su compañía. Me sumergí en PHP (y MySQL y SQL, y más CSS).

En este punto, sabía cómo programar bastante bien en PHP. Otros idiomas estaban ahora en mi radar. Aprendí un poco de Ruby, Java, ActionScript, el lenguaje de scripting de Authorware, más JavaScript y muchas otras cosas.

En algún momento, me encontré trabajando en un lugar donde no podía usar PHP, pero tenía acceso a un servidor ColdFusion y mis clientes necesitaban mucha ayuda con las automatizaciones de Excel y Access. Así que aprendí un poco de CFML y un montón de Excel VBA, Access VBA y un poco de Word VBA (que es miserable, por cierto). Aprendí mucho sobre el diseño de bases de datos durante este tiempo. También jugué con VB y C # para la plataforma .NET. Comencé a trabajar bastante con SharePoint durante este tiempo. También aprendí algo de Objective-C para un proyecto de iPhone que encabezé y un poco de C para compensar el hecho de no haberlo aprendido nunca en la universidad (ya que no era un estudiante de CS).

Luego tomé un trabajo diferente, donde tenía mi elección de herramientas, y construí muchos sitios PHP / MySQL basados ​​en CodeIgniter. Aprendí más sobre MVC e incluso construí un CMS simple para construir sitios de recetas al estilo de Pinterest, ya que se ajustaba al trabajo que estaba haciendo. Aprendí Diseño Web Responsivo, primero de manera difícil, luego con Bootstrap. También aprendí un poco de Swift.

Más recientemente, aprendí Bootstrap. He estado profundizando mi conocimiento sobre JavaScript, jQuery y Node, así como revisando PHP (lo que es realmente extraño, después de hacer mucho JavaScript). He estado buscando mucho en plataformas basadas en JavaScript como Meteor y Fuse. He aprendido mucho sobre el front-end SharePoint y UX (en general, y como se aplica a SharePoint).

Tanto como otros aquí. Mis padres compraron una TI99 / 4A con un cartucho básico. Conecté el cartucho y comencé a escribir cada línea de código escrita en el manual básico que venía con la computadora. Entonces comencé a modificar esos programas para hacer cosas diferentes. Tenía 12 años en ese momento.

Un poco más tarde compré un Comodore 64 y compré un compilador para él. Francamente, no recuerdo qué idioma era, pero comencé a escribir programas para responder a las preguntas que tenía, como un simulador de ruleta.

Cuando comencé mi licenciatura en EE, tuve mi primer curso de informática. Aprendí a Pascal en ese curso, pero realmente ya sabía cómo codificar.

De allí pasé de Pascal a C, de C a Java, y luego aprendí Perl. Aprendí algo de C y Java en la escuela, y mucho más al leer y escribir mi propio código. Aprendí a Perl leyendo un libro.

Más tarde necesitaba escribir algo en C #, compré un libro y comencé a codificar a partir de ejemplos.

Python no era diferente.

TL: DR

Conseguí un libro, escribí los ejemplos del libro y luego comencé a modificar los ejemplos para adaptarlos a mis necesidades.

¿Buscando una sugerencia de libro?

¿Qué libros se recomiendan para los nuevos estudiantes de un lenguaje de programación? ¿Puedo aprenderlo por mi cuenta?

Lista de libros de programación de Aaron – Amazon.com

Fui a sesiones de entrenamiento para el examen OCPJP justo después de completar mis estudios escolares y antes de unirme al programa de posgrado. Ahí es donde empecé a aprender programación y me pareció interesante, lo que me llevó a seleccionar la informática como mi especialidad. Para aprender los conceptos de Java, puedo recomendar este libro que cubre casi todo lo que necesita saber conceptualmente: SCJP Sun Certified Programmer for Java 6 – Guía de estudio de Kathy Sierra y Bert Bates, que solía aprender conceptos de Java. Cada vez que quiero aprender un nuevo lenguaje de tecnología / programación o cada vez que quiero aclarar más sobre lo que aprendo en la universidad, generalmente sigo los recursos disponibles en Tutorialspoint. Aparte de eso, también uso los videos tutoriales de YouTube en ese tema relevante. Y también para entender bien los conceptos, me refiero a la documentación de ese lenguaje / marco también. (Ej: Java – Documentación Java de Oracle) Siempre que tengo un problema, busco / pregunto eso en foros en línea (Ex: StackOveflow) para encontrar maneras de solucionarlo.

Hola,

Mi primer aprendizaje en línea fue de Tutorialspoint, donde aprendí mucho. Pero luego empecé a buscar un sitio web más avanzado para aprender a programar con la creación o el desarrollo de proyectos. Con esto también quería aprender sobre nuevos tutoriales de programación próximos.

Entonces me enteré de Eduonix. Tienen una variedad de rangos de cursos en línea disponibles de diferentes categorías tales como:

  • Desarrollo web
  • Desarrollo de software
  • Desarrollo móvil
  • Desarrollo de WordPress
  • Márketing
  • Diseño gráfico
  • Productividad de oficina
  • Programación del sistema
  • Cursos de certificacion

Y todas estas categorías tienen una variedad de cursos, tanto pagados como gratuitos. Incluso los cursos pagados son muy numerosos y tienen el contenido valioso por la cantidad que ofrecen.

Así que me quedo con Eduonix, además tienen una sección completa de blog bajo el mismo nicho de categoría. Donde encontrarás muchos tutoriales informativos, tutoriales en video, tutoriales de programación y mucho más.

Por favor dedique tiempo y visite:

Cursos de aprendizaje en línea en desarrollo web, móvil y software.

Te puede ayudar.

¡¡Aclamaciones!!

Hola,

Soy un estudiante de informática y aprendí programación en mi vida universitaria.

En la mayoría de los estudios de ciencias de la computación, el primer paso son los conceptos básicos de programación. Algunos de los puntos fundamentales que requieren la programación básica:

  1. Ambiente de programación
  2. Sintaxis basica
  3. Tipos de datos
  4. Variables
  5. Palabras clave
  6. Operadores básicos
  7. Toma de decisiones
  8. Bucles
  9. Números
  10. Caracteres
  11. Arrays
  12. Instrumentos de cuerda
  13. Funciones
  14. Archivo I / O

Para más conceptos puedes consultar este enlace:

Conceptos básicos de programación de computadoras

Como todo lo que aprendes en la vida:

Construir, repetir, mejorar. Construir, repetir, mejorar. Construir, repetir, mejorar.

¡La práctica hace un maestro! E incluso entonces, sigues haciendo lo mismo:

Construir, repetir, mejorar.

Sigo haciéndolo después de 35 años.

Cuando era niño en el cuarto grado, comencé a llevar a casa los libros de programación BÁSICA de la biblioteca de la escuela para leer. Los usaría durante el recreo para escribir pequeños programas en el Apple IIe de la clase. Mi mamá se dio cuenta y me consiguió una calculadora gráfica programable de la marca Radio Shack para Navidad o quizás fue mi cumpleaños. Tenía una versión básica de BASIC que me permitía hacer todo tipo de cosas con ella. Fue mi compañero constante.

Tuvimos laboratorios de computación en las escuelas en esos días y eso nos hizo sentir mal durante un tiempo después de que superé la calculadora. Obtuvimos una computadora en casa en un momento dado en los días de AOL, y en la escuela secundaria después de que la banda ancha y las tiendas de repuestos se volvieron comunes, finalmente construí la mía. Tomé una clase de programación en la escuela secundaria, pero no me pareció muy interesante, usamos PASCAL.

Compré un libro enorme y grueso sobre C ++ que habría sustituido como arma contundente cuando estaba en la escuela secundaria. C ++ no aceptó, yo era, y todavía soy, un chico de lenguaje dinámico que gravita hacia la web en lugar de codificar el hardware o los sistemas. Aprendí a hacer sitios web sencillos en la escuela, pero las escuelas y el colegio comunitario que elegí no me empujaron de la forma en que hubiera necesitado tener una carrera en eso. Un gran problema que tuve en retrospectiva fue la falta de modelos reales en el campo de la tecnología.

Siempre me pareció un pasatiempo, así que me uní al ejército en lugar de permanecer en la universidad. Tuve sueños más grandes de todos modos. Una vez que estaba libre de capacitación y estaba en mi trabajo habitual, compré una computadora, ya no era realmente económico construirlos, y era más un usuario avanzado que un programador durante varios años.

Odiaba a los militares y logré salir antes de que terminara mi contrato. Trabajé con mi padre en el campo de la construcción durante algunos años como aprendiz de electricidad, cambié a baja tensión y finalmente conseguí un trabajo en un pequeño centro de datos para una pequeña tienda de externalización de TI en Atlanta. Mi experiencia como administrador de sistemas me fue muy útil cuando finalmente decidí intentarlo como programador profesional.

Después de pasar cerca de diez años en otros tipos de trabajos, fui al mundo profesional como un pato al agua. Para mí, siempre se trató de decidir que quería ser un profesional, esa decisión tomó unos quince años después de que empecé a codificar. Algunas veces desearía haber tenido acceso a todos estos increíbles programas escolares que enseñan y glorifican la codificación, otras veces me gusta que crecí en una época en la que era difícil encontrar tiempo para programar, así que aproveché al máximo lo que tenía. .

Comencé con Visual Basic 6 cuando estaba en sexto. Copié el ejemplo del libro tal como está. Sólo el código. No tenía idea de conceptos básicos como variables, constantes, tipos de datos, bucles, bifurcaciones, etc. Olvídate de algoritmos y estructuras de datos. La recursión me asustó muchísimo. También tuve problemas para entender el inglés. No es mi primer idioma.

Avance rápido, 2 años después. Aprendí C. Esta vez entendí y digerí muchos conceptos bastante bien. Pero como todos los demás principiantes, tuve muchos problemas para digerir el concepto de punteros. Cuando descubrí que en Java, no tienes todo ese dolor, me sentí muy feliz.

Gran parte de las cosas que conozco y uso hoy se aprendieron cuando durante mis años universitarios (cuando escribí esto, todavía estaba en la universidad).

Es una larga historia. Puede leerlo aquí – Respuesta del usuario de Quora a ¿Hay alguien aquí que se haya autodidacta programando desde cero?

Durante el verano anterior a mi último año de secundaria, la escuela compró una fila (alrededor de cinco, no estoy seguro) del Modelo I de TRS-80, más un Modelo III para controlar una unidad de disquete y una impresora. No recuerdo cómo descubrí la sala de informática, pero lo hice en algún momento a mediados del primer semestre, demasiado tarde para unirme a la clase. No recuerdo cómo vi por primera vez un código de computadora (en BASIC), pero lo hice, lo imité y amplié mi conocimiento. En particular, recuerdo haber visto el comando “SET”, para convertir un bloque de píxeles de negro a blanco, y preguntarle al profesor (siempre había uno de guardia cuando estaba abierto) cómo lo volvería a poner en negro. Me preguntó qué pensaba, y luego, para probarlo, y con toda seguridad, “RESET” funcionó. Pronto estuve usando IF y NEXT y WHILE y así sucesivamente, al final del semestre estaba dando clases particulares a los niños que estaban tomando la clase.

El año siguiente, tonto, mantuve mi plan original de ir a la universidad como estudiante de ingeniería eléctrica, a pesar de mi falta de experiencia con él. (Al menos, más allá de armar los Heathkits con mi padre. Todavía tengo el despertador digital que fabricamos alrededor de 1973.) Cuando tuve que declarar formalmente mi especialidad, había empezado a jugar con sus computadoras (DECSYSTEM-20s, más -10s, PERQs ejecutando Accent, VAXen ejecutando VMS y Unix, PDP-11s ejecutando Unix y otros, cuando pude obtener acceso), y aprendí yo mismo a Pascal (examinando así el CS101, requerido para los EE) y C, y Estaba programando pequeñas cosas tontas en mi tiempo libre, como un clon pícaro. Era mucho mejor en eso y lo disfrutaba mejor que mis clases de EE.

Por lo tanto, cambié a CS (bueno, “Matemáticas aplicadas, Ciencias de la computación”, como CS per se era solo en el nivel de doctorado), y nunca miré atrás. Yo había encontrado mi vocación.

De hecho, tengo una historia muy inusual con la programación en comparación con mis compañeros. Siempre me interesaban las computadoras, los juegos y todo lo que había entre ellos, de alguna manera nunca hice ninguna programación hasta que fui a la universidad y obtuve mi primera clase de programación allí. De ahí en adelante, recogí las cosas muy rápidamente y pasé de no tener experiencia a (y esto, especialmente para mí, es atípico porque era un estudiante pésimo). Puntuaciones perfectas. Eso comenzó con Delphi Pascal. A pesar de ser disléxico, tengo muchos problemas con la verbosidad del idioma, por la misma razón por la que las cosas como VBA son una pura tortura para mí, rápidamente pasé a los idiomas con demarcación de corchetes. Al principio jugando con PHP relativamente rápido después de eso Java. Java realmente se quedó conmigo y ese ha sido básicamente mi idioma de elección desde entonces. Desde el mundo académico me puse en contacto con un par de otros idiomas, pero ninguno dejó una impresión como lo hizo Java, otros fueron algunos ensambladores para un chip que no recuerdo, Haskell, Eiffel y otros que dejaron una impresión aún menor . En estos días, ocasionalmente me encuentro haciendo JavaScript (navegador y nodo), Python y lo que sea práctico en ese momento.

Hay muchos buenos libros para principiantes completos para todo tipo de temas en Internet. Primero, elige un tema que te gustaría estudiar, luego obtienes un libro sobre ese tema, luego lo estudias capítulo por capítulo, lee cada 3 veces si es necesario, e intentas todos los ejemplos por ti mismo y haces todos los ejercicios.

El problema que la mayoría de la gente sufre es la falta de confianza. Piensan que los programadores deben ser una especie de übermensh , pero el hecho es que cualquiera puede aprender cualquier cosa a través de la fuerza de voluntad y el trabajo duro. Sin embargo, debo confesar que aprender algo nuevo se hace más difícil con la edad, especialmente cuando alcanzas los 40.

Si otros pueden hacerlo, usted también puede hacerlo.

No escribí mi primera línea de código hasta que estuve en la universidad, así que aprendí todo en la universidad. Incluso entonces fue un feliz accidente el hecho de tener un segundo año en ciencias de la computación viviendo en mi apartamento en ese momento, quien me animó a tomar el COMP103, sabiendo que tenía una sólida formación en matemáticas y ciencias. Antes de ir a la universidad, lo más cercano a la programación era perder el tiempo con el registro y tratar de encontrar comandos de DOS.

Dicho esto, siempre me interesó la programación y las computadoras en general, incluidos los juegos. Nunca se me ocurrió que pudiera aprender a programar por mi cuenta. Si hubiera sabido que podía hacer eso, probablemente hubiera tratado de aprender BÁSICO y / o C desde los 15 o 16 años.

Mi especialidad es la de las telecomunicaciones, pero al ser un estudiante universitario en una buena universidad, también tuvimos que estudiar una asignatura básica relacionada con la programación llamada “Introducción a la computación”, de la cual aprendí lo interesante que es realmente la programación. Fui el primero en clase en este tema y, aparte del curso, también utilicé mi lógica de programación y referencias del lenguaje de Internet para crear juegos basados ​​en consolas (sin gráficos, pero usé letras y bucles de tal manera que era como un efecto de animación) .

Después de eso, en el 2º semestre tuvimos conceptos básicos de la programación de MATLAB, el curso solo incluía el uso de la interfaz de línea de comandos para resolver ecuaciones matemáticas simples, gráficos de diagramas, etc. Aquí nuevamente utilicé la lógica y las referencias de los documentos de ayuda para crear un juego basado en GUI (simples, sin subprocesos o algo así, todavía no estaba al tanto de esos conceptos). También teníamos un tema de DSA (estructura de datos y algoritmos) y, naturalmente, también era superior en esto, antes de eso no sabía nada de esas cosas, etc.

Solía ​​sentir que tengo habilidades naturales para programar, no teníamos más asignaturas puras de programación, decidí aprender los conceptos básicos de Java en una academia, me uní a ella durante dos meses, aprendí lo suficiente y ahora podría continuar por mi cuenta, después de eso utilicé internet para aprender cosas, durante mis vacaciones también aprendí Python & C #, desarrollo de Android (usando Xamarin, C #), pero por alguna razón mi idioma favorito todavía es Java, lo llamo mi idioma principal, Ya que soy el más productivo en esto cuando se trata de aplicaciones de escritorio (pero es C # cuando se trata del desarrollo de Android).

Básicamente aprendí lo básico de los profesores en una academia con estudiantes de ingeniería de software y luego continué mi aprendizaje por mi cuenta.

No sé por qué hay respuestas largas ..

Opción 1 – abrir youtube. Programación de búsqueda para principiantes. Si se siente mejor, intente solicitar un examen de certificación. búsqueda también en línea enlaces de estudio

opción 2: tomar un curso intensivo en cualquier centro / escuela / universidad para aprender.

opción 3: hazte amigo de un programador y aprende todo lo que necesitas saber …

nota: la programación es un aprendizaje continuo, es posible que sepa algo en este momento, pero tendrá que seguir aprendiendo mucho más debido a la innovación acelerada de la tecnología. sugiero adaptar un hábito de curiosidad y hambre por aprender algo nuevo … es un desafío sin fin …