Hi. I'm an undergraduate who decided to change major from computer science to something else. I'm still interested in learning to program as a hobby. My question is can you learn a programming language effectively without background knowledge(discrete math). I had hard time keeping up in that class and ended up dropping the course.