Aprende a codificar: el secreto de un método recursivo

2

La codificación es donde está el futuro, tanto global como individualmente. No hay ‘si’ o ‘pero’ al respecto. ¿Miedo por su trabajo, preocupado por la globalización y asustado de no poder llegar a fin de mes en los próximos años? Luego, prepárate para el futuro aprendiendo a codificar.

Está abierto a cualquier persona, sin importar la edad, el sexo o el color de su piel, gana un buen dinero, con el desarrollador de software promedio obteniendo alrededor de 100k por año, y es un sector que se espera que continúe creciendo en 22% hasta 2022.

Y es completamente independiente de la ubicación. Puede hacerlo fácilmente en línea, comunicándose por correo electrónico de Skype o Snapchat. Entonces, si vive en Rust Belt, Bangladesh o en una cueva, siempre que tenga una conexión decente, puede codificar, cobrar un salario y vivir cómodamente, aunque es cierto que la última parte puede ser difícil si usted es viviendo en un todo en la tierra.

E incluso la mayor excusa de todas, que es difícil de aprender y que no tienes a nadie que te enseñe, ya no se sostiene. Cada día se publican más recursos en línea para ayudarlo a aprender cómo seleccionar el idioma en el que desea codificar, cómo aprender ese idioma y las oportunidades para codificar en él.

Lo único que te detiene eres tú.

¿Qué idioma deberías aprender?

De acuerdo, eso podría ser un poco simplista. Hay algo más que te retiene que eso. ¡Pero todos los problemas se pueden superar! Ni siquiera tiene que costarle dinero. La primera opción que tienes que decidir es qué idioma quieres empezar a aprender. Hay muchos de ellos y puede ser un poco intimidante.

Afortunadamente, también hay herramientas disponibles aquí. Alternativamente, puede resolverlo por su cuenta. En realidad no es tan difícil. Lo primero que debe saber es que hay dos grupos diferentes de idiomas. Estos son lenguajes dinámicos y estáticos.

  • Los lenguajes dinámicos son más amigables para los principiantes. No requieren tanto código y son muy flexibles. Ellos te enseñarán la teoría. También son lo que se conoce como ‘nivel superior’. Esto significa que no se preocupan por las brocas y los pernos (que son los niveles inferiores) y, en cambio, se eliminan varios pasos de allí. Entonces, en lugar de decir ‘saca el pan de la nevera, saca dos rebanadas, toma mantequilla…’, simplemente dirías, ‘haz un sándwich de mantequilla de maní y mermelada’. Obviamente, este último es mucho más rápido y, de esa manera, los lenguajes dinámicos le brindan resultados más rápido.
  • Los lenguajes escritos estáticamente son la otra cara de la moneda. Estos lenguajes están más cerca de lo que imaginas cuando piensas en la codificación. Este lenguaje está en un nivel más bajo y, por lo tanto, requiere más código para lograr lo mismo, pero al menos puede decidir si su sándwich tendrá o no corteza, así que eso es todo. Estos lenguajes de programación se consideran más escalables, robustos y fáciles de mantener. Al mismo tiempo, los errores se castigan con más dureza.

¿Lo tengo? Bien, ahora veamos algunos ejemplos de lenguajes que podrías considerar usar. Comenzaremos con algunos de los lenguajes dinámicos primero.

PHP

Si está planeando jugar con WordPress, y es probable que lo esté, ya que es una de las plataformas de creación de sitios web más populares que existen con XXX de los sitios web en Internet construidos con él, entonces querrá comenzar con PHP. .

Afortunadamente, este lenguaje de secuencias de comandos del lado del servidor es bastante amigable para los principiantes, ya que es fácil de entender qué hará el código cuando lo use. Eso significa que es mucho más fácil de aprender que muchos otros idiomas.

Lo que es más, como se ha especializado mucho para el uso web y ahí es probablemente donde comenzarás tus escapadas de aprendizaje de programación, ciertamente puedes hacerlo peor que PHP.

