• 0 posts
  • 11 comments
Joined 3 years ago
Cake day: August 5th, 2023
  • Maybe they are trying to manifest its death by arranging its funeral over and over. Programming as an art form isn’t more dead than painting as an art form, as long as people want to do it. However, as the blog post hints at, what you produce for work wasn’t perhaps ever meant to be a work of art. You aren’t necessarily going to be able to write code in your favorite style for work anyway, unless you can influence it and decide the conventions. That has been true since forever in larger organisations.

    Props to the blog author for seeking out new experiences in their free time but what they are mourning is either still there (just write your art code) or they have just had to adjust to their new trade-off. Don’t be surprised when it doesn’t feel artistic if you don’t spend any effort on the process.

  • It may be possible to use the Any trait to “launder” the value by first casting it to &Any and then downcasting it to the generic type.

    let any_value = match tmp_value {
        serde_json::Value::Number(x) => x as &Any,
        // ...
    };
    
    let maybe_value = any_value.downcast_ref::< T >();
    

    I haven’t tested it, so I may have missed something.

    Edit: to be clear, this will not actually let you return multiple types, but let the caller decide which type to expect. I assumed this was your goal.