¿Por qué soy tan malo en la programación y cómo puedo mejorarlo?

Dado que la pregunta no especifica exactamente cuál es su problema, asumiré que no es un problema de idioma / sintaxis. Si este es el caso, puede omitir esta respuesta por ahora y tal vez volver a verificarla más tarde.

Si podemos asumir que su problema es un problema mental, entonces creo que puedo sugerir una solución que podría ayudar. Pero primero, permítanme explicar qué es una mentalidad (o, al menos, como la llamo). el problema es.

  • Tiene una comprensión completa de la tarea y puede pensar en la solución de alto nivel. Pero una vez que intentas codificarlo, te quedas atascado y no sabes por dónde empezar.
  • Usted ha comprendido la tarea, pero no parece ser solucionable, ya que las partes de la solución que imagina requieren conocimientos o habilidades que no tiene.
  • En algún momento, el problema / tarea parece ser tan complicado y usted no sabe qué hacer.
  • Cuando lees tutoriales o cuadros de texto, puedes entender los ejemplos bastante bien, pero no puedes realizar tareas de codificación similares por tu cuenta, simplemente te quedas atascado.

En pocas palabras, te sientes estancado la mayor parte del tiempo cuando intentas escribir código, y el código aquí no significa un simple “bucle para / mientras” o una función C; Me refiero a escribir algo así como un algoritmo complicado o un pequeño Sistema de gestión de contenido (CMS) con una base de datos y páginas web, etc.

Si ese es su caso, entonces permítame compartir con usted mi propia experiencia (puede omitir si lo desea, la solución estará al final de la respuesta).

No tengo formación académica en CS o ingeniería, en realidad mi licenciatura fue en literatura inglesa y traducción. En 2007, pasé tres años (de 2005 a 2008), leyendo demasiados libros de programación (más de 120 libros principalmente en PHP, MySQL, HTML, CSS, OOP, patrones de diseño, etc.) y gané en profundidad. conocimiento, que incluso algunos de los desarrolladores más experimentados que conocía en aquel entonces no tenían (y ni siquiera necesitaban). Pero en ese momento era todo un conocimiento inútil, ya que no podía usarlos de manera efectiva. Podría, con demasiado esfuerzo, construir algunas cosas básicas, pero no más que eso. Incluso trabajé como freelance para hacer algunas cosas simples casi gratis desde 2007. Pero aún así, siento que estoy muy atrasado, ¡ni siquiera un desarrollador junior!

En este punto, comencé a culpar a mis habilidades en inglés, ya que mi inglés era muy limitado en ese momento. Así que me uní a la Facultad de Artes, Departamento de Inglés en 2008 para mejorar mi inglés. Durante el primer año, las cosas empezaron a mejorar, pero en realidad no era mi inglés, era mi mentalidad. Mientras leía los materiales de aprendizaje, estaba convencido de que mi inglés no es lo suficientemente bueno y de alguna manera este pensamiento me bloqueó para entender demasiadas cosas. Mirando hacia atrás, reconocí que si esta idea no estuviera en mi mente todo el tiempo, podría haber adquirido mucho más conocimiento de los materiales que leí. De todos modos, como todavía no me veía como un buen desarrollador, empecé a pensar que quizás todavía me esté bloqueando a mí mismo con otra cosa, pero todavía no puedo resolverlo. Después de varios análisis de mi comportamiento, reconocí que todavía me ocupo de los desafíos de programación desde una perspectiva de usuario de PC regular, tal vez una avanzada pero una de usuario, ¡no un desarrollador!

Sin embargo, no sé cómo resolver esto, así que nuevamente estaba a punto de rendirme, pero antes de hacerlo, intenté rastrear todo el Internet para encontrar una definición para esto y con la esperanza de que eso me lleve a una solución. . Porque renunciar significaría que tengo que encontrar mi pasión en una profesión diferente, ¡y no tengo eso! De alguna manera me encontré con un curso gratuito en línea de Stanford llamado “Metodología de programación”; por su nombre supuse que podría estar relacionado con lo que diagnosticé en mí mismo. (y de hecho lo fue). Repasando su esquema de plan de estudios, bueno, no está claro si eso es lo que estoy buscando, pero de todos modos lo intenté, ¡y nunca me arrepiento!

