Por qué no puedes aprender a programar
¿Por qué la mayoría de la gente no puede aprender a programar?
En este artículo te contaré por qué. Y los errores que la gente comete para que puedas aprender a no cometerlos.
Así que si eres programador, si estás aprendiendo a ser programador y no te va bien, te diré por qué, te diré por qué no estás ahí. Errores Gente Hazlo, para que aprendas a no cometer estos errores. Si se une por primera vez, asegúrese de consultar mi libro Soft Skills: A Handbook for Life as a Software Developer. Esta es la segunda edición de este libro. Si tienes la primera edición, continúa y selecciona la segunda edición. Hay muchas cosas interesantes aquí. Agregué algunos capítulos nuevos y hay mucha información nueva aquí. De hecho, es uno de los libros más vendidos jamás escritos en el campo del desarrollo de software. real. Y asegúrate de suscribirte al canal.
Bien, entremos en esto. Déjame hablar de esto, una vez más, no es mi intención insultarte, pero si has estado tratando de aprender a ser programador y te ha llevado más de un año, lo estás haciendo mal. No debería tomar tanto tiempo. Ahora, programar es difícil. No me malinterpretes. Esto es algo difícil de aprender. Yo diría que esta es probablemente una de las habilidades más difíciles que existen porque es muy amplia. Hay mucho que saber. Hay muchas tecnologías que cambian todo el tiempo. Hay mucho que hacer. Pero si puedes reducirlo, en realidad es bastante sencillo entrar en él y aprenderlo. Así que el mayor error que veo que comete la gente es intentar ser programador, siempre lo he entendido. Recibí un correo electrónico. "He estado estudiando durante tres años.
He enseñado a algunas personas que querían ser programadores. Ha habido muchos, muchos satélites desde que comenzaron ese viaje, pero ninguno funcionó. La razón principal es que no tienen un enfoque muy limitado, solo quieren aprender demasiado, pasan demasiado tiempo viendo videos y haciendo tutoriales en lugar de hacer lo que hacen los programadores, que es construir cosas, lo cual. es resolver problemas y construir cosas. Así que esta es la cuestión, esto es lo que debes hacer y la razón por la que te equivocas es que debes elegir un enfoque muy, muy limitado de lo que quieres poder hacer. Simplemente consigue un trabajo. Digamos que van a conseguir un trabajo, porque la mayoría de ustedes están tratando de ser programadores para poder conseguir un trabajo. No vamos a hablar de espíritu empresarial o libertad en este momento. Voy a hablar sobre si quieres conseguir un trabajo o no.
Entonces, si quieres conseguir un trabajo como programador, solo tienes que resolver esto, solo tienes que descubrir, lo que quieres. ¿Qué tipo de trabajo? Y luego descubres qué necesitas estudiar para conseguir ese trabajo. Entonces, cuando digo qué tipo de trabajo quieres, básicamente son solo dos cosas que realmente necesitas. Lo que sabes es en qué lenguaje de programación quieres trabajar, y el segundo es, ¿en qué pila o industria realmente quieres entrar? Quiero decir, solo necesitas limitarlo lo suficiente para poder aprender. necesitas aprender. Entonces digamos que quieres usar Python y estás realmente interesado en la inteligencia artificial. Perfecto, puedes limitarlo al procesamiento de imágenes y hay mucho trabajo en esa área, tal vez pienses en algo como uno mismo. -conducir automóviles.
Quiero decir, es muy limitado. Hay un número limitado de empresas, pero hay mucha tecnología a su alrededor, por lo que es necesario limitarlo a un lenguaje de programación y luego a uno específico. área o y/o una pila de tecnología, incluso puedes hacerlo si quieres ser muy, muy específico. Usa ambos. Pero también puedes hacer una pila de tecnología, y cuando digo pila de tecnología, me refiero a lenguajes de programación, marcos. , esencialmente front-end y back-end. Algunas empresas pueden usar Python front-end, y luego pueden tener algún back-end de base de datos de servidor SQL, o mi SQL en realidad, no es tan importante para el back-end de base de datos, pero lo necesita. para comprender todos esos componentes y debe mantenerlo pequeño en un grado muy específico. No confíe en mi palabra, así que saltemos aquí.
Estoy buscando trabajo de programación. Podría estar en contracting.com o algo similar. Echemos un vistazo. Echemos un vistazo a Indeed.com. Echemos un vistazo aquí. Veamos los trabajos de programación. Bien, ¿qué tal esto? Desarrollador Junior React JS. Eso no es mucho salario. No sé si elegiría este. Pero bueno, ¿qué harías si quisieras? Bien, veamos esto en tiempo real. Seamos claros, ¿qué harías? Bien, entonces adelante. Bien, verás esto. Con suerte, considerará algunos trabajos diferentes. Y luego dices: "Está bien, la interfaz de React JS". Entonces miras todos los requisitos aquí y dices: "¿Puedo hacer estas cosas?" Entonces, para eso, todo lo que necesitas saber es la interfaz de React JS. Entonces, ¿puedes aprenderlo? Tienen "cierta experiencia en diseño frontal y las implicaciones de las ideas innovadoras".
Qué opinan los usuarios. Bueno, una vez más, deja de tonterías. "JavaScript, React JS Redux y otros marcos modernos". Así que incluso puedes enviarlos por correo electrónico. Incluso puedes decir: "¿Qué otros marcos modernos existen?" Quiero decir, muchas veces te responderán y te lo dirán. ¿Alguna vez has pensado en hacer esto? A la mayoría de la gente no se le ocurriría hacer esto. Bien, entonces esta no es una lista enorme. Desarrollo front-end móvil. Bien, ahora tenemos algunas pistas más. "Aproveche las tecnologías de la nube como CGP o AWS". Para que pueda ignorar la licenciatura. Decía: "Cualquier campo técnico o equivalente". Eso es lo que siempre dicen. Entonces puedes ignorar todas estas cosas, pero ahora tienes una lista de cosas que puedes encontrar. Esa es la cuestión, si hay uno hay más de uno. Esta no es la única empresa que utiliza esta tecnología. Hay muchas otras empresas.
Entonces, si simplemente analizas estas cosas, puedes conseguir un trabajo, pero hay mucho más que analizar. ¿Quieres trabajar como ingeniero de software Java de forma remota? Esto es bueno. El salario en estas áreas no es muy bueno. No puedo hacer estos trabajos. Buscaré algo. Puedo darte más dinero, créeme. Ahora, si desea comenzar, puede ver esto, de la misma manera que miraría, está bien, oh, mire, Apache Camel Elastic Search. Para que puedas ver cuál es la tecnología. Y luego aquí hay otro. Esto es interesante para FedEx. Sí, está bien, entonces puedes ver eso. Esto ni siquiera muestra nada. Vale, hay mucho ahí. No necesitas saber todo esto. Pero puedes darte cuenta, está bien, mi primer trabajo. De todos modos, mira esto, aquí hay otro. React, Node, JS, Elixir,
La cuestión es que vas a tener que elegir algo. Puedes ver aquí que hay muchos diferentes. Hay muchas tecnologías diferentes. Por eso estás abrumado, por eso no te conviertes en programador, por eso no tienes éxito, porque dices: "Bueno, maldita sea, tengo que saber todas estas cosas, y no sé qué puedo hacer". Quiero trabajo. Sólo necesito empezar a aprender cosas." Así que empiezas a aprender un poco de esto y aquello. En su lugar, simplemente elija un enfoque limitado. Ahora, una forma de hacerlo es asistiendo a un campamento de programación, del que hablo en uno de mis otros videos en este canal. Ahora, si planeas hacer esto, asegúrate de consultar mi libro. No este libro, sino otro libro. Tengo esto, pero consulte la guía profesional completa para desarrolladores de software.
Aquí mismo. La guía profesional completa para desarrolladores de software. También hay una versión en audio. Tenga en cuenta que tiene una calificación de 789. Este es un buen libro, créeme. Pero la idea es que necesitas aprender las cosas que te van a enseñar en el campo de entrenamiento antes de ir al campo de entrenamiento. La mayoría de la gente diría: "Voy a ir al campo de entrenamiento y aprender". Averigua qué te van a enseñar y luego aprendelo por tu cuenta unos meses antes de ir al campo de entrenamiento y luego ve al campo de entrenamiento para fortalecerlo realmente y convertirte en el mejor en el campo. Ahora bien, esto no le brindará toda la experiencia en programación que necesita. Le dará tiempo suficiente para poner un pie en la puerta, conseguir un trabajo y poder construir algo. Porque, recuerde, la programación funciona de manera muy diferente hoy que en el pasado. Hay tantas cosas.
Hay tantas tecnologías.
Hay tantos lenguajes de programación, lo que hay que hacer es poder utilizar algún conjunto de herramientas, un marco de front-end, un lenguaje de programación importante, un marco de back-end. Necesitas poder usar estas cosas para poder construir algo. Sé que esto suena básico, pero es verdad. Una vez que puedas hacer eso, podrás comenzar a aprender algunas otras cosas. Pero sólo necesitas un conjunto de habilidades, un enfoque limitado que puedas hacer y que te permita construir algo. Ahora, si realmente quieres probar esto, si dices: "Está bien, bueno, quiero resolver este problema yo mismo", algo simple, simple. aquí tienes. Cree aplicaciones móviles. Simplemente piensa en algo simple. ¿Quieres algunas ideas? Aquí vamos. 15 ideas de aplicaciones para ayudarte a desarrollar y mejorar tus habilidades de codificación. Temporizador de cuenta regresiva. Ahí tienes. De nuevo, muy sencillo.
Quizás demasiado simple. Voltear la imagen. Este es un gran libro de recetas. Una aplicación de prueba. Un juego de cartas de memoria. Una aplicación de dibujo. Una tienda online sencilla. Que tengas una buena. Esto es bueno. Nivel 2 Intermedio. Una aplicación de lista de tareas pendientes, esta es la que recomendaría. Contador de calorías. Eso es avanzado. Aplicación de chat. ¿Lo viste? Esto es lo que haces. Esto se hace para aprender a programar. No vas a tutoriales. En lugar de eso, dices: "Está bien, comencemos con uno fácil". Vayamos a una aplicación de Notas. Tan simple. Los usuarios pueden crear notas, editar notas y eliminar notas. Te dan todos los requisitos. No tienes que pensar en las cosas. Entonces lo que debes hacer es descubrir cómo construirlo. Bueno, ¿cómo sé por dónde empezar? Entonces, primero debes decidir dónde vas a construirlo. ¿Estás planeando crear esto para dispositivos móviles? ¿Para la red? Decide sobre eso. DE ACUERDO
¿Qué tecnología utilizarás a continuación? ¿Qué lenguaje de programación? ¿Qué plataforma? ¿Estás planeando convertirla en una aplicación para Android? ¿Estás planeando crear una aplicación para iOS? ¿Está planeando crear una aplicación web utilizando un marco de JavaScript? Puedes decidir lo que quieras. Luego, descubres qué necesitas aprender para hacer eso, cuántos lenguajes de programación hay, cómo crear algo básico como, por ejemplo, una aplicación móvil. Cuando estaba aprendiendo a desarrollar para dispositivos móviles, una de las primeras cosas en las que pensé fue: "¿Cómo puedo crear una aplicación con una página en blanco?" Porque si puedes hacer eso, estás a mitad del camino. Y luego mire esto, el usuario puede crear una nota. ¿Qué es eso? ¿Puedes crear una nueva nota? Entonces tienes que pensar en ello. Ok, necesito poder almacenar notas de alguna manera, ¿puedo crear una? Bueno, tal vez la aplicación solo tenga una nota. Quizás ahora sea solo una pizarra de borrado en seco. Está bien, no importa.
Entonces, ¿cómo editar notas? ¿Puedes agregar algo de texto? ¿Puedes borrar notas? ¿Puedes borrar el contenido de esa nota? ¿Entiendes lo que estoy diciendo? Puede encontrar cada una de estas piezas y aprender lo que necesita hacer en libros, tutoriales y cualquier cosa para implementar una función que esté intentando hacer. Esta parece una forma inversa de aprender a programar de forma lenta, pero es la mejor porque al principio es muy difícil porque es como: "Está bien, ¿si leo el libro completo, aprendo todo el lenguaje de programación y completo todos los tutoriales? “Al principio sí. Parece que es así, pero lo que pasa es que cuando aprendas a crear notas va a ser muy difícil porque no sabes nada. Pero cuando llegas al paso dos, aprendes a editar notas. Ahora que ya sabes algunas cosas, puedes combinarlas y no será tan difícil.
Cuando llegas a los pasos tres, cuatro y cinco, muy pronto llegas a un punto en el que piensas: "Ya sé qué hacer. No tengo que buscarlo". ." Ahí es cuando sabes programar.