17 desafíos de codificación para agudizar su pensamiento crítico

Si desea mejorar sus habilidades en un lenguaje de programación existente o nuevo, una de las mejores maneras de hacerlo es a través de desafíos de codificación.

A lo largo de los años, se han puesto a disposición muchas plataformas y sitios web, lo que brinda desafíos emocionantes para programadores de todos los niveles. Ya sea que esté tratando de aprender un nuevo idioma o desee poner a prueba su ingenio en situaciones estresantes, los desafíos de codificación pueden ser divertidos y una prueba al mismo tiempo.

Los beneficios, además de los obvios, de trabajar en estos desafíos incluyen mejores habilidades para resolver problemas, una comprensión profunda del idioma y la alegría de aprender nuevos algoritmos. Como sabes, los algoritmos no son raros durante el proceso de contratación – por lo que tener algunos dientes en el juego podría darle una ventaja.

Esta publicación cubre algunos de los mejores sitios web y plataformas de desafíos de codificación que existen. Algunos son aptos para principiantes, mientras que otros atienden a un público más experimentado. También estamos agregando algunas cosas que puede mostrar a sus hijos desde codificación amigable para los niños también se ha vuelto bastante popular.

Edabit

La forma más fácil de aprender cosas nuevas es tener una interacción constante con lo que estás tratando de aprender. Tal es el caso de la programación, también. Leer los mejores libros te dará cero conocimiento a menos que pongas en práctica la palabra escrita.

Edabit es una plataforma establecida que ofrece desafíos de codificación del tamaño de un bocado, que pueden mejorar rápidamente sus habilidades de codificación.

HackerRank

HackerRank es una startup que se enfoca en brindar desafíos de codificación para individuos y organizaciones por igual. Según el desafío, a menudo se le dan instrucciones para un proyecto que debe completarse, y la forma en que lo completa depende de usted.

Actualmente, los desarrolladores pueden usar Java, Python, JavaScript, PHP, C++ y SQL para resolver los desafíos proporcionados.

Cada vez que envía sus soluciones, la plataforma califica automáticamente su envío en función de factores como la precisión. Posteriormente, se le coloca en la tabla de clasificación mundial, mientras cultiva logros (insignias) en el camino. También hay ‘sprints’, que es otro término para concursos alojados en plataformas.

House of Codes escribió una emocionante pieza que describe los 50 mejores desafíos encontrados en Hacker Rank. Si tiene curiosidad por ello, es una lectura que vale la pena, con una tonelada de ejemplos y material.

Coderbyte

Coderbyte es una aplicación única basada en prácticas de programación modernas. Su característica principal son los desafíos de codificación, que han ayudado a millones de personas en todo el mundo a convertirse en mejores desarrolladores. A diferencia de aplicaciones similares en el mercado, Coderbyte se dedica a ayudar a las personas a abordar problemas a nivel de la industria.

Una de las ventajas de usar esta plataforma es que funciona junto con algunas de las principales marcas de software. Por ejemplo, Google, LogMeIn, HBO, PWC y muchos otros. Si alguna vez desea conseguir un trabajo en dichas empresas, puede estar seguro de que Coderbyte puede brindarle los desafíos necesarios para poner a prueba sus habilidades.

Una vez que te registras, puedes elegir entre desafíos y algoritmos. Hay cientos de miles de soluciones enviadas por los usuarios, que pueden ayudarlo a obtener una comprensión mucho más amplia de temas de programación específicos.

Las organizaciones pueden registrarse y gestionar su proceso de selección. Al convertirse en una organización registrada, obtiene acceso a herramientas adicionales que pueden ayudar a evaluar a cada desarrollador individualmente.

guerras de código

La belleza de la práctica de codificación consistente es que siempre encuentra nuevas formas de resolver problemas. guerras de código está capitalizando esta idea. Basada en ‘katas’, la plataforma ofrece ejercicios y desafíos en una gran variedad de idiomas.

A medida que completa dichos ejercicios, puede obtener puntos pero también comprobar cómo otros programadores resolvieron un problema específico.

Si tiene la intención de practicar un nuevo idioma, entonces Codewars es un sitio excepcional para agregar a sus favoritos.

Estos son algunos de los idiomas admitidos:

  • clausura
  • Óxido
  • Rápido
  • Pitón
  • Haskell
  • Caparazón
  • JavaScript
  • PHP
  • kotlin
  • Scala

Y muchos otros idiomas están en el programa BETA, disponibles pero con posibles cuellos de botella.

Fundamentalmente, Edabit quiere proporcionar una plataforma que pueda cerrar la brecha entre los programadores principiantes y avanzados. Puedes consultar el Mapa vial para ver la lista completa de características.

