¿Cómo prepararse para ICFP o Conferencia Internacional sobre Programación Funcional?

El Concurso de Programación ICFP es un concurso internacional de programación que se lleva a cabo en junio o julio de cada año desde 1998. Los resultados se presentaron en la Conferencia Internacional sobre Programación Funcional. Todo programador funcional sueña con ser parte de la lista de clasificación final de ICFP. Pero el problema es ¿cómo prepararse para ICFP? Bueno, no te preocupes más. Hemos curado este artículo solo para eso.

How to prepare for ICFP Competitions?

¿Cómo prepararse para las competiciones ICFP?

En este artículo, le brindaremos una guía completa para ayudarlo a comprender todos los aspectos de ICFP, como su elegibilidad, el proceso de registro, cómo prepararse para ICFP y mucho más. Entonces empecemos.

¿Qué es la competencia de programación ICFP?

  • El Concurso de programación ICFP es un concurso internacional de programación que se lleva a cabo en junio o julio de cada año desde 1998 . Los resultados fueron presentados en la Conferencia Internacional sobre Programación Funcional.
  • Los equipos pueden ser de cualquier tamaño y pueden usar cualquier lenguaje de programación. No hay tarifa de admisión. Cada año, ICFP patrocina una competencia de programación divertida y desafiante de tres días unos meses antes de la conferencia. Los ganadores del concurso se anuncian en ICFP. En muchos casos, también existe una división de rayos 24 horas. 
  • Los ganadores se reservan el «derecho a fanfarronear» para afirmar que su lenguaje es «la mejor herramienta de programación para hackers discriminatorios». Por ello, uno de los objetivos del concurso es mostrar a los participantes las habilidades de sus lenguajes de programación y herramientas favoritas. Los ganadores de premios anteriores utilizaron Haskell, OCaml, C++, Silk, Java, F # y Rust.
  • Los concursos suelen tener alrededor de 300 entradas.

Criterios de elegibilidad para ICFP:

  • La elegibilidad para los concursos de programación ICFP es extremadamente flexible. 
  • Cualquiera que pueda codificar puede participar en el concurso, incluidos estudiantes universitarios, estudiantes de posgrado, e incluso miembros de la facultad pueden participar en los concursos de programación ICFP.

Reglas de los concursos de programación ICFP:

  • Esta es una competencia abierta. Cualquiera puede participar en el Concurso de programación ICFP 2021, excepto el organizador del Concurso de programación ICFP 2021.
  • No se requiere inscripción previa ni cuota de inscripción.
  • Los participantes son libres de organizarse en equipos de cualquier tamaño. Los atletas solo pueden ser miembros de un equipo. Los equipos no se pueden dividir, integrar o colaborar una vez que ha comenzado la competencia.
  • Los equipos son libres de usar cualquier lenguaje de programación en cualquier plataforma.
  • Los equipos deben registrarse durante la competencia para recibir las credenciales de inicio de sesión. Los equipos que usen múltiples credenciales durante la competencia serán descalificados.
  • Los equipos que deseen considerar los premios deben enviar el código fuente al final del concurso. Los detalles exactos de la participación en el concurso se anunciarán al comienzo del concurso. Los equipos pueden enviar varias veces durante la competencia. Las primeras entradas pueden ser evaluadas para concursos de puntuación en vivo, pero los premios solo se otorgarán por las últimas entradas en la categoría Lightning y todo el concurso.
  • El Organizador se reserva el derecho de monitorear, registrar e investigar las entradas de los participantes y equipos, otras actividades relacionadas con la competencia, o su falta. Los registros se utilizarán únicamente con fines de evaluación y se destruirán al final del evento relacionado con la competencia.
  • Se les pide a los participantes que no intenten atacar el servidor de la competencia, esto arruinará la diversión para los otros equipos y organizadores que han trabajado duro para brindarles esta experiencia. 
  • Las violaciones de estas reglas intentan comprometer la integridad de la infraestructura de la competencia, intentan confundir a otros competidores, colusión entre equipos o intentan violar el espíritu de la competencia, lo que conducirá a la descalificación del equipo involucrado.
  • Los solicitantes conservan la propiedad de todos los derechos de propiedad intelectual de todas las soluciones, el código fuente, las herramientas personalizadas y los materiales relacionados («Solicitantes») enviados antes de la presentación. Como condición para participar, el solicitante otorga al organizador una licencia no exclusiva, permanente, irrevocable y libre de regalías en todo el mundo para usar, copiar, publicar, distribuir, ejecutar públicamente y exhibir públicamente el trabajo presentado. Y permita que el organizador pruebe y evalúe la entrada. Presentación para propósitos de concurso.
  • Todas las decisiones del organizador son definitivas.

¿Cómo participar en el concurso de programación ICFP?

  • Para participar en el concurso de programación ICFP, debe visitar su sitio web oficial y registrarse usted y su equipo.
  • Los participantes deben formar sus propios equipos de cualquier tamaño que trabajarán juntos con un lenguaje de programación. No hay cuota de inscripción para participar en el concurso. Solo disposición a estar disponible durante todo el concurso para completar varias tareas e hitos.
  • El tiempo total del torneo es de 72 horas, pero el equipo que logró llegar a lo más alto de la tabla de clasificación después de 24 horas tiene un premio especial (premio de la categoría Lightning). 
  • Puede registrarse en su sitio web oficial y estar atento a la información más reciente.
  • También puede solicitar convertirse en un estudiante voluntario durante la reunión. Una aplicación para esto está disponible en su sitio web. 
  • Si está interesado en la investigación, también están aceptando tratados de investigación de estudiantes presentados en la conferencia.

