Fast forward a few years. At the end of 2014 I graduated from UIC with an Anthropology degree. Great choice of major, right? Well, maybe I’ll talk more about that in a later post. Anyways, I moved to China before my diploma even arrived in the mail. After a quick online TEFL course I managed to land a job teaching English in Shanghai. Made a pretty good buck, too. I might write another post or two on this topic later as well.
Once I got into the groove at my English training center, I spent some time to efficiently formulate and organize every lesson plan and bit of material I would need for the extent of my contract. When that was done, I found myself with a lot of extra time on my hands. With so much free time, I got to finding new activities to fill that time.
Enter deals.technobuffalo.com. Finding this website was like having an epiphany for me. Before taking part in technobuffalo’s numerous free online course offerings (mostly on StackSkills), I was barely aware such things existed. I thought “Wow, what a perfect way to spend my time! Learning new things!” And so my foray into the world of online self-teaching began.
I learned all sorts of new things in the beginning, like photography, design, e-commerce, marketing, business management, and psychology. I figured the more skills I could pick up, the better, and I had plenty of time to watch the endless videos on topic after topic. Eventually, since I was kinda aiming in the general entrepreneur direction, I popped in to a couple programming courses like “Build an Android App From Scratch!” and “The Complete Android App Development Course.” I thought yeah, that WOULD be pretty cool to build my own app from scratch! I dove right in, but soon found that app programming was a different beast than the stuff I’d been exploring previously. The “Watch this video, and then this video, and then this video…etc.”-format wasn’t working for me anymore, and I found myself pretty overwhelmed by the amount of information I didn’t know. I realized I was missing quite a bit of foundational knowledge.
So I started looking for a better course to get started on. I did a little more research to try and figure out what I actually wanted to learn, and started discovering different programming languages. I really had no idea at all about how to choose a language to learn, so I asked the internet. Somehow I landed on Python as the result of my probing. Looking back, I think Python actually was one of the better options to get started on because of the vast collection of libraries and useful documentation and whatnot. Also Python syntax is pretty straightforward and intuitive IMO. The only downside of starting with Python, at least when I was getting into it, was that there were lots of conflicting resources due random exposure to both Python 2 and Python 3 materials. Anyways, with my new keyword to search for, I set back out to google to find some good e-books and beginner courses to get started in Python.
I eventually ended up on Coursera.org, happily enrolled in the course “An Introduction to Interactive Programming in Python.” I have to say, that course is pretty well constructed. It seems like the quality of courses on Coursera are generally pretty good, but of the ones I’ve tried, the courses in the “Fundamentals of Computing” specialization by Rice University are the best. This intro to Python course was much more helpful for me than any other freebie I’ve found on deals.technobuffalo.com(stackskills) because it actually had projects to turn in as well as quizzes, peer reviews, and discussion boards. Maybe it’s just me, but I think it makes a big difference to have a deadline as well as fellow students to review your work and collaborate with when working on and learning something new.
By the end of this course, I was hooked for good. I was still in China, teaching English, but I knew that I would always be doing something programming-related on the side from then on.
After getting married and relocating back to the states to begin my new career path, I got into Swift. I still had the same app ideas I’d come up with in the back of my head, but having recently bought an iPhone for the first time, I pivoted to iOS. I still have plans to learn Java and Android development, especially considering my love for Xiaomi phones and MIUI that I discovered in China, BUT iOS seemed like the better platform to get started on if I wanted to eventually make some money with my apps.
So now here I am. I’ve been gradually learning Swift and Xcode through various online resources and have built my first few apps. I’m still lacking quite a bit of knowledge necessary to make the apps I’ve been fantasizing about, and I’ve been getting pretty fed up with my random assortment of part-time jobs. I’ve decided that I want to make more than just mobile apps as well, and I’m hoping to get a job as a software developer at a local tech company where I can get exposure to the latest and greatest technologies as well as experience working with other developers. I can only get so far with self-teaching though, and I’ve been feeling that lately I’m not making progress fast enough. I’m serious about making this a successful career for myself, and in order to get a kickstart along with some better foundational knowledge in a wider range of technologies, I’ve signed up for Coding Dojo’s Full-time Onsite Bootcamp.