CodinJuego

Los juegos como plataformas de aprendizaje no son algo completamente nuevo, pero parece que ahora hay muchos más jugadores en el campo. CodinGame es solo una de las muchas plataformas que ofrece desafíos de programación a través de una experiencia gamificada. En lugar de escribir un código a quemarropa, está creando un entorno de juego. Todo el código que escribes, de alguna manera, está afectando la forma en que se desarrolla el ‘juego’.

En retrospectiva, plataformas como CodinJuego puede ayudar mucho a los desarrolladores de tecnología sobre causa y efecto. Y cómo ciertas decisiones conducen a resultados específicos.

Este no es solo uno de esos sitios baratos donde escribes código JavaScript descuidado. CodinGame involucra algunos algoritmos de alto nivel y tiene innumerables codificadores de clase mundial que ayudan a brindar soluciones tanto a los desarrolladores nuevos como a los experimentados.

HackerEarth

HackerEarth es una plataforma muy conocida que organiza hackatones, desafíos de codificación y diferentes tipos de competencias.

También es un lugar donde puede adquirir algunos conocimientos interesantes sobre el proceso de contratación en las empresas modernas. No todos, pero una buena cantidad de los desafíos que se encuentran en la base de datos de HackerEarth pueden terminar preguntándose en cualquiera de sus futuras entrevistas de trabajo.

¿Y cómo es eso posible? Bueno, principalmente porque el verdadero ajetreo de HackerEarth es proporcionar soluciones de contratación a empresas tecnológicas de primer nivel. Si quieres ser considerado el mejor, tienes que pasar el rato con los mejores. Es una situación de ganar-ganar para usted.

programador

Programmr es un laboratorio digital dinámico para todos los niveles de desarrolladores. Con programador, puede escribir código, compilarlo y ejecutar proyectos directamente desde su navegador. La plataforma es compatible con todos los principales idiomas que se utilizan en la actualidad. Ya sea que desee ejecutar una aplicación móvil o una estructura de base de datos, Programmr tiene las agallas para admitirlo.

En cuanto a los desafíos, Programmr tiene un conjunto personalizado de desafíos para Java, C++, PHP, C#, Ruby, Python e iOS. Cada conjunto incluye más de 100 desafíos, que se pueden ordenar por popularidad (según los votos de los usuarios) y otros factores.

Lo que diferencia a estos chicos de los demás es que puede usar sus nuevas experiencias para obtener comentarios instantáneos, ya sea un certificado para un idioma específico o simplemente comentarios de usuarios existentes.

El tren de la codificación

Daniel Shiffman es un ejército de una sola persona hecho a sí mismo, que crea y produce excelente material sobre programación. El tren de la codificación es la plataforma personal de YouTube de Daniels, donde compartió videos emocionantes y útiles para abordar problemas relacionados con la programación.

Pero, él tiene este enfoque interesante. En lugar de alojar todo en su sitio web, utiliza YouTube como plataforma para el desafío y su sitio web como plataforma para la solución.

Tenga en cuenta que sus desafíos se basan en P5.js y Procesando — dos soluciones populares utilizadas en arte y diseño gráfico.

Desafíos de Wolframio

Wolfram es una de las empresas más conocidas del mundo que opera debajo de la rama informática. Su plataforma ha dejado boquiabiertos a muchos por sus posibilidades.

Aunque nuestro enfoque no está en Wolfram Alpha, se introdujo una nueva frontera a principios de 2018: Desafíos de Wolframio.

Hay muchos ejemplos de desafíos que uno puede imaginar que implican encontrar «la solución de menor costo» o «la mejor opción». Y es una configuración similar con las tareas típicas de aprendizaje automático: encontrar una función (por ejemplo, basada en una red neuronal) que se desempeñe mejor al clasificar un determinado conjunto de pruebas, etc.

En comparación con otros sitios web/plataformas en este resumen, Wolfram cubre una amplia área de desafíos y no solo de codificación. Con todo, si desea agudizar su pensamiento crítico, ¡esta será la plataforma para hacerlo!

LeetCode

LeetCode es un producto, lo que significa que no es solo un sitio que alberga desafíos aleatorios. En cambio, LeetCode es una forma de prepararse para futuras posibilidades.

La plataforma proporciona aprendizaje moderno, desafíos intrincados y un excelente tablero para hacerlo todo.

También hay artículos, foros de discusión y otros aspectos de la comunidad para fomentar una experiencia perfecta. Muchos usuarios de LeetCode se han «graduado» para trabajar en empresas como Uber, Amazon, Stripe y otras.

Fuerzas de código

