I have a confession to make: through almost two decades in the computer networking industry, I’ve had a fear of writing code.
It wasn’t always this way. I was introduced to BASIC programming way back in 9th grade and I loved the concept of breaking down a task into unambiguous, logical steps to tell a computer what to do. Deconstructing a problem and reconstructing an appropriate solution for it was exciting and enjoyable.
In engineering college, BASIC gave way to FORTRAN, and then Pascal and in my third year we were introduced to C and Unix. Things started to unravel at this point. C is a powerful language, and gives the programmer access to low-level functions like manipulating registers and pointers. It also does not protect the programmer from herself . Above all, it needs practice.
This was in the early ‘90s in India, when accessing a computer meant going to the computer lab and competing with others to get time on the system. Research scholars and graduate students had priority, and undergrads had to sneak in at odd hours to get computer time. For female students, this was easier said than done. Our hostel gates closed at 10.30 pm. By the time I had my code compiled and hit the first segmentation fault to debug, it was time to pack up and go.
My first workplace in Bengaluru had to comply with local labour laws that required women to leave the premises by 7:30 pm. We didn’t have a computer at home, and lack of practice led to a sense of inadequacy, and eventually a feeling of “I’m no good at this”. When the opportunity to move into a management role presented itself, I leapt at it.
I’ve spent almost a decade and a half in management roles, and enjoyed them to the fullest. I’ve always believed that the job of a manager is to help an employee be the best that s/he can be, through a selection of suitable assignments, empathy and support, and I found fulfillment in helping others realize their potential.
But a kernel of regret remained. When it came to my own technical skills, I always felt that I had unfinished business left. Reading about advances in software development and the Open Source software movement made me feel wistful.
And so finally, about a year ago, I made the decision to take a career break that would give me time to invest in myself. I created a coding project for myself, set up a GitHub account and taught myself Django – the web application framework written in Python. I spent hours poring over tutorials on the web, and frequented StackOverflow – the Q&A forum for programmers. Above all, I gave myself permission to just enjoy the process and not worry about whether I was “good enough”. My self-imposed solitude was about learning and enjoying the process of coding.
I cannot describe how much joy this has brought to me. From the first “Hello World” program in Python, to my first Django web application, to learning how to build REST APIs, to hosting the application on a Linux virtual machine in the cloud, every step of the way has been immensely fulfilling. Most importantly, I’ve regained confidence – the confidence to figure out how to solve a problem, to believe that I will be able to find a solution, to research similar issues and questions on the web and select what is most suitable for me.
I share this because we talk so much about the importance of women in technology and what can be done to increase their numbers. Not only is the overall percentage of women in tech small, but the percentage of women who code is even smaller.
There may be a variety of reasons why women do not choose to code but lack of confidence should not be one of them
Of course, a healthy dose of caution still remains in me. After two decades of being at the receiving end of customer reported software bugs, I weigh the risks vs benefits of every line of code that I write. I check-in code often, so that I can roll back my changes if something bad happens. As the saying goes, “There are old pilots, and there are bold pilots, but there are no old, bold pilots.” I think the adage would apply to software programmers as well.
In 2006, Carol Dweck wrote about the Fixed Mindset (assuming that we have a fixed amount of intelligence) vs the Growth Mindset (believing that with effort we can increase our intelligence). It seems self-evident now that we understand the theory, but the fixed mindset is an easy trap to fall into and one that we must constantly guard against.
Mid-way through my experiment of rewiring my brain in my forties, I am happy to report that neuro-plasticity is not a myth! It is possible to regain lost skills and learn new ones in mid-life, and in the process rediscover the joy of learning.
So the next time I write about this topic, I hope to title it “The Joys of Coding”.