Our SNOWDOG iOS team travelled to Kraków to attend Mobiconf, a fantastic international mobile conference that brings together the community of iOS/Android and Java developers, UI/UX designers, software testers, project managers, product owners and CTOs.

A special highlight of the trip was the opportunity for us to meet up with Majid in person, who works with the team remotely from Azerbaijan!

Speakers and talks

The conference lasted 2 days, and gave us the chance to hear some great presentations covering topics ranging from tools and practices in writing clean code to managing big projects.

There were so many interesting talks that we couldn’t possibly list them all, but here are some of the highlights from the conference:

  • Pedro Piñera Buendia introduced the concept of Microfeatures in mobile apps. He described both the core idea behind Microfeatures and showed practical examples, explaining how the development workflow was introduced in SoundCloud.
  • John Sundell explained how to carefully design API in Swift and create better architecture in our apps. John gave us few tips and tricks, plus many examples on well-designed APIs. In our opinion, John’s presentation was probably the best in the whole conference :)
  • Nick Babich discussed how to design a good onboarding screen. What to do, what to avoid, and the role of empty states in onboarding etc.
  • Anastasiia Voitova talked about real-world problems that Zero Knowledge Architecture faces, and how she learned typical cryptographic designs and progressed in different spheres of ZKA.
  • Rahul Malik showed us how to use various language features like recursive enums, trailing closures and higher order functions to create elegant and type-safe domain specific languages. We also learned to build DSL inSwift playgrounds for writing type-safe GraphQL queries that can be executed on the GitHub API.
  • Tomasz Gębarowski has ~10 years of commercial experience, and he showed us how to write clean code without using the standard BaseViewController :) but instead using protocol oriented programming in Swift language.
  • Łukasz Mróz explained how to use asynchronous programming in Swift with the use of standard native libraries, and demonstrated invoking async callbacks and what cycles are.
  • Paweł Lewiński talked about ASO (App Store Optimization). With so many new apps arriving each day, driving users to download your app is not a simple task. We learnt that using ASO can help us increase downloads, users, and profits :)

Unfortunately, there were so many talks happening we weren’t able to see them all! But we’re sure they were just as informative and useful.

What about after the conference?

The conference gave us a new perspective on coding. We decide to practise what we had learnt from Marcin Gębarowski’s presentation in our own projects, and replaced our BaseViewControllers class with something more elegant. After listening to Pedro’s talk, we decided that keeping modules of our app in one repository will be a lot easier to maintain than keeping them in different repositories. Another good library to consider is GraphQL.

Finally, one of the highlights was without a doubt hearing from John Sundell! Almost every developer on our team follows him on Twitter and Github. After his speech, we resolved to start paying more attention to our codebase, and aim to ensure our API is contained, conversations, scalable and evolving.

Summary

We enjoyed two fascinating and extremely busy days talking and hearing about all things iOS. It was a great pleasure to gather our international team and work together in our Poznań office after the conference was over. We met people who have created their own mobile startups, and discussed the technologies, challenges and future possibilities in app development. Thanks to Mobiconf for hosting such a great conference, and we are eagerly awaiting adding our names to the list for the next one :)

Further reading and watching