As a human there might not be a finite list of criteria for what makes a puzzle interesting. But if I give the model enough positive and negative examples, there's a chance (but not guarantee) it might pick up on some patterns.
As a human there might not be a finite list of criteria for what makes a puzzle interesting. But if I give the model enough positive and negative examples, there's a chance (but not guarantee) it might pick up on some patterns.
- minimize the # of constraints, since elegant puzzles have fewer moving parts
- maximize the search tree complexity, so mentally finding the solution feels hard
- minimize the # of constraints, since elegant puzzles have fewer moving parts
- maximize the search tree complexity, so mentally finding the solution feels hard
Teaching a computer to solve puzzles is straightforward once you have the algorithm down. But how do you make it generate puzzles that feel "human"?
Teaching a computer to solve puzzles is straightforward once you have the algorithm down. But how do you make it generate puzzles that feel "human"?
Really cool results! In most game-like domains, the focus of AI is on maximizing win rate or score etc., but measuring the "novelty" of objects like puzzles turns out to be quite hard because it requires human taste, in a sense.
Really cool results! In most game-like domains, the focus of AI is on maximizing win rate or score etc., but measuring the "novelty" of objects like puzzles turns out to be quite hard because it requires human taste, in a sense.
Being independent in open source for 3.5+ years has been wonderful. I've gotten done most of the high-level goals I wanted to, and miss having people & structure around me.
If you know of a role for a staff-level TypeScript+web developer, let me know! š
Being independent in open source for 3.5+ years has been wonderful. I've gotten done most of the high-level goals I wanted to, and miss having people & structure around me.
If you know of a role for a staff-level TypeScript+web developer, let me know! š
en.wikipedia.org/wiki/Dining_...
en.wikipedia.org/wiki/Lamport...
en.wikipedia.org/wiki/Dining_...
en.wikipedia.org/wiki/Lamport...
1. They're cheap - it's low risk if they're damaged
2. They don't have sensors detecting if they're in your ears or not. Most apps pause music if you take an AirPod out of your ear. Great for solo use, not for sharing
1. They're cheap - it's low risk if they're damaged
2. They don't have sensors detecting if they're in your ears or not. Most apps pause music if you take an AirPod out of your ear. Great for solo use, not for sharing
And yet, something about the wired, rubber tip-less design makes them feel more shareable.
And yet, something about the wired, rubber tip-less design makes them feel more shareable.
But there are times when it feels like they do, because software engineers often want to believe there's a best way to build software. And in practice, software robustness is a sliding scale.
But there are times when it feels like they do, because software engineers often want to believe there's a best way to build software. And in practice, software robustness is a sliding scale.
And yet... JSON is one of the most widely used data interchange formats, and it doesn't specify how to handle duplicate field names.
š¤·āāļø
And yet... JSON is one of the most widely used data interchange formats, and it doesn't specify how to handle duplicate field names.
š¤·āāļø
- When your language compiles to C, you get a really nice portability story.
- Macros can used to bridge the gap between functional and imperative syntaxes.
- One way to make your language more REPL-like is by letting macros run code to interact with the LSP server (see img)
- When your language compiles to C, you get a really nice portability story.
- Macros can used to bridge the gap between functional and imperative syntaxes.
- One way to make your language more REPL-like is by letting macros run code to interact with the LSP server (see img)
www.youtube.com/watch?v=c5LO...
www.youtube.com/watch?v=c5LO...
In practice, this rings true -- if I find some code that's purely manipulating data structures, that's where I try to extract it into a pure function.
In practice, this rings true -- if I find some code that's purely manipulating data structures, that's where I try to extract it into a pure function.