Simplemente no puedo entender la programación, incluso después de intentarlo. ¿Estoy haciendo algo mal?

La programación es algo en lo que puedes ser bueno pero nunca un experto. Lo que quiero decir es que no hay final para la codificación y la programación y uno puede seguir practicando para mejorar su rendimiento.

Déjame compartir mi experiencia personal. Cuando comencé a codificar, solía tener muchos problemas para entender el código y escribir la sintaxis. Pero luego un señor mío me dijo que relacionara la codificación con el mundo real y Abra Ka Dabra, de repente, las cosas empezaron a cambiar. Entonces, simplemente relacione la parte de codificación con las cosas de la vida real y créanme, esas comparaciones pueden ser cualquier cosa, divertidas o conceptuales, y nunca le expliquen ese concepto a los demás porque no lo entenderán.

Está bien, como aquí hay un ejemplo. Cuando comienzas a codificar, ves ‘{‘ y ‘}’ . Ahora la gente los llama paréntesis y corchetes y muchas más cosas, pero para mí son simplemente puertas . Supongamos que vas a entrar en una habitación, lo primero que haces es abrir la puerta y entrar en ella. Entonces, al igual que para ingresar un bloque de código, su puerta es ‘{‘ y luego de completar el trabajo en esa habitación cuando salga de ella, cierre la puerta de nuevo (porque si no lo hace, mamá lo matará). Así que de nuevo, cuando sales de un bloque de código, usas ‘}’.

Este fue solo un ejemplo, pero créeme, puede enmarcar ejemplos para casi todas las lógicas de programación, y el resto es práctica, mi querido amigo. Entonces, el tema es practicar la codificación tanto como puedas y asegurarte de que te diviertas un poco mientras aprendes.

La programación no es tan fácil de aprender . Necesitas aproximadamente diez años para aprender a programar (y necesitarás un tiempo comparable para convertirte en un programador profesional, un violonchelo profesional, un matemático profesional, etc.).

La programación no consiste principalmente en el conocimiento de los lenguajes de programación (y se trata mucho más de resolver problemas y explicar cómo resolverlos en la computadora). Por ejemplo, también debe conocer el contenido de Introducción a los algoritmos y de Sistemas operativos: Tres piezas fáciles. Ninguno de estos dos libros está relacionado con algún lenguaje de programación en particular.

Practica la superación constante:
No somos seres perfectos. Podemos evolucionar y aprender cosas nuevas en el mejor de los casos. Esto no es específico solo para la programación; se aplica a casi cualquier cosa. Tiendo a leer libros sobre programación por horas sin siquiera darme cuenta. Es mi pasatiempo favorito. Siempre me sorprende saber cómo nuestro cerebro se adapta a la nueva información. Hay muchas cosas que aún no entiendo en la programación, pero solo con reconocer que lo obtendré en un futuro lejano es suficiente, nada menos y nada más. Estos momentos de eureka suelen ir seguidos de ciertos vacíos de conocimiento.

Encontrarás muchas opiniones, preferencias y mitos cuando se trata de guerras de idioma, así que quédate con uno por un tiempo determinado.

La programación requiere un conjunto de habilidades muy específicas y altamente especializadas. Eso no significa que no pueda adquirir esas habilidades, pero es importante darse cuenta de que el conjunto de habilidades que usaría en casi cualquier tarea del mundo real son, en el mejor de los casos, aproximaciones aproximadas de las habilidades que necesita para ser programador.

Quizás el que sería más fácil obtener de la educación y la experiencia no programada, y posiblemente también la habilidad más importante para ser un buen programador, es este:

Aprende a conceptualizar. No me refiero a aprender a imaginar (la imaginación es genial, incluso en la programación, pero no te ayudará a comprender mejor la programación). Me refiero a algo como los siguientes pasos:

1) Elige un concepto. Para empezar, una simple es la mejor. Digamos, el concepto de ordenar alfabéticamente una lista.
2) Desglosarlo. ¿Cuáles son sus piezas? ¿Qué hay involucrado en el proceso? ¿Cómo lo harías si lo estuvieras haciendo a mano? Podrías llegar a algo como esto:
a) Bien, entonces queremos artículos más bajos en la parte superior, y artículos más altos en la parte inferior.
b) Comenzaré en la parte superior de la lista y trabajaré hacia abajo. De esa manera, los elementos hacia la parte superior siempre se ordenarán. Puedo preocuparme solo de los artículos a continuación.
c) Entonces, para cada ítem, debemos considerar el sub-concepto de estar “fuera de lugar”.
yo. “Fuera de lugar” significa, ya sea: es más alto que el elemento debajo de él, o es más bajo que el elemento encima de él. Podrían ser ambas cosas.
ii. Pero espera. Es la parte * superior * de la lista que está ordenada. Está bien, así que si muevo los artículos a la parte inferior *, los estoy tirando a un vacío sin clasificar. Probablemente no sea necesario o útil. Solo preocupémonos por la relación de un elemento con los elementos que se encuentran arriba.
iii. Bien, estoy revisando los artículos uno a la vez, comenzando en la parte superior. Lo único que importa es si el elemento de arriba tiene un valor * más alto *. Si es así, deberíamos mover este elemento por encima de ese elemento.
iv. Por lo tanto, un elemento está “fuera de lugar” si se encuentra debajo de un elemento de mayor valor. Si está fuera de lugar, deberíamos subirlo.
d) Bueno, esto tiene sentido ahora. Todo lo que tengo que hacer es trabajar en la lista, mover cada elemento tantas veces como sea necesario hasta que ya no esté fuera de lugar; es decir, hasta que el elemento anterior no sea más alto en valor. Cuando termine eso, entonces la lista se ordenará.