Me enseñó a entrenar las soluciones sin tener todo el conocimiento de todo antes de comenzar, y también me llama la atención que no necesito preocuparme por todo desde el primer segundo. Lo único que importa es que tengo una solución de alto nivel, luego puedo dividirla en un flujo de trabajo estructurado y, para cada parte, puedo completarla con su propia implementación o dividirla más (lo que se conoce como enfoque de arriba hacia abajo) … Y de repente, ¡logré poner en práctica todo el conocimiento que tengo! ¡y mis habilidades comenzaron a crecer muy rápidamente de una manera que nunca imaginé que fuera posible!

Para darte un ejemplo de cómo era mi mentalidad antes y después:

Considera la siguiente tarea:

“Necesitamos desarrollar una página de registro de cuenta, donde el usuario pueda completar sus detalles y guardarla en nuestra base de datos para que la próxima vez el usuario pueda iniciar sesión. El usuario debe proporcionar su nombre, apellido, dirección de correo electrónico y contraseña, y su dirección de correo electrónico debe ser una dirección de correo electrónico válida, y su contraseña debe tener entre 6 y 12 caracteres y debe incluir al menos un carácter especial “

Cuando miraba esa descripción desde la perspectiva del usuario, planteo demasiadas preguntas y detalles e incluso cuestiones irrelevantes, por ejemplo:

  • ¿Cómo podré validar la dirección de correo electrónico? ¿Expresiones regulares? pero esto solo valida el formato de la dirección de correo electrónico, ¿realmente no puede verificar si se trata de una dirección de correo electrónico real?
  • ¿Cómo podré saber si esta dirección de correo electrónico pertenece a esta persona? Él podría simplemente escribir cualquier dirección de correo electrónico.
  • ¿Desde dónde debo empezar? ¿Los esquemas de base de datos o la página web que presenta el formulario de registro?
  • Si logré hacer todo eso, ¿cómo lo mantendré conectado? ¿Usaré sesiones de PHP o cookies? ¿Y cómo usaré eso para autenticar al usuario?

La mayoría de estas preguntas, ni siquiera valía la pena pensar en esta fase, y en algún momento creo que fue por temor a que no cumpliera (y en realidad fallé demasiadas veces). ¡Entonces termino sintiendo que no soy lo suficientemente hábil para hacerlo!

Después:

… Bueno, parece que tengo casi toda la información que necesito para comenzar y tal vez podamos ajustarla más tarde si es necesario. ¡Vamos a hacerlo! Abro mi editor PHP favorito y empiezo con algo como esto:

// 1: haga eco de la salida HTML y asegúrese de que tenga su propia validación del lado del cliente
// 2 – Reciba los datos del formulario cuando el usuario presione el botón enviar y colóquelo en una estructura agradable para manejarlo en el resto del archivo
// 3 – Manejar toda la validación necesaria
// 3A – Asegúrate de que el correo electrónico es válido
// 3B – Asegúrese de que el campo de contraseña y su campo de confirmación estén completos, sean iguales y cumplan con los requisitos de contraseña
// 3C – Asegúrate de que el resto de los campos obligatorios estén completos.
// 3D – Si algo está mal, actualice la página y resalte los errores
// 3E – Si todo está bien, continúe con el paso 4
// 4 – Guardar el registro de la base de datos
// 5 – Recuerde los detalles del usuario para que sepamos que ya está registrado
// 6 – Redirige al usuario a la página de éxito.

Básicamente, esbozo mi lógica, doy cada paso por su cuenta y lo implemento directamente o escribo su propio esquema secundario y luego los implemento uno por uno.

Por supuesto, este fue solo el comienzo en el que construí el resto de mi experiencia y crecí como un desarrollador muy competitivo.

Si la descripción anterior describe su situación de alguna manera, le recomiendo que consulte el curso CS106A – Metodología de programación, ¡definitivamente lo encontrará útil!

Dado que estás estudiando Ciencias de la Computación, tus posibilidades son mucho mejores que las mías, y si la programación es algo que realmente te apasiona, hazte un favor y POR FAVOR, NO TE RENGAS y ¡definitivamente SUCEDERÁS !

