Designing Engaging Motivational Apps

Zac Fitz-Walter, Eat More PixelsPart of DW16

Apps can be incredible motivational tools – just look at the number of habit-building and fitness trackers on the App Store. It helps that smartphones are always with us, can sense what we do and can provide us with useful feedback – but there’s more to making a motivating app. This presentation will discuss the advantages of using smartphone technology to motivate us, discuss motivational app design and provide useful tips and tricks for getting started.



With a phd in gamification and user experience design, Zac likes to focus on reducing friction through good usability while motivating users with playful and engaging experiences. He’s currently the Creative Director at Eat More Pixels and he challenges you to find all three Easter Eggs on his company’s website (http://eatmorepixels.com.au).



Design 101 for Programmers

James White, Colourfool CreativePart of DW16

Many developers at small companies, and most indies, don’t have the luxury of collaborating with genuine beret-wearing, latte-sipping designers. But never fear! There are at least 15 weird tricks you can learn to avoid your app looking like it was designed by a developer. After twenty years of experience designing for print, web and mobile, James White has learned a trick or two. In this session he shares some of these tips and tricks, touching on typography, colour, iconography, branding, and the fine balance of aesthetics, functionality and usability. Expect pretty slides, and to leave with a notebook full of small but useful ideas for improving the design of your apps and websites.



James is a mobile app designer and developer. He directs Reach Health Promotion Innovations, a Perth company providing mobile development services to public health organisations across Australia, and recently completed a PhD examining the use of socially connected apps for health behaviour change. James also provides contract design services, via Colourfool Creative. James has twice received an Apple scholarship to attend the World Wide Developers Conference in San Francisco.



Cocoa Design Patterns and Principles

Matt Delves, BiluePart of DW16

This talk takes a look at the fundamentals of design principles in computer science particularly the SOLID principles and how they apply to Cocoa (iOS and OS X) applications. By using SOLID principles, you can provide a sure foundation for your app and be able to reason about the code in your app.

By using Protocol Oriented Programming and Cocoa Design Patterns you will be able to make use of frameworks that Apple provides in AppKit and UIKit effectively.



Matt is an iOS developer at Bilue who enjoys writing innovative iOS apps. He is often found amongst the Cocoaheads community in Melbourne and Sydney.



Building Back-End for iOS and OS X Without Managing Servers

Donny Kurniawan, REA GroupPart of DW16

Have you been disappointed by the shutdown of Parse? Do you dread the costly alternative of provisioning, updating, and managing your back-end servers? This talk introduces the concept of “serverless” where we develop back-end APIs without worrying about servers, virtual machines, and the underlying compute resources. This talk gives an overview of three competing serverless platforms: AWS Lambda, Google Cloud Functions, and IBM Bluemix OpenWhisk. In this practical session, Donny gives a walkthrough and examples of building simple APIs for your next iOS and OS X apps using the aforementioned platforms.



Donny is a senior developer at REA Group. Besides spending time with his family, he enjoys programming and developing software; and trying to achieve Reading List Zero. In his PhD, Donny designed and developed an IDE for writing, running, and debugging parallel applications on distributed and heterogeneous platforms.



Building Apps like Lego. A Practical Guide for iOS Developers and Designers

Tom Brodhurst-Hill, BareFeetWarePart of DW16

Designers prototype. Developers try to mimic the prototype but miss many of the design edge cases. Everything is built twice. We waste time and effort. This presentation will show you how designers can build visual components in Xcode with no coding and developers can add smarts and custom behaviours. The resulting “Lego blocks” can be used to assemble an app, for prototyping, testing or production.



Tom is the new iOS architect for upcoming apps by Optus, Virgin Mobile and others. Tom was the lead iOS developer for the tablet app for CommBank and is now working closely with the CommBank design team to build native Xcode components for designers and developer to assemble into apps. He runs weekly workshops teaching designers how to build apps in Xcode without coding and developers how to build smart view components like Lego blocks, which can slot together to make apps.



Automate Your Life with Fastlane

Adam Shaw, Kabuki VisionPart of DW16

This talk is a whirlwind tour of Fastlane, a suite of tools for automating the most tedious developer tasks. We spend too much of our developer time on dreary tasks like setting up iTunes Connect, dealing with provisioning profiles, generating screenshots, etc. Fastlane lets us quickly accomplish all these things (and much more!) at the push of a button. In this session I’ll take an app project and demonstrate the steps of automating everything from start to App Store.


Adam has been developing apps since the launch of the App Store in 2008. An Apple nerd through and through, he believes that building great iOS apps is pretty much the most awesome job in the world, and strives to pass this enthusiasm on to others. His company Kabuki Vision has released a number of noteworthy apps over the years such as NoteMaster and Dressed.



Architecting with a Difference

Carol Mak & Deline Neo, ThoughtWorks & Tyro PaymentsPart of DW16

Modern Test-Driven Development and Continuous Delivery practices mean tests need to run all the time. Test execution time is key to everyday productivity.

Testing in iOS has always been challenging with the ever-changing platform, screen sizes and even language, bounded by the limitations of the SDK and the lack of reliable testing tools.

In this session Carol and Deline are going to describe how the team at Tyro achieved testability through app architecture, and eventually reduced test time from 30+min to under 10 min. They are going to share a few useful techniques and tools that can be applied to refactoring any iOS applications.



Over the past few years, Carol has developed 40+ iOS & Android applications across retail, government, banking, news media, telcos, real estate and other small businesses. As a consultant at ThoughtWorks, her work focuses on providing mobile capability and developing best practices in mobile delivery. Recently she has been working on several projects in Swift, the language which is her new favourite. She also has vast interest in the direction of React Native, which is very different to all cross-platform tools that she’s experienced.

Deline is a Software Engineer at Tyro Payments. Originally a Java developer working on systems in insurance, payments and banking, she has spent the last few years working on iOS and as a tech lead for a team building Tyro’s first mobile application.



Apple and the Serpent: Writing native applications for Apple platforms in Python

Russell Keith-Magee, BeeWare ProjectPart of DW16

Everyone knows you can write iOS, OS X, tvOS and watchOS apps using Objective C and Swift, Apple’s officially blessed technologies. But what if you want to use a different language? What if you’ve got an existing codebase in a different language, or want to us a language that is more approachable to people without a background in programming?

This talk shows how Python can be used as a viable development language for Apple platforms. It explores the mechanics of how Python can interact with native Apple APIs, and demonstrates some related tools that make the process of creating an iOS, OS X, tvOS or watchOS project in Python relatively easy.



Dr Russell Keith-Magee is a 10 year veteran of the Django core team, and for 5 years, was President of the Django Software Foundation. He’s also the founder of the BeeWare project, developing GUI tools to support the development of Python software. When he’s not contributing to open source, he’s the CTO of TradesCloud, a company providing integrated job management software for tradespeople.



Advanced Xcode: Configurations, Targets, and Schemes

Ashton Williams, OdeceePart of DW16

This talk explores best practises for structuring Xcode projects, using Xcode’s build tools, and techniques for building an app for different purposes; all while keeping a neat and maintainable project structure. Topics include: Configurations, Targets, Schemes, Defaults, Resources, Frameworks, and Build Infrastructure.

Covers the best techniques to conditionally include resources in your app depending on the build configuration. Injecting code into your app to support UI Testing and debugging. Setting up your environment to load up your app with predefined settings and data easily.



Ashton is a Senior Mobile Engineer at Odecee in Melbourne. An expert in iOS build tools, dependency management, writing frameworks, and accessibility. Contributor to open source projects such as CocoaPods and Fastlane.



Advanced Patterns for Functional Reactive Programming in Swift

Sebastian Grail, CanvaPart of DW16

Functional Reactive Programming is an immensly useful tool to write asynchronous code at a higher abstraction level. Unfortunately the learning curve is extremely steep and the few tutorials for advanced concepts are often quite academical. Often people only use a small subset of the avaialbe API and resort to writing stateful, imperative code that could otherwise be expressed more functionally.

In this talk, I’ll introduce some advanced patterns for:

  • state management
  • synchronising work
  • complex flow control

All examples are lifted straight out of our production code base and provide simple recipes for problems, that often require a complex interaction of multiple methods and mutable state in a traditional object oriented approach.

Reactive Cocoa (https://github.com/ReactiveCocoa/ReactiveCocoa) is a popular FRP framework for the Apple platform that provides a Swift interface and comes with binding for many UIKit elements. Examples will be given for Reactive Cocoa but are applicable across most popular FRP frameworks.



Sebastian is a mobile developer at Canva where he confuses his colleagues by running a vim plugin in Xcode. In his quest to write better code he likes to look for answers in maths, functional programming and pictures of cats on the internet.