Fuerzas de código es para todos los programadores incondicionales y dedicados. ¡Piense en ingenieros de software, pentesters, entusiastas de la IA y adictos al aprendizaje automático! Como plataforma para programadores avanzados, Codeforces es conocida por su notable clasificación y espíritu competitivo.

Y empezar es más fácil de lo que piensas.

ejercicio

Es genial ver las iniciativas detrás de muchas plataformas de desafíos de codificación.

Y ejercicio no es una excepción. Katrina Owen, la fundadora, dice que su objetivo es «ayudar a las personas a aprender suficiente codificación [using Exercism] para que puedan encontrar un trabajo en el desarrollo”.

En el momento de escribir esto, hay más de 2600 ejercicios en 48 idiomas, ¡todos gratuitos! ¿Ha tenido la intención de aprender kotlino quizás orientarse más en Vim? ¡Ahora es tu oportunidad de aprender nuevas habilidades a través de interesantes desafíos!

codificador

Por sorprendente que pueda ser para algunos de ustedes, ¡todavía hay codificación en el desarrollo front-end también!

Los desafíos aquí son en su mayoría agrupados por los usuarios. Por ejemplo, alguien podría publicar una ‘Tarjeta de diseño de materiales’ y desafiarte a mejorarla o crear una variación similar.

El resultado es su capacidad para poner en marcha algunas ideas creativas. Y es bueno ver cómo otros también abordan problemas similares en tiempo real. Siempre puede reutilizar el código enviado por otros en sus proyectos.

rana flexbox

Hablando de front-end, ¿cómo va tu comprensión de Flexbox? ¡Siempre es bueno refrescar la memoria un poco para mantenerse alerta y en el punto!

rana flexbox es un pequeño juego agradable que lo lleva a través de 28 pasos de diferentes usos y alineaciones de Flexbox. Tal vez sea menos un desafío que un recordatorio, pero ¿puedes completar todos los niveles sin buscar respuestas?

jardín de rejilla es un juego muy similar; la única diferencia es que está trabajando con la función Grid y no con Flex.

PyBites

Python es ampliamente aceptado como el lenguaje más sencillo de aprender. Y a menudo se recomienda que los nuevos programadores exploren primero. Pero no dejes que eso te desanime de creer en la capacidad de Python.

En estos días, gran parte del aprendizaje automático y la generación de conjuntos de datos se realiza exclusivamente con Pitón ¡Y eso no es poca cosa!

PyBites te pone al día con los últimos acontecimientos. Artículos, desafíos de codificación y otros datos críticos para ayudarlo a agudizar su ingenio. Cada desafío incluye un seguimiento a modo de revisión, donde puedes comparar tu código y explorar la forma correcta de resolver un problema.

Código de combate

Código de combate es otro juego de codificación que proporciona un entorno de codificación dinámico y desafiante. La diferencia con un producto como CodinGame es que CodeCombat se centra en los profesores. Como resultado, puede usar esta plataforma para enseñar programación y resolución de problemas a nivel escolar.

Existen herramientas, materiales y otros recursos diseñados específicamente para este propósito. Y es muy divertido, también. Los juegos de CodeCombat que construyes son interesantes pero también visualmente impresionantes. Y los juegos ya son tan populares entre los niños. ¡Darles a los niños el desafío de desarrollar su entorno virtual puede inspirarlos a construir algo increíble en el futuro!

Tinker

Como se mencionó brevemente en la introducción, tenemos algo para todos los padres. Tinker es una pequeña plataforma divertida que ayuda a enseñar programación a los niños. Se basa en una interfaz muy simple de arrastrar y soltar donde los niños pueden cambiar entre opciones y, con suerte, resolver los problemas presentados.

Y tampoco te confundas, Tynker se adapta a los estándares modernos más de lo que piensas. Si tiene hijos que se están acercando a la adolescencia, puede dejar que escriban soluciones usando Python o JavaScript en lugar de usar solo Blocks.

Palabras finales: ¡Desafíate a ti mismo!

En total, probablemente haya 10 000 desafíos de códigos únicos en todos los sitios y plataformas que enumeramos. Es imposible superarlos a todos así.

En cambio, mi recomendación es encontrar una plataforma que crea que se adapta mejor a sus necesidades y concentrarse solo en esa plataforma. Puedes entablar amistades, aprender cosas nuevas y, quién sabe, quizás aprendas lo suficiente para conseguir un nuevo trabajo en una empresa que paga!

También puede considerar DataCamp para aprender ciencia de datos, que incluye desafíos y proyectos de codificación.

A continuación, ¿qué tal encontrar cómo agregar comentarios en lenguajes de programación populares?