Roll with it until wheels fall off : )
When I joined Jomo Kenyatta University of Agriculture and technology in 2013, to pursue BSc Computer Science, I had no idea what technology was. In fact my choice of degree was influenced by other people and the fact that I got a good grade (A) from high school and I could choose any course in any university in Kenya.
I knew I was bright. I could do anything. Being in class and good grades was very familiar to me. I carried on with this confidence until I started my first programming class. In that class, we were taught C programming language. For someone who didn’t know what programming was, I left that class knowing I had made a mistake in my career choice.

We were all new students, I didn’t have a friend. As we walked down the corridors I joined a group of students and one of the boys, called Sam(who ended up being my best friend in Campus) said, “we don’t know sh*t, but am sure as hell, we will hack this”. Recently, I have been working with people new to programming and this are things I think every beginner should know:
#1. No one was born knowing how to code
I used to look at some students in our class and think,”how can someone possibly know so much?” Some students looked so intelligent, so sharp which made me think they were a different species of human beings. Born with compilers in their head and may be, they think in code. Right now, I know when someone does the same thing over a long period of time, and solves the same problem over and over again, when they encounter that problem they can easily solve. Simple question, do you forget where your mouth is when eating? Of course not, because you have been feeding yourself for a long time.
#2. Ignore the negative voices in your head
Impostor syndrome!!!!… It doesn't mean, I do not have these moments in my life…but when you are against yourself, no one is with you, not even your computer…..in fact your code will be fighting you. You will doubt that you are smart, and think you will never learn…Go ahead, think about it, and when you are done, put those thoughts in a shredder and focus on achieving your dream.
#3. Get the rules
In every game there are rules. This applies to programming. Focus on understanding the basics. Understand that a programming language must have a structure. Understand that the computer is a stupid and obedient servant: it won’t think for you, which means your logic should make sense. Learn about methods, objects, classes, interfaces, polymophism, encapsulation and inheritance. These can be learnt using one programming language and can be applied to another. Jumping from one programming language to another makes you a mediocre in everything. Learn the rules, they are basic and they make foundation of your growth.
Do not get tired of asking questions, to read a lot and just be curious. Do the things you think are stupid. Focus on achieving the goal. They say you need 10000 hours to be good at something, code everyday. No matter how tired you feel, no matter how discouraged you might be, ride with it until the wheels fall off!
