Submit your Swift, iOS, macOS, or related talks to the best tiny conference in the world! Join us for the 12th /dev/world! The Call for Presenters is now open at https://devworld.com.au/
This week at the Strata Data Conference, in London, Mars and I gave a talk on Science Fictional User Interfaces. It was a very enjoyable talk to prepare, and we were really thrilled to be given a slot at such a technical data-focused conference as Strata, to effectively rant about how great science-fiction is, and how everyone should watch, read, and play more sci-fi.
This post serves to provide some links to resources that we mentioned in the presentation, or that we think you’d find useful if you enjoyed the presentation. We’ll also post a video of the talk here, once it is available (usually a few weeks!)
If you’re interested in reading more about this topic, there’s two amazing books that cover similar ground:
- Science Fiction Prototyping (Brian David Johnson) — available from O’Reilly’s Learning Platform and Amazon
- Make It So (Christopher Noessel and Nathan Shedroff — available from O‘Reilly’s Learning Platform, Rosenfeld Media, and Amazon
There’s also a range of books that take a different angle on a similar topic:
- Designing Agentive Technology (Christopher Noessel) — available from O’Reilly’s Learning Platform, Rosenfeld Media, and Amazon
- Speculative Everything (Anthony Dunne and Fiona Raby) — available from The MIT Press and Amazon
- Typeset in the Future: Typography and Design in Science Fiction Movies (Dave Addey) — available from Amazon
- Extrapolation Factory Operator’s Manual (Elliott P. Montgomery and Chris Woebken) — available from Amazon
And there’s some interesting papers and academic articles we think you might be interested in, if you enjoyed our talk:
- Hopes and fears for intelligent machines in fiction and reality (Stephen Cave and Kanta Dihal) — available from Nature Machine Intelligence
- Long-Term Trends in the Public Perception of Artificial Intelligence (Ethan Fast and Eric Horvitz) — available from arXiv
- “Scary Robots”: Examining Public Responses to AI (Stephen Cave, Kate Coughland, and Kanta Dihal) — available from AIES Conference
This post serves as a pointer to some extra resources, as well as a summary of what we presented!
Full code demo, sample, and documentation for the ‘self-driving car’ that we demoed will be provided on GitHub: https://github.com/thesecretlab/SelfDrivingCar/
Here’s some useful links, as well:
- Unity’s Machine Learning Agents Toolkit — https://github.com/Unity-Technologies/ml-agents/
- Unity’s Paper on Machine Learning — https://arxiv.org/abs/1809.02627
If you enjoyed what you saw at The AI Conf NYC or YOW! Data Sydney, we’ll be presenting a longer version of this at OSCON in Portland, in July. Check it out!
The O’Reilly Software Architecture Conference 2019 (SACon) just wrapped up in New York City, and I was privileged enough to attend as a speaker with my friend and colleague, Tim, and partner and colleague, Mars. Together, we presented a session called Entity-Component-Systems and you: they’re not just for games anymore, and Tim and I did a book signing for our recent title Learning Swift (3rd edition), as well as a Meet the Experts session.I was initially quite sceptical of the SACon, because the idea of an event based on ‘software architecture’ conjured up images of very dry sessions on traditional, serious enterprise architecture, presented by uninspired, uninspiring people. As it turns out software architects, and those who attend software architecture conferences, are incredibly passionate, interesting people, who are the very opposite of the straight-laced faceless people I imagined.
SACon was a melting-pot of interesting ideas, framed around the discussion of software architecture as a profession. O’Reilly’s conferences are always polished, well, run and all that good stuff (disclaimer: as might be obvious, O’Reilly is my publisher), but the attendees and speakers are what makes any conference shine. This conference definitely shone.
All the sessions that I attended were excellent, but the highlights of the conference for me were definitely the following talks:
- Katerina Iliakopoulou’s talk on architecture of the New York Times recommender systems
- Vasanth Asokan’s talk on the architecture used to test in production at Netflix
- My friend r0ml’s talk, Technical Debt: a masterclass
- Seth Dobbs’ talk on leadership principles for architects
- The keynotes from Trisha Gee, Mark Richards (interviewed by Neal Ford), Stuart Halloway, and Glenn Vanderburg (go and check out the list of recommended wide-reading he posted after his. keynote, too!)
The ‘hallway track’ was also exceptional, and we had some fantastic conversations with attendees on topics ranging from the rise of the Rust programming language to the use of ECS in non-video games to the merits of the Swift programming language to designing video game engines, and beyond.
Tim and I really enjoyed our book signing, and found ourselves face-to-face with one of the biggest queues we’ve ever had for a book signing, and had some excellent conversations with developers, architects, and team leads who were excited to learn Swift from our book, or share it with their teams back home.
Our ECS talk went well! We had a packed room (which was also one of the most palatial conference halls we’ve ever spoken in!) and got 5-star reviews with great feedback.
If you’re interested, you’ll find the slides from our talk on ECS are available via the conference website. You can also find a video embedded below, or on YouTube, or O’Reilly’s Learning Platform. (if you have an O’Reilly Learning Platform subscription, we strongly recommend watching it there!)
There’s some follow-up resource we want to share with attendees of our talk. We hope you find them useful!
- Catherine West’s RustConf closing keynote on Rust for Game development
- Entity Systems are the future of MMOG development by Adam Martin
- ECS and DoD slides by Aras Pranckevičius (Unity)
- Data Oriented Design and C++ CPPCon talk by Mike Acton
- Machine Architecture: Things Your Programming Language Never Told You talk by Herb Sutter
- What Every Programmer Should Know About Memory paper by Urlich Drepper
- The amazing talk on Blizzard’s implementation of ECS in their popular game, Overwatch, from GDC 2017
Also available via O’Reilly’s Safari, if you have a subscription (a free trial is available!)
I’m making an effort to try new ways of communicating, and also to encourage myself to write more. As part of this, I’ve started a little newsletter.
So, if you’re interested, feel free to sign up over at TinyLetter… 🙃
I won’t be sending many emails, and I won’t be sharing or selling people’s contact information, but if you’d like to keep up to date with my travels, dogs, books, work, and things that I find interesting, this might be of value to you!
That should come as no surprise to anyone. But here’s how they’ve been evil to me this time. Can anyone help?
On 19 September 2018 I filed a AFCA (then FOS) complaint, outlining the following:
I can’t access my credit card in NetBank. It’s disappeared. CBA is confused. Statements have vanished and are not being provided. I can’t pay the card in NetBank, as NetBank claims the card doesn’t exist (and I can’t get statements to see how much I owe).
CBA arrears department keeps calling me at 8:15 every morning (7 calls so far) with no knowledge of my complaints.
Happy to pay, just can’t because of technical failings of CBAs.
This started happening after I used the button in the CBA app on my iPhone to request a replacement card. A feature they advertise and seem to support.
No new card ever turned up, but instead my card disappeared from NetBank, I lost the ability to pay it, and CBA started harassing me.
I tried to be responsive to CBA, and called them regularly about this.
In response to the FOS/AFCA complaint, CBA has claimed to send a replacement card about ~4 times now. I’ve never received a replacement card.
I get emails from NetBank when a new statement is available (screenshots below), but I cannot get statements in NetBank (screenshots also below). CBA has emailed me a few statements, back in October, but never provided any since.
When no card turned up CBA, at my request, gave me BPAY credentials for the card. So I sent what I guessed was the outstanding amount to the BPAY credentials. It bounced back within 7 days. Charging me a dishonour fee. Wonderful.
Now, here we are, months and months later. I still have no credit card.
CBA referred me to a dispute resolution team member, Jonathan, who was utterly incompetent: he ignored me for weeks at a time, then came back with his final resolution… to close the card account… and not do anything else?
Recently, CBA has now listed missing payments for the credit card on my Equifax/Veda credit file/credit history. This makes it impossible, for example, for me to get a business loan, or get a replacement credit card from another bank. They have listed so much stuff on my credit file, my credit score has tanked to ~200.
In the last two weeks, CBA booted the incompetent Jonathan off my case and handed me to Tina and Elias, who seemed better at first, but then came back to me with a verbal offer:
- they would pay me $1,000 for the inconvenience
- they would waive the entire credit card debt (approximately $1,500)
- they would close the credit card account (I told them I didn’t want to be a CBA customer anymore after this—this is true, we’ve started migrating Secret Lab to Bendigo Bank)
- they would remove the stuff they put on my credit files
When the offer turned up in writing, they had changed the last element to be, instead, “If the Bank has caused an error to the Customer’s credit reporting due”. Calling them to confirm resulted in them telling me that they would not be fixing the credit reporting, as no error was caused. So I have to decline their offer.
Now I have no credit card (this is my only non-AMEX credit card), a ruined credit history (directly impacting my business), and zero access to get CBA to fix this.
Don’t use CBA. They are evil.
Oh and I’m still getting statement emails from them. Even though no statements are available!
A few weeks ago I attended, and spoke at, my 10th OSCON conference. I regularly say that OSCON is my favourite big conference, and every time I attend I’m reminded why I love it, and how much I love it: OSCON is a fun, relaxed, and very approachable place where companies and people involved in open source as contributors, consumers, and users, interface, work with, and have fun with each other. It’s unique in perspective, content, and value. And it’s super engaging everywhere from the lunch hall to the hallway to the sessions and in between. You should go, if you get the opportunity (O’Reilly runs a wonderful diversity and inclusion program, which make me able to help you make it along!)
This year was OSCONs 20-year celebration event! 🎉 If you have a Safari subscription, you can check out the videos from the event here. There’s also a collection of keynotes and interviews from the event on the O’Reilly Media YouTube channel.
On the Monday, Tim, Jon, and I presented a 3 hour session on Open source game development with Godot. Godot is an amazingly polished, and entirely open source, game development engine; Godot is a project of the Software Freedom Conservancy, and is aggressively competitive against the big commercial engines, like Unity and Unreal. I largely led this tutorial, supported by Tim and Jon. We got great feedback from our attendees, and had a full house. I’ll post the material from the workshop in the coming week.
On Tuesday, Tim, Jon, and I presented a 3 hour session on Machine overlord and you: Building AI on iOS with open source tools. We covered everything from CoreML, to Vision, to Apple’s Turi Create Python libraries. Our attendees loved it, and gave us great feedback; it was a fun precursor to our new book, Practical AI with Swift (more on that soon!) You can find the material from this OSCON session right here.
On Tuesday night, I stepped way, way out of my comfort zone and presented a 5 minute Ignite talk on The realities of weightloss. This talk was based on a seed of an idea that Mars had, which I’d taken and run with in a slightly different direction (with her permission). It seemed to resonate with the audience, and I got a lot of thanks, and hugs, from people afterwards. ❤️
The next day, Wednesday, saw us doing our traditional book signing (for the latest Learning Swift) in the O’Reilly Media booth of the expo. We had a huge line of people, and signed for about 45 minutes. It was great fun! The O’Reilly staff treat us like royalty, which always makes us feel very special.
On Thursday, in the second-last slot of OSCON 2018, Tim and I teamed up with Mars to deliver an entirely-live coded talk on Learning Swift with Playgrounds. Mars wrote all the examples, designed the flow, and really got thrown in the deep end—and she totally nailed it! Tim provided an excellent narration of proceedings, as Mars live-coded her way through the demos (with Xcode crashing, as is custom!) We got many fabulous reviews, with the talk getting a 4.9/5 ⭐️ average. We were thrilled. You can find some notes here, and the fabulous Playground that Mars wrote here on GitHub.
We really love working O’Reilly, particularly our amazing editor, Rachel Roumeliotis, who has risen the ranks of the company while we’ve been working with her (absolutely no connection to us working with her!) and is now a VP of Content Strategy.
We’re doing a bunch of great projects with O’Reilly over the coming year or two, including finishing up a new edition of our iOS Swift Game Development Cookbook, as well as a new Unity Game Development Cookbook, a Head First Swift book, and a brand new title, Practical AI with Swift. More updates on all of these soon!
Our latest edition of Learning Swift is available, and getting a bunch of great reviews, and our Mobile Game Development with Unity remains a fabulous guide to building games with Unity. Check them out?
I’ll leave you with one of my favourite tweets of the event, which someone sent following our Learning Swift 3rd Edition book signing:I can’t wait for next year’s OSCON: July 15-18, again back in Portland!
The conference that I help run, /dev/world/2018, is selling tickets!
We have amazing keynotes from the following people:
- A Software Engineer from Savage Interactive, creators of hit iPad art app, Procreate
- Quentin Zervaas, creator of Apple Design Award winning app, Streaks
- Richard Moss, author of The Secret History of Mac Gaming
And we have workshops!
- Quality assurance and testing fundamentals for small teams
- Refactoring a horrible codebase guided by tests
- Adding AI to your applications with TensorFlow Lite for iOS
- Property Based Testing in Swift
- UX for Developers
- xcodebuild for fun and profit
- Accelerated App Development Using CloudKit: Idea to Featured in a Week
- Ada on an iPad?
- Batteries and Locks: Modern Tech from Ancient Times
- Build your own synthesiser
- Building Frameworks Natively in Swift
- Dancing with Attitude – Building experiences with CoreMotion
- Designing for iOS: Resources You Gotta Know
- Fun with fudge factors: prototyping vague things
- How to go from bad practice to best practice
- How To Make It Look Like You Know What You Are Doing
- Let’s settle this UI/UX thing once and for all
- Machine Learning …without the Machine
- Making a visual novel in HyperCard
- Mis-using Bluetooth wristbands to enhance cognitive accessibility of an app for inpatients with severe brain injuries
- Performance Tips & Tricks with Unity on iOS
- Push Notifications and the Limits of Innovation
- Rewriting Alamofire: Into the Core
- SIL for First Time Learners
- Solving the Massive App Problem: Rearchitecting a 5 year old codebase
- State Machines are your friend
- Structuring Your Code with the Model-View-Presenter pattern
- Swift, for Objective-C OGs
- The State of MVC
- There And Back Again with the Roundtrip App
- Tools for testing, logging, and analytics-ing your code
- VIPER for iOS
We’ll also have a dinner keynote, during our famous quiz, from Paul Fenwick! It’s going to be amazing! Grab a ticket?