My name is Ryan Kay, and I am a self-taught software developer, architect, and engineer. If you are curious about my work experience and resume, please visit my linkedin page. This biography here is meant for people who are curious to learn about me as a person. Connect Via Linkedin
When did I start programming? I first tried programming in highschool, when I was about 15 years old. I had been using computers since I was about seven years old, was an avid gamer, and wanted to learn how they actually worked.
It might surprise you to hear this, but I was actually the worst in my class. I made very slow progress in my first programming language (Visual Basic), struggling to understand basic concepts and writing just about everything using masses of “if”, “else if” blocks. My brain is not great at memorizing hyper specific details like the commands and syntax of languages, and so the whole thing felt very unnatural, with one exception. I wanted to write a black jack game, and realized that I would have to figure out a way to shuffle an Array with 52 elements. I tried for a week to write this shuffle algorithm, and finally asked the teacher for help. The solution which the teacher gave me did not make any sense to me, and when I tried to implement it, it did not work either (I made an error though, in fairness). Almost two weeks later in class, I was hunched over deep in thought, and for the first time the visual part of my brain engaged to solve this shuffle algorithm problem. Within 10 minutes a solution popped into my mind, and I was able to solve the problem. Even so, when I transitioned into studying GUI C/C++ the next year, I became completely overwhelmed and concluded that I just was not smart enough to be a programmer. Leaving high school, I had no money, no scholarships, and no intention of learning how to code.
What did I do between becoming a programmer and highschool? After I graduated highschool in 2011, I immediately moved out of my hometown, and took the first job that I was offered. At the age of 17, this awkward and introverted specimen began working as a fine clothing salesman. While that job was one of the most important experiences in my life in developing interpersonal skills, I simply was not happy with the idea of doing that for the rest of my life. At the suit store, I eventually learned that a coworker's partner was a programmer working for the local government, and I knew that he did not have a degree, nor did he do well highschool (though he was a smart individual). While I still had some apprehension about programming for the rest of my life (I certainly cannot say that I enjoyed programming in highschool), I was lured by a starting wage which would have almost tripled my current wage.
To make a long story very short, I studied hard for eight months and even attended community college for a semester. I was denied entry into the computer science program for nonsensical reasons, and was only able to take a single programming course: Introduction To Programming With Java. During that semester, I made the discovery that learning to program by a teacher explaining it to me was not a good way for me to learn at all. By contrast, working with the code assignments and labs on my own time worked incredibly well, and I passed the course with an A+. At the end of that semester, I had burned through $4000 (my entire savings), and had the decision to either go back to work or spend the summer studying in preparation for my interview. I decided to study for the interview, and lived on my credit card. I had a wonderful summer, learning about Java EE and various sub-topics, and was reassured that I would almost certainly land the job.
But life will unapologetically kick you where the sun does not shine, often when everything seems to be going perfectly. I did the interview in August and waited. Six weeks later, I received a PFO letter, and fell into an extraordinary depression for the next eight or so months. I was absolutely crushed, and while I knew the individual who set me up with the interview had no bad intentions, I swore that I would never again place my future in someone else’s hands. In 2014, I decided that I wanted to work for myself, and felt confident that I could run my own business. I had become an assistant manager in a small business (in duties but not title or pay), and had also learned that teaching myself to code was not impossible. I decided that making and selling Android applications was how I would make a living, and I absorbed advice from Tim Ferriss, Brian Tracy, Elliot Hulse, and various other gurus.
Going through Hell. It was incredibly difficult to study code, build my business, and work a full time job desperately to pay down my debt (I was still at the suit shop at the time). In fact, it was more than I could realistically handle at that age, and I was rarely able to put more than two hours a day into my endeavors. I decided it was time to hang up my three-piece suit and find a job which did not leave me feeling absolutely drained. At the time I still had plenty of social anxiety, and talking to strangers and rude customers, no matter how skillful I got at doing that, always left me mentally exhausted. By the start of the new year, I mustered up the courage to put in notice at the suit store. I spent that spring working almost exclusively on my business and personal development, and decided that I would pick up a job that summer which did not require much mental effort, or a programming job if I was so lucky.
A month before I was scheduled to start looking for a new job, life kicked me in the nuts again. It was the year 2016, and I was physically the strongest I had ever been in my life. I was regularly ripping 315+ lbs off of the ground for my deadlifts, and was squatting 250+ lbs too. But sitting in front of a computer for 10 hours and then lifting heavy weights without a warm up is very stupid, and that month I tore a muscle in my back after pushing myself way too hard. So there I was without a job, rent to pay at the end of the month, with a moderate but very intrusive back injury. My first thought was to apply for social assistance, and because I have a propensity to tell the truth and not exaggerate, I was denied that assistance. I had a week left to make up a few hundred dollars for rent, and so I dragged my ass out to a local day labouring company, and spent the week working temporary construction jobs alongside drug addicts and other losers like me; all the while with a messed up back. Not long after, I got a job working in a medium sized kitchen as a dishwasher. They did not give me many hours, and I had to continue working construction at the same time. My back was slowly getting better but never quite healed, and I began to once again work on my business. I had decided to make some tutorials on Android’s new RecyclerView library, as I felt like the tutorials around that time (2016) were terrible. Much to my surprise, the feedback on those tutorials was overwhelmingly positive, and I saw an opportunity to help other people and to build a following.
Life decided that things were going too well for me again, and at the end of that summer, at work, simply by reaching for an overhead spray nozzle in the dish area, I tore at least one, probably two muscles in my upper back. Again, I applied for social assistance, and was denied. Again, I had no choice but to spend six to eight hours an evening hunched over in front of a sink, with multiple torn back muscles. I spent the next eighteen months in moderate to severe pain every day, and developed a degree of pain tolerance that has served me well over the years. I saw three different doctors, all of whom gave me different accounts of what was wrong with me, and went from being the strongest person in my work and group of friends, to being unable to lift 25+ pounds off of the ground without severe risk of injury.
When did I become a full time programmer and teacher? There are several years of awful circumstances and bad luck that followed, but in the year 2019, I was finally making a serviceable income as a programmer, and gaining recognition as a teacher in the community. I did contract work here and there, but always tried to focus on developing my own apps and products. I had made several attempts to get work in big tech companies, but my lack of knowledge in low-level computing and software engineering concepts made me decide to devote that year to learning those topics in detail. I studied many textbooks on topics such as Operating Systems, Data Structures & Algorithms, and computer science, and this study carried on into 2020. When COVID-19 hit, I was already in the process of moving back to my hometown to reduce expenses, and have spent my time since then, continuing to build my business, create educational content, and work on my own applications. It also occurred to me in 2020, that some parts of my story, and the things I have learned to deal with physical pain, psychological unhealth, productivity, and learning to code, are worth sharing to some degree. These days I spend my time helping people, building my business, and trying to become the best person, while knowing that another kick in the nuts might be around the corner.
“No longer be either dissatisfied with thy present lot, or shrink from the future.” Marcus Aurelius Antoninus