¿Qué tan relevante es CodeWars en el desarrollo web?

Es posible que no tenga mucho que ver con el desarrollo web básico, como el uso básico de HTML y CSS. Pero mientras JavaScript se involucre, las experiencias en Codewars serían útiles.

Sin mencionar los katas blancos y amarillos que se ocupan de la sintaxis básica de JavaScript, hay bastantes katas que requieren un uso competente y flexible de componentes internos de JavaScript.

Por ejemplo, El constructor de cosas le pide que implemente una sintaxis de estilo Ruby dentro de JavaScript, que requiere el uso de proxies. Metaprogramación: las funciones genéricas de estilo Lisp quieren que realice un despacho múltiple en JavaScript, que ni siquiera tiene un despacho único incorporado (sobrecarga de funciones). Las estadísticas rápidas en una matriz requieren que calcules cálculos rápidos e incrementales de la desviación estándar de las matrices grandes, sin obstaculizar otras operaciones básicas (como empujar o no desplazar).

También hay un montón de katas de estilo codegolf, que no solo requieren dominio sino también creatividad con respecto a JavaScript. Dos categorías típicas son “tarea de varias líneas” y “tarea de una línea”.

Por ejemplo, en la “tarea multilínea” Tarea multilínea ++: Hola mundo, escribirás una función “¡Hola mundo!” En 40 líneas, cada una con no más de 2 caracteres. Y hay una versión aún más difícil Multi Line Task∞: Hello World que requiere que cada línea no tenga más de 1 carácter.

En la “tarea de una línea” Tarea de una línea: hace 10, escribirá una función de no más de 35 caracteres, que recibe a, by prueba si alguno de a, b, a + b es 10.

Incluso hay más katas piratas “malvados”, por ejemplo, ¡Difunde las bombas! y no confíe en el HARDCORE de la suerte, donde debe usar hacks internos sucios para lograr los objetivos. Creo que este tipo de prácticas benefician mucho su dominio práctico del lenguaje JavaScript, ya que imprimiría en su mente las características del lenguaje que a menudo no tiene la oportunidad de encontrar en otros lugares.

Dicho esto, no ** chuparás ** en el desarrollo web si no eres bueno en estos katas más duros, porque puedes evitar las partes internas de JavaScript al usar frameworks y escribir código claramente. A menos que desee escribir bibliotecas, no se le exige estar expuesto a algunas de las funciones formadas en estos katas.

Con respecto a los katas blancos y amarillos básicos, es una buena idea ser hábil, ya que podrían surgir problemas similares al escribir lógica comercial básica. Sin embargo, no tiene que obligarse a escribir soluciones inteligentes de una línea.

¿Por qué no descubrirlo por ti mismo?

Echa un vistazo a The Odin Project para obtener un plan de estudios gratuito que te lleva de 0 a un desarrollador de Ruby / Javascript completo.

Esto se logra mediante la organización de muchos de los sitios web y herramientas “Learn X” en la web en un orden lógico, completo con la lectura requerida y pequeñas prácticas generosamente repartidas por todas partes. Le guía a través de cada parte del desarrollo web, desde la función y el diseño front-end hasta la programación de back-end con bases de datos y Ruby.

A su segunda pregunta: No.

No me preocuparía demasiado: se parece principalmente a las matemáticas, no a problemas relacionados con el sitio web (aunque sí, de vez en cuando, ¡un problema de desarrollo web contendrá uno o dos problemas de matemáticas!)

Si desea aprender el desarrollo web específicamente (en lugar de la informática en general), le recomiendo pasar tiempo aprendiendo un marco o produciendo HTML / CSS.

No Codewars se trata principalmente de pensamiento algorítmico. Y sus tutoriales no son los mejores. Le sugiero que busque un poco de Codeacademy, pero es solo para lo más básico. Luego, si está seguro de que quiere aprenderlo, hágase una meta y hágalo. He probado algunos de estos juegos pero ninguno me ha gustado.