Probably teething, as well as learning cause and effect. You should be able to stop it by knowing when it is coming and avoiding it?
But i wouldn't worry long term. Just keep staying no seriously (but not yelling)- eventually he will start understanding better.