¡Genial! Has conceptualizado el problema. Ahora regrese a la parte superior de la lista y traduzca cada hecho conceptual en un código equivalente (eso es solo una cuestión de saber la sintaxis, en realidad). Escribe ese código. Pruébalo. Debería funcionar (después de solucionar errores menores).

Si el proceso de conceptualización anterior no tiene ningún sentido para usted, no importa cuánto lo intente, no se castigue. No significa que no seas inteligente. Simplemente significa que los conceptos básicos de la programación son incompatibles con la forma en que funciona tu mente. Significa que eres una de las muchas personas que simplemente son incapaces de programar; Es probable que seas capaz de muchas otras cosas asombrosas, pero no es eso, al igual que algunas personas simplemente no son capaces de escribir música.

Si * tiene * sentido para ti, entonces, ¡buenas noticias! Puedes programar. No me necesitas a mí ni a nadie más para enseñarte. Todo lo que necesita hacer es realizar el proceso anterior muchas veces, involucrando conceptos cada vez más complicados, hasta que pueda hacerlo automáticamente sin pensarlo. Buena suerte 🙂

(Nota: si eres bueno en la programación, también serás bueno en filosofía, y viceversa. Las habilidades involucradas son casi idénticas).

Puedo relacionarme completamente con tu frustración. La respuesta corta es que la programación se vuelve más fácil cuando está al tanto de sus preferencias cognitivas y cuando encuentra un recurso de aprendizaje que se adapta a sus preferencias. Su lucha se ve agravada por el hecho de que la mayoría de las personas no pueden enseñar programación.

Aquí está la receta que solía hacer para que la codificación fuera “fácil de nuevo”.

Kgotso-Koete / El algoritmo de aprender a codificar: una receta fácil e inclusiva para que los principiantes aprendan en la web

Y aquí está mi respuesta que expuso lo mal que estaba cuando comencé, todavía soy terrible en eso, pero ya no hay barreras para el aprendizaje constante.

¿Qué tan mal estabas cuando empezaste a programar?

Tengo esta misma pregunta. Me di cuenta de que hay (al menos) dos formas diferentes de aprender. Una forma es entender cómo hacer algo, otra es simplemente hacerlo. Por ejemplo, si desea hacer una tabla, le enseñarán qué es una tabla y le enseñarán los mecanismos de una tabla y de qué está hecha una tabla y luego usted hace la tabla. O bien, harán la mesa contigo. No aprenderá qué es una tabla, aprenderá los pasos a seguir para hacer una tabla.

Lo mismo con la programación. En la mayoría de los lugares, enseñe la sintaxis y los conceptos y luego espere que comprenda cómo hacer un programa. Pero, algunas personas no trabajan así. Algunas personas necesitan aprender cómo hacer todo tipo de programas, y luego pueden extrapolar esos programas para hacer diferentes programas. Para esto último, la programación es solo una herramienta para usar. Se le debe enseñar cómo y cuándo usarlo, pero no se le debe enseñar a entender cómo funciona el programa.

Otro ejemplo sería alguien que esté aprendiendo Word, Excel u otros programas. O bien, puede entender qué botones presionar cuando hace una obra maestra o puede aprender cómo funciona Excel y qué sucede debajo del capó cuando presiona los botones.

Sin saber exactamente lo que está haciendo al tratar de aprender a programar, no se puede decir si está haciendo algo mal o no.

Lo siguiente puede o no aplicarse a usted, sin más detalles sobre su método de aprendizaje de programación, es imposible decirlo.

Me he enterado observando a los programadores durante 40 años que realmente hay algunas personas que son “naturales” en la programación, y hay personas que siempre están luchando o simplemente no pueden hacer la programación.

No es tanta inteligencia, aunque tener un alto coeficiente intelectual no duele en la programación. Lo que he visto por experiencia personal es que aquellos que eventualmente se convierten en los mejores programadores tuvieron “la chispa” desde sus primeros intentos de programación. “La chispa” tiene más que ver con el interés que con el talento en bruto. Casi todos los programadores buenos que conozco se enorgullecen de la programación, los emociona (aún me entusiasma después de 4 décadas). La “emoción” se puede sentir al escribir el primer programa; esto es lo que me pasó a mí y a muchos otros que he conocido.

