Recently, I've been asked by the some members of community on where do I get my questions from and how do I frame the questions. Here are some points that I personally find useful in making good Logic problems.
Everyone starts at a bad point
I believe that this is the very first Logic problem that I've posted, as you can see, this is not a good problem but everyone starts off with writing bad problems. This problem is not good because it lacks proper mathematical basis and originality.
The first thing to do, is to find problems that you really really like yourself and try to rephrase the question, even the slightest bit will do. For example,
Most of the problems I've posted are slight variations of the original one I've found. Take this problem as an example, I took a standard 2 beaker problem and turn it into a 3 beaker problem instead and tried to make the solving technique harder.
Find the root of the problem
After solving any problem you come across, you should always try to obtain the essence of the problem. That is, understand why its set up in that particular fashion, why the author chose one particular approach as opposed to the other. After you have done that, create a harder variation of that problem but still is able to engage the readers. Here are two examples which takes plenty of cases checking but is still simplistic enough to engage the readers.
The main gist of the problem to be working on it to make sure your problem appears original and is not a ripoff from other questions, though there will times where you can't deviate much from the original question, and we're left with the something very similar. E.g: Rudiments of tallying?.
Finding the source of the problem
Most of the problems I've created was inspired from other platforms like AOPS, Reddit, puzzle books, Wolfram MathWorld, OEIS, heck in problems from Brilliant itself! But the main issue is not where I found it but I used the essence of the problem and develop out a brand new problem. There's no point in copying other problems you found elsewhere, unless the setup could not be deviated. To entice the readers, we can use other means like the title, picture, choice of words, etc.
Here are some of my favorite problems which I came across from other platforms and have been modified greatly
Framing the question
Take any problem you can find and identify the essence of the approach. Then, find ways to make his question more interesting. For example, can we generalize this? What happens if the constraints are altered? What is the main intention of the original problem and what follow-up questions could be asked?
Take this problem as an example. I've asked myself questions like:
Note that most of the time, the questions I've asked myself are not posted in Brilliant, this is because they do not engage the readers anymore and it becomes really tedious/dry.
Do not worry if all your problems are not well received
Everyone got their own niche appeal when choosing the problems to engage with. You should not make sure all the problems you've post to be well received by the community, but it's better to provide a diverse amount of different problem to improve your solving techniques. This also does not give you an excuse to degrade the quality of the problem. I too, have created a few problems that I personally like but it did not do well with the community. For example:
Like what Ivan says: "The best way is to try solving as many puzzles as you can". Eventually, you will know what questions to ask to make your problem more interesting.
If you have any question or feedback, please leave it in the comment section below.