news.volyx.in

Write more "useless" software (ntietz.com)

846 points by greenSunglass · 1042 days ago · 254 comments on HN

Article summary

The article discusses the importance of writing 'useless' software as a way to explore and experience the joy of computing. The author argues that working on projects without a practical purpose can help programmers learn and have fun, and that this approach can be beneficial for personal growth and creativity. The author shares their own experiences with writing 'useless' software, including a chess engine and a key-value store. By working on these projects, the author was able to learn new skills and have fun without the pressure of creating something useful.

Main themes

  • useless software
  • personal growth
  • creativity
  • optimization
  • min-maxing
  • game design
  • self-expression
  • fun and enjoyment
  • programming and learning
  • balance and perfectionism

What commenters say

  • Writing 'useless' software can be a great way to learn and have fun, as it allows programmers to explore and experiment without the pressure of creating something practical.
  • Reimplementing existing software or games can be a rewarding exercise that helps developers learn and understand how things work.
  • The pursuit of perfection and optimization can suck the fun out of programming and other activities, and it's important to find a balance between improvement and enjoyment.
  • Some people believe that the focus on optimization and min-maxing in games can be detrimental to the overall experience, while others argue that it can be a fun and engaging aspect of gameplay.
  • The design of a game or system can encourage or discourage certain types of behavior, such as min-maxing or creative play.
  • Personal projects and 'useless' software can be a great way to express oneself and have fun, but some people may feel guilty or unproductive when working on non-practical projects.
  • The concept of min-maxing can be applied to other areas of life, and it's possible to get caught up in optimizing and perfecting things to the point where it becomes unrewarding.
  • Different people have different preferences when it comes to gameplay and optimization, and what works for one person may not work for another.