Por otro lado, conozco a programadores profesionales que pueden ganarse la vida escribiendo software, pero nunca mejoran que el “promedio”, y a menudo se agotan en la programación después de unos años, es principalmente un cheque de pago para ellos. . Un programador “natural” ama la programación tanto que lo harían simplemente por su propia recompensa: ganarse la vida haciendo eso es solo una ventaja.

Entonces, se honesto contigo mismo. ¿Qué tipo de persona te encuentras? Si la programación te da una emoción, entonces por supuesto no te rindas, todo lo que necesitas es práctica, práctica, práctica. Incluso aquellos con “la chispa” no se convierten automáticamente en grandes programadores de la noche a la mañana, su ventaja es su motivación y amor por la programación, y con el tiempo se convierten en programadores muy buenos o excelentes.

Al no saber qué tipo de persona es, simplemente no puedo decir lo que necesita hacer, pero asumiré que tiene “la chispa”, en cuyo caso simplemente debe seguir y no rendirse, como Difícil como parece ahora. Date más tiempo y practica mucho más para asegurarte de que tienes o no la “chispa”.

Te deseo todo lo mejor del éxito! 🙂

En cuanto a la programación informática no hay solución desde mi lado.

Si pedir vida programando tu mente es débil, hazlo fuerte podrás hacer

“Para el logro uno tiene que crear uno mismo. Sé un cepillo de ti mismo. Cepillarse para convertirse en obra maestra de la pintura. Una pintura que todo el mundo quiere ver, todo el mundo quiere alabar. Los buscadores son los ganadores “

Tal vez tal vez no.
Dejame explicar.
Mientras enseñaba matemáticas en la escuela de manera informal, me encontré con algunos jóvenes estudiantes que no podían comprender la idea básica de los números. Entenderían la suma simple, pero tendrían problemas con la resta. Más que nada, tendrían serios problemas con la división. En algunos casos, los estudiantes de alguna manera, casi mecánicamente, manejan los problemas y se satisfacen a sí mismos. Incluso llegaron a convertirse en buenos profesionales con cálculos matemáticos. Otros optaron por estudios no matemáticos y vivieron felices para siempre. No he encontrado un solo caso en el que tal estudiante se haya desarrollado para una etapa en la que pueda disfrutar haciendo matemáticas. Pero todos ellos son personas exitosas adeptas al uso de la lógica y capaces de tomar decisiones racionales. Las matemáticas tienen mucho que ver con la lógica. Probablemente algunos de nosotros no estamos muy cómodos con grados más altos de abstracción.
Llegando a la programación, hay que aprender.
1. Las palabras y la sintaxis muy precisa.
2. defina claramente el flujo de las entradas disponibles a las salidas deseadas (algoritmo)
3. Echa un vistazo a cada paso, trabaja paso a paso lógicamente
4. y así sucesivamente
El punto es, implica mucho pensamiento abstracto y lógico.
Algunos pueden no ser muy competentes para hacerlo.
Puede esforzarse un poco más y si descubre que no puede disfrutar haciendo estas tareas mundanas, es mejor que no pierda el tiempo.
Por cierto, no soy un programador por educación o profesión, pero una vez disfruté haciendo pequeños trucos, y me encantó mientras lo disfruté.

No se puede aprender todo en un día.

Incluso, lo sencillo que puede ser el código, es posible que no tenga éxito el primer día. Se necesita tiempo para entender lo básico. Y si es nuevo en el campo, puede llevar incluso más tiempo del que esperaba.

La programación requiere paciencia y concentración, similar a una nueva asignatura completa en Matemáticas (por ejemplo, si está entendiendo la trigonometría por primera vez).

No pierdas la esperanza, solo sigue practicando, no es necesario que todo funcione correctamente en la primera ejecución.

🙂

Hola, en primer lugar, trate de comprender los conceptos básicos de la programación y trate de saber cómo funciona. La programación no es una tarea muy simple, requiere mucha práctica y concentración mental.

No estés triste si eres un principiante porque no es una ciencia de cohetes. Después de una práctica continua puedes ser un buen programador. En primer lugar hay que aprender el concepto de la programación. Luego, después de eso, te sugiero que aprendas cualquier tutorial de internet. Por ejemplo, he elegido el desarrollo web utilizando PHP, así que lo aprendo en http://www.w3schools.com . Puede aprender PHP, HTML, CSS, MySQL y muchos más desde el sitio. Entonces, si quieres aprender, visita el sitio y aprende aquí, y estoy seguro de que podrás programar y todo lo relacionado con la programación se resolverá muy pronto.

No puedes aprender a programar en un solo día, ya que cuando empiezas algo nuevo tienes que enfrentar muchos problemas. Simplemente diré: trabaja duro, intenta resolver tanto como el problema que puedas resolver. Antes de escribir cualquier código, primero intente hacer el papeleo, primero escríbalo en papel, vaya con una computadora portátil o PC y vea el video en youtube