Paralelos entre Factorio y el diseño de software



He trabajado como diseñador de software durante mucho tiempo y puedo decir con confianza que esto es interesante. Es un gran trabajo y no lo cambiaría por nada más. Es tan emocionante que algunas personas quieran transmitir los aspectos más interesantes de nuestro trabajo y expresarlos en juegos.



Jugué dos de estos juegos. El primero es Shenzhen.io . Es similar a lo que haría un ingeniero integrado. Un ingeniero resuelve acertijos escribiendo código ensamblador para dispositivos de bajo consumo. Lo bueno de este juego es que los desarrolladores han eliminado los aspectos molestos de la codificación y la puesta en marcha.



  • Los requisitos son claros y sorprendentemente adecuados para la tarea.
  • , . , .
  • , ( ) . , .


¿Debería un diseñador de software jugar a Shenzhen.io? La jugabilidad de este juego no es para todos. Para algunos, "parece demasiado trabajo". Después de todo, cuando juegas, quieres relajarte, no trabajar en tareas que ya haces ocho horas al día. Independientemente, creo que vale la pena jugar solo para ver qué tan emocionante se vuelve la tarea cuando los requisitos son claros y las herramientas de desarrollo son rápidas. Todo el mundo sabe que invertir en desarrollo y herramientas vale la pena, pero la diversión del juego refuerza ese sentimiento.



El segundo juego es Factorioque se lanzó el viernes pasado, aunque se puede jugar en Early Access durante casi cuatro años. Quienes lo han jugado probablemente ahora estén perplejos; después de todo, este juego trata de construir una fábrica, no de codificar. El jugador trabaja con transportadores, metal, productos derivados del petróleo y crea los recursos necesarios para la fabricación de una nave espacial.





Y, sin embargo, este juego me recuerda más al diseño de software que cualquier otro juego. Déjame explicarte por qué.



  • . « » ? — . , . ( !) , , . , / .
  • « » (Don’t Repeat Yourself, DRY). — . , , , ? — « ». , , . — , - , , . Factorio — ( ) 4-5 . .
  • . , , , 3-5 . , . , . — , - . , .
  • . . , , , , . , , . !
  • . , - . — , . — , , . , .
  • . . , . , . , , (), , . , , , - . — . API , .
  • . , . - . , - . , . , 100 . — , , , . — , , . , , . — .
  • . , . - , . , . , , . , , . AWS CloudFormation — , . , , — , . , , , .
  • . , — . , . .


Pero, ante todo, es un juego sobre cómo lidiar con la complejidad. Cómo diseñar una especificación e implementar sistemas que se ajusten a esa especificación. Sobre el apoyo y expansión paulatina de este sistema.



Me parece que jugar Factorio no te convertirá en un diseñador de software más hábil. Pero si diseña software, el juego puede parecerle divertido. Por el contrario, si eres bueno en el juego, definitivamente deberías probar suerte en el diseño de software.



Puedes comprar Factorio en el sitio web oficial o en Steam . Si quieres probar el juego antes de comprarlo, entonces tiene una demostración gratuita . (Solo un consejo: no esperes una venta. Este juego nunca ha tenido una venta, y probablemente no la tendrá).






Gracias a Mineš Patel por corregir el borrador y las sugerencias para mejorar el artículo.



Los comentarios se pueden leer en Hacker News y en reddit .



All Articles