There are a couple of ways to earn bitcoin, one of which would be to join or participate in icos though not all icos will give you bitcoin, some of which will give you their token but you are free to convert them to bitcoin anytime you want so long as you have it and they are available in exchanges. Another option is to but some bitcoins or trade your altcoin to bitcoin.
Those suggestions you have mentioned are truly on point and really are great ways to earn bitcoins. I too have done them and had really made me some good amount of dough. But the thing is, you forgot to mention the most important thing to earn bitcoins or other crypto currencies here in the crypto world. Which are the basics. I cannot stress enough how important it is for a crypto person to know about the basics. Because without this, a crypto person will have a hard to surviving in the crypto world or worse, fail and lose great capitals or have their efforts become useless.