10 señales de que un buen programador no funcionará

Hola Habr! Le presento la traducción del artículo "10 signos que apestará en la programación" de Jonathan Bluks.



Muy a menudo en Reddit o Quora veo preguntas como "¿Cómo sé si puedo convertirme en un programador exitoso?" (En realidad, este artículo es una extensión de mi respuesta reciente a Quora ). Cuando alguien piensa en un cambio de carrera o está interesado en desarrollar y quiere saber qué se requiere para esto, esta pregunta surge inevitablemente.

En general, creo que esta es la principal barrera en la mente de las personas que no recibieron una educación fundamental en programación. Pensar que su programador es regular es completamente natural, y esto le impide comenzar un nuevo negocio. Es como soñar con convertirse en actor, pero dudo que incluso sepa cómo jugar.

Como profesor en el curso "Desarrollo web completo", trabajé con muchos programadores nuevos. La buena noticia es que rara vez conocí estudiantes que no pudieran aprender programación. Creo que la programación es la misma habilidad básica que leer, escribir y contar. Cualquiera puede hacerlo, ya que esta es una de las habilidades de una persona, pero esto realmente necesita ser aprendido.

Durante dos años de enseñanza, observé el tormento de los estudiantes en el proceso de aprendizaje y los vi con varios problemas similares. Si echas un vistazo a su lista y sientes que todo se trata de ti, puedes estar seguro de que un buen programador definitivamente no funcionará contigo, y tal vez deberías hacer algo más. Sin embargo, si se mantiene fiel a su objetivo de convertirse en desarrollador, puede superar todos los obstáculos.

Esta lista lo ayudará a comprender si puede convertirse en un buen programador, así como qué hacer si decide cambiarlo.


1 | Te falta curiosidad


Si no tiene mucha curiosidad sobre cómo funcionan la computadora y la tecnología en general, nunca se convertirá en un programador exitoso.

La base de cualquier entrenamiento es un gran interés en el tema de estudio. Si su mente no tiene un interés especial en la tecnología, no tendrá suficiente energía y pasión para estudiar programación en profundidad y profundidad y tener éxito en esta área.

Por el contrario, el mundo de la tecnología es como un enorme océano de áreas emocionantes, ideas que se cruzan y posibilidades emocionantes. Se necesitará un suministro impresionante de motivación interna para sumergirse en él y descubrir todo lo que sea posible.

Cultive la curiosidad en usted mismo: pregúntese si realmente está interesado en la programación. Si su respuesta honesta es no, encuentre algo que realmente lo cautive. No pierdas tu tiempo y energía. Pero si respondiste que sí, entonces esfuérzate por encontrar algo nuevo que aún no hayas encontrado, reconoce cuán vasto es este océano y sumérgete más.

2 | Te falta independencia e ingenio


Si no desarrolla la capacidad de resolver problemas por su cuenta, nunca se convertirá en un programador exitoso.

Sin duda, para convertirse en un desarrollador exitoso, debe confiar en sus propias habilidades para aprender. Por cierto, esta es una de las habilidades para la vida más importantes: si tienes más de 18 años, nadie está obligado a enseñarte. Esa es la realidad. Encontrar la información necesaria y ayuda si la necesita es solo su tarea.

En el mundo del desarrollo, toda la información que necesita se puede encontrar en un lugar mágico anteriormente conocido como Information Super Highway. Esta biblioteca gigante tiene una gran puerta: Google. Comprender que puede simplemente llevar todo lo que desee a la búsqueda y obtener acceso a la información necesaria es la primera barrera para la adquisición de las habilidades que necesitará en el mundo de TI.

Además de la capacidad de googlear, también es importante aprender a leer la documentación y las especificaciones que tienen todos los lenguajes de programación y explicar de manera muy transparente cómo funciona el lenguaje. Es como usar un diccionario: cuando encuentras una palabra que no sabes, la miras en el diccionario. La forma más rápida y confiable de desarrollar y consolidar sus habilidades de programación es simplemente leer la documentación. Literalmente hay de todo.

Use todos los recursos: comprenda que todas sus preguntas ya tienen respuestas. Antes de preguntarle a alguien, busque en Google y lea la documentación. Ahorre la oportunidad de pasar el tiempo de alguien en el caso cuando realmente trató de encontrar la respuesta, pero no pudo.


