¿Puede una persona de inteligencia promedio convertirse en un gran programador?

Puede responder esta pregunta de dos maneras diferentes.

Comenzando con el tono pesimista , digamos que alguien tiene una inteligencia promedio con respecto a cada faceta. ¿Es realmente como “Forrest Gump” puede convertirse en un gran soldado? Alguien de inteligencia promedio podría no ser tan experto en pensamiento abstracto e inventar soluciones creativas para superar un problema. No serán tan propensos a “empujar el límite”. Sin embargo, interminables algoritmos, estructuras de datos, técnicas y tecnologías que se han desarrollado están al alcance de su comprensión. Actuarán exclusivamente como ingenieros de software en lugar de informáticos, reuniendo las tecnologías disponibles, siguiendo las pautas establecidas por los creadores de tecnologías y los convenios colectivos establecidos dentro de sus bases de usuarios. Con autodisciplina y entusiasmo, sí, ciertamente pueden ser un programador “excelente”, prolífico, conocedor, confiable e inspirador.

Ahora para el optimismo . No use el término “inteligencia” con ingenuidad. Hay muchos tipos de inteligencia. Cosas particulares en las que alguien podría sobresalir, mientras que otras partes de la mente no son tan capaces. Depende de la introspección de un programador, sus maestros y, lo más importante, los gerentes, reconocer en qué puede sobresalir el programador. Donde yacen las fortalezas. Quizás es mejor comunicarse con alguien por correo electrónico en lugar de verbalmente. Quizás alguien entiende mejor a través de diagramas, y otros a través de ejemplos. Tal vez alguien tiene un maravilloso sentido de la lógica, pero por alguna razón, su cerebro no funciona bien con la recursividad. Tal vez alguien sea horrible con las matemáticas y no pueda modelar adecuadamente una simulación, pero tal vez tenga un maravilloso sentido de la creatividad. Tal vez se les ocurran enfoques que aborden el panorama general. Tal vez simplemente se basa en intereses y, a medida que la mente se inspira, la reflexión sobre los desafíos presentados conduce a soluciones mucho mejores. No subestimes la complejidad de nuestras mentes. Si quieres ser un gran programador, apóyate en tus puntos fuertes y haz que suceda.

Por supuesto que si !

Una vez que tenga la intuición de convertirse en programador, debe dejar de pensar que no puede y comenzar a trabajar en eso. En realidad, programar es una nueva forma de pensar. Cuando te esfuerzas por pensar en una nueva forma de resolver problemas, entonces posiblemente tengas muchas ideas en la cabeza y solo tienes que hacer que tu computadora te entienda a través de la codificación. Debes tener un ferviente interés en lo que haces si quieres ser bueno en eso y una vez que tienes interés, debes practicarlo muchísimo. Si puedes codificar, puedes construir cosas por ti mismo. Entonces, comience de manera simple : intente crear scripts y pequeñas aplicaciones que puedan aumentar su conocimiento de programación. Debes encontrar el camino al éxito en la programación al involucrarte mucho en la programación. Porque puedes aprender programación haciéndolo solo . Y lo único que debería importarle es el enfoque que sigue.

Involúcrate en:

  • Resolución de problemas
  • Construcción lógica
  • Conocimiento de datos
  • Diseño de sistemas
  • Pensando

Para ser un gran ingeniero de software, necesitará 3 habilidades importantes:

  • Tener un conocimiento de la pila completa
  • Ser capaz de aprender solo
  • Habilidades blandas

Entonces, para aprender a programar de manera rápida y productiva, puede optar por un enfoque de Educación Progresiva que se ofrece en la Escuela Holberton. En Holberton, puedes obtener estas 3 cosas, serás un programador increíble y todos querrán contratarte. Se enfoca en enseñarle a ver los principios subyacentes y las conexiones entre cosas aparentemente dispares para volver a cablear su cerebro. y 9 meses de estudio in situ o remoto en una especialización de su elección. Esta escuela cubre todos los criterios como el aprendizaje entre pares , aprender a aprender , aprendizaje orientado a proyectos , habilidades blandas , conocimiento completo , ayuda de mentores , que es el muy importante para ser bueno en la programación al no tomar demasiado tiempo.

La “inteligencia”, en realidad el “factor IQ” es un tema popular en el Quora recientemente. Sin embargo, la mayoría de las preguntas parecen revelar la falta de comprensión por parte de la persona que solicita esa inteligencia en términos de la capacidad de encontrar rápidamente partes coincidentes o resolver tipos específicos de acertijos (que lo que mide la prueba de coeficiente intelectual) es solo una de las habilidades del cerebro humano de cientos de otros.

El cerebro humano puede ser extremadamente sensible a los detalles específicos, mientras que a otros no les importa una mierda estas cosas. Esa es la razón, aunque no todos los pintores pueden sentarse y diseñar un nuevo billete de $ 100. La misma historia sobre diseñadores de fuentes.

Si nos centramos en la programación, descubrimos que hay muchas otras habilidades además de cálculos rápidos o talentos matemáticos, habilidades para resolver acertijos, etc. que serían un buen programador. De hecho, hay diferentes tipos de programadores, algunos son mejores para escribir rápidamente códigos cortos que resuelven problemas pequeños pero complejos (programación competitiva incluida), por lo que sería mejor trabajar en grandes sistemas a gran escala que procesan problemas simples pero con una enorme cantidad de datos (comenzando de la contabilidad e ir más allá de Big Data), mientras que otros serían mejores en escribir código nuevo desde cero y otro depurar principalmente el código de otros e introducir soluciones (algunos profesionales con años de experiencia realmente pueden ser una mierda en la segunda mitad).

