They're Good Dogs: A Gentle Introduction to Machine Learning with CoreML and Vision

At WWDC this year, Apple announced their CoreML and Vision frameworks. These allow you do easily implement machine learning models inside your app, running on the GPU on an iPhone. Suddenly a world of machine learning is possible in ways that it wasn't before.

In this talk, you'll see a real world example written in just hours which implements a freely available object classification model to find out who is a good dog. Silly as this sounds, it shows the power now at our disposal.

We’ll look at what you need to do to build a simple app, and then dig into some of the innards of machine learning to see what we need to do to create something really useful.

 
4 favorite thumb_down thumb_up 0 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/structure of the Session

  • Inspiration: A quick introduction into what inspired me to build an a CoreML app at all. Hopefully it helps us understand that underlying every complex machine learning problem, there is a simple, delightful solution that people are looking for.
  • Demos: Some videos from the app in action, not even 12 hours after it was a crazy idea.
  • A Quick Introduction to the CoreML and Vision APIs: A look at what tools Apple gives us to build things with and how far you can get with just a few lines of code.
  • Adversarial Examples: The best part of any machine learning project is finding its edges. How can we trick our Good Dog classifier?
  • The EcoSystem: A look into the broader toolset around for building machine learning models, and some of the existing models around that you can use.
  • What Next?: Where do we go from here? We’ve got the tools, but how the hell do we use them?

Learning Outcome

You'll come out of this session with an understanding of what's involved in using machine learning models inside your iOS or tvOS apps without really having to understand the intricacies of machine learning.

You'll be inspired to build your own useless apps to play with technologies.

You'll realised that they're all good dogs.

Target Audience

Anyone interested in machine learning and computer vision on iPhones, Apple TV and iPads. No experience required.

schedule Submitted 2 weeks ago

Comments Subscribe to Comments