3 | Te falta perseverancia ante el problema


Si te rindes, apenas te enfrentas a un problema, nunca te convertirías en un programador exitoso.

La esencia de la programación es la solución a los problemas. ¡Esta es la razón para crear computadoras! Cada vez que comienzas a trabajar en un programa, te enfrentas a un "montón" de problemas. Y tan pronto como encuentra una solución a un problema, casi siempre surge otro. Estás avanzando, pero siempre hay nuevos obstáculos.

Debo admitir que este montón de problemas puede ser aterrador y desalentador. Si crees que todo debería "funcionar", no tendrás suficiente energía y fuerza para continuar trabajando de manera persistente, mientras que los problemas aparecen uno tras otro y gradualmente te dejan sin equilibrio emocional. Su trabajo es precisamente comprender por qué algo no funciona.

En mi experiencia docente, siempre hay uno o dos estudiantes en un grupo que parecen tener algún tipo de habilidad innata para encontrar más problemas que otros, y muy a menudo son problemas aleatorios y oscuros. Les recuerdo a estos estudiantes que cuantos más problemas encuentren, más oportunidades tendrán de estudiar algo profunda y minuciosamente. Si a través de estos problemas pueden obtener una comprensión completa, se volverán más seguros mucho más rápido, precisamente porque se han encontrado y han lidiado con más problemas que otros.

Paciencia y aceptación: debe comprender que esta área consiste en problemas y tratarlos no como problemas, sino como desafíos. Cada desafío que logras superar te dará más conocimiento, una comprensión más profunda y mejorará tu habilidad para encontrar nuevos obstáculos y resolver los viejos más rápido.


4 | No sientes la alegría del éxito al resolver problemas


Si no siente una sensación de satisfacción y logro cuando ha resuelto el problema, nunca se convertirá en un programador exitoso.

Con la situación descrita anteriormente, cuando te rindes fácilmente, también hay una falta de "sentimientos agradables" cuando encuentras una solución exitosa al problema. Cuando la corrección de errores se convierte en un trabajo mecánico monótono, que no tiene fin, pierde la emoción que acompaña la búsqueda y la búsqueda de una solución al problema.

Cuando resuelve con éxito un problema, se libera una carga de dopamina en el cerebro. Esto es similar a completar un nivel en un videojuego o resolver un crucigrama o sudoku. Todos conocen este sentimiento agradable cuando luchas persistentemente con una tarea difícil y al final ganas. Pero si pierde la capacidad de sentir esta delicia, o si simplemente nunca le importó, no comprenderá ni sentirá la alegría de programar. Si para usted la programación es un trabajo monótono y aburrido, en el que solo desea obtener el resultado sin esfuerzo, nunca se convertirá en un programador realmente bueno.

Celebre sus victorias: cada vez que encuentre una respuesta a una pregunta que lo atormenta, no importa cuán insignificante sea, tómela como motivo de orgullo, distraiga por un momento y felicítese por la tarea completada con éxito. Deje que la sensación de éxito lo abrace y lo energice para sus próximas tareas.


5 | Te falta paciencia en tus estudios


Si siente falta de paciencia en sus estudios y espera que pueda aprender todo fácil y rápidamente, nunca se convertirá en un programador exitoso.

El hombre es una criatura muy limitada. A pesar del hecho de que todo en nuestro mundo se mueve más rápido y que las computadoras son quizás la razón principal de esto, no podemos desarrollarnos más rápido de lo que permiten nuestras habilidades. Nuestro cerebro funciona a un cierto ritmo, y dependiendo de nuestro pasado, nuestras creencias, estado emocional y salud, todos aprendemos y asimilamos información a diferentes velocidades.

El mundo de la tecnología es como un océano sin fin. No puede llegar a su límite, nunca se convertirá en un profesional que sepa absolutamente todo y que no tenga nada más que aprender. Si esto lo desanima, estará constantemente bajo la presión de la necesidad de "ponerse al día" con el progreso y sentir que su conocimiento nunca será suficiente. Si no puede aceptar lo que ya sabe y luego aprender algo más, le parecerá que no se mudará a ningún lado, y simplemente se dará por vencido.