Estoy tratando de escribir una respuesta, de tal manera que sea útil para cualquier estudiante, ya sea que tenga experiencia en programación o no. Soy Verilog HDL Programmer.

Tiempo de cuentos:

Supongamos que Jack es un indio. Nacido y criado en la India. Pasó toda su vida aprendiendo su idioma regional.

Un día, se despierta y siente, no es su cama. Abre los ojos y se da cuenta de que no es su habitación.

!! El esta en china

Nunca escuchó el idioma chino / mandarín antes. ¿Qué se supone que debe hacer allí?

Ahora, solo tiene dos opciones:

Aprende o aumenta las cosas básicas en ese idioma para sobrevivir. Y tratar de encontrar el camino a la India.

Acepta su destino y construye su propio Imperio en China, después de aprender ese idioma.

Se acabó la historia.

Esto es lo que sucede cuando aprendes el lenguaje de programación.

Tu mente no está preparada para aceptar cosas nuevas, para sobrevivir a tus exámenes de vida y vicios, te juntan cosas básicas, porque tu salida es otra cosa.

Si realmente quieres aprender, entonces tendrás que “entender” en lugar de “asaltar” las cosas. El día que aceptes que tendrás que construir un Imperio, todo será fácil entonces.

Nunca puedes desarrollar nada hasta que no trates de entender “Por qué” y “Cómo”, en lugar de asaltar cosas.

¿Cómo puedes mejorar?

  • Practica diaria.
  • Nunca pierdas la pasión.
  • Y lo más importante, pregúntate a ti mismo. ¿Por qué quieres aprender este lenguaje de programación? Si tu respuesta es
  • Para borrar los exámenes solamente. Entonces, nunca aprenderás. No importa que tan duro lo intentes.

Ves tu futuro en ello. Tienes la ambición de crear algo por tu cuenta, entonces nadie puede detenerte.

Todo depende de tu interés y pasión por ese campo.

Todo lo mejor 😀

“Conozco la teoría. Pero no puedo convertirlo en código ”

Lo he escuchado de gente que conozco. Lo he escuchado aún más mientras era profesor de asistencia técnica. Y he perdido la cuenta de la cantidad de personas que me envían un mensaje aquí cada día diciendo esto una y otra vez.

Puede haber muchas razones para lo mismo.

  1. No sabes ninguna palabra. Por lo tanto, no puedes hablar. Si no conoce la sintaxis básica de un idioma (o ni siquiera intenta buscarlo), nunca puede codificar.
  2. Conoces las palabras, pero no puedes formar una oración. Aquí es donde creo que la mayoría de la gente se queda estancada.

Cuando dices que no puedes escribir un código que funcione, ¿a qué te refieres exactamente?

¿El código no es sintácticamente correcto? Esta bien. Puede solucionarlo aprendiendo más sobre la sintaxis y con experiencia en la solución de tales errores.

El código es sintácticamente correcto, pero lógicamente incorrecto? Si ese es el caso, entonces con toda probabilidad, la lógica que formuló antes de convertirlo en código también es incorrecta.

El primero puede ser arreglado. El último es más duro.


La mayoría de la gente te aconsejará practicar la codificación. Escribe cada vez más código. Me suena irónico cuando no puedes ni siquiera codificar.

Lo que sugeriré en su lugar es tratar de entender el código escrito por otros. Comience con sus compañeros de clase. Intenta darle sentido a su código. Si no puedes, busca su ayuda.

Cuanto más código esté expuesto, más entrenado estará su mente. Y no estoy hablando de la sintaxis. Mira cómo resolvieron el problema. Entiende su lógica. Es la habilidad para resolver problemas lo que importa.

Para algunos de nosotros, resolver problemas con el código es algo natural. Por lo demás, entrena tu mente para desarrollar tal mentalidad. No sera facil

Imagina que quisieras construir un auto desde cero. Un coche es un conglomerado de piezas. Entonces, para construir un automóvil, usted tiene que entender cómo construir un motor, un carburador, un bastidor, una suspensión, etc. Un automóvil es una suma total de sus partes. Cada parte resuelve un problema particular y juntas crean un medio de transporte.

Puede decir “Quiero escribir un programa”. Pero para hacer eso, tiene que entender los componentes individuales que conforman ese software. Si vas a construir cada pieza desde cero, necesitarás una amplia variedad de habilidades auxiliares.