comment Comment on this Proposal

  • Liked Justin Mclean
    keyboard_arrow_down

    Justin Mclean - How to become an IoT developer (and have fun!)

    Justin Mclean
    Justin Mclean
    Consultant
    IoT sydney
    schedule 2 weeks ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    I started off my life as a developer writing machine code and C and working on some low level hardware projects. Then this thing called the internet come along and I moved into the web application space for a couple of decades. More recently I've moved back into commercial IoT development and not unexpectedly a lot has changed over that time.

    In this talk I'll cover what it's like developing IoT projects. I'll go over the tools you need and protocols you need to be familiar with. I'll look at how the C language has evolved to what it is today and and how to write code that works well on memory constrained devices. I'll go over producing prototypes, rapid development, debugging and testing embedded applications and what and how much electronics you should learn.

    In short everything you need to know in becoming an IoT developer and have fun doing it.

  • Liked Christopher Biggs
    keyboard_arrow_down

    Christopher Biggs - Devops For Dishwashers - Bringing grown up practices to the Internet of Things

    Christopher Biggs
    Christopher Biggs
    Director
    Accelerando Consulting
    schedule 2 months ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    The Internet of Things is undeniably here. In the last year we have heard tell of of security cameras, dishwashers and even ovens roaming the internet unsupervised.

    As a consultant and writer about the Internet of Things, I have worked to bring my experience from 20 years in manufacturing and internet security to the IoT world. This presentation will cover the tools and techniques I use to build secure, reliable and rapidly updatable IoT devices.

    The techniques covered are applicable to both the simplest embedded devices with no general-purpose OS, and more powerful devices running Linux or Windows.

  • Liked Luke Sleeman
    keyboard_arrow_down

    Luke Sleeman - Build better Android apps with vector assets

    45 mins
    Talk
    Intermediate

    There are many advantages to using vector-based assets in your Android apps — smaller binary size, faster loading, easier support for all pixel densities, dynamic drawing, and more ways to animate.  Despite the upsides, SVGs and VectorDrawable assets are more complex to author and use.  Luke and Marc explore everything needed to create, export, and implement SVGs and VectorDrawables on Android, including common issues and their remedies.

  • Liked Anna Harrison
    keyboard_arrow_down

    Anna Harrison - Decoding Design: Because you are not "just like your user"

    45 mins
    Talk
    Intermediate

    At this very moment, there are over 5 billion people tapping and swiping on their mobile phones in every corner of our planet. There are people in Sri Lanka tapping and swiping, South-Africa, Ecuador and Tanzania. The Albanias and Swedes, also busy tapping and swiping.

    As a technologist, your aim in life is to capture as many of these tappers and swipers as you can. Given that there are only about 22 million developers in the world, it is likely that the tappers and swipers will not at all be just like you. Building a product for people like you, therefore, greatly limits the size of your total addressable market - which in short, is really bad business.

    We know that startups co-founded by designers are far more likely to succeed. But why is this? What exactly do these mysterious Design Creatures do, and more importantly, what can you learn from them to help your product win the tapping and swiping game?

    Join Anna for an entertaining, practical and example packed presentation that will absolutely change the way you view the role of design in the making of your next product.

  • Liked Andrew Kelly
    keyboard_arrow_down

    Andrew Kelly - ConstraintLayout - One Layout to Rule them All.

    30 mins
    Demonstration
    Intermediate

    This session will give a practical demonstration of how to convert an existing deeply nested view hierarchy for a typical Android app into a more efficient (in terms of measure and layout performance) hierarchy using ConstraintLayout. I will also show how you can use the features of the ConstraintLayout library to create view hierarchies that enable rich animations with little effort.

  • Liked Nick Moore
    keyboard_arrow_down

    Nick Moore - Easy IoT with MicroPython on ESP SoCs

    Nick Moore
    Nick Moore
    Software Consultant
    Mnemote
    schedule 2 months ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    Implementing IoT projects doesn't have to be difficult, time consuming and expensive.

    MicroPython brings Python 3 to embedded platforms, and since Python is one of the easiest languages to learn, and there are WiFi SoCs available around $5, this is a great way to get started in IoT! We'll look at:

    • What is a System-on-a-Chip (SoC) with some specific examples based on the ESP8266 and ESP32 WiFi SoCs
    • Why Python? A quick look at C and IoT vulnerabilities
    • How to install MicroPython and communicate with the ESP SoC to write programs
    • What it is capable of and what things are being developed for it
    • How to contribute to the MicroPython project
  • Liked Larene Le Gassick
    keyboard_arrow_down

    Larene Le Gassick - Creating Inclusive Apps with React Native

    45 mins
    Talk
    Intermediate

    Creating inclusive and accessible apps is easy using React Native! Javascript developers can have a working app on their phone in less than an hour. Join me to see a working demo of how to plan, develop, and test for accessibility in the mobile space.

    I will also be talking about resources and guidelines you can use and share with your organisation to develop apps for everyone - including what the bare minimum looks like to help you prioritise your requirements!

  • Liked Tim Sawtell
    keyboard_arrow_down

    Tim Sawtell - Building React Web and React-Native Apps With Shared Code

    45 mins
    Case Study
    Intermediate

    Diving into the feasibility of using a single code base for generating multiple front-end applications.

    We'll discuss using React and React-Native for building apps that provide a consistent experience across native, mobile and desktop web.

    Using React and React-Native as the UI layer upon a shared JavaScript core codebase can greatly improve your organisation's delivery of new features to customers.

    We'll talk about our migration strategy for the new apps replacing our existing apps, piece by piece. Not slowing down our continuous release of features to customers while replace the apps.

  • Samantha Connelly
    Samantha Connelly
    Quality Activist
    EPAM Systems
    schedule 2 months ago
    Sold Out!
    30 mins
    Demonstration
    Intermediate

    How can you use robots to help you test?

    Meet Tappy McTapFace, Tappy is a robot that was built during a 2 day hackathon to help demonstrate how robots could be used to automate testing on mobile apps. It's made out of 3D printable parts, based on Taptser 2.0 open source designs and can be programmed in javascript.

    You could also use a robotics challenge to engage your team around testing ideas. Sam will give her insights from running multiple testing challenges that engaged over 100 software engineers. From a lunch time robotics challenge to a company wide bug bash. Sam has run many events that help raise a companies testing culture.

  • Liked Sam Ritchie
    keyboard_arrow_down

    Sam Ritchie - Flying Solo: lifehack your way to a pants-optional workplace

    Sam Ritchie
    Sam Ritchie
    Chief Codesplicer
    codesplice
    schedule 2 weeks ago
    Sold Out!
    45 mins
    Case Study
    Intermediate

    Many developers harbour the dream of throwing off the shackles of corporate serfdom and experiencing the glorious freedom of self-employment. So is the grass really greener on the other side? As a developer who took the plunge a few years ago, I can offer some honest feedback and practical advice on things like:

    • what to consider when assessing whether self-employment is right for you.
    • the different software development business models, the pros & cons of each.
    • setting up a business/company - which structure is best.
    • knowing when to quit your job.
    • pricing yourself correctly.
    • sales & marketing - critical activity or soul destroying waste of effort?
    • why on earth can’t people just pay you on time.
    • what to say to friends and relatives who think you don’t do anything all day.

    And generally everything else that I know now, that I wish I knew then.

  • Liked Sam Ritchie
    keyboard_arrow_down

    Sam Ritchie - Using The Elm Architecture in Swift

    Sam Ritchie
    Sam Ritchie
    Chief Codesplicer
    codesplice
    schedule 2 weeks ago
    Sold Out!
    45 mins
    Talk
    Advanced

    Elm, for a long time the flag bearer of Functional Reactive Programming on the web, recently switched to a simpler pure functional architecture, citing 'ease of use'. Those of us that have worked on complex RxSwift/ReactiveCocoa apps can sympathise with this - using FRP injudiciously in your app can make the code difficult to understand and near impossible for new developers to pick up.

    So are we able to apply some of the techniques and patterns from Elm into Swift iOS apps? It turns out the Elm architecture is a really great fit for Swift - it allows us to:

    • reserve our FRP hammer for the use cases that make the most sense
    • separate out a simple, consistent, and highly testable pure functional core, and
    • provide a flexible, yet easily understood & applied set of architectural building blocks.

    This session will cover the basics of implementing and using an Elm-style architecture in a Swift app, will include lessons learnt in a real-world implementation, pitfalls/benefits, and implementation considerations should you adopt the approach in your own app.

  • Liked Anne-Marie Charrett
    keyboard_arrow_down

    Anne-Marie Charrett - How to reduce the cost of software testing

    45 mins
    Talk
    Intermediate

    Let's face it, most of us have done pretty lousy job when it comes to software testing. It's no real surprise, software testing is hard. In fact, I believe its one of the tougher challenges in delivery product. Software Testing is expensive! Every test has a cost in design, building, execution and maintenance. Resulting work from finding bugs can blow out any on track project. In an attempt to reduce the cost of software testing, we've resorted to outsourcing and/or test automation. However, this hasn't given us the gains we had hoped for. We still have expensive, brittle, hard to maintain tests that typically take to long to execute and seem to offer little value. What's more, faced with shorter delivery times and the need to experiment rapidly, we simply cannot afford to have long testing lifecycles.

    What are we doing wrong, and more importantly, what can we do to fix it?

    This talk looks at Quality Engineering to reduce dependency on software testing, create faster feedback loops and build product in a more robust way despite uncertainty. A quality approach that allows teams to remain flexible and reactive to change.

    It explores Quality in four key areas, Product, People, Practice and Technology. Using the concepts found in Lean and Context Driven Testing it describes how we can improve quality by reducing waste in our systems in a way that is valuable to a team.

    It also explores the topic of metrics in relation to quality. Many of us in quality have been burnt by metrics in the past. Test case counts and test coverage have done little to help improve quality and have done a lot to develop undue process that inhibits rapid change. Is there a way we can explore metrics at a team level to help us make informed decisions?

    As 'Quality everyone's responsibility', this talk is for everyone, heads of engineering, architects, developers, testers and ops. This talk dispels myths around testing and quality and provides a practical way forward to improving quality in your teams.

  • Liked John Bristowe
    keyboard_arrow_down

    John Bristowe - The State of Mobile App Development: Past, Present, and Future

    John Bristowe
    John Bristowe
    Manager
    Progress Software
    schedule 1 month ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    The mobile app development landscape is filled with a mixture of platforms, tools, frameworks, libraries, development strategies, and runtime environments. Sorting through it all is a daunting task. Picking the wrong platform, technology, and/or strategy can spell disaster for your mobile app projects.

    Having a solid understanding of what’s required for mobile app development helps. However, knowing what the rest of the industry is using – now and in the near future – enabled you to make an informed decision when it comes to tackling your next mobile app project.

    This session will examine the state of mobile app development: past, present, and future. We'll explore what developers are targeting today and forecast what they’ll be targeting in the next 12-18 months. We'll examine industry trends and provide a detailed analysis of the options available: the good, the bad, and the ugly. We'll look at tools and runtime environments. We'll even get our hands a little dirty with some code. You'll walk away with a clear understanding of where we're at and where we're headed.

  • Liked Barry Scott
    keyboard_arrow_down

    Barry Scott - The Joel Test - Mobile Edition.

    Barry Scott
    Barry Scott
    Senior Developer
    Aconex
    schedule 3 weeks ago
    Sold Out!
    30 mins
    Case Study
    Intermediate

    Aeons ago, in the year 2000, Joel Spolsky proposed the Joel Test, a set of questions that he recommends all software development teams should be able to answer “yes” to, in order to help them build great software.

    This talk takes a look at these questions through technical, people, and process lenses, to see if they are still relevant in software development today. It investigates whether we should add any new questions, given the changes that have occurred in the industry in the last 17 years. And looks in to changes to these questions to make them more relevant for development of mobile products.

  • Liked Florian Harr
    keyboard_arrow_down

    Florian Harr - The Internet of Things and Mobile Clients: Don't let your toaster bring down the internet!

    Florian Harr
    Florian Harr
    Software Engineer
    stable|kernel
    schedule 2 months ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    Amazon Alexa, Google Home, HomeKit, and Cortana are more than personal assistants and seem to be the next big battle the big four will go into, but why is this so important to them? There are two components to those assistants; the first is integration with your personalized data gathered from the apps you use and the second is their IoT capability automating your devices at home.

    With almost every manufacturing company hiring engineers like crazy to get their devices into the cloud, the results are very different ranging from really bad to great solutions. This behavior shows that we are in the Wild West when it comes to how cloud integrations, device security, and backend security is being implemented. That is why we as pioneers of this technology have to help shape the future by avoiding common pitfalls, secure private data responsibly and don’t end up accidentally weaponizing our IoT creations.

    In this talk, I’m going to talk about lessons learned from developing a major IoT platform that controls about a quarter million appliances in the US and Canada. We’re also going to take a look at pitfalls we have overcome and which possibly nice looking shortcuts you should avoid no matter how small your iOS client or IoT device is.

  • 45 mins
    Talk
    Advanced

    Automated Acceptance Testing is one of the essential ingredients of a healthy agile software practice. Unfortunately, attempts to adopt this on mobile usually result in the creation of slow, brittle and highly complex UI tests - where did we go wrong?

    This approach is a far cry from the original idea of acceptance testing and does little to improve the reputation of mobile development. Automation is meant to bring confidence – but used in this way, it creates more problems than it solves. This leaves development teams and businesses left on a seemingly never ending quest for the next thing - usually in the guise of a new framework promising to be better than the last e.g. KIF, Calabash, Appium etc.

  • Liked Mitchell Tilbrook
    keyboard_arrow_down

    Mitchell Tilbrook - React Native Better Than Native

    Mitchell Tilbrook
    Mitchell Tilbrook
    Lead Software Engineer
    SeatFrog
    schedule 2 months ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    React Native allows developers to create native cross-platform using JavaScript, or really anything that will compile to JS C#, TypeScript, or even F#. But why would you use React Native? How run-time typed language like JavaScript be a better choice for developing apps than say, Swift, Java, Kotlin, C# ( Xamarin ) or C++ all compile time static type checked languages. Firstly is just that, there is no need for a compile step, React Native can update the JS without having to reload compile and replace the previous application. Compiling an app everytime can take a long time for a small project this might be 1-5min, but larger apps can easily take as long as 45 minutes or more to build a single app.

    In this talk, we will explore how features like hot code reloading allow for much faster edit and run cycles, how you can use tools like Flow or TypeScript to add type safety without incurring the long compile times found in more native methods. To Prove the how simple and fast React Native is to builds apps we will create a simple app live on stage. To top it all off, you can even embed React into existing Native Apps, avoiding the need for total rewrite.

  • Liked Calum Gathergood
    keyboard_arrow_down

    Calum Gathergood - React Native: Building shared components for Android and iOS

    Calum Gathergood
    Calum Gathergood
    Android Developer
    Domain
    schedule 1 month ago
    Sold Out!
    30 mins
    Case Study
    Intermediate

    This talk discusses how Domain implemented React Native Components in their native Android and iOS apps.

    It will cover a brief history of React Native and the lessons learned whilst implementing shared components into existing codebases. Comparing and contrasting development environments of Android, iOS and React Native whilst discussing working together with both Java, Swift and Javascript. Topics include the React ecosystem, modern Javascript development and managing multiple components within a monorepo.

    In addition to the technical aspects, the talk will discuss the impact of React Native and what it means for developers. Bringing forth the question of whether the cross-platform ideology of ‘write once, run anywhere’ is the future of mobile development.

  • Cameron Barrie
    Cameron Barrie
    Founder & CEO
    Bilue Pty Ltd
    schedule 1 month ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    As the future approaches us more and more rapidly, we feel the impact of the choices we make today sooner and with more force. This talk offers practical advice on how to drive and deliver value to a business continuously by building systems that scale to the needs of a business working towards an unknown future.

  • Liked Florian Harr
    keyboard_arrow_down

    Florian Harr - Cross Platform Development with Xamarin! Is It Worth It?

    Florian Harr
    Florian Harr
    Software Engineer
    stable|kernel
    schedule 2 months ago
    Sold Out!
    45 mins
    Talk
    Advanced

    Xamarin as a compiled cross-platform solution claims to offer obvious benefits that seem to make it the perfect solution when trying to reuse code or integrate with an existing solution. The tech industry increasingly requests Xamarin experience and more Xamarin consultancies and startups pop up in the scene, making it attractive for newcomers and job seeker alike. But it wouldn’t be the first solution to promise everything and deliver nothing. With Microsoft’s seemingly disinterest with its own Windows Phone, Xamarin as a Visual Studio native seems to be their biggest stake in the mobile market, but how good is their play and is it worth even looking into this technology?

    Three years ago I wrote my dissertation about the usability of Xamarin, evaluating Xamarin against native development and doing performance testing between the two approaches. Back then, it was clear that Xamarin had a lot of work to do to overcome being a nice product only for a small number of businesses, still lacking a long list of important things. In the meantime, Microsoft has taken over and we see more Xamarin apps pop up every day, so it is time to reevaluate.

    In this talk, we’re going to explore Xamarin as a cross-platform solution and we compare it with other promising solutions such Facebook’s React Native under the aspects of usability and performance. Having heard the talk you will leave with an overview of key technologies in the cross-platform sector as well as an idea when Xamarin can help you boost your business and what pitfalls to avoid. Distilling the essentials of a 110-page dissertation and cleaning up with myths from the PhoneGap era that will make it clear whether or not this is just another bubble or this has real potential.