James 1:17 (NKJV)
Did you ever have the experience at Christmas or on your birthday where you were hoping to get some great gift, but you didn't? Your hopes were high and you may have made plans about what to do with your amazing gift once you received it. And then, when you opened your gifts, the thing you really wanted was not there. All of your expectations came crashing down as the reality set in that you would not get the gift you really wanted. You may have received something, but it was not what you were looking for. This may have led to some disappointment, or even some negative feeling towards someone, but hopefully that did not last long.
The Bible tells us what God is like and what He does and does not do. In James 1:17, we are told that every good gift and every perfect gift comes from God. We are not told that some good and some bad things come from God or that some perfect and some imperfect gifts come from God. People sometimes have the idea that we might get some good things from God and then we might get disappointed and receive something we did not need or want, which leads to some people having negative feelings towards God. However, this is not how God operates and not what we see in the Bible.
In Matthew 7 Jesus said that if a son asked for bread, a good father would not give him a stone, and if the son asked for a fish, no good father would give him a snake instead. God is better than any earthly father, and the Bible says God even knows what we need before we ask, but we still have to ask. One reason we sometimes do not have what we want is because we don't ask, and sometimes things happen because we live in a fallen world that is corrupted by sin where the devil is working. But God is a good God who wants us to have good things and He is not withholding what is good and giving us something bad instead.