Jemutai Sitienei
mitafricans
Published in
3 min readOct 20, 2018

--

On Learning how to code

It takes time to learn. The process is long and arduous. It is a series of many failures, set ups, installations, un-installations and re-installations. It is lots of code that never goes into production.

When I was learning python, here’s how I used to write code

5 = people I always interchanged the variable and it’s assignment

for i in range 2 *without parens around 2*

All the things I learnt didn’t happen in a day — usually after taking a class I’d realize how simpler things had become the following semester. It wasn’t the material that reduced difficulty, it was you who learnt how to wrap your head around it.

Be patient with yourself. Find the sweet spot between challenging yourself and going easy on the material.

Take away point: Get comfortable with being uncomfortable. Look at the material once, then again, then again, until it makes sense.

On honing your craft

I continually fail terribly at this, but one of my goals was to code 2 hours every day — code isn’t learnt by watching people code, watching youtube tutorials. You have to embrace the pain, get your hands dirty. Write, compile, run, fix errors, compile again, fix runtime errors, write tests… It’s thinking learning, giving yourself a break, then getting back at it.

Embrace the chaos, the endless “what is x” search queries on google(or your popular search engine), stack overflow. This is very exotic notion dubbed learning. It’s painful and has to be done and redone time and again. Sometimes you’ll see results in one day, other times you’ll not even realize your results. You’ll just be cruising roadblocks more efficiently. Things that were once stressful transmute into, “Oh I’ve seen that before, it’s probably a *result of your msql version which doesn’t integrate with what you’re working on* or “ oh I forgot sbt doesn’t work with java IO”

Software Engineering and Programming

There’s a difference between a software engineer and a programmer/ coder code monkey*.

Engineers solve problems.

They think about scope, impact, design, infrastructure, optimizations, business… the list is endless. The word itself is descriptive, engineers engineer.

Programmers on the other hand code all this up — they’re cogs in big machines made by engineers. They do what they’re told. Engineers design methods and specifications, programmers make that sh** work.

Don’t let yourself be a code-monkey. Grow

Depending on your passion, seek all experiences: hard-core engineering, product management, research and development, computer theory. Software engineers who have changed the world understood not just technology, they understood the business, the people and whatever came with it.

Software engineering is life-long learning.

--

--

Jemutai Sitienei
mitafricans

Afro-Futurist | Educator| Feminist | Tech-Enthusiast