Otras plataformas construidas en PHP incluyen Facebook, Wikipedia, Yahoo y Tumblr.

JavaScript

En el otro extremo de la escala está Javascript. Es inmensamente popular y se usa en muchos lugares y formas diferentes. Es compatible con todos los navegadores, a menudo se usa para crear aplicaciones web interactivas y también se usa como lenguaje del lado del servidor.

¿El único problema? Se considera bastante difícil, ya que es un lenguaje sin tipo, lo que lo hace muy difícil de depurar. Definitivamente querrás aprender esto eventualmente, pero probablemente no deberías tratar de aprenderlo primero. Concéntrese en uno de los otros en su lugar.

Genial, ahora veamos algunos lenguajes tipificados estáticamente para que los considere.

Java

Realmente no se puede hablar de un lenguaje escrito estáticamente sin mencionar Java. Sería como hablar de América del Norte sin hablar de Estados Unidos. El noventa por ciento de las empresas de Fortunate 500 utilizan Java. Eso es correcto. Nueve cero. Y los que no lo hacen, probablemente sean como las personas que se negaron a usar Apple en los años 2000. ¡Es el principio del asunto, maldita sea!

No es exactamente un idioma fácil, por lo que podría no ser el mejor lugar para comenzar. Dicho esto, ciertamente se puede aprender, porque si el 90% de esas empresas lo están usando, entonces obviamente alguien tiene que estar ganándolo, ¿verdad? Ciertamente podría hacer algo peor que elegir Java como su primer lenguaje escrito estáticamente.

C

Otro lenguaje (muy) importante es C. Es el lenguaje de elección de los sistemas operativos. Ha influido en todos los lenguajes de programación que hemos mencionado hasta ahora. En cierto modo, es como el latín, ya que todos los idiomas europeos han tomado mucho de él y de sus ideas. Y al igual que el latín, aprenderlo hará que aprender todos esos otros idiomas sea mucho más fácil.

¿El problema? Una vez más, la comparación latina me servirá bien. Es complejo y abstracto y requerirá bastante código para hacer lo que otros hacen en mucho menos. Esto significa que puede ser difícil mantenerse motivado como principiante. Probablemente sea mejor aprender primero algo para comprender las ideas básicas y luego retomar C.

¿Dónde puedo obtener información sobre estas plataformas?

Me alegra que hayas preguntado. Realmente hay innumerables recursos disponibles, algunos de ellos pagados, algunos de ellos gratuitos. Te sugiero que comiences con los gratuitos. Simplemente puede escribir el idioma que ha elegido e incluir las palabras ‘cómo programar’ y estará en camino.

Alternativamente, y dado que ya está aquí, puede hacer clic en uno de los siguientes enlaces y consultar las plataformas de aprendizaje de código en línea allí.

CodeAcademy es gratuito y 24 millones de personas ya han aprendido a programar a través de esta plataforma. Probablemente sea más gente de la que pensabas que podría codificar en este mundo. Es un muy buen lugar para empezar. Aquí puedes aprender HTML, CSS, Javascript, Jquery, PHP, Python y Ruby.

Coursera tiene más de 1000 cursos disponibles. La mayoría de los cursos son gratuitos. También puede obtener un certificado para algunos de los cursos si paga. El lugar cuenta con cursos de sedes tan ilustres como la Universidad de Washington, Stanford, la Universidad de Toronto y Vanderbilt.

edX es otro bueno. Este es de código abierto, por lo que nunca tendrá que pagar nada. Fue construido por Harvard y el MIT en 2012 y ha ido creciendo desde entonces. Hay más de 60 escuelas asociadas con el lugar hoy. Así sabrá que tendrá variedad y estará a la vanguardia. Ciertamente podrías hacerlo peor.

Cómo aprender

Hay algunas herramientas esenciales a las que deberá prestar atención. En primer lugar, debe familiarizarse con las bibliotecas del lenguaje de programación que ha elegido. Estos son los términos y expresiones que tendrás que entender para que la computadora haga lo que tú quieres.

