Lucho con mis clases de codificación, y con la escuela en general. ¿Qué puedo hacer para mejorar?

Luchando con la codificación.

A ver, solo puede haber dos problemas. Estos son los únicos dos problemas principales por los que estás luchando.

  1. No estás practicando lo suficiente.
  2. Sus fundamentos no son claros.

Si su preocupación es el punto 1 , al menos debe intentar resolver una pregunta al día de cualquier JUICIO EN LÍNEA que elija (hackerrank, codechef, etc.).

Si su preocupación es el punto 2 , debe abrir libros y volver a lo básico. Resuelve algunos de los problemas más fáciles provistos. Resuelve más y más preguntas sobre matrices y punteros. Como aquí es donde la mayoría de los estudiantes son golpeados.

Si crees que estás haciendo los dos puntos regularmente, es hora de participar en un concurso de programación en línea y tratar de resolver el máximo de preguntas en el momento dado. Si no puede resolver alguna pregunta, intente leer el editorial de otros, esto podría darle una pequeña pista de dónde estaba haciendo el mal.

Espero que esto ayude.

Buena suerte :).

Si tiene dificultades con sus clases de codificación, asegúrese de aprender los conceptos del idioma de manera clara y eficiente. Aprenda toda la sintaxis básica de ese lenguaje de programación en particular.

Cuando aprendas, asegúrate de no solo escribir el código, debes entenderlo primero y luego aprender. Cuando su profesor le da un fragmento particular, lo primero que debe hacer es entender el fragmento a fondo. Pregunte dudas si tiene.

Si no entendió un concepto en particular, también puede ver videos de YouTube en Internet. thenewboston es un muy buen canal de YouTube que ofrece tutoriales de programación gratuitos como Java, C ++, etc.

Regístrese para los desafíos de codificación como hackathon, codechef, etc. Estos hermosos sitios invocarán al mejor programador que existe al proporcionarle buenos desafíos para que los resuelva.

Por último, no todos los programadores piensan de la misma manera. Dios nos ha creado a todos de una manera única. También tenga en cuenta que hay muchas formas de resolver un programa en particular, pero se asegura de que sea eficiente.

Feliz codificación …

Este es un problema amplio, y si alguien quiere mis pensamientos completos, tal vez haría una publicación de Medium sobre eso o lo pondría en mi blog personal, pero el largo y corto de esto es este:

Creo firmemente que hemos crecido en una época en la que hemos comenzado a dar por sentado nuestro conocimiento acumulativo, sin entender los problemas que existían antes de que existiera nuestra solución / conjunto de conocimientos actual .

Ejemplo: Aprendí HTML y CSS primero. Esta bien Quería ejecutar este sitio web, algo así como ebay, pero para el intercambio de tarjetas de Yu-Gi-Oh (perdóname internet, tenía como 11). Básicamente, presenté algo que estaba dispuesto a intercambiar y harías ofertas basadas en las cartas que tenías.

Ahora, he probado esto con como … dos amigos? Y tener que actualizar constantemente la página HTML con la oferta actual era solo una molestia. Así que me senté pensando, en la voz de Billy Mays, “tiene que haber una mejor manera”. Fue entonces cuando comencé a seleccionar lenguajes del lado del servidor como PHP y Ruby (a-la Rails). Obviamente, este era un problema que existía mucho antes de que pudiera escribir algo que alguien más había resuelto. Su problema, y ​​su solución, para mí se convirtieron en nuevos conocimientos .

Por todas las cosas que aprenderá, comprenda que en algún momento nadie lo supo. Usted está aprendiendo algo que alguien posiblemente gastó una gran parte de su descubrimiento / invento / formalización. Todo el conocimiento que aprendes en la escuela es la respuesta a un problema que existía posiblemente mucho antes de que tú o yo estuviéramos en los pensamientos de nuestros antepasados.

Supongo que estás estudiando en la escuela secundaria o la universidad. Hay varias cosas que puede hacer que pueden ayudar y algunas pautas que encontré me ayudaron.

Primero, verifique los problemas externos, como la dislexia o la depresión, como sugirió David Owen.

A continuación, realice una evaluación imparcial de sus hábitos de estudio (lo sé, imparcial no es fácil). ¿Pones en el tiempo suficiente? ¿Te distraes a menudo o fácilmente mientras estudias? Esto suele ser un problema para los estudiantes a medida que pasan del entorno altamente estructurado de la escuela secundaria a los estudios universitarios / universitarios, que son mucho menos estructurados. Como ejemplo personal, mi profesor de matemáticas de la escuela secundaria asignó alrededor de una hora de tarea todos los días. Esta preparación me permitió pasar los cursos de matemáticas de mi primer año en la universidad. Desafortunadamente, abandoné el hábito de trabajar en matemáticas y cuando pasé a cursos de matemáticas más avanzados tuve que volver a desarrollar hábitos de estudio buenos y efectivos.