En cambio, trate de disfrutar el proceso de aprendizaje y piense en él como un viaje. Todos los nuevos conocimientos o nuevas habilidades que adquieras deberían inspirarte y deleitarte. Cómo y cuándo encuentra una solución a un problema, debe estar orgulloso de sus logros y reconocer que ha dado un paso adelante, incluso si es un paso pequeño.

Recompénsate por tu progreso: tendrás que aprender mucho en programación, y este viaje nunca terminará. Pero el conocimiento se está acumulando, por lo que debe estar orgulloso de lo que ya sabe y creer que todos sus esfuerzos en los estudios crean una base sólida para su carrera, donde sea que lo lleve.


6 | Te sientes aburrido o cansado de pensar


Si eres demasiado vago para pensar y piensas que el pensamiento concentrado es una tarea aburrida y rutinaria, no te convertirás en un programador exitoso.

La programación es una actividad mental. Una persona, como especie, tiene éxito en esto, pero la realidad es que a pesar de que hacemos esto todo el tiempo, somos flojos para pensar realmente. La capacidad de mantener la concentración mientras se resuelve un solo problema durante algún tiempo es difícil si no está acostumbrado.

Se manifiesta de diferentes maneras. Puede sentarse mirando la pantalla durante mucho tiempo, sentir que una nube pesada está aplastando sus pensamientos, postergar, cambiar sin rumbo entre las pestañas del navegador o explorar StackOverflow desesperadamente en busca de la "respuesta" deseada. Todo esto significa que se enfrenta a limitaciones mentales y necesita encontrar una salida.
Al programar, naturalmente se cansará y la actividad mental literalmente quemará energía al igual que la energía física. Cuando su cuerpo no está acostumbrado a tal gasto de energía mental, le resultará difícil permanecer recogido. Pero es como hacer clases de gimnasia: cuanto más lo hagas, más fuerte te volverás.

Tu cerebro es un músculo: créeme, tu cerebro es como un músculo: cuanto más te esfuerzas, más fuerte se vuelve y más eficazmente piensas. Al armar las piezas del rompecabezas, organizar, analizar y desarrollar ideas, encontrar soluciones se vuelve más fácil.


7 | No eres capaz de pensar por tu cuenta


Si está esperando que alguien piense por usted y no quiere mirar los detalles de su situación, nunca se convertirá en un programador exitoso.

Al estudiar algo nuevo, muy a menudo sentimos que nuestro conocimiento y experiencia no es suficiente para tener nuestra propia opinión. Tomar la iniciativa, hacer o decir algo mal parece muy arriesgado.

Todos tenemos este miedo interno de estar equivocados. Y cuando este miedo obstaculiza su curiosidad de investigación, suprime la capacidad de desarrollar conocimiento real, conocimiento adquirido de su propia experiencia, victorias y derrotas. Si confía en la opinión de un "gurú", un blogger popular, una "mejor práctica" o una respuesta de un libro de texto, esto significa que no comprende la programación completa y profundamente.

Es necesario desarrollar su propia opinión sobre lo que funciona y lo que no. Debe comprender por qué cree que su decisión es buena, cuáles son sus ventajas. Es necesario desarrollar una apariencia sutil que no solo observe los detalles obvios. Debes ser capaz de defender tu punto de vista, y luego, si cambias, obtendrás una nueva visión y será la tuya.

Piensa por ti mismo: Usando tu propia experiencia y habilidad para pensar, da forma crítica a tus propias opiniones. Haga suposiciones deliberadas, tome partido en la disputa y esté preparado para cambiarla si aparece nueva información.


8 | Tu pensamiento es inflexible, estrecho y / o desorganizado.


Si no es muy flexible en su pensamiento y tiene dificultades con la organización de su código, así como con sus pensamientos, nunca se convertirá en un programador exitoso.

A veces veo dos extremos en los estudiantes. El primero es un enfoque estrecho e inflexible del pensamiento. Esta actitud les hace rechazar la ayuda y, a pesar de los comentarios, no les permite cambiar. Todo se ve solo de un lado, todas las ofertas se ignoran.

El segundo extremo que encuentro es la desorganización del pensamiento. Los estudiantes mismos crean dificultades para sí mismos sin ninguna necesidad, su código es desordenado, es difícil de entender. Complican las tareas y escriben 100 líneas de código donde 10 serían suficientes.

