Skip to content

Conferences Condensed: NSSpain 2023

My first conference talk

by Ashli Rankin
Ashli on stage at NSSpain giving her talk

Last year was my first time attending NSSpain — I met so many amazing, uplifting people who were super encouraging, and that empowered me to submit my talk to be considered as a speaker this year. I was elated to be selected to speak at the conference, and excited to bring my unique insights to NSSpain.

Along with my own talk, there were several talks I really enjoyed this year. Here’s a look at a few of my favorites.

Run LLMs and diffusion models on Mac & iPhone

Pedro Cuenca

I haven’t played around with LLMs outside of using whisper.cpp to build a quick app that records audio input and translates it to text, which was pretty cool. But one thing that I noticed was the size of the model file — I was curious about how I could reduce the size, so this talk piqued my interest.

Pedro was focused on getting started with using CoreML to add a large language model to your apps, and running diffusion models in apps. He also delved into the pain points of trying to convert Py​Torch models to CoreML models. He took us through his journey of debugging when the conversion process crashed and providing a fix for the issue. By investigating and implementing that fix, he made a huge community impact by further allowing others to convert their Py​Torch to a CoreML model.

I was also happy to see that Pedro created an app called Diffusers, which allows you to try creating your own AI-generated images from prompts. I’ve played around with Midjourney a bit, and enjoy passing in prompts to see what would come of it, so Pedro’s app was interesting to me.

2 Hours, 2 Days, 2 Weeks

Jordi Bruin

When starting a side project, I always spend so much time thinking about the designs of an app, or trying to make it feature complete, bug-free, and “perfect.” And I become so consumed by these processes that I never ship anything.

Jordi’s talk highlighted that iteration is also an option when developing apps. Starting with something small and imperfect can be powerful in getting something out — and then you can add more to it later.

Jordi has a “2 hours, 2 days, 2 weeks” rule. He explained that when he thinks of an idea, he asks himself if the main concept can be prototyped in 2 hours. If it can, he then spends 2 days getting it into a state where he can test it and distribute it to friends and family. After that, he gives himself 2 weeks to polish and ship the app to the App Store.

He also told us about how he built a team to help with scaling his most popular apps. This was important to him, because he wanted ensure his existing apps were getting the attention they deserved while still leaving time to solve new problems.

One of the main takeaways from this talk for me was that it’s important to lower your expectations when building side projects. It is okay not to have a perfect product before you launch.

Building UI components with SwiftUI

Kasper Lahti

In this talk, Kasper showed the considerations he made when creating custom SwiftUI components — demonstrating swipe actions specifically. He discussed the fact that many components in SwiftUI are customizable, but swipe actions are not as flexible. For example, he has come across cases where the swipe action’s font is different from the font used in the rest of an app, making it look inconsistent.

Kasper’s talk touched on some of the pain points when building custom components, like maintaining large files, which can be tedious if something breaks in a new software release. Finally, he took us through the process of creating a swipe action. He showed some of the code considerations that went into creating his custom swipe action.

This talk taught me not to be afraid to dig into the documentation — you can build complex UIs with SwiftUI, you just need to explore.

Demystifying App Intents: A beginner’s guide

Ashli Rankin

My talk was about why having shortcuts is important for apps, and how I created one based on a problem I had — I spoke about my weight loss journey and using apps to track my progress. I also touched on how to go about creating a simple App​Intent, and we went through the process of using SiriKit.

Then, I talked about why apps should have shortcuts by highlighting that if your app saves people time, it reduces distraction and is more accessible. Finally, we went over some ways to ensure users get the most out of the intents we built by making them discoverable and accessible through prompts — which is important, because anyone should be able to easily use our apps.

This was my first time speaking at a conference, and the whole experience has been extremely liberating for me. I’m so glad I got the opportunity to attend NSSpain again — looking forward to the next one!