This is the story of how I learned and kept coding, although I came across many challenges and annoying situations.
At first, I was very hyped and excited about getting to go to a high school that offered programming as a compulsory subject. My aunt and her husband had urged me to learn programming because they had seen how much I liked solving puzzles and math, and they said I'd have interesting career opportunities if I learned programming.
When the actual classes started...
I didn't understand most exercises in programming lessons.
I felt like there's something wrong with me because people told me that "programming is like math", and I'm really good at math, so why I am so lousy at programming?
When I asked for help, the boys [there were only boys as teachings assistants] either tried to flirt with me and not give help OR did most of the coding for me and expected something in return. SIGH
I took way too ambitious a topic as the first course's project and failed in delivering it according to (my way too demanding) specs.
Nevertheless, I coded.
I would have wanted to take a CS degree, but as there weren't many girls studying there, I was afraid of a similar kind of romantic attention that I got in high school (that I didn't want then and I didn't want in university either). Fun fact: I was already married, so I thought this could - possibly - lessen the amount of that attention, but I didn't have the energy to take this risk.
I went to study informatics instead (which had one-third of the CS department courses), and I would have had the permission to take as many CS classes as I wanted to. (In this program, there were 50/50 girls/boys, and no, I didn't get any unwanted attention.)
I failed to submit exercises for the first programming course because I thought they weren't good enough answers. I failed this class on my first try (because I didn't submit enough exercises) but got the best grade on my second try.
I also thought I was miles behind everyone else (because I was comparing myself to the people from my high school, not my fellow university students, who were also beginners).
After taking the compulsory Java, I thought I could try some other language. Maybe it wouldn't be as bad, right? I tried python, and that was actually nice. However, enrolling in the C basics class was an absolute disaster. I felt like my programming skills were cut in two because I wasn't used to memory handling, and of course, the memory kept leaking.
Nevertheless, I kept coding.
Most of the summer jobs I got didn't involve that much programming (customer service, data analysis, project management), but were in the IT industry, and I
worked with developers. To be honest, I wasn't confident enough to apply for developer trainee/intern positions because - again - I was comparing myself to the best programmers of my high school class, and since they were miles ahead of me, I couldn't be good enough.
However, there was this one company and time when I decided to apply for a developer trainee position. I did not get chosen as the (front end) dev intern, but as a project management intern (I had applied to both positions).
However, I did get to work with the FE developer intern, and we are still friends (she's a woman of colour, so I am really, really happy for her that she got the
job instead of me!) <3
Nevertheless, I kept coding.
My first job after graduation was as a UX/UI designer at a small start-up. However, what the company needed design-wise was not something that I could do (they wanted more a graphic designer, I was more like a UX engineer), and we discussed with my supervisor, would there be another role for me in the company.
During the discussion, I made the most difficult move of my programming life so far: I said out loud that I would like to be a developer and code full time (without being confident or certain that I could do it or that I was the best person, I said that this is what I'd like to do). And my supervisor agreed, and we started transitioning my responsibilities away from design towards front-end development. And I'm so proud of myself for saying that. (And of course, of coding, nevertheless.)
After the responsibilities shift, it wasn't all smooth sailing.
The same supervisor (and the CTO of the company) shouted at me for not figuring out a bug. We had this problem of an orange "we are loading stuff" screen flashing quickly when the user opened our web app, and I had tried to solve this bug on my own. I had tried "iffing" based on one variable, but since this hadn't helped, I, of course, didn't submit this change to the version control but wrote it as a comment to the ticket system. When he (supervisor/CTO) got the ticket assigned to him, he apparently didn't read what I had written in the ticket but started shouting at me for "being so stupid that you cannot even check this one variable." I stuttered to him about "read the comment on the ticket" and he continued working. In the end, the root cause was somewhere in the back end.
He didn't even apologize about shouting or calling me stupid.
I've come across many many other situations that have made me think quitting this profession.
Nevertheless, I have kept and will keep on coding.