How To Make It Look Like You Know What You Are Doing

Nic Wittison, Canva Part of DW18

Have you ever been asked to work on something that seemed technically impossible? Have you ever been asked to complete something in half the time you think it’s going to take? It’s been a wild ride for me working at Canva for the last 4 years, lots of code, lots of features and lots of fun. If I have learned anything it’s that your ability ship things on time comes down to how you can work smarter, not harder. So that you don’t have to learn things the hard way I’ve compiled a list of UX/UI tips and tricks I use to save precious development time and make sure we are delivering the best experience to our users. This talk will cover a variety of practical iOS UX and UI performance tips as well as discuss ways to make sure you make the right tradeoffs for the things you are working on.



Ada on an iPad?

Simon Rofe, Airbus Australia Pacific Part of DW18

This talk covers our experiences with porting Ada code to an iPad using a Third Party cross-compiler from AdaCore in conjunction with Xcode and Swift. The aim is to develop a simulator for existing avionics equipment to be used for training aircrew.



SIL for First Time Learners

Yusuke Kita, Mercari Part of DW18

The Swift compiler runs in multiple phases, and one of the biggest is SIL (Swift Intermediate Language) optimizations. The SIL optimizer performs all the important Swift-specific optimizations, so I believe that it’s quite valuable to have an understanding about SIL as a Swift developer.

In this talk, we’ll go over basic idea of SIL with simple examples.



The State of MVC

Sande Harsa & Gavan Chan, REA Group Part of DW18

MVC is known for being an architectural pattern taught in universities that doesn’t scale well in the face of iOS Development; in many situations, teams will quickly jump into using architectures that have become known by buzzwords, such as MVVM, VIPER, or Clean. This session will have everyone look at an existing project which is based on MVC, and explore some code changes and ideas whilst on the journey to discussing a wider-scale architecture shift/decision.



UX for Developers

Laura Summers Part of DW18

Everyone has great design ideas! (Seriously)! But not everyone has the vocabulary to communicate them. This session is for devs who are curious to learn more about UX Research and Design, so you can work more effectively and collaboratively with your design peers. Join me for a crash course on UX terminology, methodologies and outputs as well as fun hands-on activities.



Property Based Testing in Swift

Sebastian Grail, Canva Part of DW18

Automated tests are important to maintaining a robust code base. However, conventional unit tests are often overly specific and only test an arbitrary subset of possible scenarios. Furthermore, they rarely serve as good documentation. Property based tests can help mitigate some of these issues by focusing on describing the relationship between inputs and outputs, and running those tests with a randomly generated set of values. It has been used successfully in functional programming languages for two decades and is now easily achievable in Swift using SwiftCheck, a pure Swift port of one of Haskell’s most prominent testing libraries.

In this workshop, Sebastian gives an introduction to property based testing using the SwiftCheck library. The focus is on familiarising the audience with the concepts of properties, generators and shrinking, and how to apply them to their own code to achieve more meaningful tests and better code coverage. Examples are given in Swift using the SwiftCheck library, but apply to other languages and QuickCheck-style libraries as well.

Slides with speaker notes and sample code will be made available after the talk for further study.



Quality Assurance and Testing Fundamentals for Small Teams

Jason Imms, The Machine QA Part of DW18

Most software developers will agree they could be doing more around testing and quality assurance, but struggle to justify the cost or time. This workshop will cover the fundamentals of the functional testing process, providing attendees with knowledge and skills to fill QA-related gaps in their team’s processes, without breaking the bank. This will result in more QA being done, higher quality products, and a great foundation for employing QA personnel in the future.

Take-homes:

  • Tool suggestions
  • Scoping and prioritising test effort for your project
  • Identifying areas of high defect likelihood
  • Making QA everyone’s responsibility
  • Demystifying QA terminology
  • Fitting QA into your project management methodology


Adding AI to Your Applications with TensorFlow Lite for iOS

Patrick Haralabidis, NAB Part of DW18

The recent developer conferences from Google and Microsoft were dominated with news and new capabiliHes around Artificial Intelligence. One of the most popular tools for developing and evaluating machine learning models is Google’s TensorFlow.

This workshop provides developers with an introduction to Tensorflow Lite, a TensorFlow library designed for mobile, that will allow them to add Artificial Intelligence into their applications using exist Machine Learning models or by developing their own.

The workshop will cover TensorFlow Lite for iOS and demonstrate how the generated models can be uHlised with Core ML.

Session outline:

  • Introducion to TensorFlow and TensorFlow Lite
  • Setting up the development environment
  • Using pre-trained models
  • Creating your own models
  • Using CoreML with TensorFlow
  • Next steps
  • Q&A


Refactoring an Horrible Codebase Guided by Tests

Giovanni Lodi, iflix Part of DW18

This workshop will teach how to refactor code using unit tests to ensure that no regression is introduced. It aims to be a very practical way to learn about Test Driven Development.

Often when learning about unit testing we read articles or watch tutorials that use toy examples. These are great to introduce the concepts behind TDD, but fail to bridge the gap with the world code.

In this workshop the attendees will get the chance to work on an actual horrible codebase, a TODO list app entirely written between UIAppDelegate and its view controllers.

We’ll start from there and make it into a more sane codebase, one refactor at a time. By doing this we’ll practice our testing and refactoring muscles.

To keep the audience engaged we’ll setup as pairs and “play ping-pong”. One individual will write a unit test, the other the code to make it pass. For each incremental refactor one pair from the audience will present their solution, giving a chance to the group to compare and discuss it.

Scaffold code will be provided to bridge the gaps when necessary, the focus is in finding ways to write tests for existing code and then to make that code better, not to write yet another UITableViewDataSource.



CreateWorld Call for Participation Opens

CreateWorld is our 3 day performance, presentation, and professional development event, specifically for academics, teachers and technical and staff who use Apple platforms in the digital arts disciplines.

CreateWorld 2018 will take place at the Queensland College of Art at Griffith University, South Bank, Brisbane from November 28th to 30th.

The conference features a wide range of academic and technical presenters from education and industry, and includes several keynotes, panel sessions, hypotheticals, hands-on technical workshops, and regular presentation sessions.

The organising committee has issued a call for participation and are seeking posters, papers, performances, exhibitions, workshops and presentation sessions. This year’s theme is Creativity in Progress, and asks the question “Is Creativity evidenced more in process than outcome?”

Learn more »