Cuando se combinan ambas formas de pensar, el resultado es un enfoque de programación tan duro y tenso, un tipo de método de fuerza bruta que conduce a numerosas capas de correcciones de errores y muletas. Lo que es realmente necesario en tal situación es la capacidad de volver al principio, repensar la solución original, abandonarla y reorganizar el código.

Si no ve otras oportunidades o no recibe comentarios, no podrá crecer ni desarrollarse. Estar desorganizado te ralentiza y evita que veas patrones que de otra manera serían obvios. Y la calidad general de su trabajo está empeorando.

Autocrítica: siempre debe dar un paso atrás para ver la imagen completa de cómo aborda las tareas. ¿Cómo se puede hacer esto mejor? ¿Hay algo que pueda hacerte la vida más fácil? ¿Qué te estás perdiendo y qué podría ayudarte?


9 | Desea saber una respuesta "correcta" en lugar de reconocer el espectro de respuestas "buenas" y "malas".


Si el objetivo final de la programación es encontrar la solución correcta y no un espectro de posibles soluciones, nunca se convertirá en un programador exitoso.


Al comienzo del aprendizaje de las habilidades de programación, los estudiantes a menudo quieren saber si lo que han hecho es "correcto". La respuesta a esta pregunta es siempre: "depende de las circunstancias".

La informática es la ciencia de evaluar las compensaciones. Habiendo recibido varias combinaciones de circunstancias, ¿encontrará la mejor solución? Todo depende de las circunstancias y objetivos. Cuando percibe la programación como una prueba con respuestas correctas e incorrectas, pierde la oportunidad de ver la imagen completa y rechaza un enfoque creativo. Cualquier decisión puede ser "verdadera" si está justificada en las circunstancias.

En realidad, la programación es más como escribir poemas o historias (o novelas si los programas son lo suficientemente grandes). Su código tiene su propia estética y belleza, a veces solo visible para usted y otros programadores. Las razones por las que ha elegido una solución y la forma en que la imagina son mucho más importantes que "correcto" o "incorrecto". La forma de pensar del artista te permite jugar con varias opciones y posibilidades, y no considerar ninguna decisión como la única correcta. Esta es la belleza de la programación: hay muchas formas diferentes de resolver el problema, y ​​considerar diferentes posibilidades conduce a la sensación de cuál es la más adecuada en ciertas condiciones.

Sea creativo: comprenda que hay muchas maneras de resolver un problema, y ​​la experiencia y la resistencia lo ayudarán a desarrollar una excelente comprensión de qué soluciones son más adecuadas en esta situación que otras. Ver la imagen completa, imaginar varias posibilidades y confiar en su intuición es útil para encontrar las mejores soluciones que satisfagan plenamente su tarea.


10 | No prestas suficiente atención a los detalles.


Si descuida los detalles y pierde de vista las pequeñas cosas, nunca se convertirá en un programador exitoso.


Las computadoras aman la precisión. Cuando se trata de programar una computadora, debe proporcionarle comandos extremadamente precisos de la manera que espera una computadora. Si no lo hace, nada funcionará. No hay término medio: el código funciona o no.

Esto significa que el programador debe estar atento a los detalles. Cada espacio, paréntesis o punto y coma es importante. Si no están donde deberían estar, nada funcionará. Cuando la computadora arroja un mensaje de error, debería poder mirarlo y comprender claramente lo que le está diciendo. En la vida real, si pierde esos detalles, pasará horas buscando el problema, que en realidad es el resultado de un simple error tipográfico.

Como dice el refrán, el diablo está en los detalles. Y en la programación esto es realmente así.

Presta atención a los detalles: las pequeñas cosas son importantes y debes aceptarlas. Una vez que haga esto, comenzará a escanear su código en busca de algo que esté fuera de lugar. Puede organizar su código y usar varias herramientas para ayudar a identificar problemas más rápido.


Bonificación: estás enfocado en los negocios


, , : , , , . « », -, « » — .

, , , . — , , .

, , , . , , ! / , - . , !

, , , , , . , .

Conclusión


, . , , , .

, ! , , . .

: — , -. BrainStation.

Source: https://habr.com/ru/post/483218/


All Articles