El último factor es que es difícil definir “genial” en este contexto. ¿El hecho de que nunca fui programador en Google o Facebook me hace un programador miserable? ¿O el hecho de que no soy el top 100 en programación competitiva? Si el hecho de poder sentarme y diseñar una computadora del tamaño de Raspberry Pi desde cero me hace mejor programador integrado o mejor ingeniero electrónico (que no soy de profesión). Hay muchos programadores excelentes que no codifican las funciones de Facebook o Google, sino que escriben códigos para aviones, automóviles, barcos, televisores, microondas … todos necesitan diferentes habilidades para realizar su trabajo. Y ninguno de ellos trata solo de inteligencia.

La programación es un poco como una cuerda de manualidades.

Algunas personas son tan talentosas que pueden hacerse nudos de las que ni siquiera ellos pueden salir.

En otras palabras, las personas con un don natural para la complejidad a menudo crearán soluciones complejas que son un impedimento para la tarea en cuestión. El código complejo es un código incorrecto.

Una programación realmente buena requiere una disciplina para usar soluciones transparentes, simples (tontas). Esto da como resultado un código que es mantenible, extensible y adecuado para su propósito.

En programación, hay algún beneficio en ser inteligente, pero no caer en la trampa de construir código inteligente. Esto requiere disciplina.

No mierda Por supuesto que pueden.

Las personas inteligentes simplemente no aprenden de otras personas, o no trabajan en proyectos que los inspiran, o son solitarios, o son sosos, o lo que sea … Quiero decir que las personas inteligentes pueden tener fallas, y las personas de inteligencia promedio pueden desarrollar sus habilidades como locos.

Las personas inteligentes tienen una pequeña ventaja. Digamos que soy el doble de rápido que tú porque soy inteligente. Pero piensa en el futuro y escribe un sistema que evita los obstáculos principales, y termina 10 veces más rápido, o en absoluto. Eso es totalmente razonable. La diferencia entre el mejor chico y el peor chico en un proyecto es como 20x. Es una locura Nadie es 20 veces más inteligente que otra persona … no en general de todos modos. Encuentra otras formas de tener éxito. Usted puede.

No con una autoestima tan baja. Nunca. Confía en ti mismo y nunca subestimes tus capacidades. La programación es una habilidad que puede ser aprendida, enseñada por alguien y mejorada por la práctica. Pero tener confianza en uno mismo es importante y nadie te lo puede enseñar. Si crees en ti mismo y estás dispuesto a trabajar duro para mejorar, ¡no hay nadie que te impida convertirte en un gran programador! Todo lo mejor en tu viaje .. 🙂

Me gané la vida durante más de 40 años desarrollando software, y no me considero superior a la media en inteligencia. Pero me queda mucho cerebro, y ahí es donde escribes programas. Una persona con el cerebro derecho muy inteligente puede pintar retratos maravillosos, pero no lo contrataría para escribir programas.

Inteligencia no es un término bien definido, la inteligencia podría ser de muchos tipos, como inteligencia en el campo de las artes, las ciencias, los negocios, la inteligencia práctica, etc. Por lo que creo, debe tener un interés ardiente en lo que hace si quiere convertirse Bueno en eso. Una vez que tienes interés, necesitas practicar mucho el infierno.
Lo que viene a mi mente es una cita:
“Encuentra una pasión y deja que te mate”.

La inteligencia no puede ser una excusa.

More Interesting

Necesito consejos de carrera. Estoy confundido. Amo la ciencia pero odio la biología. La astronomía me divierte pero no sé si me gusta o no. ¿Qué debo hacer?

¿Las personas exitosas en tecnología (Sillicon Valley) se desperdician / festejan mucho?

¿Cómo advierto a los futuros candidatos sobre la falta de profesionalismo con respecto a una agencia de contratación poco ética?

Siendo ingeniero mecánico y comenzando en una compañía de servicio de campos petroleros en la división de cementación, ¿cuáles son las habilidades de prerrequisito que uno debe saber?

¿Cuál es la mejor opción de carrera para alguien que está interesado en el campo de TI, pero no quiere programar todo el día?

Soy profesor universitario y nuestro Director (empleador) está instalando cámaras de supervivencia en nuestra sala de personal, ¿qué debo hacer?

Cómo conseguir un trabajo en la industria de la arquitectura sin una cartera

Tengo desarrolladores de software en mi organización y necesito saber cómo hacer el trabajo de ellos para ayudar a que mi organización crezca.

¿Cuál es una buena alternativa a las revisiones de satisfacción de los empleados que requieren mucho tiempo?

¿Cómo puede un ingeniero químico acudir a empresas de software?

¿Qué estás buscando en su próximo trabajo?

Soy un ingeniero soltero de 26 años y tengo un par de ofertas de trabajo, una es de 13.5 Lpa en India y otra es de 11500 AED en Dubai. ¿Cuál es mejor?

A los 14 años, ¿cuáles podrían ser algunos trabajos bien remunerados que me permitan trabajar por cuenta propia? (Sobre la base de mis habilidades)?

He sido un programador autodidacta aprendiendo los conceptos básicos. ¿Seré competente para hacer un trabajo de administrador de sistemas redhat linux? ¿Qué necesito saber?

¿Es el IIT Jodhpur una elección correcta en términos de infraestructura y ubicaciones teniendo en cuenta que se inició hace solo 5 años?