Sí, comprender estas bibliotecas es un poco como aprender otro idioma. Afortunadamente, hay una gran ventaja que tendrá en la codificación que no tendrá en ningún otro lugar y es que las expresiones están, al menos parcialmente, en inglés. Esto significa que al menos tendrá algunos puntos de conexión con su comprensión normal. Y créeme, eso ayudará mucho.

Ahora ya puedes empezar a experimentar, probar cosas nuevas y explorar las diferentes facetas del idioma. Con algunos artículos de programación realmente básicos, puede familiarizarse con el idioma que ha elegido.

Alternativamente, puede comenzar a mirar los patrones de diseño en el idioma. ¿Qué significa esa expresión que suena arcana? Significa que observa algunas de las soluciones básicas para las grandes cosas que todo lenguaje de programación necesita hacer. Sí, puede intentar resolverlos usted mismo; de hecho, le aconsejo que pruebe al menos algunos de estos, ya que le enseñarán cómo pensar en un lenguaje de programación y comprender los conceptos básicos. Dicho esto, no desea perder el tiempo reinventando la rueda, especialmente porque su rueda probablemente será cuadrada en comparación con lo que ya existe.

Leer recursivamente

Una forma muy importante de aprender a leer artículos de programación es leerlos recursivamente. Esto significa que lees un artículo que es informativo, tomas todos los términos que no entiendes y los buscas en Google de forma independiente. Luego, lee los artículos que son más útiles allí y, si hay algún término que no conoce aquí, repite el proceso. Finalmente, cuando haya llegado a comprender el concepto con el que tropezó, regrese al artículo y continúe leyéndolo.

Sí, esto significa que de vez en cuando abrirás docenas de artículos diferentes para enfrentarte a un artículo, ya que un término lleva a otro y así sucesivamente. La cuestión es que, a medida que pasa el tiempo y te encuentras sabiendo más y más, encontrarás que esto sucede cada vez menos. Es más, su comprensión será mucho más completa y holística que si sólo lee las cosas sin comprender todo lo que se presenta.

¿Por qué necesita ese conocimiento holístico, se pregunta? ¿Por qué no puedes simplemente leer la programación como lo haces con todo lo demás? Por una razón muy específica e importante: con otros campos, si no entiendes los entresijos de un concepto, puedes salirte con la tuya, ya sea hablando vagamente o evitando hablar de ello.

Eso no es posible en la programación. En la programación, realmente necesitas comprender todos los aspectos. Si no lo hace, puede escribir un código altamente ineficiente o, lo que es peor, introducir inadvertidamente debilidades en su código que lo hagan susceptible de ser pirateado o colapsado. Eso significa que no puede salirse con la suya eludiendo algo que no sabe. Tienes que morder la bala y abordar cada concepto de frente.

Conclusión

Ya sea que esté aprendiendo a programar para ganar dinero, para tener una mejor idea de cómo se está ejecutando su página y su empresa, para comunicarse mejor con quien administre su sitio o para ahorrar dinero al programar aspectos usted mismo, las ventajas de aprender a programar son inmensas.

No solo podrá escribir su propio código, sino que estará en condiciones de comprender mejor lo que significa el mundo de la informática y por qué funciona de la forma en que lo hace. Las computadoras no son personas; sí, eso suena tonto, pero no te das cuenta del significado completo de esa expresión hasta que comprendes la lógica y la mecánica de algunos lenguajes de programación. A partir de ahí, puede saber cuándo algo es sospechoso, qué es posible y cuándo alguien finge que algo es difícil cuando en realidad es pan comido.

Esas son todas habilidades inmensamente útiles para poseer. Y todo lo que tienes que hacer para conseguirlos es sentarte e invertir unas horas a la semana en aprender un lenguaje de programación. Los beneficios, en otras palabras, superan con creces los costos, ¿no le parece?

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More