App Development with Swift: SwiftFest 2019

Swift is the programming language developed by Apple that enables us to write code for its Operating Systems (e.g., iOS, macOS, tvOS). Apple is constantly improving the language, and in order to provide the most advanced software products to our customers, we take seriously staying abreast of these changes.

In order to help keep our Swift skills honed, we attend a variety of different conferences, and this year SwiftFest was one of them. SwiftFest returned to Boston for its second year, playing host to a diverse group of iOS developers, ranging from engineers working in industry, to students, and midnight coders. It is a community-driven conference, dedicated to iOS development, networking, and social interaction. The conference, spanning two full days and offering two tracks, offered a mix of inspiring speakers, technical presentations, and workshops.

Attending SwiftFest was a great opportunity to connect with other developers in the iOS community, and to hear firsthand about how to handle challenges that we all face in our day to day work. One of the reasons we appreciate SwiftFest among the offering of iOS Developer conferences is their dedication to inclusivity and diversity. The first tab on the website is their code of conduct — before the schedule, before the speaker bios, they highlight and truly place a lot of importance on the code of conduct! As a company that strives to support diversity in the workplace, we were encouraged by the overall tenor of the conference.

Both days kicked off with a keynote, and this years’ topics, which set the tone for each day, were Programming with Purpose and Inclusion. Each speaker shared their unique journey to becoming a programmer, as well as some of the challenges they continue to face in industry. Some of the key takeaways were to face your fear, stay curious, and when faced with a challenging decision, continue to ask yourself “And then what?”

Swift Conference Theme
One of the speakers, a female developer, shared a great message about working together to provide equal opportunities to all developers. She emphasized the importance of recognizing women for their achievements, not just their gender. While we are fortunate to have women represent over a third of our employees, we know not many software developers can state the same thing. Recognizing the unique value each person brings is part of helping to change those ratios across the industry at large.

Swift Conference Speaker

The conference topics were broad, and included things pertaining to development with Swift, like security, ARKit, machine learning, cross-platform development, and reactive programming. Of the sessions that we attended, a few in particular stood out. Two of these sessions were focused on Accessibility, noting things to be mindful of in order to create the best user experience. One of the presenters shared her experience turning on “Voice-Over” and “Screen Curtain” for seven days. She noted some apps that were really easy to use and navigate, and also highlighted others that could be improved. This included a deep dive to show some creative ways to solve the issues that presented themselves. An overarching message was to provide as much context as possible in the voice-over text. For example, something as simple as the number of user ratings for a book reads as “1.08K,” and without more context, this number or unit of measure is meaningless.

Another session addressed subjects like alternative layouts to handle Dynamic Type and large fonts. This session included a live demo to improve the accessibility on the official SwiftFest app (open-source!). There were several great takeaways from these two sessions to share with the team and put into practice across our suite of apps in development and in the Apple App Store.

Swift Conference Slide

We also really appreciated a session outlining one developer’s experience launching an MVP (Minimum Viable Product) into the wild, and the value of user feedback in bringing his app into the #1 position for paid Health and Fitness apps. He talked about the importance of evaluating trade offs, iteration, and how to evade fears of launching a product “too early.” This topic is near and dear to our heart (see our post on app discovery to learn more), as we firmly believe in the value of iterative design and the necessity of user feedback throughout development. It was great to be confirmed that we are following best practices.

The conference additionally offered a few opportunities to start exploring SwiftUI, the new Swift user interface framework announced by Apple at WWDC 2019. These opportunities ranged from coding workshops to code-review style demos of apps built using SwiftUI. Some of the most exciting benefits to be gained from adopting SwiftUI are related to performance, automatic interface layout, and no more pesky Storyboard merge conflicts! (If you’ve been there, editing Storyboard source code, you know how tricky this can be) There were tangential sessions focused on Protocol Oriented Programming and using Extensions that will be critical to writing clean performant code while adopting and transitioning to SwiftUI.

All in all, SwiftFest was a great opportunity to share and discuss wins and challenges with our peers. We were able to take away many tips, tricks, and resources to share, with the greater goal of improving our Swift code and creating beautiful user experiences.

If you’d like hearing about topics like this, we encourage you to sign up for our monthly newsletter.