Caylan Larson an iOS and Mac OS developer based Winona, Minnesota.
When and how did you originally become interested in technology?
I have memories of playing games on a Commodore 64. A distant uncle was a game hacker and he would put arcade games on 5-1/4 floppies. Sadly, the Commodore was our family’s last computer until the summer I turned 15 and saved my lawn mowing and MN State Fair concession stand wages to afford Apple’s new 1998 Bondi Blue iMac.
At what age did you write your first computer program? What did it do?
I started with HTML and PHP. After owning the iMac for a year I sold it in the local classifieds and invested the money in a slightly used laptop with the hopes of running Linux on it. At the time, Linux didn’t run well on laptops. The PHP programs I wrote were basic hierarchical content management systems that I used for blogging. At age 19, I wrote a touch-screen point of sale cash register system using LAMP (Linux Apache MySQL PHP) for our family’s concession stands at the Minnesota State Fair.
What do you do now? What languages are you proficient in?
Lots of shell scripting, primarily BASH. I spent many years doing virtualized Linux infrastructure consulting. I worked as a systems administrator for the University of North Dakota’s Aerospace school. I’ve also been a VMware consultant at CDW in Madison, WI. I’ve consulted on numerous point-of-sale systems and when those contracts ended, created Mac Desktop applications to utilize weight scales and label printer hardware that was not compatible with the Mac. Gaining experience in Objective-C, I pivoted to iOS and now run a business, Semireg Industries, that focuses on integrating hardware with mobile devices.
How have you increased your skillset over the years, formally or otherwise?
I have a few friends from college that have been absolute godsends when it came to helping me up the steep learning curve of Mac/iOS development. There’s an author named Aaron Hillegass who wrote a great book on Mac development and I paraphrase, “you are not stupid, this stuff is really difficult.” I love that quote, because there’s nothing like memory management and C-pointers to make you feel as stupid as a brick.
Which do you prefer in programming, the struggle or the achievement?
This is not an easy question to answer. I have this saying that “life wouldn’t be sweet without the sour” and that’s definitely true for programming. The simplest interfaces are the most burdensome to design. I spend a lot of time designing APIs and toolkits for other programmers to use, so the end product is sometimes watching someone else build a product. Making tools is incredibly satisfying, but seeing them get adopted or abandoned is just as much an experience.
What people, groups, projects, or resources were most influential in your development as programmer?
I learned from an early age to speak to adults as if they were peers. Along that same line, there were a few classes in college that pushed me to speak to groups. Being fearless in front of audiences allows me to confidently share the work we’re doing at conferences. But when someone asks me a question I don’t know or haven’t considered, I admit I don’t know, and then I research the heck out of it. This is a roundabout way of saying: communication. Writing, verbal communication and networking was and will continue to be vital for my success as a programmer.
What do you enjoy about it? Is there anything you dislike?
I like how much work it takes to do something simple. There’s often a reason a simple app doesn’t exist: it’s way too difficult to write. I like finding those challenges, solving them, and creating toolkits for other programmers to utilize.
I dislike programming in Java (likely because I lack fluency). Although, our subcontractors love that I don’t enjoy Java. More work for them!
If you were to be doing anything else, what might that be?
A farmer or inventor. Probably both, because farmers have to be inventors. I tried my hand (and whole body) as a farmer in 2009. I quit the VMware gig in Madison, WI and moved to a farm in Baraboo, WI. I helped milk goats, feed the pigs, and farm 4 acres of vegetables. I tell people that the agrarian author Wendell Berry turned me upside down and made me feel for the first time that I had roots. System design on an earthly level is based on inputs and outputs. Your farm is a program that runs every season. I figured I only had about 40 more compilation and runtimes to learn about “The System” that runs us all. Incredible stuff. I had to make a decision: become a hard-working agrarian or go earn some money and become a more conscious consumer. I chose the latter.
Where do you spend most of your time online?
Xcode, the program used to develop iOS/Mac applications. Slack, an app for team collaboration. Facebook, to stay connected with friends and family.
What concerns you most about where technology is headed?
Other than security and privacy… The race-to-the-bottom for mobile devices. I’m an iOS user and it pains me to see my family members contemplate Android devices on the merit of price.
What excites you most about where technology is headed?
Apple’s OS singularity: the convergence of iOS and Mac OS into one platform. That’s years away, so for now, I’m excited to learn how Apple’s Watch integrates into our lives.
Is there anything else you would like to add?
My company, Semireg Industries, just released a new, simple, iOS app named Switc# that controls many different kinds of “SMART” light bulbs. Switc# will be compatible with Apple Watch and we will continue to add support for new lights as they arrive on the marketplace. On the backend, Switc# is powered by our app-acceleration framework called Semireg Sensor Kit (SSK). We hope to publish the SSK as an open source project summer 2015.