In the second episode of The Savvy Apps Podcast, Ken chats with well-known app creator and Apple Design Award winner Jeremy Olson. They discuss the differences in app design, business models, market, and user expectations from the early days of the App Store to today. Now that Jeremy is at Coda, they also discuss what it's like to transition from being an indie developer to building apps within a startup.
Blog Posts Related to 'iOS'
At Savvy Apps, we've been using Auto Layout since 2012, back when it was first introduced in iOS. Auto Layout is a powerful tool that makes creating dynamic interfaces much easier, requiring very little or no coding at all. We've noticed that in many cases Auto Layout is not used to its full potential. This improper usage sometimes leads to layouts that are too constrained and don't adapt well to changes in content or font size.
Machine learning has quickly become an important bedrock for a variety of applications. Its mobile implementation, however, has been out of reach for many in the mobile app development community. The training and implementation processes for machine learning libraries require dedicated processing power, which is outside the purview of mobile devices. That processing power requirement and existing frameworks usually mean that a server-side component is necessary for even the smallest, machine learning-backed apps. Finally, training a machine learning model requires a good deal of knowledge that lies outside the normal developer spectrum.
Another WWDC keynote has come and gone. 2017 saw Apple focus on six particular areas, including announcements for the Apple TV, Apple Watch, Mac, iPad, the new HomePod, and of course, iOS 11. All of these impact the work we do at Savvy Apps, but the most significant of all is iOS 11.
Designing for apps is a fluid process. As time passes, system updates and new design conventions mean we have to master new techniques to ensure our apps remain in the forefront of the industry. As we evolve, so do our resources. Since releasing the Savvy Sketch iOS Wireframe Kit in June 2016, we've noticed a few opportunities to update the kit to meet designer expectations. These changes also come from our experiences using the wireframe kit on new projects.
How we think about design at Savvy Apps encouraged us to develop a new animation technique that mixes old-school view animations with Auto Layout. Our technique bypasses the restrictions placed on developers when they try to animate using Auto Layout. Most Auto Layout animation guides say basically the same thing: update constraints and animate. For more advanced animations though, just updating the constraints would be nearly impossible.
By relying only on constraints, you're restricting yourself on the types of animations you can achieve in your app. This article dives into how to get around the limitations of constraints. By using Auto Layout in new ways, we will show how to create more advanced animations.
Late last year, we decided to standardize on Sketch as our tool of choice for creating low-fidelity wireframes. Previously we were fans of Balsamiq, mostly because it had a number of pre-built app elements that could be dragged and dropped into a mockup. While we enjoyed the polish and precision of Sketch, not having a similar feature required us to spend valuable time on creating and recreating the same elements in our wireframes.
Last year we started working on a framework that was initially inspired by an animation in a podcasting app we crafted for The Cato Institute called CatoAudio. Our work with CatoAudio helped us realize that we wanted an animation framework that would allow us to create a simple, smooth animation that could easily be paused, resumed, and reversed. So far we've used this framework we call SAAnimationView on a number of projects. We decided to release it outside of Savvy Apps so other developers can take advantage of the way it makes it easy to create and iterate on animations.
Animations in iOS offer functional context to users and provide developers with a simple way to bring designs to life. While Apple provides two common methods for animations, `UIView.animateWithDuration:animations:` and CAAnimations, they either sacrifice flexibility or create a lot of boilerplate code. That’s why at Savvy Apps we advocate learning the components and concepts of animations. This approach allows developers the freedom to find new ways to do animations. In this post, we define the components of an animation, as well as provide tips for creating and experimenting with interactive animations.