Reasons I started coding
It is all started at the end of 2016. That time I had just completed my upper-intermediate Mandarin course, and I thought: what’s next? Then I thought: if I could learn Mandarin, why can’t I learn some programming language? I thought: be it a human language or a programming language - it is basically the same thing, just programming languages are more formalised and thus easier.
What is more, I felt like without programming experience I was lacking something as an IT project manager. It was like seeing a half of the picture, and developers seeing another half. But there got to be someone who sees the whole!
But the very main reason why I started programming were my colleagues-developers from Wego.com who inspired me. I always wanted to code, but was unconfident and had that weird persuasion that coding is not for women. Even though I have a degree in math and IT, since my graduation 17 years ago I never worked as a programmer.
No sooner said than done, I started coding.
How I chose Java and Ruby
I did not have any idea what to code and found boring writing some dummy code just for practice. So I started taking some minor tasks from the company’s Jira backlog and do them after work. It was mostly one-two lines code updates or bug-fixes. My company’s backend was written in Java and Ruby on Rails, so Java became my first language and Ruby a second one.
At the beginning I did not have much understanding of what I was doing, often I was just copy-pasting other’s code. There were moments of desperation and anger, when I could not get some programming concept. For example, for a very long time I could not understand the importancy of unit testing and argued with my colleagues that unit tests are useless. Thanks to my colleagues, they were really patient and supportive.
Books and courses?
From quite a few programmers I heard that they never finished reading any programming books. I tried to read some programming books and to be honest abandoned quite a few of them. But these 2 books fascinated me, so I fully finished them:
- Practical Object-Oriented Design in Ruby by Sandi Metz
- Learn to Program by Chris Pine
I also took a several courses in Code School - mostly courses related to Ruby, MySQL and Git.
First hardship
The hardest project I worked on in 2017 was upgrading a RoR app from Rails 4.2.4 to Rails 5. It took me a month of after-work hours (not every day), the first code was commited on 4 July, and a pull request was finally approvied on 4 August:
I did not know it was hard, that is why started working on it enthusiastically. When I realised it was too much of a challenge for me, it was too late, so I had to complete it :) The hardest part was not making the changes, but to make sure my changes did not break anything (that time I understood the importance of good unit tests hahaha).
1384 contributions in a year
I ended 2017 with 1384 contributions in GitHub (there were some in Bitbucket too, but I don’t count them):
Not bad for a first year of coding, huh?
What’s next?
I am full of doubts. Shall I look for a full-time programmer job? Is there even a chance to get that job for a 38 y.o. person without official programming experience? If I get that job, will I be happy to “start from the bottom”? I really do not know. For now just going with the flow.