Nadie espera que alguien pueda construir un auto desde cero en el primer intento. De la misma manera, nadie espera que puedas escribir un programa en el primer intento.

Mi consejo es aprender sobre las partes. Puede experimentar con piezas que otros han construido de la misma manera que puede comprar un motor para el proyecto de su auto que usted no construyó. Si construye el motor desde cero, comprenderá mejor cómo funciona un motor, pero no es necesario construir un automóvil.

Asi que…. Estudiar los componentes básicos de la programación. Variables, matrices, funciones, sentencias condicionales, etc. Aprenda a crearlas y utilizarlas para resolver problemas cada vez más complejos. Con el tiempo, aprenderá a combinar estas partes para crear cosas que resuelvan problemas específicos, a medida que mejore, los problemas que podrá resolver se volverán cada vez más complejos. Sus primeros intentos no producirán un automóvil, ni siquiera producirán un carrito de compras. Pero podrías ser capaz de hacer una rueda.

Siempre puede ver lo que otros han hecho, pero la sintaxis no tiene sentido si no practica la resolución de problemas del mundo real con código. Se requieren miles de horas para dominar esto. Solo tienes que poner el tiempo. Lo más importante es entender que la codificación se basa en el aprendizaje basado en curvas, lo que significa que invertirás un montón de tiempo y verás poco progreso durante un tiempo, no es hasta que llegues al final de la curva que comenzarás a ver cualquier progreso rápido, así que solo quédate con eso.

Respuesta de:
La respuesta de Abdelrahman Hamdy a ¿Cómo puedo convertirme en un muy buen programador con una licenciatura en Ciencias de la Computación y un año de experiencia trabajando con Python, algo de Java y Scala?

Un amigo mío estaba en el mismo caso cuando estábamos en el año 2 en la universidad, él dijo que no podía programar, y no puedo pensar en el código, no sé qué escribir. Ahora está trabajando en Google, así que no pierdas la esperanza.

Qué hizo él ?

Cayó un año, y pasó este año con el capítulo de ACM en la universidad. El ACM crea un concurso para estudiantes universitarios, se llama acm ICPC, a través de la práctica para los concursos de acm, aprende a escribir un buen código y este es un deporte llamado programación competitiva. Verifique: Cómo comenzar con el deporte de la programación
Después de esto, hizo algunos buenos proyectos paralelos mientras estudiaba los materiales de la universidad, obtuvo una pasantía, luego consiguió un trabajo en su país local y, finalmente, después de graduarse de dos años, pudo ir a trabajar para Google.

