Code Weekly Challenge Kotlin 2022

Weekly challenges to practice logic and code on Kotlin

Repositorio de código para Kotlin en el que se publicara semanalmente los retos.

Nota: Propuesta hacerlo para swift

Requisitos mínimos

Kotlin Android Studio

Challenge list

  • #0 – 01/08/2022 – ANAGRAM
  • #1 -08/08/2022 – …

How can I participate?

You can make a fork of the project and work on GIT to sync the updates of this project

  • A 1-hour video call meeting is scheduled on Mondays for the publication and solution of the challenge on live. (time can be modified).

  • It is allowed to search the algorithm of the challenge, but not code as such.

  • If you don’t have a code editor like Android Studio, you can use an online playground.

  • If you use an editor like Android Studio or similar, you can run the code by creating a block fun main() { } and clicking on the symbol “play ►”.

    fun main() {
    
    }
    

How to work with Git and GitHub collaboratively?

You will have to carry out update, synchronization and pull request from you fork of the project to the principal (usually named as upstream/main). All this can be done from command line, but if you prefer you can use graphical clients like GitHub Desktop (very simple) or GitKraken (more advanced and powerful).

  • From your repository on the GitHub website, you can perform many actions.
  • If it’s easier for you, you can create a branch to solve each challenge to simplify the pull request. You can also ignore certain files.
  • Solve the challenge and commit and push it to your project.
  • From Github, once the fork is done you will see options like “Contribute” or “fetch upstream”:
    • Contribute allows you to open a pull request (you should select this as the base repository to compare your project against). This way you can see the modified files of your project with the solution to the challenges. Try yo make the pull request title follow this convention: “Challenge Solution #[challenge number]”.
    • Fetch upstream allows you to sync your project with the original in case it has been updated.
  • To sync your project with the original and keep it up to date you can also do a merge commit, squash merge or rebase (note that each behaves differently, keeping your own changes or not).

¿Cómo puedo participar?

Puedes hacer libremente un fork del proyecto y trabajar con GIT para ir sincronizando las actualizaciones del proyecto actual

  • Se agendará una videollamada de 1 hora de duración los días Lunes para la publicación y solución del reto en vivo. (El tiempo puede ser modificado).

  • Está permitido buscar el algoritmo del reto, pero no el código como tal.

  • Si no dispones de un editor de código como Android Studio, puedes usar un playground en linea.

  • Si utilizas un editor como Android Studio o semejante, puedes ejecutar el código creando un bloque fun main() { } y pulsando el símbolo “play ►”.

    fun main() {
    
    }
    

¿Cómo trabajar con Git y GitHub de forma colaborativa?

Deberás realizar flujos de actualización, sincronización y pull request desde tu fork del proyecto hacia el principal (habitualmente nombrado como upstream/main). Todo esto se puede hacer desde línea de comandos, pero si prefieres puedes usar clientes gráficos como GitHub Desktop (muy simple) o GitKraken (más avanzado y potente).

  • Desde tu repositorio en la propia web de GitHub podrás realizar muchas acciones.
  • Si te resulta más fácil, puedes crear una branch(rama) para resolver cada reto y así simplificar la pull request. También puedes ignorar ciertos ficheros.
  • Resuelve el ejercicio y realiza commit y push del mismo a tu proyecto.
  • Desde GitHub, una vez hecho el fork verás opciones como “Contribute” o “Fetch upstream”:
    • Contribute permite abrir una pull request(deberás seleccionar este como repositorio base contra el que comparar tu proyecto). Así se podrán ver los ficheros modificados de tu proyecto con la solución a los retos. Intenta que el título de la pull request siga esta convención: “Solución Reto #[número del reto]”.
    • Fetch upstream permite sincronizar tu proyecto con el original en caso de que se haya actualizado.
  • Para sincronizar tu proyecto con el original y mantenerlo actualizado también puedes hacer un merge commit, squash merge o rebase(ten en cuenta que cada uno se comporta de una manera, conservando o no tus propios cambios).

GitHub

View Github