There’s a constant debate about whether or not designers should learn to code. While I’m happy to talk about that at length, I think it’s helpful to look at it from a different perspective.
What are you trying to accomplish? Are you trying to get a job, build up your resume, break into a new area of design, communicate better with devs? Learning to code really depends on what you want to accomplish.
In my case, I wanted to ship a product.
A Little Backstory
In 2015, I worked on the a href="https://medium.com/sofa-blog/sofa-1-0-is-here-73a37e19ce3c?ref=shawnhickman.studio">

At this point I didn’t em>
Then life got in the way. This was a side project for all of us and we still had full-time jobs. The two devs got extremely busy and couldn’t work on Sofa at the same capacity. The app sat there not being updated and it was painful for me. I had tons of ideas based on user feedback to implement, but was powerless to do so. This was a big driver for me to learn how to code.
Starting with Framer
Like most designers, I had dabbled in HTML, CSS and a little Javascript. It wasn’t until I used a href="https://framer.com/?ref=shawnhickman.studio">

Framer is such an amazing tool for designers to learn how to code. Being able to see the results of your code em>
From there I dabbled a bit more in Javascript but my heart was always in native iOS apps.
Moving on to Swift
I had tried to learn iOS in the pre-Swift days, but Objective-C was difficult for me to digest. When Swift was announced, I immediately thought “Hey, I might be able to learn that.” I wasn’t sure, but it gave me a little confidence.
This is the hard part. There are many resources for learning iOS development, but most are pretty terrible. The teachers make too many assumptions about what the student already knows. This is true even for courses designed for beginners. They tell you how to do “X”, but never tell you that you also need to do “A, B & C”. It ends up being incredibly confusing, intimidating and demoralizing.
The single best resource I’ve used to get started learning iOS development was from a href="https://twitter.com/MengTo?ref=shawnhickman.studio">

Design + Code taught me how to send data back and forth between views, change the design of the app with code and use Storyboards. Again, other courses do this, but they don’t explain it well to designers.
That course taught me the fundamentals of iOS development. From there I was able to explore and build a few prototypes. One was an early Sofa 2 prototype and the other was a collaborative whiteboard for iPads. I never finished either of them, but learned a ton in the process.
Building and Shipping Sofa 2.0 in 6 Months
In the summer of 2017, I got to the point where I couldn’t wait any longer to move Sofa forward. My teammates’ shedules were not letting up and it could be another year until they could contribute again. That’s when I decided to build 2.0 myself.
When I started I didn’t know exactly how I was going to do it, but I dove in and got started. I knew enough of the basics to get going.

While building, there where two resources I used constantly: Stack Overflow and YouTube. Yes, YouTube. When you’re learning something new, reading about it isn’t always enough. Seeing someone solve the problem you have is incredibly helpful. That’s where YouTube shines. I would type in whatever I was trying to figure and then start watching. There are a few YouTube accounts that consistently taught me how to do things:
I am eternally grateful to these people for putting out great content that was easy to understand.

From July to September, I worked on getting the basic experience of the app functioning. Then from September to December I had beta testers to help test assumptions and refine the experience.
With every week that went by, I was gaining more confidence. There were a few tricky issues to figure out and a few things I was scared of, like Core Data, but overall it ended being fairly straightforward.
I ended up launching Sofa 2.0 on December 6, 2017. Technically a little less than 6 months, but I was never good at math anyway. It’s hard to describe the feeling of working on something for a long time and then sharing it with the world. It’s scary, exciting, humbling and most all…fun!
During this time, my good friend and Sofa teammate, a href="https://twitter.com/oliverpfeffer?ref=shawnhickman.studio">

I didn’t do this alone
I am hyper aware that I didn’t and couldn’t do any of this alone. Framer taught me the basics of coding, Meng To taught me the basics of iOS development, and Stack Overflow, YouTube and Oli taught me deeper parts of iOS.
It’s not only the people who taught me code, it’s also the people who support me everyday. My wife, family, friends, co-workers, bosses, etc. I am extremely lucky to be surrounded by people who care about me and support my goofy passions. It’s something I never forget.
You can do this too
This isn’t just for designers, but for everyone. If you have a goal you’re driving towards, but currently lack the skills, don’t worry. Learning new things today is easier than at any other point in history. All you have to do is put in the time. It may not take as long or be as hard as you think 👍
If you’re interested in seeing the fruits of my labor, you can a href="https://itunes.apple.com/app/id1276554886?ref=shawnhickman.studio">