Si encuentra algún problema en las comprobaciones anteriores, resuélvalos primero. Algunos, como problemas físicos o mentales, siempre requerirán la ayuda de profesionales. Si necesita mejorar los hábitos de estudio (¡o incluso la asistencia a clase!), Puede resolver los problemas por su cuenta o puede necesitar ayuda externa. Si su escuela ofrece asesoramiento u otra ayuda, como salas de estudio o laboratorios abiertos con TA, considere usar esos servicios.

Una vez que haya resuelto estos posibles problemas generales y se centre específicamente en la codificación, comience por crear pequeñas asignaciones propias. Siempre recuerde que “La codificación no es un deporte para espectadores ” y realice la mayoría de la codificación por sí mismo. Si no está gastando al menos 2,000 horas al año haciendo software , no está haciendo lo suficiente. Nunca trabaje en grupos grandes, pero trate de encontrar algunos amigos de codificación y haga algunos proyectos con ellos. A menudo ayuda hablar sobre un problema que surja al codificar. El esfuerzo por declarar formalmente con palabras lo que no puede trabajar es un buen primer paso para resolver el problema.

Si todavía tiene problemas reales y serios, y especialmente si aún tiene dificultades para dedicarse a pasar la mayor parte del tiempo de codificación, considere si desea pasar los próximos 10 a 30 años escribiendo software o no. Decidí especializarme en CS después de dejar la USAF porque me había probado bien en las pruebas de ingreso de la USAF para esa aptitud y la reconocí como una buena carrera. Pero una vez que comencé a hacer software, descubrí que realmente lo disfruté. Si no disfruta de la codificación (probablemente no todo el tiempo, por supuesto, pero la mayor parte del tiempo), es posible que desee considerar alternativas que se adapten mejor a sus preferencias e intereses.

Debes intentar resolver los problemas de programación. No importa cuánta habilidad tengas ahora mismo en programación o lenguaje. Si empiezas a resolver problemas, aprenderás más. Hay muchos sitios para resolver problemas. Prefiero Codeforces. Intenta resolver problemas fáciles primero. Encontrarás muchos problemas categorizados por A, B, C, D, E. Intenta resolver A primero. Es divertido resolver problemas.

Confía en mí, sé cómo te sientes cuando he estado en esa posición. La única forma de superarte es el autoaprendizaje. No confíes completamente en tu maestro. Abra YouTube y comience a buscar tutoriales en video sobre el lenguaje de programación respectivo y practíquelos usted mismo.

No trates de memorizar el código. Esta es una de las peores prácticas. Incluso si eres malo, trata de entender los programas escritos previamente y trata de escribirlos tú mismo utilizando tu propio concepto.

La codificación se trata de mejorar sus habilidades lógicas. Practica y mejoralas. Incluso puede participar en la programación competitiva para aumentar sus habilidades de algoritmo.

Buena suerte y feliz codificación!

Vea si podría hacerse algunas pruebas en la escuela. Averigüe si tiene dislexia o algún otro tipo de problema que dificulte el aprendizaje. También existe la posibilidad de que tenga el síndrome de Asberger o algo así. Además, eche un vistazo al sueño que está recibiendo. La apnea del sueño realmente puede sacarlo de ti y hacer que sea muy difícil concentrarse.

Las condiciones mentales como la depresión crónica pueden llevar al insomnio y también pueden dificultar el aprendizaje.

Puede comenzar con algunos problemas en el juez en línea de UVa, como el UVa 507. Este problema realmente es una implementación estándar del algoritmo de Kadane y se puede resolver aplicando Kadane

Tenemos una opción entre dos decisiones, seguimos agregando elementos a una suma o simplemente comenzamos una nueva secuencia de matriz de suma y restablecemos a cero el total de la suma corriente si cae a un valor por debajo de cero.
Eche un vistazo a UVa 507 su implementación de Kadane.

Juez en línea de la UVa

Encuentro la educación formal increíblemente tediosa. La buena noticia es que no necesitas un título para entrar en TI. La mala noticia es que necesitas trabajar el doble para convencer a las personas de que te contraten, hasta que obtengas algo de experiencia.

Intente crear una cartera de software móvil, intente usarlo para conseguir un trabajo. Si tienes éxito, estás dentro.

Descubrí que contratar a un tutor me dio la dirección en la resolución de problemas y la disciplina que necesitaba superar, y el incentivo , ya que también estaba en mi centavo.

Inmediatamente vi el problema, entonces, no era mi intelecto (que había consumido innecesariamente una gran parte de mi tiempo en la preocupación), sino mi actitud, enfoque y mentalidad originales. Después de usar un tutor para una clase, podía acudir a mis profesores en busca de ayuda sin tener miedo de parecer estúpido. Y un tutor siempre fue un respaldo.

Muy fácil. Espero que lo pruebes con una sola clase. Llegarás ahi. No te preocupes

Un poco más de detalles pueden ser útiles. ¿Es la escuela secundaria, la universidad o algo más? En cualquier caso, la codificación pura (escribir instrucciones en un idioma) no debería ser difícil si tiene algún interés.

En caso de que necesite más información, simplemente elija un libro sobre el lenguaje de programación. También intente usar herramientas que faciliten el trabajo (como la línea de comandos).