Consejos de preparación para triunfar en el concurso de programación ICFP:

  • Puede inscribirse en un programa de programación para pasantías y practicar preguntas sobre habilidades de codificación que lo ayudarán a comprender mejor el lenguaje de programación.
  • La competencia también es una prueba de quién tiene la solución primero y quién tiene la mejor solución.
  • Trate de prestar atención tanto a la velocidad como a la precisión.
  • Descubra las mejores prácticas de programación funcional y asegúrese de aplicarlas al preparar su solución.
  • Consulte la documentación de su lenguaje de programación. Puede estar seguro de recopilar mucha información sobre lo que puede hacer con un lenguaje de programación.
  • Trate de ser consistente en varias plataformas de codificación como CodeChef, codeforces y geeksforgeeks, etc.

Problemas del año anterior del concurso ICFP:

AÑO      

 PROBLEMA

2018    Optimice la impresión 3D realizada por un enjambre de nanobots
2016 desplegar origamis (formas planas hechas de papel digital), es decir, reconstruir los modelos planos más simples posibles por sus patrones de pliegues.
2014 Implementar IA para un clon de Pac-Man.
2013 Dada una función desconocida F(x) que asigna enteros de 64 bits a enteros de 64 bits, muestree las salidas de F para adivinar la función.
2012 Cava a través de la tierra para recolectar Lambdas, ¡pero ten cuidado con las rocas que caen y otros peligros!
2011 Juega un juego de cartas, donde las cartas son funciones de cálculo lambda y combinadores.
2010 Diseñe motores y combustibles para automóviles y publíquelos en un mercado en tiempo real para ganar puntos.
2009 Pilota un orbitador para atracar con varias piezas de desechos espaciales y cambia sus órbitas para llegar a otros cuerpos en órbita.
2008 Conduce un rover de Marte desde su ubicación actual hasta la base de operaciones, evitando cráteres y marcianos.
2007 Reprocesar el ADN extraterrestre para convertir una imagen de origen en una imagen de destino.
2006 Implemente una máquina virtual de código de bytes e inicie un sistema operativo antiguo para resolver más desafíos algorítmicos.
2005 Escriba AI para policías (cazar a un ladrón) y ladrones (robar bancos). Policías de varios equipos se unen para cazar a un solo ladrón.
2004 Diseña una colonia de hormigas que recolecte comida con éxito y defienda su nido de otros intrusos.
2001 Optimizar una variante de XHTML.
2000 Implementar un trazador de rayos.
1999 Dada una máquina de estado que representa un personaje en una ficción interactiva como una expresión s, escriba un optimizador para comprimir sin pérdidas la máquina de estado para varias medidas de costo.

Preguntas frecuentes:

1. ¿Cómo pueden los equipos mantenerse informados de las actualizaciones durante el concurso?

El sitio web del concurso es la fuente autorizada de información del concurso. Se agregarán actualizaciones notables como publicaciones en la página de inicio principal y @icfpcontest2019 las tuiteará .

2. ¿Cómo pueden los equipos ponerse en contacto con los organizadores del concurso durante el concurso?

Los equipos pueden enviar consultas a icfpcontest2019@gmail.com o hacer preguntas enviando tweets a @icfpcontest2019 (aunque este último podría responderse con algunos retrasos).

3. ¿Qué deberán presentar los equipos durante el concurso?

Los detalles exactos de las presentaciones del concurso se anunciarán al comienzo del concurso.

4. ¿Se requerirá que los equipos envíen el código fuente durante o después del concurso?

Sí. Todos los equipos que deseen ser considerados para los premios deben enviar el código fuente al final del concurso.

5. ¿El sistema de puntuación elige el mejor resultado para cada tarea de todas las entregas o la última entrega?

Solo se considera la última presentación de cada equipo al calcular cuál es la mejor puntuación para una tarea determinada. Asegúrese de enviar sus mejores soluciones cada vez.

Conclusión:

  • ICFP es una excelente manera de probar y mejorar sus habilidades de codificación y programación funcional mientras compite con las mejores mentes de todo el mundo. Si cree que tiene lo que se necesita para llevar a casa el codiciado concurso ICFP, ¡comience sus preparativos de inmediato!
  • El éxito en el concurso de programación ICFP definitivamente agregará valor a su currículum mientras realiza pasantías dentro y fuera del campus. Además de acreditar su currículum, siempre es bueno participar en un concurso para probar sus habilidades de codificación.
  • Te hace un mejor desarrollador y sigue buscando problemas que existen en el mundo. Tu único trabajo como ingeniero es usar la tecnología para ayudar a la humanidad a llevar una vida mejor.

 Artículos relacionados:

Publicación traducida automáticamente

Artículo escrito por kashishkumar2 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *