- Hongkai (Kyle) Shin
Hongkai (Kyle) Shin studied kickboxing and mixed martial arts in the Bay Area for years before leaving the sport to go to college, earn a degree in applied mathematics, and eventually work in supply chain management. In 2013, after eight years on the job, Shin realized that what he really wanted to learn was computer programming. He enrolled at UCSC Extension, and within months had mastered the fundamentals of C programming and the basics of iPhone application development. On January 27, 2015, after two years of careful study and practice, Shin successfully launched his first application, Fite Time, in the App Store online. It is currently available for download.
What brought you to UCSC Extension?
There are a lot of options for learning computer programming. There are boot camps that are offered full-time for three months and charge thousands of dollars. I tried to learn on my own initially; I bought books recommended from programming websites, but it wasn’t clicking. UCSC Extension offered courses on a part-time basis at night, which was very flexible. The courses offer newer, cutting-edge skills like Amazon Web Services and cloud computing—but Extension also has more of a classical programming perspective, offering classes in C, C++, etc. After I took a C Programming class, I got a handle of how to program, and from there I started taking courses in developing iPhone applications.
What did you learn that helped you create your app?
At first, I had some ideas of what kinds of apps I’d like to make, but later I focused on one. “Developing Applications for iPhone and iPad, Advanced” helped a lot with the preparation of actually making the app. It was more production grade; it is a solid course. It offers bridges that I have had to cross to get a professional-quality application that runs properly in the App Store. Foundational classes like “C Programming” and “C Programming, Advanced” helped a lot as well, not so much in terms of developing my iPhone application, but in teaching us how to write better programs in the C language, which things to watch for and what techniques to use. My app pulls data over the network from a NOSQL database I built using Amazon’s (AWS) DynamoDB, which I learned in my “Cloud Computing, Introduction” course. Classes such as “C Programming” and “Java Programming for Beginners” teach great programming techniques, which can be translated and applied to writing code for iPhone apps and many other programs.
Several of the topics covered in class were very valuable when I was working on my app—including core data and grand central dispatch. My application wouldn’t have worked without those technologies.
Tell us about Fite Time.
Fite Time is a sports application focused on mixed martial arts. It helps fans keep track of upcoming events, find out recent results. There are a few social features; they can up-vote and down-vote on events, score fights, see how others score fights, and add their favorite fighters. I’m not involved in the sport, but I used to train, and I have followed the sport for 10 years.
The idea came about because, as the sport has become more popular, the number of events has increased, so a lot of my friends who were pretty serious sports fans couldn’t find the time for their favorite fights any more. Even journalists would sometimes joke about not knowing where to go. So I thought, why not make an app that helps sports fans keep track of their favorite events? I plan to add more features to it and build an Android version as well, so stay tuned.
What advice do you have for those interested in application development?
Take a wide variety of classes; that is the best way to do it. Collect a number of tools for your toolbox and develop a wide range of skills—that really helps. Find something that you’re interested in and start from there—it will open doors to other areas of discipline.
Visit our Computer Programming page to learn more about UCSC Extension’s unique offerings.
Browse upcoming Computer Programming courses.
Return to UCSC Extension Student Stories.