Este no es el fin del mundo para ti, mi consejo es:

  1. Hacer programación competitiva.
  2. Revisa los materiales que estudiaste en la escuela o la universidad.
  3. Intenta ir con maestría o doctorado.
  4. Mientras hace los 3 puntos anteriores, trabaje en proyectos paralelos, vaya con ellos de lo simple a lo difícil, haga un juego de consola simple, luego vaya más grande, comience de a poco sin ser tímido, solo si quiere ser un verdadero programador.
  5. Trate de obtener una pasantía o cualquier trabajo, incluso si trabajó de forma gratuita (no es una pena, trabajé gratis durante 3 meses para una empresa porque pensaron que todavía no era lo suficientemente bueno cuando estaba en la escuela) (me refiero a una empresa en informática y su especialidad seguro.

Quiero añadir también 2 puntos:

  1. Tener una maestría o un doctorado en ciencias de la computación puede no hacerte un súper programador, ya que la mayoría de los materiales con los que irás en estos altos grados son teóricos, pero por otro lado, esto agregará un valor a tu CV, te dará algo de valor. Instalaciones según trabajo como desarrollador de I + D. También la teoría misma, si la combina con la codificación, esto lo convertirá en un mejor programador con mayor conocimiento.
  2. La persona con la que hablé sobre quién tomó un año sabático para lograr buenos logros, tenía un entrenador muy cercano en su escuela, un entrenador que lo guió para ser bueno en programación competitiva, así que no piensen que es tan fácil ser muy fácil. buen programador competitivo, no es fácil, especialmente si no tiene un buen entrenador, pero en sí mismo puede lograr un buen estado en la programación competitiva, tal vez necesite más tiempo, tal vez si es lo suficientemente inteligente como para hacerlo mejor Que mi amigo en menos tiempo, nadie puede decirlo con seguridad.

Estoy tratando de escribir una respuesta, de tal manera que sea útil para cualquier estudiante, tenga o no experiencia en informática.

Tiempo de cuentos:

Supongamos que Jack es un indio. Nacido y criado en la India. Pasó toda su vida aprendiendo su idioma regional.

Un día, se despierta y siente, no es su cama. Abre los ojos y se da cuenta de que no es su habitación.

Voila !!! El esta en china

Nunca escuchó el idioma chino / mandarín antes. ¿Qué se supone que debe hacer allí?

Ahora, solo tiene dos opciones:

  1. Aprende o aumenta las cosas básicas en ese idioma para sobrevivir. Y tratar de encontrar el camino a la India.
  2. Acepta su destino y construye su propio Imperio en China, después de aprender ese idioma.

Se acabó la historia.

Esto es lo que sucede cuando aprendes el lenguaje de programación.

  • Tu mente no está preparada para aceptar cosas nuevas, para sobrevivir a tus exámenes de vida y vicios, te juntan cosas básicas, porque tu salida es otra cosa.
  • Si realmente quieres aprender, entonces tendrás que “entender” en lugar de “asaltar” las cosas. El día que aceptes que tendrás que construir un Imperio, todo será fácil entonces.

Nunca puedes desarrollar nada hasta que no trates de entender “Por qué” y “Cómo”, en lugar de asaltar cosas.

¿Cómo puedes mejorar?

  • Practica diaria.
  • Nunca pierdas la pasión.
  • Y lo más importante, pregúntate a ti mismo. ¿Por qué quieres aprender este lenguaje de programación? Si tu respuesta es
  • Para borrar los exámenes solamente. Entonces, nunca aprenderás. No importa que tan duro lo intentes.
  • Ves tu futuro en ello. Tienes la ambición de crear algo por tu cuenta, entonces nadie puede detenerte.

La programación se suele enseñar con ejemplos. Nicholas Wirth

Puede que no pienses, que los programadores son artistas,

Pero la programación es una profesión extremadamente creativa.

Es la creatividad basada en la lógica. John Romero

Necesita experiencia en la creación de programas / funciones simples para lograr objetivos muy específicos. Una vez que comience a entender cómo dividir los problemas en una colección de problemas más pequeños para resolver y luego, componga esas soluciones para alcanzar la solución final, estará en el camino correcto. Una buena manera de obtener esa experiencia es practicar problemas como los que se encuentran en TopCoder y luego comparar su programa con el de ellos. Incluso si no puedes completar un problema allí, aprenderás mucho analizando las respuestas, pero sugiero que primero intentes resolverlas para que puedas entender cada problema antes de saltar a la solución. Tampoco trates de hacer demasiado en una sola sesión. Debes darle a tu cerebro la oportunidad de tener sus momentos de “¡Eureka!”. A veces, lo mejor que puedes hacer cuando estás atascado es hacer otra cosa mientras dejas que el problema resulte en tu mente. Así que solo haga algunos problemas todos los días (que pueden comenzar como uno / día) y en unas pocas semanas se sorprenderá de lo que puede lograr.

Convertirse en un gran programador es como convertirse en un gran atleta. Al igual que un atleta desarrolla “memoria muscular” para realizar una serie de acciones complejas con poca reflexión, usted también debe aprender a resolver las cosas fáciles con poca reflexión para que sus soluciones sean composiciones de “cosas fáciles” que ya saben cómo hacer.

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.

Y una vez más, para aprender a codificar necesitas codificar, lo que significa que resolver problemas te ayudará a aprender.

¡Te deseo lo mejor!

Sin más información, esto es solo una conjetura, pero probablemente una combinación de:

  1. No sabes mucho (cursos limitados y / o estudios).
  2. Experiencia limitada (especialmente trabajando en proyectos reales, con supervisión por parte de personas que brindan retroalimentación y orientación).
  3. Trabajando solo en problemas simples. (La programación solo tiene sentido en el contexto de alguna aplicación u otra. Por analogía, uno podría ser excelente para clavar clavos y girar tornillos, eso está muy lejos de poder construir un gabinete o enmarcar una casa).

Cómo mejorarlo: estudio y experiencia.

Para su posterior elaboración , soy estudiante de informática, incluso comprendo algunas estructuras e incluso puedo formular una lógica para resolver un problema simple, pero no puedo traducirlo a código, no puedo escribir un código que funcione , todos en la clase pueden al menos resolver la mayor parte de nuestros exámenes, no puedo resolver nada :

Suponiendo que está dedicando tiempo y esfuerzo, tal vez su mente simplemente no funciona de esa manera. No todos “reciben” conceptos computacionales.

Quizás el libro de texto y el enfoque de enseñanza no funcionen para usted, y puede encontrar otro enfoque. Algunas personas pueden aprender de conceptos básicos y luego construir (por ejemplo, estructuras de datos, estructuras de control, algoritmos simples). Otros aprenden mejor por problemas de trabajo (p. Ej., Escriben una hoja de cálculo financiera para hacer ) y aprenden conceptos de programación según sea necesario.

Tal vez pueda encontrar una ruta alternativa (cursos diferentes, profesores diferentes, algunos de autoaprendizaje), o tal vez la programación no sea para usted, y debería estar buscando otro campo. (También tenga en cuenta que la programación es solo un pequeño aspecto de la informática. Tal vez sea importante, pero aún así es solo una pequeña parte. Por ejemplo, uno puede diseñar hardware bastante bien, pero ser horrible en la codificación).

Parece que no estás perdiendo el tiempo leyendo el código. Y por “leer” me refiero a entenderlo hasta el punto en que pueda modificarlo ampliamente y se comporte como esperaba.

Estamos inundados de código fuente abierto. Puede intentar desarmar kernels, compiladores, shells o incluso pequeños programas como /usr/bin/true . Comience con eso: ¿cómo encuentra la fuente, compílela e instálela? ¿Qué puedes cambiar en ese código? La última vez que miré la versión gnu, fue sobre-diseñada masivamente.

Entonces tal vez intente strace . Modifica la salida para que sea más útil. Añade algunas características tontas. Utilice printf generosamente para averiguar qué está pasando. Comente los bits de código y vea qué se rompe. Si el código ha existido por un tiempo, revisa las versiones anteriores para ver cómo ha evolucionado.


Necesitas poder leer (y modificar) el código para escribirlo bien. Por la razón que sea, esas habilidades no se enfatizan en la pedagogía de la informática. Así que necesitas recogerlos por tu cuenta.

Usted vencerá. Date tiempo. Abrazar otros temas / temas como Física, Antropología, incluso etimología (inventé muchas palabras nuevas en la universidad, escribí poesía años después).

Necesitas una distracción saludable. La programación no se puede aprender de forma aislada.

Vendrá

Sin saber su nivel de conocimiento, si su problema es con la lógica de programación y acaba de comenzar, vaya a Code.org

Una vez allí, tome el curso Express y continúe con las herramientas de la escuela intermedia y secundaria.

También puede codificar en su teléfono y aprender al mismo tiempo con SoloLearn: Aprenda a codificar, es decir, si tiene problemas con la sintaxis y cómo se crea el idioma. Además, tiene un foro integrado para publicar preguntas, tablas de clasificación, sistema de puntos y logros, incluso puedes publicar tu propio mini-programa y mostrárselo a tus compañeros, es la mejor aplicación de aprendizaje que he encontrado para aprender.

Luego continúe con sus propios proyectos, por ejemplo, cree un sitio web, su propia aplicación para su empresa u ofrezca a un familiar o amigo para crear algo para su negocio o estudios.

Automatice un proceso en el trabajo que normalmente toma pasos más largos o repetitivos, quién sabe, las posibilidades son infinitas.

Buena suerte amigo!

Voy a ser anónimo por algunas razones.

Conoces la lógica, pero no puedes traducirla al código. La solución es simple. Lee el código de los demás y ellos lo codifican, pero hazlo entendiendo las cosas con claridad. Este es realmente un problema común al que los principiantes generalmente se enfrentan. Cuando comencé, No pude codificar mi lógica, pero con el progreso gradual del tiempo y la lectura del código de otros, se hizo más fácil. Sugiero encarecidamente resolver problemas en sitios web como Hackerearth, Hackerrank, etc. y debes creer que esto realmente funciona. Esta es una forma pero también hay enfoques.

Extraño algo en la consulta. Usted dice que conoce la teoría … ¿de qué? Para mí la pregunta tiene una desconexión.

La programación es un método de resolución de problemas. Entonces, ¿qué problema estás tratando de resolver? ¿La teoría que mencionas resuelve el problema? ¿Puede resolver el problema a mano, al menos conceptualmente, o un subconjunto?

Practicando

Escribe programas pequeños, trata de hacerlos elegantes.

Enfrenta cosas que son cada vez más complejas.

No hay un viaje gratis, espero que lo encuentres divertido porque eso te hará perseverar.

Jacques de Hooge

Transcrypt – Python en el navegador – ¡Lean, rápido, abierto!

Mira esta breve promoción de Adidas:

Esta es una historia sobre un ex saltador de caña Yelena Isinbayeva. Es dos veces medallista de oro olímpico (2004 y 2008), tres veces campeona del mundo (2005, 2007 y 2013), la actual récord mundial en el evento, y es ampliamente considerada como la mejor saltadora de varas de todas las mujeres. hora.

Pero cuando era más joven quería convertirse en campeona, no en la pole, sino en la gimnasia . Pero ella era demasiado alta para la gimnasia. Ella falló tantas veces. Entonces ella entendió que tiene que cambiar algo y comenzar algo nuevo.

¡Y ayudó! Ella se encontró muy talentosa en pole vaulte y se convirtió en la mejor vara femenina de todos los tiempos.

Entonces, tal vez deberías encontrarte en otra cosa? Tal vez su talento no es la codificación? ¡Donde empiezas no es necesariamente donde terminas!

Buena suerte.

Tal vez la codificación no sea para ti. Cuando era un joven programador, en la década de 1980, quiero decir, y sí, tenían computadoras entonces … Yo era un programador experto, incluso sin ningún entrenamiento y no había Internet para aprender, tenía un libro que me podía permitir. De todos modos, donde sea que trabajé, me consideraban un muy buen programador. Algunos de mis amigos que habían asistido a las mismas escuelas y la educación que yo tenía (algunos incluso tenían títulos universitarios, había abandonado la universidad) simplemente no lo “entendieron”. Recuerdo que un amigo (que era un excelente técnico de hardware y más tarde trabajó para IBM durante muchos años) me preguntó “cómo lo haces, simplemente no puedo entenderlo”.

Así que quizás seas así, pero eso no significa que no seas inteligente (tu destino está en otra parte) y, a la larga, probablemente serás más feliz al no hacer algo que te resulte difícil.

Por mi parte, muy irónicamente, era muy pobre en las pruebas de aptitud, así que no conseguí muchos trabajos porque suspendí las pruebas.

Hoy en día, la programación no es tan difícil en comparación con años anteriores. Casi puedes ver todas las cosas que necesitas para “Gratis”. Lo que necesitas es una conexión a internet. Puede consultar videos, saber cómo usar google y unirse a foros.

No hay razón para que un programador no aprenda con estos recursos disponibles.

Al principio, la programación es difícil, pero cuando recorres todas las cosas y entiendes el concepto o algún análisis básico al respecto, no te quedarás atrás.

Lo que solo necesita es un tiempo amplio mientras comienza, pero si ya lo ha hecho, realmente lo encontrará disfrutando cuando pueda descubrir cosas sobre la programación …

¡Oye! ¡No te rindas todavía! Intenta aprender Python, ¡incluso si el idioma en el que quieres ser bueno no es Python! Es considerado como uno de los lenguajes de programación más fáciles y, lentamente, se volverá bueno en Python, y luego podrá optar por cosas como C, C #, C ++, Swift, Objective-C, etc. NO SE RASTE.

La práctica hace a un hombre perfecto.

No creas que eres malo en la programación, todos fueron malos en la programación, pero practica cada vez más y resuelve más y más problemas en tu lenguaje de programación, un día te convertirás en un programador de Goo. e intente buscar más en Internet si surgen problemas y encuentre la mejor solución,