April 21, 2017
We’ve been working with some awesome folks to build a great library of training material for game development with Unity.
These videos are designed to accompany and support our upcoming book, Mobile Game Development with Unity (also on Amazon and Safari).
Here’s what we’ve been working on:
If there’s no purchase available yet, there will be soon! Everything is available on Safari right now, though.
We’ve also got some new “Learning Path” videos, exclusively out on O’Reilly’s Safari platform:
Our newest books are also available now:
One of the best ways to look at all the training we write is on O’Reilly’s Safari platform (which has a free trial). It’s like Netflix for technical training and books.
April 21, 2017 02:25 AM
April 03, 2017
This year, Jon gave a talk at GDC called “Making Night in the Woods Better with Open Source”. In it, he talked about how Night in the Woods (which came out last month and you should totally go buy) used the open source process in its development.
Unlike most of our other talks, we did something a little ridiculous with this one – we built an entire presentation system, from scratch, into Night in the Woods. We’re actually pretty proud of this, and so we put together a video showing how it was done. Check it out!
April 03, 2017 03:04 AM
February 26, 2017
Tomorrow I start a Law degree at the University of Tasmania. I’ve wanted study Law for a long time, and originally considered enrolling when I first started University –– instead, I did a BA (in History), a BComp, and then Honours in Computing, and finally my PhD.
Now I’m enrolled in a Bachelor of Laws, a large portion of which I get credit from my preexisting degrees for, and plan to study part-time for the next few years. I’m not sure if I’ll finish the degree, or even whether I’ll stick with the same degree (there’s also a Bachelor of Legal Studies, which is for those who want to study Law but not practice it, and I’m not sure if I would want to practice).
As I’m studying part-time, this doesn’t really impact anything with Secret Lab, or our writing, but it’s a fun new adventure regardless. I’ll post some updates about this, occasionally.
February 26, 2017 06:41 AM
February 15, 2017
Last week, a rather heavy document envelope showed up in the mail.
Inside I found a heavy buff-coloured envelope, along with my passport — now containing a sticker featuring an impressive collection of words, numbers, and imagery of landmarks from the United States of America. I’m reliably informed that sticker is the valid US visa that I’ve spent the last few months applying for.
Having that visa issued has unblocked a fairly important step in my path to moving in with Josh (as well as eventually getting married, but that’s another story). I’m very very excited about making the move, though very sad to be leaving the city I’ve grown up in and come to love, for the time being.
Unrelatedly, I happened to have a trip planned to Montréal to attend ConFoo in March. Since I’ll already be in the area, I’m using that trip as my opportunity to move.
My last day in Hobart will be Thursday 2 March. Following that, I’ll be spending a day in Abu Dhabi (yes, there is a good reason for this), followed by a week in Montréal for ConFoo.
After that, I’ll be moving in with Josh in Petaluma, California on Saturday 11 March.
But until then, I definitely want to enjoy what remaining time I have in Hobart, and catch up with many many people.
Over the next two weeks I’ll be:
- Attending, and presenting a talk at WD42 — my talk will be one of my pieces for ConFoo, and is entirely new material. Get along!
- Having a farewell do, *probably* on Tuesday 28 February (but that’s not confirmed yet). I’ll post details about where and when that’ll be in the near future (once I’ve made plans)
- Madly packing and making sure that that I use up as close to 100% of my luggage allowance as possible
If you want to find some time to catch up over the next couple of weeks, before I disappear for quite some time, do let me know.
February 15, 2017 08:33 PM
January 01, 2017
2016 was, undeniably, a length of time containing 366 days and a leap second.
For me, there were a bunch of highlights that it would be amiss to let pass without recording on this blog, so here goes:
- At linux.conf.au 2016 in Geelong in February, I announced linux.conf.au 2017 in Hobart. Over the last year, the conference team and I ran a wildly successful CFP, found 4 amazing keynotes, and lined up what looks like it should be an excellent conference. The only* thing left to do is actually run the thing.
- At PyCon in Montréal in 2014, I ran a BoF session for regional PyCon organisers. Two people from the Dominican Republic showed up and asked for our help in starting a PyCon in the Caribbean. In February 2016, I got to go to that conference, and it was incredible!
- On that note, I got to continue building on a deeply wonderful relationship with the amazing Josh Simmons that we started in 2015. Over the course of 2016, we got to spend time with each other on no fewer than 6 occasions, both in North America, and here in Australia. We met (and got along quite well with) each others’ friends and families. We spent time living together, and have made big steps towards living together permanently this year. Frankly, I could do a whole post on this and I’m not sure why I haven’t.
- On a slightly related note, I spent 92,000-odd miles in the air this year. Much of that was spent ducking over to the US to spend time with Josh; some of the rest was with Josh, and some of it was alone. I got to see some wonderful places I’ve never seen before, like the Grand Canyon and Hoover Dam, an actual northern hemisphere winter with snow and everything, and driving up the Californian coast from Los Angeles.
- … and one night in May, on the Steel Bridge in Portland, Josh and I decided that we should get married.
So those are some of the highlights of my year. It’s been entirely not bad, in the grand scheme of things. Hooray!
January 01, 2017 07:52 AM
December 09, 2016
It was an honour to be recognised with a 2016 “Gold Disruptor” award (in the “ICT Professional of the Year” category) at the ACS Digital Disruptor Awards in Sydney last week. It was a fun day of events, and there were amazing nominees in all the categories.
Thanks to the ACS for the photo, and thanks to me for doing a silly face in the photo.
December 09, 2016 04:33 AM
November 27, 2016
Our new book is out! We worked really hard on this amazing book! Learn about space, astrophysics, and Kerbal Space Program, the best realistic space program simulator!
November 27, 2016 01:02 AM
November 22, 2016
Tim, Jon, and I have been working with O’Reilly Media on a free report covering the latest version of Apple’s programming language, Swift 3.
You can download it, for free, over at the O’Reilly website. The report covers:
- a high-level view of Swift 3’s changes and new features, and learn how this version differs from Swift 2
- the Swift Evolution Process and the full list of accepted proposals—including those not yet implemented
- Swift 3’s changes to the language’s syntax, standard library features, and other areas
- Swift 3’s use on the server, and use a simple program to learn about Swift’s use on Linux
- further resources for learning about, working with, and converting projects to Swift 3
November 22, 2016 08:03 AM
October 05, 2016
August 23, 2016
Yesterday I was interviewed for The Tasmanian Entrepreneur Show, a great new podcast run by my friend Nigel Honey. We spoke about how Secret Lab got started, what we do, and how and why we do it. You can listen to my episode over on the website, or subscribe on iTunes.
It was great fun, and the whole series is excellent! Go listen!
August 23, 2016 01:40 AM
August 01, 2016
Over the last weekend I took place in GovHack 2016 at the Hobart site. This was the 4th time that I’ve participated in GovHack, and – as usual – it was an excellent event! I formed (what is now becoming the usual) team with Jon, Tim, Josh, Rex, Seb, Matthew, and Arabella, and we built a game out of the data-sets.
The game we built involves players taking control of news readers on flying news desks, grabbing images and matching them to headlines. It’s called Beat the Press and you can learn more about it on the project website, and through the video we made:
Thanks to my awesome team members for working so hard on art, music, data-wrangling, copy editing, video production, programming, design, and game design over the weekend! Thanks also to Craig Clark for hosting a fabulous event, as well as the other volunteers in Hobart, and everywhere else!
August 01, 2016 07:14 AM
July 13, 2016
This is what a computer linux hacker looks like.
I’ve been working with Swift for Linux, as part of a bunch of teaching material, as well as some conference talks that we’re working on. It’s not super easy to figure out, from searching, the best way to install Swift and Linux, if you’re a Mac user who wants to have a go with it. Here’s what I’ve found.
As it turns out, after extensive research, my feeling is that the best way to run Swift on Linux (on a Mac) is using Vagrant and VirtualBox. I’ve looked at a variety of options, including setting it up manually in a VM, using Docker for Mac, and so on, but this turned out to be the easiest way to do it, and maintain it.
To get Swift on Linux running, on your Mac:
- Download and install VirtualBox.
- Download and install Vagrant.
- Make sure you have Git installed, and clone the following repository: https://github.com/IBM-Swift/vagrant-ubuntu-swift-dev.git
- Once you’ve cloned the repository, change directory into it: vagrant-ubuntu-swift-dev
- Run the command: vagrant up
- Wait. The vagrantfile included in the repository you cloned, which tells Vagrant what to do, downloads Ubuntu 15.10, the Swift prerequisites, the prerequisites for libdispatch, the Swift concurrency library, the Sphinx documentation system, and then clones the Swift repository and creates a script that allows you to build Swift. (This might take a while, and will download a few gigabytes of stuff.)
- Once Vagrant is done, you can run the following command to connect to the Linux installation: vagrant ssh
- Then, once in Linux, run the following script to build Swift: /vagrant/swift-dev/swift/utils/build-script (This might also take a while, depending on the speed/capabilities of your computer.)
- You can then run the following command to verify Swift is up and running: swift –version
- You can then create some .swift files, and compile them with the swiftc command.
Easy! Hope that was helpful to someone.
July 13, 2016 04:32 AM
July 07, 2016
We’re running online Swift programming training with our publisher, O’Reilly Media, in a week or two (July 20 and 21, US West Coast time). You can learn more and register over on the O’Reilly website. We’re really excited! Attendees will all receive an electronic copy of our new Swift programming book, Learning Swift.
July 07, 2016 02:32 AM
July 06, 2016
You might have noticed earlier this week that linux.conf.au 2017, which is happening in Hobart, Tasmania (and indeed, which I’m running!) has opened its call for proposals.
Hobart’s a wonderful place to visit in January – within a couple of hours drive, there’s wonderful undisturbed wilderness to go bushwalking in, historic sites from Tasmania’s colonial past, and countless wineries, distilleries, and other producers. Not to mention, the MONA Festival of Music and Arts will probably be taking place around the time of the conference. Coupled with temperate weather, and longer daylight hours than anywhere else in Australia, so there’s plenty of time to make the most of your visit.
linux.conf.au is – despite the name – one of the world’s best generalist Free and Open Source Software conferences. It’s been running annually since 1999, and this year, we’re inviting people to talk abut the Future of Open Source.
That’s a really big topic area, so here’s how our CFP announcement breaks it down:
THE FUTURE OF YOUR PROJECT
linux.conf.au is well-known for deeply technical talks, and lca2017 will be no exception. Our attendees want to be the first to know about new and upcoming developments in the tools they already use every day, and they want to know about new open source technology that they’ll be using daily in two years time.
OPENNESS FOR EVERYONE
Many of the techniques that have made Open Source so successful in the software and hardware world are now being applied to fields as disparate as science, data, government, and the law. We want to know how Open Thinking will help to shape your field in the future, and more importantly, we want to know how the rest of the world can help shape the future of Open Source.
THREATS FROM THE FUTURE
It’s easy to think that Open Source has won, but for every success we achieve, a new challenge pops up. Are we missing opportunities in desktop and mobile computing? Why is the world suddenly running away from open and federated communications? Why don’t the new generation of developers care about licensing? Let’s talk about how Software Freedom and Open Source can better meet the needs of our users and developers for years to come.
WHATEVER YOU WANT!
It’s hard for us to predict the future, but we know that you should be a part of it. If you think you have something to say about Free and Open Source Software, then we want to hear from you, even if it doesn’t fit any of the categories above.
My friend, and former linux.conf.au director, Donna Benjamin blogged about the CFP on medium and tweeted the following yesterday:
At @linuxconfau in Hobart, I’d like to hear how people are USING free & open source software, and what they do to help tend the commons.
Our CFP closes on Friday 5 August – and we’re not planning on extending that deadline – so put your thinking caps on. If you have an idea for the conference, feel free to e-mail me for advice, or you can always ask for help on IRC – we’re in #linux.conf.au on freenode – or you can find us on Facebook or Twitter.
What does the future of Open Source look like? Tell us by submitting a talk, tutorial, or miniconf proposal now! We can’t wait to hear what you have to say.
July 06, 2016 01:21 AM
June 05, 2016
/dev/world/2016 tickets are now on sale! /dev/world is a fabulous iOS and OS X (and associated ecosystem) developer conference that played no small part in kickstarting many parts of my career, and for the last few years I’ve been helping to organise the event.
/dev/world/2016 runs in Melbourne on August 29-31, 2016. The conference covers developing on and for iOS and OS X, using Swift to Objective-C, and everything in between. We’re selling our best-priced early bird tickets right now over at devworld.com.au
We’ll be announcing more and more sessions, workshops, and feature presentations over the coming week. I’d love to see you in Melbourne! Let me know if you have any questions, or would like to sponsor the event.
June 05, 2016 09:00 PM
June 03, 2016
We’re running iOS Development with Swift (programming) training online for O’Reilly Media in July. Registration is now open, and we’d love to have you aboard! Over two days, we’ll take you from no Swift to enough Swift for iOS apps, and an understanding of how to use the iOS frameworks. You can learn more, or register on the O’Reilly website. Attendees of the online training also receive a copy of new book, Learning Swift.
If you just want a discounted copy of our latest book, Learning Swift, you can currently buy the ebook at 50% off through O’Reilly’s Swift sale! Use the code WKLSWFT (works until 5 AM San Francisco time, on June 11).
June 03, 2016 11:27 PM
May 15, 2016
At the beginning of May, Jon and I visited Atlanta, Georgia, for IA Summit 2016. This is the second time we’ve attended at the IA Summit: last time was in 2012, in New Orleans. This year, we presented the latest iteration of our game design talk, “How Do I Game Design?”.
As promised during our talk, here’s links to a couple of the things we talked about:
A video of an earlier version of this talk was captured at OSCON 2015, and you can find it on YouTube. You can also find the slides from the IA Summit 2016 version on Speaker Deck.
I really enjoyed our second visit to the IA Summit, and definitely hope to come back next year! A particular highlight of the conference was the games night, which is quite unique to the IA Summit –– I love it! Highlights from the talks include:
- Léonie Watson’s keynote about accessibility and inclusion, which featured a slide deck composed of movie quotes.
- Lisa Welshman’s keynote on how design can impact real human beings.
- Jesse James Garrett’s 7-in-1 closing keynote on… well, everything the IA industry needs to know?
- Dan Ramadan’s talk on “Taxonomies, Tags, and Trajectories at the BBC”
- Jorge Arango’s talk on “Placemaking Lessons from the Magic Kingdom”
- Stephen Anderson’s talk on “How To Design A Concept Model”
… but everything I attended was amazing. There’s lots of great photos of the event, not taken by me, online here. Thanks to the organisers, volunteers, speakers, and attendees for putting on an amazing event!
IA Summit 2016 was one of the most diverse-feeling, inclusive conferences I’ve ever been to, and the community –– while, as game designers, we only really sit on the intersection of it and many other communities –– is incredibly welcoming and friendly.
Atlanta was also an amazingly friendly city, with a lot of interesting attracting (oh my, go and visit the Georgia Aquarium!) I’m looking forward to getting an opportunity to revisit it in the future! I’m also really looking forward to venturing to Vancouver, for IA Summit 2017.
May 15, 2016 01:23 AM
May 12, 2016
Once again we are on the run, today was a brilliant ride up the coast. Nice speed limit and winding roads with good (dry) weather. After picking up some food in a local town we pulled up short of our desired campsite due to running out of daylight.
This was the first time we have been able to light a fire, as carrying firewood isn’t much of a option we were in luck that this campsite had stacks of wood allowed to be burnt within the camping grounds.
May 12, 2016 11:12 PM
After been kicked off the boat at what the heck time is this o’clock we sat down at a cafe to fill our stomachs before venturing into the heart of Melbourne for camping supplies. Got what we were after and promptly high taled it out of Melbourne central before anything could halm us.
For most of the day it was a drizzly messy day so any break from the weather was welcome.
We came across a cafe with lovely murals and carvings out on display it was a great find.
Got a place at Lakes Entrance to dry off and repack for the next day’s ride.
May 12, 2016 10:52 PM
Today we left the warmth of Longford and headed out to Beaconsfield. Here we checked out the mining museum, there are plenty to see if your into history. The museum is filled with history of the mining site but also has lots of interactive displays with industrial equipment and other information about life in the area.
Having a section where manikins were setup hiding in and around the ruins was a startling experience even when u had been warned they were there.
It was rather fascinating.
Our ticket into the museum was a tag that we had to leave place on the board before climbing the tower. It was a great way to spend the afternoon.
We stayed in the area for lunch and then high tailed it to Devonport as we knew the weather was going to cave in on us.
Which it did, and we got absolutely soaked :/
Managed to find shelter while waiting to board the boat which was a little relief. It was good that it stopped raining when we had to line up to get on, though our gear was still wet not having to endure sitting in the rain was well welcomed.
May 12, 2016 10:32 PM
Today we packed up our gear from the rocky hard but very flat campground that the parks allowed us to camp on.
I really wanted to go for a walk up to the lookout over wineglass bay, so we did!
We wanted to get closer to Devonport but not stay in Launceston. After searching for accommodation while consuming food at Cambell town we landed us a spot at Longford which to our luck the Agfest was long over.
May 12, 2016 01:21 AM
May 09, 2016
Greeted the morning and setup my GoPro for a time lapse of the sunrise over the Bay, here are some teaser photos I took from my phone until I proccess the images (no computer with me).
After packing up camp we headed over to freycinet with the intent on camping the night here.
Camping in the park is allowed, though after looking at the campsite surface is wasn’t the best.
It suited our purpose and was a nice view of the bay.
May 09, 2016 11:09 PM
May 06, 2016
Location Location Location!
Tonight we pulled up short, because this place is beautiful.
And I’m talking about the Bay of Fires also know as Binalong Bay.
With our parks pass purchased the first day we got off the boat it’s about time we put them to use, so it camping under the stars for us tonight.
But what a view!!
I will be taking a few more photos tomorrow of the bay itself, as the above photos are from around our campsite accross the bay.
May 06, 2016 11:40 AM
Today we headed out of Tullah and to Low Head just outside of George Town.
Though we took a detour over to see a cave at Mole Creek.
Here are some images of King Solomon Cave.
As you can see, these are beautiful caves. I just wish we had more time to see a few more in the area.
After a quick lunch break at a near by town we got footed it over to Low Head to ensure we could get a cabin for the night and be ready for the Penguin Tour!
I wish I could bring one home with me but alas they guides said it was not allowed
As you can see we were able to get really close to them, standing still and without casting a shadow they just waltz up their normal path on the way to their home.
May 06, 2016 11:14 AM
May 05, 2016
After looking at the weather report and friends posting images of snow on the mountain we placed enough clothes on to ensure our warmth during the day.
Shortly after setting off, we find snow on the side of the road!
This made our day a bit slow going as we didn’t want to run into any black ice along the way.
We were originally going to head for the top North West of Tas, somewhere like Smithton, this was revised to a Corrina due to us running out of daylight. This we knew was going to be ambiguous givin the road we choose was unsealed. After hitting the unsealed part of the road and hanging on for dear life as we tried to keep the bikes upright, it was described that we should turn back and head for a town called Tullah.
We stayed the night here, there was very little reception and what you could get was hopping on one leg in a circle to get one bar on the Telstra edge network.
Images of the Reece Dam
May 05, 2016 12:39 PM
As you may see day 9 is missing, this was mostly taken up with repackaging and me going to see a specialist about the pain in my chest.
Good news I’m not going to die just yet!
So everything is packed and we are ready to set off and..
My bike wouldn’t start
Turns out that you can run the bike battery flat by leaving the accessories one for two days, total oversight on my behalf.
So got the bike jump started and headed down the road to Sullivan’s Cove Whiskey join. Spent some time here tasting their produce partook in a tour while praying that the weather would ease off.
We then took off to Derwent Bridge, it was late when we arrived, cold and starving we decided to get a room at the pub for the night to allow us to dry out our gear and have a good nights rest.
May 05, 2016 11:45 AM
Today after struggling to get up (late night) we moseyed down to the tahune Airwalk, it’s a beautiful spot with a few walks around the area. The key attraction is the canter lever platform overlooking the vast forest of trees.
Below is a model of the platform..
The walk around was absolutely stunning, as we were in a car today there is no GPS data avaliable. I will however leave you with some of the images that I like.
May 05, 2016 11:30 AM
May 03, 2016
So the working week is over, time to have some fun and get back on the road.
After a week of coughing and doing myself a injury I really wanted to get back on the road.
Today we rode down to Gordon Dam, it’s a nice road and the scenery was amazing.
After loosing Josh at a roundabout on the way back we managed to regroup and head on home.
Thanks Max for taking us on this magnificent ride!
The ride took it out of us so we borrowed a car and headed down to Hounville to visit some friends for a night activity.
May 03, 2016 10:35 PM
We had a leasurly ride from Devonport to Hobart today.
Had breakfast in one of the local cafes, filled up and set off.
We didn’t get far until we needed to refill our fuel bottles to support the warmers and stove that we both use (bottles had to be emptied to go on the ferry).
With extra layers on and warmers burning we set off again.
Weather was kind to us and we arrived very exhausted but happy from the days ride.
Over the next week we will both be working from Tas to make up the extra trip time we have losses due the ferry not having space to take us sooner.
May 03, 2016 12:32 PM
April 26, 2016
Time for me to fill you all in on some work I’ve been doing in preparation for linux.conf.au 2017. I’ve been looking into how we can better run the conference website, and reduce the workload of our volunteers into the leadup to the conference.
linux.conf.au has, for the last 10 conferences, used a home-grown conference management system called Zookeepr. I got administration experience in Zookeepr after being involved in running PyCon Australia for a couple of years, and continued to help manage registrations for the years following. While Zookeepr is a venerable piece of software, my 4 years of experience with it has helped me become familiar with a bunch of its shortcomings. Most of these shortcomings are in the area of registration handling.
A problem with conference management software is that the people who come to develop on it are often highly transient — they’re conference organisers. They show up, they make their modifications, and then they get as far away from developing it as possible. Zookeepr’s been affected by this, and it’s meant that difficulties with workarounds are usually overlooked when fixing things.
So I decided to look elsewhere.
Back in 2012, the Python Software Foundation funded a conference management suite called Symposion.
Symposion solves a bunch of problems that Zookeepr solves, and more importantly, it doesn’t suffer from the lack of continuous contributions that Zookeepr has: It’s an actively-maintained app, built on Django, and it has a community of developers supporting it in the form of the Pinax project. In the Python world, it’s used for a very large number of conferences, from PyCon US (a big conference, getting some 1000 talk submissions yearly), down to local regional conferences like PyOhio. It’s well known, and improvements to the system aren’t contingent on conference organisers maintaining interest in the system after they stop running conferences.
Unfortunately, for various reasons, Symposion doesn’t handle conference registration.
So after OSDC2015 in Hobart successfully ran their conference website with Symposion, I decided to plug the gap. In January this year, I jotted down all of the things that I thought was good about Zookeepr’s registration system, and thought about how I could go about objectively improving upon it.
I threw together a data model, and wrote a test suite, and liked what I saw. I asked the Python Software Foundation for a grant to let me do some concerted work on the project for a month or so, and they accepted.
The result is Registrasion (that’s Registration for Symposion (sorry)). I’ve just put out a 0.1 release, which I believe is suitable for running a conference if you’re happy to pull data out of the system with SQL queries, and take payments with bank transfers.
Registrasion was designed with a few key goals in mind, all of which came from observing how Zookeepr struggled around some frequent edge cases that, incidentally, come up late in the process of running a conference. Those late-occurring edge cases are invariably the ones that don’t get fixed, because volunteer conference staff all need to go and run their conference.
In particular, I focused on:
- Eliminating manual work for registration managers (Zookeepr has a lot of that)
- More flexibility in how we automatically offer certain items to end-users (selling flexible accommodation dates was a difficulty one conference year had)
- Handling money properly, so that it’s possible to easily reconcile inventory and what’s in the invoicing system
Many of these goals solidified after talking to past conference organisers, who’d all used Zookeepr.
I’m quite proud of a few things in Registrasion. The first is that Registrasion makes it really easy for attendees to add extra things to their registration as they decide they need to. We also take care of automatically giving out freebies that attendees forgot to select during initial registration. In PyCon AU’s case, that’s a lot of manual work we can avert.
Another is a really flexible way in managing what parts of the inventory are available to our users, and at what time. We can show and hide items based on voucher codes, or based on whether they have other products selected. This averts a whole pile of manual work that a past linux.conf.au reported, and I’m glad that our year won’t have to
Finally, I’ve made sure that Registrasion has a lot of documentation. It was a key goal to make sure that new conference organisers can understand vaguely how the system fits together. Python’s tools, and Read The Docs, has made this very very easy.
There’s a pile more work to be done, but there’s also plenty of time before lca2017 opens its registration (in October, probably?). But so far, it’s been super-fun to dive back into Django development, given it’s something I haven’t played with in a few years, and to solve a problem that I’ve been dwelling on for a couple of years now.
Hopefully, in Registrasion, we’ve got a piece of software that can serve the community well, will find use outside of LCA, but will still serve LCA’s needs well for years to come.
If you’re interested, please come along and contribute! I’d love to have you on board!
April 26, 2016 11:41 PM
April 23, 2016
Today was a lazy start, we had plenty of time to do what ever we please. So after packing up grabbing some breakfast at the local bakery then headed for some twisties.
Josh then navigated us around Melbourne to the Oasis Bakery. Grabbed a bite to eat so we don’t have to consume the boat food, it was rather good and I would like to go back.
To kill some time we perused the store that is part of the Oasis Bakery, coming out with a handful of stuff that ended in some expletives when trying to pack it all on the bike.
So we are now on the boat!
Bike is tucked in for the night, and the journey to Tas begins!!
April 23, 2016 09:14 AM
April 22, 2016
We are deep into uncharted territory now, haven’t ventured this far south on our bikes until now!
It was raining last night so we had to pack up wet tents, though the rain has held off during the day which is a bonus.
The wind has been especially bad, causing extra fatigue trying to keep the bike on the right side of the road. Shortly after setting out we stopped and switched out to the wet weather/winter gear just for the extra warmth with the driving wind.
Had a slight hiccup at the Vic boarder crossing. I was unaware that I passport was needed. Anyway managed to buff my way through that little bit of excitement.
So yes we are in Victoria now, staying in a little campervan place in a small town called Nagambie. Our first choice of places was fully booked out, then it dawned on us that it’s the ANZAC long weekend. It’s all good though we have somewhere to sleep and with any luck our tents will be dry by morning.
Had to do a bit of running repairs to my bike, left front indicator has fallen off. I knew the lower bracket had broken, but the only other screw holding it has now failed as well.
As such I have zip tied it togeather until I can get some time in Hobart to give it another lookin.
We will be on the boat tomorrow night, so I’m unsure if I will beable to type my daily report due to being at sea and WIFI doesn’t cover the area :p
I have updated the maps so they now link to the raw data for each day.
I will do something more when I get to a computer but it will help give more detail if you are interested in that stuff!!
April 22, 2016 10:23 AM
Mostly pushing on to Melbourne, we had a slight hiccup in our plans.
We totally didn’t forsee the need to book the ferry way in advance. So we are stuck on the 9th May sailing back.
This slightly extends our original time so we have applied to do a week of work in Tas to make up for the time loss.
We stopped at Parks Telecope for a bite to eat on the trip today, it’s a nice little cafe and do a good feed.
We ended the day at: West Wyalong
Nothing overly special here, though the show grounds do allow people to camp, so that’s what we are doing tonight!
And the journey map for today..
April 22, 2016 09:50 AM
On the road again…
There were a few good twisties along the way today, making good progress to Melbourne.
Today we have stopped at: Gilgandra
Been passed Gilagndra a few time before, but never stayed the night.
Made a few rest stops along the way, mostly to keep my sanity and rest is good when riding a bike.
I purchased some more sugar today in the hope that I won’t fall asleep. I did get a good night sleep out at Texas though I still found myself wanting to dose. So extra rests stops were required to refuel the human driver.
Charging system on my bike is working well at this stage, Josh is having some issues with his but I think that’s more to do with the bag mount than the system it’s self.
In the attempt to get some rest I will sign off with today’s map for everyone!
April 22, 2016 09:47 AM
So we have finally left Brisbane, after finishing the wiring of the bikes on Monday night we pushed off at around 2pm on Tuesday.
First Destination:- Texas, Qld
So we didn’t even make it to NSW, but we are sooo close!!
Highlights: Cunningham Gap, there are a few trucks using this road and it has recently gone through a upgrade to cope with all the traffic. Though if you can get over the amount of trucks on this road it’s a nice twisty road with some good day walks either side for those who are extra keen.
After checking out the price to stay at the pub for the night we decided to make the extra effort and camp. We wil be camping next to the boarder so we will be in NSW right after breakfast.
I have setup a live tracker that I will be broadcasting my position throught the trip
For each day you should beable (assuming technology doesn’t fail me) see where I have come from and where I have ended up.
Check it out at http://where.is.luke.now.hovo.id.au
April 22, 2016 09:43 AM
April 04, 2016
We’ll be running our fantastic 2-day iOS developer training in Melbourne next month! Join us on the 2nd and 3rd of May, and learn all you need to know for iOS development. Only a few tickets left! Everyone gets an electronic copy of our new book, Learning Swift. Email me if you have any questions.
April 04, 2016 05:09 AM
March 01, 2016
I don’t often make a point of blogging about the conferences I end up at, but sometimes there are exceptions to be made.
A couple of weekends ago, a happy set of coincidences meant that I was able to attend the first PyCaribbean, in Santo Domingo, capital city of the Dominican Republic. I was lucky enough to give a couple of talks there, too.
This was a superbly well-organised conference. Leonardo and Vivian were truly excellent hosts, and it showed that they were passionate about welcoming the world to their city. They made sure breakfast and lunch at the venue were well catered. We weren’t left wanting in the evenings either, thanks to organised outings to some great local bars and restaurants over each of the evenings.
Better still, the organisers were properly attentive to issues that came up: when the westerners (including me) went up to Leo asking where the coffee was at breakfast (“we don’t drink much of that here”), the situation was resolved within hours. This attitude of resolving mismatches in the expectations of locals vs visitors was truly exceptional, and regional conference organisers can learn a lot from it.
The programme was, in my opinion, better than by rights any first-run conference should be. Most of the speakers were from countries further afield than the Caribbean (though I don’t believe anyone travelled further than me), and the keynotes were all of a standard that I’d expect from much more established conferences. Given that the audience was mostly from the DR – or Central America, at a stretch – the organisers showed that they truly understood the importance of bringing the world’s Python community to their local community. This is a value that it took us at PyCon Australia several years to grok, and PyCaribbean was doing it during their first year.
A wonderful side-effect of this focus on quality is, the programme was also of a standard high enough that someone could visit from nearby parts of the US and still enjoy a programme of a standard matching some of the best US regional Python conferences.
A bit about the city and venue: Even though the DR has a reputation as a touristy island, Santo Domingo is by no means a tourist town. It’s a working city in a developing nation: the harbour laps up very close to the waterfront roads (no beaches here), the traffic patterns help make crossing the road an extreme sport (skilled jaywalking ftw), and toilet paper and soap at the venue was mostly a BYO affair (sigh). Through learning and planning ahead, most of this culture shock subsided beyond my first day at the event, but it’s very clear that PyCaribbean was no beachside junket.
In Santo Domingo, the language barrier was a lot more confronting than I’d expected, too. Whilst I lucked out on getting a cabbie at the airport who could speak a tiny bit of English, and a receptionist with fluent English at the hotel, that was about the extent of being able to communicate. Especially funny was showing up at the venue, and not being allowed in, until I realised that the problem was not being allowed to wear shorts inside government buildings (it took a while to realise that was what the pointing at my legs meant).
You need at least some Spanish to function in Santo Domingo, and whilst I wasn’t the only speaker who was caught out by this, I’m still extremely grateful for the organisers for helping bridge the language barrier when we were all out and about during the evening events. This made the conference all the more enjoyable.
Will I be back for another PyCaribbean? Absolutely. This was one of the best regional Python conferences I’ve ever been to. The organisers had a solid vision for the event, far earlier than most conferences I’ve been to; the local community was grateful, eager to learn, and were rewarded by talks of a very high standard for a regional conferences; finally, everyone who flew into Santo Domingo got what felt like a truly authentic introduction to Dominican Culture, thanks to the solid efforts of the organisers.
Should you go to the next PyCaribbean? Yes. Should your company sponsor it? Yes. It’s a truly legitimate Python conference that in a couple of years time will be amongst the best in the world.
In PyCaribbean, the Python community’s gained a wonderful conference, and the Caribbean has gained a link with the global Python community, and one that it can be truly proud of at that. If you’re anywhere near the area, PyCaribbean is worthy of serious consideration.
March 01, 2016 07:50 PM
February 13, 2016
February 12, 2016
I spoke at linux.conf.au 2016 in Geelong! Once during the main conference, and once during the conference close.
My main conference talk, Welcoming Everyone: Five Years of Outreach and Inclusion Programmes at PyCon Australia, a five-year retrospective of how we’ve done outreach and financial assistance at PyCon Australia. It’s important that we share knowledge about how we run programmes that increase the diversity of our communities, and PyCon AU’s example shows how to build and grow such a program.
lca2017 handover talk
During the conference close, I gave our handover talk for linux.conf.au 2017, sharing what we think Hobart has to offer for the conference, and our vision for the conference. If you want to find out, in 6 minutes, what we’re planning on doing next year, this video is a good way to do just that.
February 12, 2016 10:26 AM
February 06, 2016
Yesterday at linux.conf.au 2016 in Geelong, I had the privilege of being able to introduce our plans for linux.conf.au 2017, which my team and I are bringing to Hobart next year. We’ll be sharing more with you over the coming weeks and months, but until then, here’s some stuff you might like to know:
16–20 January 2017.
We’re hosting at the Wrest Point Convention Centre. I was involved in the organisation of PyCon Australia 2012 and 2013, which used Wrest Point, and I’m very confident that they deeply understand the needs of our community. Working out of a Convention Centre will reduce the amount of work we need to do as a team to organise the main part of the conference, and will let us focus on delivering an even better social programme for you.
We’ll have preferred rates at the adjoining hotels, which we’ll make available to attendees closer to the conference. We will also have the University of Tasmania apartments available, if you’d rather stay at somewhere more affordable. The apartments are modern, have great common spaces, and were super-popular back when lca2009 was in Hobart.
Our theme for linux.conf.au 2017 is The Future of Open Source. LCA has a long history as a place where people come to learn from people who actually build the world of Free and Open Source Software. We want to encourage presenters to share with us where we think their projects are heading over the coming years. These thoughts could be deeply technical: presenting emerging Open Source technology, or features of existing projects that are about to become part of every sysadmin’s toolbox.
Thinking about the future, though, also means thinking about where our community is going. Open Source has become massively successful in much of the world, but is this success making us become complacent in other areas? Are we working to meet the needs of end-users? How can we make sure we don’t completely miss the boat on Mobile platforms? LCA gets the best minds in Free Software to gather every year. Next year, we’ll be using that opportunity to help see where our world is heading.
So, that’s where our team has got so far. Hopefully you’re as excited to attend our conference as we are to put it on. We’ll be telling you more about it real soon now. In the meantime, why not visit lca2017.org and find out more about the city, or sign up to the linux.conf.au announcements list, so that you can find out more about the conference as we announce it!
February 06, 2016 03:45 AM
January 11, 2016
Hello! We’re running our famous iOS Developer Training again in Melbourne, on May 2 and May 3 this year. We’ll be teaching the latest iOS app development techniques, with Swift. We’re taking expressions of interest, which require no commitment, and will get you a discount code for when registrations actually open! If you have any questions, feel free to email me. Check it, and register your interest, over at the Secret Lab site: http://www.secretlab.com.au/training/ios-mel-2016
January 11, 2016 04:30 AM
January 08, 2016
In February, I’m presenting my first-ever solo presentation at linux.conf.au, my favourite Free and Open Source Software Conference. This year, the conference is in Geelong (just out of Melbourne). I’ve been attending linux.conf.au since 2008 in Melbourne, and am running the conference next year in Hobart.
I’m presenting Welcoming Everyone: Five Years of Outreach and Inclusion Programmes at PyCon Australia, a five-year retrospective on how we’ve handled running financial assistance and related programmes at PyCon Australia.
Doling out financial assistance money to people often looks like it should be an easy thing to do right, but targetting and assessing grants so that the right people are interested, want to attend, and receive assistance is quite a difficult task. This talk shares our successes, our mistakes, and what we’ve learned along the way.
Registration for linux.conf.au 2016 is still open, so if you’re not yet planning on attending, there’s still time to get a ticket!
January 08, 2016 10:10 AM
January 06, 2016
tl;dr: I’m looking for somewhere new to work. I have a résumé and an e-mail address!
I haven’t scared you off yet? Great! Let’s try being a bit more specific.
I’ve worked a lot in Free and Open Source Software communities over the last five years, both in Australia and overseas. While much of my focus has been on the Python community, I’ve also worked more broadly in the Open Source world. I’ve been doing this community work entirely as a volunteer, most of the time working in full-time software engineering jobs which haven’t related to my work in the Open Source world.
I’ve spent the last few years swapping context between building and working with communities I love, and working in a field where these strong ties weren’t useful. This hasn’t been sustainable, so late last year I resigned my job to refresh myself, and considered what my future might look like.
It’s pretty clear that I want to move into a job where I can use the skills I’ve been volunteering for the last few years, and put them to good use both for my company, and for the communities I serve.
What I’m interested in doing fits best into a developer advocacy or community management sort of role. Working full-time on helping people in tech be better at what they do would be just wonderful. That said, my background is in code, and working in software engineering with a like-minded company would also be pretty exciting.
- Something with a strong developer relations element. I enjoy working with other developers, and I love having the opportunity to get them excited about things that I’m excited about. As a conference organiser, I’m very aware of the line between terrible marketing shilling, and genuine advocacy by and for developers: I want to help whoever I work for end up on the right side of that line.
- Remote-Friendly. I’ve got conference travel lined up already for the first half of 2016, mostly to the US, but I need to primarily be in Australia so I can run linux.conf.au 2017. I’m happy to work from wherever I happen to be, but having the support of my employer to do so is really important.
- Relevant to Open Source. The Open Source world is where my experience is, it’s where I know people, and it’s the world where I can be most credible. This doesn’t mean I need to be working on open source itself, but I’d love to be able to show up at OSCON or linux.conf.au and be excited to have my company’s name on my badge.
Why would I be good at this? I’ve been working on building and interacting with communities of developers, especially in the Free and Open Source Software world, for the last five years.
You can find a complete list of what I’ve done in my résumé, but here’s a selection of what I think’s notable:
- Co-organised two editions of PyCon Australia and made a successful bid for linux.conf.au 2017. I’ve led PyCon AU, from inception, to bidding, to the successful execution for two years in a row. As the public face of PyCon AU, I made sure that the conference had the right people interested in speaking, and that we had many from Australian Python community interested in attending. PyCon AU attracted presenters from six countries, and attracted more than 300 people to my geographically isolated city in the middle of winter. I’m taking what I’ve learned, and am doing this again for linux.conf.au 2017.
- Given talks at countless open source and developer events, both in Australia, and overseas. I’ve presented at OSCON, PyCons in four countries (soon to be five), and myriad other conferences. I’ve presented on a whole lot of technical topics, and I’ve recently started talking more about the community-level projects I’ve been involved with.
- Designed, ran, and grew PyCon Australia’s outreach and inclusion programmes. Each year, PyCon Australia has offered upwards of $10,000 (around 10% of conference budget) in grants to people who otherwise wouldn’t be able to attend the conference: this is not just speakers, but people whose presence would improve the conference just by being there. I’ve led a team to assess applications for these grants, and lead our outreach efforts to make sure we find the right people to receive these grants.
- Served as a council member for Linux Australia. Linux Australia is the peak body for Open Source communities in Australia, as well as underwriting the region’s more popular Open Source and Developer conferences. In particular, I led a project to design governance policies to help make sure the conferences we underwrite are properly budgeted and planned.
So, if you know of anything going at the moment, I’d love to hear about it. I’m reachable by e-mail (firstname.lastname@example.org) but you can also find me on Twitter (@chrisjrn), or if you really need to, LinkedIn.
January 06, 2016 11:03 PM
December 23, 2015
December 12, 2015
… and I’ll have more to say on that topic soon! In the mean time:
December 12, 2015 09:02 AM
November 26, 2015
The first Early Release of our latest book is now available from O’Reilly: Mobile Game Development with Unity. We’re incredibly excited about this release; this is a book we’ve been dreaming of writing for many, many years, and we’ve finally had the chance to do so. Thanks to our amazingly patient editors, Rachel, who let us write this book, and Brian, who is making sure it’s as awesome as possible!
The new book covers game development with Unity, the increasingly-popular game development environment and game engine. We teach a little touch of game design, the fundamentals of Unity, and then we teach you how to build two full games: “Gnome’s Well”, a 2D game similar to Angry Birds, or Flappy Bird, and “Rock Fall”, a 3D space-asteroid shooting game.
The games built through the book are a lot of fun, and we’ve put a lot of thought into crafting games that are both representative of common, successful games in the mobile world, and contain enough interesting challenges for developers, artists, and the like, that they represent a valid real-world game development experience.
The first Early Release of the book contains early drafts of the chapters that explore the creation of both games, Gnome’s Well and Rock Fall, as well as a skeleton of the first chapter, which outlines the basics of Unity. The next Early Release, which we hope to have ready sometime in mid-December, will contain drafts of the Scripting chapter, and a completed draft of the first chapter.
We’re looking forward to seeing what people build after reading the book, and working through the games we teach in it. We’re really excited at the prospect of helping more people get into game development!
You can buy the Early Release over on the O’Reilly website. Buying it gets you all updates during the Early Release process, as well as the final copy of the book. If you have any questions, suggestions for things to add/cover, or find something unclear in the book, please don’t hesitate to email us: email@example.com. We’re so excited about this book, and can’t wait to improve it, finish it, and get more releases out for it!
November 26, 2015 02:45 AM
November 14, 2015
The gist of it is: you’ll join us live online for a day of Swift programming, where we’ll teach you the language, how to use it for iOS (or OS X) programming, and where to learn more. Everyone will get a video of the training afterwards, as well as an ebook copy of our brand new Learning Swift book
November 14, 2015 01:55 AM
October 16, 2015
Fun story: I quit my job last week.
Somewhat ironically, the first time I’m really writing on this blog about what has been my day job for the last 3-ish years is writing about leaving it.
I don’t have too much to say about my reasons for leaving, but identifying that I’d been suffering severe burnout for a few months was the tipping point for it. Over the last few months my output in most everything I’ve done has visibly dropped – not just in work, or my volunteer efforts (for which numerous other people depend on me), but also in the things I enjoy doing in my spare time.
My last upload to Flickr, prior to this week, was in June last year. Beyond things necessary to get talks done, I haven’t written a line of code in my spare time all year. The last useful thing I wrote on this blog was in January 2014. Those things should have been pretty good indicators, but I missed them.
When deadlines started approaching, I put less pressing things off to the side. I thought at the time that I was merely re-prioritising things in favour or more pressing ones, rather than completely dropping the ball on them. I mean, that’s basically how it’s always worked in the past.
More on that: I’ve long used conference trips as a way to pace myself through my work; timing trips more-or-less equally throughout the year, so that just as I was starting to get bored and demotivated, I’d have a chance to recover for a bit. This worked pretty well for a few years.
(Indeed, getting away as often as I have over the last few years has let me forge lasting friendships far across the world, and to get really useful things done locally, particularly for PyCon AU. I’m grateful to have had the opportunity to do that.)
So the pattern of feeling down just before a trip was there, just as it always was, for my trip to OSCON and PyCon AU in July this year.
The difference: for whatever reason, I came back feeling not much better than when I left I didn’t pick up the tasks I’d put aside, so they slipped even more.
Something had to give. I chose work. There’s not much more to say for the moment, other than that the time was more-or-less of my own choosing, and I left my job on amicable terms.
Now, what next?
First and foremost, I’m getting myself into a position where I’m mentally ready to run LCA2017 next year. This is probably the biggest undertaking of my life, and I need to be ready for it. I’m making steps to getting the organisation of that back on track.
I have roles with PyCon Australia again next year. Happily, my main role – raising sponsorship money – is now a team role, and I’ll be far less hands-on this time around.
If you’ve been depending on me to get something done over the last few months, and it hasn’t happened, I’m sorry. I’ve been terrible for letting things slip, even worse, I haven’t been open enough about my reasons for it. I really hope to improve this in the future. My backlog is slowly, but surely, getting cleared out.
Beyond that, I’m taking a couple of months off to sort myself out, and to make a concerted effort in figuring out what’s next.
I’m travelling for fun! Right now, I’m sitting somewhere in Far North Queensland, visiting my parents who are here for some reason (I’ve not seen Mum since February).
Over the next few weeks, I’ve got a few conferences I have committed to speaking at (OSDC in Hobart in two weeks’ time; PyCon Canada and Fossetcon in Florida in November), and so will be spending time travelling to attend those, but also taking a bunch of time off around them to relax.
One of the projects I’ve been putting aside for motivational reasons is a book I’m co-authoring on Android development, which I’m sure will show up (a bit more finished) in the future.
As for what I’ll be spending most of my time doing? I’m really not sure. What I’d like to be doing is the subject of another post. I’ll probably write it next week. If you want to cold-call me with opportunities in the hope that they’re relevant, linkedin is as good a place as any for now (lol), but I’m also around on twitter or e-mail.
October 16, 2015 06:20 AM
September 29, 2015
OSCON in Amsterdam is coming up in a month or so, and I’m really, really looking forward to it. So much so, that I thought I’d write up some thoughts on why I enjoy going to OSCON.
Adding Europe (in addition to the USA –– Portland earlier this year, and Austin in May 2016) to the lineup is a big move for OSCON (it’s been in Europe before, but it didn’t run every year afterwards). This year, at OSCON in Portland, which ran in July, the tracks of the conference changed for the first time in a long time.
Previously, the conference was designed around mostly-languaged based tracks, and was essentially a collection of disparate conferences for different clusters of nerds. It was great, but it wasn’t how the community worked, or how nerds-in-the-real-world work any more.
In July, OSCON in Portland was structured around the idea that open-source and the software, tools, and languages (that OSCON has always been about) are actually everywhere, being used by everyone. The tracks got updated to reflect more tangible, practical things, that might span languages and nerd-clusters.
The result of this is that OSCON (in Portland, earlier this year, in Amsterdam next month, and in Austin next year) has tracks relating to things like security, and privacy, scaling, devices, mobility, architecture, design, and other real-life, more pragmatic concepts. This is a really good thing. Not only does it mean that you meet lots and lots of people, who –– shock horror! –– might use, espouse, and prefer different languages, tools, and frameworks than you, but it also means the conference works like the real-world does: security topics for one language are not unique to that language, performance at scale on the web isn’t unique to one backend stack, and good, sensible mobile app design isn’t unique to one mobile platform (to name but three examples).
I really enjoyed OSCON in Portland this year, and the new track structure contributed to that in no small way. OSCON in Amsterdam follows a similar philosophy, so I’m expecting it to be pretty excellent.
Another of the big reasons that OSCON is special is the way it connects the people using, building, and working with new, amazing, important, and often just plain interesting software (and hardware!) with the companies who rely on this software, teach this software, or otherwise participate in the community.
This mountain is in Portland, but Austin and Amsterdam look just as cool.
Companies often have a bad reputation at big conferences, especially corporate conferences like OSCON that are not directly run by the community –– but OSCON does a good job, with very few exceptions, of making sure your interactions with the companies sponsoring and attending the event are very much on your own terms.
OSCON represents such a valuable intersection between the community-run events, which are often still clustered by language, or technology (despite their deep wish that they were all polyglot events), and the actual real world that’s using all this technology –– which, like it or not, is mostly companies –– and it does a damn fine job of it. This role as a meeting point for community and enterprise is a very underrated (and little-discussed) aspect of OSCON, and is one of the core reasons why it’s one of the only two conferences that I go back to every single year.
I have very little to do with anything beyond building games, and designing mobile apps (i.e. I’m not in dev-ops, I don’t do any important software engineering or architecture –– I make games!, and I don’t know what a container-at-scale is, and I definitely don’t have a foundation), but every year I get a lot of out OSCON –– every year I’ve learnt mind-blowing things about everything from tiny satellites, to the way Facebook designs and runs their data-centres, to building an exobrain*, to the way Netflix’s distributed backend is architected, to how I can build my own functional mo
Every year I learn things that are incredibly interesting, inspiring, or just plain or exciting, as well as things that directly improve my ability to be better at what I do every day. I also meet amazing people, and make new friends every year. I’ve also personally given talks on everything ranging from programming with Apple’s Swift language, to game design, to Kerbal Space Program.
I first went to OSCON in 2011. Some friends and colleagues and I, randomly on a whim, submitted a session on design best practices for mobile apps. It got accepted, much to our surprise, and we made our way to Portland. We’ve been presenting on mobile design at OSCON ever since. OSCON is an amazing amount of fun, and I can’t wait for Amsterdam (and Austin!)
Anyway, this whole post is a roundabout way of saying that you should come and see me speak about Swift programming next month!
*video not from OSCON, but it’s the same talk I saw at OSCON.
(My publisher, O’Reilly Media, also runs OSCON, so you probably can’t trust a word I say. But really, OSCON is pretty amazing, and this is just my blog post, and my words, so you should probably check out OSCON!)
September 29, 2015 11:13 AM
September 15, 2015
Early Release of our new Swift 2.0 book for OS X, iOS, and watch OS! Grab a Preorder at Amazon or buy the Early Release (with updates) at O’Reilly right now (50% off with code WKIOS9 for this week).
September 15, 2015 10:17 AM