¿Necesita ser inteligente, o como diría la mitad de todos los usuarios de Quora, necesita un alto coeficiente intelectual para aprender programación de computadoras y lenguajes de codificación?

No tiene que ser “inteligente” si quiere decir más inteligente que el promedio. No tienes que tener un alto coeficiente intelectual. Probablemente ambos ayuden. El mejor rasgo para la programación es la capacidad de descomponer un problema en mi opinión. Algunas posiciones de codificación facilitan la programación al hacer que los analistas hagan el desglose del programa. Pero esta no es la norma.

Entonces, si puede ver un problema y dividirlo en mandos manejables, entonces puede hacer programación básica.

El problema es que ser programador a menudo requiere que no solo conozca la programación, sino que, por su propia naturaleza, terminará sabiendo todo lo que hay que saber sobre la tarea que está automatizando. Por ejemplo, he escrito un sistema utilizado para programar a los anestesiólogos en un hospital importante. Tuve que aprender el trabajo del personal de administración, que realizaba esa tarea manualmente. Sabía sobre los conceptos de programación de otros sistemas en los que he estado involucrado en el pasado, pero aquí tuve que aprender sobre las regulaciones involucradas, cómo esas regulaciones tendían a cambiar con el tiempo, cómo se implementaban, etc. para poder desarrollar un sistema. eso funcionaría un mes más tarde o 4 años más tarde sin tener que actualizarlo cada vez que se aprobara una nueva regulación. Desarrollé una aplicación para que el gobierno australiano permitiera la navegación de sus imágenes satelitales LANSAT. Esto significaba que tenía que aprender sobre bases de datos espaciales, mapas, procesamiento de imágenes y otras tareas relacionadas. Me requirió aprender un poco de las matemáticas involucradas en la transformación de las imágenes en mapas vectoriales de Australia. Actualmente trabajo para una empresa que produce software de contabilidad que necesito saber sobre todas las áreas de contabilidad, fabricación, ventas, compras, nóminas, impuestos, etc., junto con el lado de programación.

Mi consejo es probarlo. Si te gusta entonces quédate con él. Si no lo haces, entonces encuentra algo que se adapte mejor a tus talentos. No te llames estúpido o tonto. Estoy seguro de que hay muchas cosas que puedes hacer mejor que yo. La clave es reconocer sus fortalezas y capitalizarlas.

Por lo tanto, su pregunta se divide en dos partes porque tomó dos conceptos completamente separados y los unió.

Primero, debe ser “inteligente” o tener conocimientos para aprender lenguajes de codificación, pero eso significa comenzar con los conceptos básicos de la lógica de codificación y la lógica realmente humana y desarrollar creaciones en lugar de comenzar con el propio código como una cadena y trabajar hacia la lógica computacional. . Por lo tanto, cuanto más inteligente esté fuera de la codificación, más fácil será el tiempo que tendrá dentro, al igual que la mayoría de las otras cosas.

En segundo lugar, con respecto al coeficiente intelectual porque el coeficiente intelectual y la creatividad están realmente vinculados, la respuesta a esta pregunta podría ser realmente “sí” más que “no”. ¿Puedes aprender a un nivel rudimentario, sí, pero supongo que por “aprender” te refieres a que realmente aplicas las habilidades y la aplicación requiere algún tipo de visión? en cierto sentido, piense en ello como aprender la plenitud de un lenguaje para que uno pueda escribir pero sin imaginación.

Entonces, en resumen, necesita ambos y los necesita en una cantidad decente. Tal vez no tanto como para ser un genio esotérico, por supuesto que no, sino porque gran parte de la programación está orientada hacia la resolución de problemas y en el mundo real hay un número infinito de formas de tratar verdaderamente con las cosas (algunas menos kosher que otras ) será mejor que tengas ingenio para gestionar lo que surge.

tldr: obtuve un título de CS y me aterrorizó que no fuera lo suficientemente inteligente como para manejar el trabajo. Incluso había fallado la programación en la escuela secundaria. El sonido de las matemáticas discretas y la teoría de la computación sonaban ridículamente difíciles. Tengo como en ambas clases. Solo estudia hasta que sepas el material, y solo entrega los proyectos completados.

larga historia:

Creo que aprender hoy CS hoy es más fácil que aprender CS 20 años. Digo esto por algunas razones.

  1. La mayoría de las personas de hoy tienen experiencia en el uso diario de una computadora, sin importar el nivel de habilidad. Esto ayuda a construir un marco de referencia sobre cómo funciona una computadora, cuando se le enseña ese tipo de material. Esto no siempre fue el caso hace años. Alguien podría tomar un curso de CS en la escuela, y es posible que tengan o no acceso a una computadora fuera del aula.
  2. Esto me lleva a mi segundo punto, una computadora para aprender a programar puede comprarse por $ 10. Se llama Raspberry Pi Zero W. The W significa Wireless. El modelo súper exclusivo cuesta $ 50, y cualquier computadora portátil que cuesta $ 50- $ 100 USD en craigslist puede ejecutar GNU / Linux, Java / C ++ y un editor de texto o IDE. Todas esas otras cosas mencionadas pueden ejecutar las mismas cosas también. El costo de acceso está disponible para el 99% de las personas en la actualidad. Esto no fue absolutamente el caso hace 20 años.
  3. Además de estudiar algo en el aula, hay una cantidad infinita de ayuda y recursos disponibles en línea de forma gratuita en el tema de informática. Todos pueden encontrar un video o tutorial y verlo de 100 maneras diferentes hasta que tenga sentido para ellos.

¡Ciertamente no!

Si te gustan los puzzles probablemente puedas programar. Ciertamente no soy un genio, pero parece que tengo un don para crear programas. No es un requisito previo que te gusten los rompecabezas, pero sin duda te ayudará.

Por cierto, no aprendas a “codificar” por voz, aprende a programar. La diferencia es saber qué hay que hacer y la otra es la sintaxis. Sintaxis puedes google o buscar en un libro. Programación por otro lado, es saber qué hacer, cuándo y dónde. Sea creativo, invente cosas y luego descubra cómo hacer realidad ese sueño. Se un artista, se creativo. Cuando quieres hacer una cosa determinada y no hay ninguna herramienta que lo haga, haz una.

Nunca me dieron un desafío. No podía hacer el trabajo y, créeme, la gente lo ha intentado. deliberadamente. Algo en lo que pensar, sin embargo, a medida que más y más cosas se convierten en “Drag-n-Drop”, se alejan cada vez más de la programación real. Aprende a crearlo desde cero. El mundo de arrastrar y soltar nunca está completo y, de hecho, hace que sea más difícil crear el programa que deseas porque simplemente no hay forma de hacerlo. He tenido que retroceder al código real más veces …

No dejes de intentar y aprende programación.

Tienes que pensar analíticamente. No creo que necesites ser más inteligente que el promedio. Pero la programación es principalmente un análisis, por lo que si no puede pensar analíticamente (y eso es genético), no puede desarrollar programas. Y si no puedes desarrollar un programa, no tienes nada que codificar. (Un programa es una solución a un problema, no es un montón de código).

Alto coeficiente intelectual … no …

  • Pensamiento abstracto
  • Reconocimiento de patrones
  • Lógica

Esas cosas generalmente están correlacionadas con un alto coeficiente intelectual, por supuesto, pero creo que este es un caso de correlación = causalidad.

No un poco.

Es una habilidad aprendida. No es magia. Creo que algunas personas lo recogen más fácilmente que otras, pero también creo que cualquiera que esté dispuesto a hacer el esfuerzo puede aprender.