Pride.codes

If you've visited the main page of my site in the last week or so, you would've noticed a new banner in the top right-hand corner.

This clean, simple "Vote Yes" banner was designed and developed by Pat Murray and Jack Skinner, and is part of many banners available for website owners to implement, as a part of their Pride.codes project.

As Australians begin to receive their voting forms for the same-sex marriage survey, these banners are a nice way to show support for the LGBTQI+ community.

Some further examples include the front page of The Sizzle, Jake Araullo's site, and Pat's site.

The project is open source, and you can contribute on GitHub should you wish, or follow the Twitter account for updates.

If you're able, and would like to show your support, I'd encourage you to check out pride.codes, and add a banner to your site too.

Updating Your App for the iPhone 8 Navigation Bar

At their special event this morning, Apple announced iPhone X. This is the first iPhone without a rectangular screen, and it presents a variety of new design challenges. On cue, Apple has updated their Human Interface Guidelines.

There are a few things worth noting about iPhone X:

  • Screen resolution: 2436px × 1125px (812pt × 375pt @3x)
  • Status bar height: 44 points (until now, it's been 20 points)
  • Status bar + large titled nav bar: 140 points
  • Status bar + small titled nav bar: 88 points
  • Which leaves you with 672 points for your app content when there's a large navigation bar, and
  • 724 points of vertical space with a smaller navigation bar.

It also has a "notch" which gets in the way of the status bar, seen below.

 
Source: https://developer.apple.com/ios/human-interface-guidelines/overview/iphone-x/

Source: https://developer.apple.com/ios/human-interface-guidelines/overview/iphone-x/

 

Despite the larger screen, iPhone X doesn't use @4x scaling.

There are a few things you can do to accommodate the notch in your app.

  • Use a solid background colour for the status and navigation bars. This way, your UI "extends" up behind the status bar, and you don't have to worry about custom UI for all of the different possible navigation bar heights and sizes.
  • If your app hides the status bar, reconsider that on this phone. The status bar will always be visible (except when displaying full-screen media). The area surrounding the notch isn't useful for much else, and I think users will come to expect visible status indicators.
  • Adopt large title navigation bars in your app. Large titles were introduced in iOS 11, and give extra height to the navigation bar, while bolding the title, and moving it below the navigation button items. When the content below scrolls, say in a table view, this navigation bar "folds" up and the title is placed back in the middle of a standard-sized navigation bar. Using large navigation titles gives a clear indication to the user as to where they are in the app, and with the extended height of the iPhone X, vertical screen real estate isn't so much of a premium anymore.

To convert an existing navigation bar to one with large titles requires only one line of code: self.navigationController?.navigationBar.prefersLargeTitles = true

 
Source: https://developer.apple.com/ios/human-interface-guidelines/bars/navigation-bars/

Source: https://developer.apple.com/ios/human-interface-guidelines/bars/navigation-bars/

 

If you're already using size classes, and haven't hard-coded your app's UI, then your app should scale nicely on an iPhone X screen. The iPhone X screen is 375 points wide, which is the same width we've been used to for three years since the introduction of the iPhone 6. The main difference here is the vertical height, which most UI's should be able to adapt to with ease.

Introducing Petty

About Petty

Introducing Petty. Petty is a mobile app to help NSW drivers find the closest petrol nearby. Available on iOS and Android, Petty is great for when you're in an unfamiliar area, or when you just want to check the price of petrol at the local service station up the road.

I should state upfront that Petty is only available to download in Australia 🇦🇺, and is only of use to those in the state of New South Wales.

Why Petty

Petty stands out by using the most accurate data, collected by the NSW government, and updated in real time as stations around the state change prices at the pump. Who needs unreliable crowdsourced data that's only updated every fortnight anyway?! It's also available on both major mobile OS platforms.

Features
  • Sort by price and distance
  • Set preferred type of petrol
  • View the location of each station on a map
  • Directions to each station through the Maps app
  • Available on both iOS and Android
  • A clean, modern design.

The ACCC estimates drivers who time their purchases of petrol and choose to buy from the lowest priced retailer can save $10 to $15 per 60-litre tank. (news.com.au, 2017) Petty can help with this, by always keeping you in the loop with up to the minute petrol prices.

Price (or lack thereof)

Petty is free to download, with a single in-app purchase that removes all advertisements and unlocks "premium" mode - meaning Petty will then remember your preferences for sorting by price/distance as well as your preferred petrol type. The iOS version also has an optional tip jar, because that's what the cool kids are doing these days. In the future, I plan to add more premium-only features.

Why ads

Ads aren't exactly great. I don't like ads, and you almost certainly don't like them either. In an ideal world, Petty would be free to download without ads, and hopefully premium mode would be enough to make a small amount of money. It's a side project, and any small amount is nice (I have put quite a bit of time into this), but I don't need it to make money. The simple reason why it has ads is that accessing the price dataset costs me. While I can afford to not make money off of Petty, I can't afford to lose money. If you dislike ads, premium mode will get rid of them. I hope that's a fair solution.

Android version

Petty begun as a iOS project mainly because I wanted to see just how good (or not so good) the NSW government was at providing a data set for devs, and I'm familiar with iOS development. It turns out, the dataset isn't half bad, and is incredibly accurate. The iOS app was probably about 80% complete when I decided to develop Petty for Android. Having never developed an Android app before, it was an interesting challenge and good learning experience. In hindsight, this would've been the perfect project to build with React Native, had the iOS version not been so far along. So between long weeks at work and Uni, the Android version was mostly built on my train rides to and from. Before you ask, it's written in Java and not Kotlin. The Android version isn't perfect and doesn't have the same level of polish as the iOS app, but for my first Android project, I'm pretty happy with how it's turned out.

Petty is the type of app that I could keep adding features to, and I have a pretty good list of ideas (thanks in no small part to the awesome group of beta testers). Now that 1.0 is out the door, you can expect to see updates rolling out over time with new features and additions.

Like the look of Petty? Download it here for free.

Want to get in touch? Reach me on Twitter, or shoot me an email.

Jeff Jarvis at the Launch of the UTS Centre for Media Transition

Last night I had the privilege of listening to Professor Jeff Jarvis - author, blogger, podcaster, advisor, and public speaker - talk at the launch of the UTS Centre for Media Transition.

Professor Jarvis gave insights into the future of media, beginning with the issue of fake news. He noted that it's less of an issue in Australia, but it was interesting to hear his take. Journalists need to be trusted by the public, he argued, and people should want to go to journalists for news.

He also spoke about business models saying, "There is no God-given right to make the money we used to." Jeff acknowledged the changing landscape making the point that media isn't so "mass" these days, and new, more niche journalism needs to reward value, not reach. One of the points he raised was that journalism needs to go to where the people are, even if that means making memes to get messages across.

Jeff briefly touched on the success of the likes of Facebook and Twitter, saying they won because they took risks and offered advertisers what journalists didn't - information about the audience.

It's no wonder Jeff is so well respected in the industry. He spoke well and was able to offer deep insights on a topic that he's knowledgable about. Sitting there, I was wondering if it's Jeff's background in technology journalism that helps him identify these issues, and see changes that need to be made. It's too easy to get stuck in our ways, but if industries don't move forward with the dramatic changes brought about by technology in mind, they may cease to have a place in the market.

Thanks to UTS for inviting such a great guest to launch the Centre for Media Transition. Everyone in the room walked away with something to think about thanks to the knowledge Jeff imparted upon us.

WWDC 2017 Keynote Ramblings

Most recent Apple presentations have been relatively fast-paced, but this morning's WWDC Keynote was the most rushed event I remember in a long time. Tim Cook came out and did his usual brushing off of the "Apple updates," other than to say Apple is doing just fine. It was funny the first couple of times he said it on stage, but Apple has now used this joke a few too many times for my liking. Just don't mention the "updates" at all. There were overarching themes of machine learning and privacy throughout the whole keynote, across every product line. The sheer volume of new APIs and features announced means that if you're a WWDC attendee who didn't have any questions for Apple engineers going into the conference, you almost certainly do now. This post doesn't aim to cover all announcements, but just the main things that I found interesting. If any of it is incorrect, I apologise as this mountain of information is still new and will take a while to digest.

It was made known from early on that Apple were presenting six different items to the audience today, with the obvious ones of tvOS, watchOS, macOS, and iOS made known from the beginning.

tvOS

tvOS was brushed over so quickly, all I remember from it is that Amazon content is coming to the Apple TV. They didn't have a lot else to say but did mention there will be more on tvOS later in the year. It's likely there will be a new Apple TV in September, and Apple will talk more about it then.

watchOS

watchOS 4 was up next. I wasn't expecting much from watchOS this year, after last year's massive updates and major rethink of most aspects of the system, from its design to the way you interact with it. It was pleasantly surprising to learn Apple had made some solid improvements to watchOS over the last nine or so months - more than I was expecting, anyway. I'm a fan of the new Siri interface on the watch, based around "cards" that show you relevant information throughout the day, changing depending on your calendar and time of day. This personalised Apple Watch experience contributes to the uniqueness of the device. After all, it is something worn on your wrist for anywhere between 12 and 23 hours a day and should be a representation of the wearer.

It's been clear for a while that the Apple Watch's strengths lie in the health and fitness space, and Apple has only improved that with watchOS 4. When in workout mode, audio controls are no longer only accessible by exiting the Workout app and opening the playback controller. Instead, audio controls are accessible by swiping to the right as another page inside of the Workout app. There's a new High Intensity Interval Training activity type, which is supposed to improve the accuracy of the heart rate tracking for CrossFit type workouts. Up until now, the Apple Watch heart rate monitor hasn't been particularly accurate in these situations, which has an impact on the accuracy of the active energy burnt during a workout according to the watch.

The activity rings for energy, exercise, and stand can become addicting, especially as you try to keep a streak alive. People love to "fill the rings" on their Apple Watch. As of watchOS 4, Apple Watch offers customised daily inspiration, and even an evening encouragement to help you get across the line and achieve the goal. As long term motivation, there are also different monthly challenges. It was mentioned in the keynote that all of the suggested achievements are realistic as they're custom to each wearer, and based on past results.

Health integration with a continuous glucose monitor was mentioned, meaning these devices can sync data directly to HealthKit via Bluetooth. I hope this was a nod towards the heavily-rumoured glucose monitoring in a future model of Apple Watch. As of today, there is no first party sleep tracking. I expect this to come alongside the next update to Apple Watch hardware.

macOS

The next version of macOS was announced at WWDC. It's version 10.13 and is named, "High Sierra." From what I saw on Twitter, most people - myself included - thought this was a joke when Craig Federighi announced it, but once it was repeated a few times by other presenters, we realised he wasn't joking. It's a weird name and will take some getting used to, but ultimately it's just a name and doesn't matter. macOS High Sierra brings the new Apple File System (APFS) to macOS. This is after a very successful rollout to iOS devices earlier this year with the iOS 10.3 update. There weren't many new features announced with High Sierra - it's essentially what OS X Snow Leopard was to Leopard. There were some improvements to the Photos app on macOS. I'm sure they're nice. The Mac is now compatible with virtual reality, something which Apple have been accused of ignoring up until now.

Also announced was a nice set of improvements to Safari. The two big ones were better privacy with Advanced Tracking Prevention, and no more auto playing videos. An example of the former is the situation where you view a product on a site and ads for it follow you around the web. The latter is self-explanatory.

It's also worth noting that there are now iCloud storage family plans available with either 200GB or 1TB of iCloud space. The biggest announcement as far as Macs were concerned was upgraded iMacs, MacBook, and MacBook Pro, as well as a price drop for the entry level iMac and MacBook Pro without Touch Bar. These were all updated to Kaby Lake processes. Apple also previewed an upcoming iMac Pro which comes in Space Grey and is essentially what we'd expect from a new Mac Pro plus a screen. It's worth noting this isn't the new Mac Pro - that's apparently still coming. The iMac Pro is shipping later this year. Oh, and the ancient MacBook Air got a processor speed bump. The more you know.

iOS

As expected, iOS 11 was announced and of the four software platforms received the largest amount of attention and stage time. There's a new design language, and I'm not a fan. The trend seems to be towards large title bars at the top of most table views within an app, which feels weird as if I'm in Messages I don't need a constant reminder of that fact by a big "Messages" header. It's also worth mentioning that signal bars for mobile signal strength have triumphantly returned (they were removed in iOS 7, for signal "dots"), and control centre is customisable. I know plenty of people who will be excited by the ability to add a mobile data toggle to control centre. The design language is certainly different but is an extension of the design changes started in iOS 10. I think there's a lot of refining still to go and won't be surprised if we see subtle changes to the design of iOS 11 right up until release. The card-based UI isn't as prominent throughout the OS as I thought it might be, and for now only looks like only the App Store was redesigned with a card-based design. I might've missed it, but there also doesn't seem to be a UIKit API for card based "popover" views - similar to what Apple have done in the Music app, and what Overcast has done with its "Now Playing" view.

One of my favourite new features is Do Not Disturb while driving. With iOS 11, iPhone uses its smarts to determine when you might be driving and won't show you notifications. It is possible to manually override this setting, say if you are a passenger, but I do hope drivers are sensible enough to leave it enabled. It is beneficial for the safety of everyone on the road. Distracted driving is a major issue, and this is a small way to help that.

Another favourite of mine is that messages now sync via iCloud. Until now, messages have been stored locally on each device, not on iCloud (for longer than about 14 days anyway), and when you set up a new device without a backup, your messages start from scratch. This all changes with iOS 11/macOS 10.13 - messages are stored and synced with iCloud. This means that not only are all your messages there on every new device you set up but because they are stored on iCloud fewer messages need to be stored locally. This will be a huge space-saver for many, especially those with 16GB or 32GB phones. Telegram's done this for as long as I can remember. Messages are always there when you sign into a new device, and they don't take up a lot of local storage because most are stored in the cloud. If Apple implements it half as well as Telegram, this feature will be a success.

Along with the aforementioned card-based redesign, the App Store was improved for developers with enhancements such as phased release/rollout of new app versions and auto-renewal with Apple Pay. I'm a fan of the pace with which changes and improvements have been rolling out to the App Store and iTunes Connect in the last 12 or so months.

The introduction of iOS 11 ended with a bang, with the announcement of ARKit - which brings augmented reality to iPhone/iPad via a developer API. It certainly seems promising, and Tim Cook has previously said he sees AR as the future, so it's good to see Apple addressing this. I don't have a lot to say on this now, but I am excited to see how it's used and what developers come up with in the coming months.

iPad

The next part of the presentation was devoted to iPad. I don't own an iPad but nevertheless was pleased to see Apple address so much time to it. Despite declining sales, they continue to have faith in the iPad as a product. It missed out on any major software update last year, so improvement this year was overdue. With iOS 11, it feels as though the iPad is finally putting on its big boy pants and gaining desktop features that are useful. Drag and drop, the dock (which is now used to switch apps), the ability to run three apps simultaneously, and the Files app are all major improvements that bring the iPad closer in capability to laptop and desktop computers, without the rest of the clunky OS.

The 12.9" iPad Pro got updated with the new display technology as well, but I get the feeling it isn't selling as well as Apple would like it to. The 10.5" iPad feels like a happy middle ground for Pro users. The cheaper, entry-level 9.7" iPad still exists for casual iOS users, but the 10.5" is the "Pro" workhorse iPad for professionals who want to get work done. I quite like the comment that iPad is for content consumption, but iPad Pro is for content creation. That isn't strictly true, but it's a general rule. At this stage, I could almost do all of my Uni work on an iPad. The hardware is powerful enough, and iOS is finally capable of adequately managing documents and moving data around between apps for this to be possible. The only exception is when I have to use software development IDE's.

HomePod

It's rare to have a WWDC keynote littered with hardware announcements, let alone entirely new products. HomePod is a new smart speaker for the home, with emphasis on the stereo quality. It doesn't feel like a direct competitor to a product such as Google Home. Google Home aims to be a smart assistant, whereas HomePod is first and foremost a fancy way to play Apple Music in the home. Siri is just a nice addition to this device, but not its primary feature. Apple emphasised the tech behind the audio quality, which is supposed to be impressive.

Let's hope HomePod isn't too bass-heavy.

It is worth noting there is no developer SDK for this product, meaning developers can't (yet, anyway) write apps that run on HomePod. Between this and the fact that it isn't shipping until December, it makes me wonder why Apple introduced it at a developers conference. The only reason that comes to mind is that they wanted to get out ahead of the competition, and perhaps hope to put a stop to sales of competing products while people wait for the release of HomePod. Personally, I probably won't buy one of these. I can see it sitting in the kitchen or living area of a house to play music, podcasts, or audiobooks that multiple people wish to listen to at once, or just for some ambient music when guests are over. In my case, my family has a nice sounding Bose stereo in the kitchen that we can use when we want background noise or music in the house, and we all have access to Siri on our iPhone, so I don't see this as a product that would be useful in our case. Perhaps a second or third generation HomePod might be more compelling. It's an interesting answer to the question, "What can Apple do when phone innovation is slowing?" As a consumer product company, it's wise to make an attractive household accessory that extends the capabilities of Siri outside of the phone, watch and desktop, while also increasing 'lock-in' and the value of the Apple ecosystem. It's yet another device that Apple fans own, and almost certainly guarantees an Apple Music subscription - leading to higher service revenue for the fruit company.

Platforms state of the union

After the Keynote, WWDC attendees go off to lunch and then go back into the conference centre for another presentation called Platforms State of the Union. It's essentially a developer-focused presentation, as the main keynote has a target audience of the general public and members of the press. I'm still getting familiar with everything announced during the State of the Union, but from what I'm familiar with, there's plenty to be excited about:

  • Swift 3 and Swift 4 code can be compiled in the same project.
  • Wireless debugging, meaning developers no longer need to plug their iPhone or iPad into their Mac via a cable to run, test, and debug their apps.
  • Initial impressions of Xcode 9 are that it's fast, and has plenty of features that help speed up the process of writing Swift.
  • Refactoring is now a feature of Xcode 9.
  • There is now a wider range of compiler warnings which help to help developers write better code. For example, the compiler will warn you if you make a call that updates UI on a background thread.

There was a lot of information to digest this morning from the WWDC Keynote and State of the Union address. There's plenty I haven't had time to explore yet, but initial impressions are that all of these incremental changes will make day-to-day iOS app development more of a joy for hundreds of thousands, if not millions, of iOS developers worldwide.

The Significance of Non-intrusive Glucose Monitoring

Introduction and overview

A CNBC report from earlier today claims that Apple is working on a new version of the Apple Watch with the aim of enabling the device to non-intrusively monitor blood glucose levels. It's described as the "holy grail for treating diabetes." Currently monitoring glucose levels for Type 1 and Type 2 Diabetics involve multiple "pinpricks" per day with a needle in the finger to draw blood, and have the blood sample read by a small machine. Non-intrusive glucose monitoring would mean these pinpricks would either become unnecessary or required less often, as blood sugar levels could be read through the skin on a watch-like device. I was diagnosed with Type 1 Diabetes nearly 16 years ago, and can conclusively say non-intrusive glucose monitoring would be life changing.

It's not the first time it's been reported that Apple is working on such a thing, but it's the first time this has been reported by a credible source. This excites me beyond belief, as it would transform diabetes management. I know it probably won't be a reality soon. However, when it does come to fruition it'll have a profound impact. This post aims to solidify some thoughts about the impact it could have for both diabetics and non-diabetics.

What would this mean for existing diabetics?

This would be the biggest change to diabetes management since the insulin pump. For those who don't know, an insulin pump is a device worn by diabetics that administers insulin on a regular basis through a cannula - which spares the user from manually injecting insulin multiple times throughout the day. You can't have too much control over your diabetes. Sugar levels in the human body fluctuate constantly, and having data recorded every 15-30 minutes would be a massive leap forward over the 4-6 data points most diabetes record per day currently. With intelligent software, being able to identify and act upon trends in this data will almost definitely lead to better management. Being able to smooth fluctuations in sugar levels will not only help a diabetic feel better day-to-day, but also limits the risk of them experiencing complications later in life. A simple tap on the wrist alerting you that your sugar level is rising or falling out of range would prove vital, particularly overnight. This won't only improve lives, but it has the potential to save them. For a device like this to be a success, it doesn't have to be 100% accurate. Even the blood glucose monitors we use currently aren't that accurate. It would just need to identify trends in a wearer's sugar level, and then that data could be acted upon (either with treatment, or a follow-up blood sample check). The end goal would be to rely on the non-intrusive monitoring entirely, but that might take many years of iteration and progress.

What would this mean for non-diabetics?

Those without diabetes stand to benefit from glucose monitoring too, just like those of us without known heart problems stand to benefit from heart rate monitoring in the existing models of Apple Watch. Being on top of one's sugar level is just another way to be more in tune with your health. Realising how eating a doughnut, or exercising affects your sugar level allows you to make better decisions. Not only that but wearing a device that collects this data could help to identify diabetes at an early stage - before it has serious health implications. As it stands, the onset of Type 1 Diabetes is pretty quick, but Type 2 diabetes can take significantly longer (years).

Apple's product line

From a product perspective, it begs the question - is this an add-on to the Apple Watch, or will glucose monitoring just be an addition to the product for everyone's benefit? Apple doesn't charge more for a watch with heart rate monitoring currently, but it isn't as much of a research and development challenge. They could treat it as a medical device, and price it accordingly - many thousands of dollars. With everything I know about Apple, I think this is unlikely. They are a consumer tech company, and this would just be a value-add to an existing product line. This makes more sense and increases the overall value of being in the Apple Health ecosystem.

Changing the world

So often tech companies talk about changing the world. It's almost a joke in Silicon Valley. Everyone is rushing around, hoping to create the "next big thing." Often, that said thing is just as significant as new emoji. Non-intrusive glucose monitoring is the type of technology that is truly transformative. Health and fitness are broad areas, but the focus on enabling and empowering people to lead healthier lives is a noble one. Technology such as this truly makes lives better. Not just more convenient, but better. It improves lives, and can also save lives. This kind of work is important. Would you rather be the engineer or scientist who works on Facebook's ad tech, or the one who makes non-intrusive glucose monitoring a reality? I know which side of the coin I'd rather be on.

Future of technology

Not too long ago a friend asked, "Where can technology go from here? Are laptops and phones just going to keep getting bigger and faster? What's left to innovate on?" I now have an answer to that question. The next step is companies competing to create things that improve lives. Sure, they're for-profit, and they want a return on the research and development investment, but that's a good thing. There's financial incentive to create the best possible product because that's what will benefit customers the most. If it's good enough, I doubt there will be a single diabetes educator or endocrinologist who fails to recommend an Apple Watch (or equivalent device) to their patients.

Concluding statements

It seems as though Apple have the lead with development in this field, and that's why this post was based on their device. However, this applies to any company who masters this technology first. There's not only a lot of possible financial gains, but also the opportunity to have a positive impact on the health of millions of people around the world.

Comparing Night Shift to f.lux on macOS

Last week as a part of an assortment of software updates across its platforms, Apple updated macOS to version 12.12.4. The headline feature of this update is Night Shift - which has been around on iOS for just over a year. Night Shift adjusts the colour temperature of a screen to the warmer end of the spectrum (removing blue light) at night, and is supposed to be easier on your eyes, and possibly even help you sleep better.

Night Shift is novel for iOS users, but not so much for Mac or PC users who've had the option of using utility software such as f.lux since 2009. f.lux serves a similar purpose to Night Shift in that it slowly warms the colour temperature of your computer display after sunset. I've been using f.lux for about three years now, and absolutely love it. It's up for debate whether or not utilities such as Night Shift and f.lux affect your sleep for the better, but I just like the fact it feels better on the eyes to stare at a warmer screen at night.

Night Shift and f.lux are different in their approach to filtering blue light. They both allow you to choose the level of filtering, but Night Shift isn't anywhere near as "strong" as f.lux on default settings. Even when set to its most warm setting, Night Shift leaves the screen noticeably cooler than f.lux's default.

I've taken some photos comparing the two in a completely dark room, with a display set to half brightness on an almost entirely white image so that you can get a feel for the difference between the two.

A quick comparison between Night Shift and f.lux:

  • f.lux has three modes: daytime, sunset, and bedtime, each mode more warm than the previous. The transition of f.lux between modes is done slowly so as you barely notice it.
  • Night Shift is either on or off. There's no in-between mode like f.lux, and it changes between the two quite readily.
  • With f.lux, especially on the strongest bedtime mode, colours sometimes become hard to differentiate making it impossible to do design work while using f.lux.
  • Different colours are still distinguishable using Night Shift on its strongest setting, so while things will look slightly different and I wouldn't recommend designing anything with Night Shift on, it's possible.
  • Night Shift doesn't adjust the colours to be as warm as f.lux does.
  • Night Shift's warmest setting looks quite similar to f.lux's default "sunset" setting. If that's all you're after, Night Shift will suffice.

So which one should you use?

There's no "right" answer here. It's a matter of personal preference. If you are after stronger settings and more customisation, choose f.lux. If you want something simple that you can set-and-forget, go with Night Shift. Apple's implementation of Night Shift is typical of the way Apple does things - they offer the feature inbuilt in macOS so as it's accessible to all, it's simple to use, and works reliably. It's more than adequate for most. For those who want a bit more, f.lux exists.

Creativity - Playgrounds Conference Lighting Talk ⚡️

I was fortunate enough to be given the opportunity to present a lightning talk at Playgrounds Conference in Melbourne this week. I spoke about creativity in app/software development. I've turned my presenter notes into a blog post, GIFs included:

Programming isn't the first task that jumps to mind when someone says creativity. As a result, it's fair to assume most developers wouldn’t consider ourselves to be very creative. We don't question the creativity of a designer's work, but the work of a software developer isn't always seen as creative.

The biggest lie I ever told myself was that I’m not a creative person. I’m terrible at painting, singing, and acting. I can’t possibly be creative, right?

Creativity is a term we humans begun to use quite recently. As shown by the graph, usage of the term picked up only around 70 years ago. As leisure has become more abundant, humans have more time for creative endeavours.

I know for myself, all through primary school I'd tell myself I wasn't creative. I sucked at drawing, and being good at drawing or drama was what it meant to be creative. Even in early high school, I couldn't wait to drop art and music classes and focus on the subjects I enjoyed.

I didn't realise at the time, but when I started programming and begun toying around with making iPhone apps, I was exercising the creative part of my brain. I hadn’t considered this to be creative because creativity meant something different to me. It took many years to realise that I too was creative. Developing an app is a complex problem-solving task, and problem-solving is aided greatly by creativity.

Programming is all about creating something to do something else. By making an app, you are bringing a piece of software to life. By its very nature, programming is creative. There are technical parts of the jobs we all do which aren’t so creative - tweaking and optimisation of an algorithm for efficiency might be more technical, but writing code itself is a creative task.

An app is an expression of the developers who make it. In that sense, an app that serves the same purpose but is build by two different developers will be written slightly differently, reflective of the person who is writing the app and the way they think. The way you write and implement a feature is different to the way your colleague might write it. More than just the code, the creation of an app itself is a creative process. You start with an idea, build a prototype, go on to develop then polish the project into a finished product. This is a creative process. If programming weren't creative, Tweetbot and Twitteriffic would both work and function the same way.

How often have you stepped away from a programming problem, only to realise in a moment of downtime exactly how to go about solving it? Or coming back to work the next day and instantly solving the problem you were frustratingly stuck on for hours the previous afternoon? Our best ideas often come when we’re away from the computer, in a state of boredom. This is a trait of creativity, and a link between stepping away from our work and having a good idea is present. Stepping away from the computer can help us as programmers, as we solve challenging creative problems.

It's fair to say almost every software developer is either working on or has worked on a side project. I saw a talk once that made me think differently about programming side projects. The talk was given by iOS Developer Alex Akers. He raised the point that programmers must love what we do because we go home from work and continue to program. A hairdresser doesn't cut their kid's hair just for the fun of it. Other creative professions, however, involve side projects. Musicians write a tonne of music; they do it because that's what they enjoy. Lots of people write in their spare time as a creative outlet, without intent to ever be published. People with an eye for visual design often like to sketch in their own time. Once again, programming has the traits of a creative task.

What we do is also kind of an art.
— Samuel Giddins - Playgrounds Speaker Podcast

If you’re like me, you’ve been working your way through listening to the Playgrounds Conference Speaker Podcasts. Toward the end of his episode, Samuel Giddins said the following, “What we do is also kind of an art.” Art is typically defined as, “the expression or application of human creative skill and imagination,” so in other words, art is an expression of creativity.

I took this photo last week while walking past a bath accessories store here in Melbourne. The mirror up top reads, “The art of bathing.” It’s easy to ignore the fact that even taking a simple bath can be art. If that’s an expression of creativity, developing an app certainly is.

Don’t focus on the technicalities of programming. Instead think of it as an art, as an expression of creativity, and see how that helps when finding the solution to your next difficult programming problem.

AirPods Review

I’ve been using the heck out of the AirPods

It’s fair to say these are more than just EarPods with the wires cut off.

Making the cut

“Describe yourself in three words.” This famous question is as old as job interviews themselves. Interviewers favour it for the brief and simplistic response that follows, while also opening up the interviewee. What do they think of themselves? Are they humble? The good news is that AirPods don’t have to choose their characteristics. That’s my job, and hence I can throw away with typical, humble responses to the question. Three words which accurately describe AirPods are:

  1. Transformative.
  2. Magical.
  3. Exciting.

As is the case with any human interviewing for a job, there’s more to the story than a mere three adjectives.


The Purpose of AirPods

Many argue the Apple Pencil was the most transformative Apple product of the last few years. Combined with iPad Pro, it changed workflows and allowed once devout Mac users to use iOS almost exclusively. That said, Apple Pencil is still a niche product, and iPad Pro is just a faster and bigger version of the iPad we’ve had since 2010. Apple Watch was a new product category for Apple - a wearable computer. Since the original Pebble I’ve been convinced of the utility of a smartwatch and, while they aren’t for everyone, have found them to be useful in many aspects of life. Describing wearable technology back in 2013, the CEO of Apple Tim Cook called it ”Profoundly interesting.” Apple Watch wasn't announced at this time, but I find it hard to believe it was the only wearable product in the pipeline.

AirPods were announced by Apple back in September, alongside the iPhone 7 and Apple Watch Series 2. Much of the focus of this event was on the new iPhone and the removal of the ancient headphone jack. At the time I was surprised so many people were talking about AirPods as “wireless earphones” and not as a “wearable device.” After spending the last few days with the AirPods, it rings true that their significance lies more in the latter than the former. These are more than special earphones. They’re a new category of wearable device. By design, they are the type of product that can passively stay in a wearer's ear regardless of if audio is playing. Apple Watch is worn all the time, whether a user is actively using it at that moment or not, while iPhone and the Mac get used deliberately, an explicit action is taken to use them. Even picking up a device and unlocking it is a definite action. Not unlike the Apple Watch, AirPods are worn passively. There is social a stigma surrounding AirPods for the moment, but the potential is abundant once people are used to them and not afraid of wearing them in public. (Yes, I am that guy who did his Christmas shopping walking around with one AirPod in.) Just like an Amazon Echo or Google Home brings a voice assistant to the home, AirPods bring Siri directly into the ear of a wearer. The “always on” approach is different to how most people I know now use earphones. Putting in earphones expresses an intention to listen to something then and there, and taking them out means you’ve finished. I believe that with time, as good wireless earphones emerge, this won’t be the case, and it won’t be uncommon for people to leave earphones in regardless of whether they’re listening to something. AirPods are modern, wearable technology at its finest.


Design

Apple chose the same white bud design as we’ve seen them use for the EarPods since 2012. EarPods are almost certainly the most popular earphones in the world because of the sheer amount of iPhones sold. You can’t get on a bus or walk down the street without seeing a pair. EarPods have always been a comfortable fit in my ears (who would’ve thought having relatively large ears is a good thing?), and the AirPods are just the same. They haven’t once felt like they’re going to fall out and this includes while at the gym doing all of my regular exercises including running, weights, pull-ups, push-ups, sit-ups; you name it. They’re hardly noticeable in the ear. More on the sound quality later, but I think they’re enough to make me ditch the pair of Bose earphones I used to use while running and at the gym. Without wires, the AirPods don’t get caught on things, don’t get tugged out of ears, and most importantly don’t get tangled in your pocket, making them fantastic for moving around. The charging case is a necessary part of the AirPods package, and it’s ideal for ensuring they aren’t misplaced when out of your ear. My one problem with it is that it’s noticeable in a pocket. With previous earphones, I could throw them into a pocket with my iPhone and couldn’t tell they’re there. The same can’t be said for the charging case. It’s somewhat bulky and noticeable in a pocket. I’d recommend keeping it in a separate bag or pocket if possible.

IMG_6079.jpg
Wireless

The marketing departments at earphone companies have been a few steps ahead of the product for the last few years. The term “wireless” has been used to describe any earphones that connect wirelessly to another device (typically over Bluetooth). However, most of these earphones have a wire going between the two earbuds. Sure this is a nitpick, but it’s the truth. It’s been a couple of years since I first heard about Earin - a similar product to AirPods in the sense that they are also truly wireless. Earin has only just come to market this year after years of media attention, which proves just how complicated truly wireless earbud technology is. Not everyone wants real wireless, either. There are already products on the market that introduce a cord between the two earbuds. In the case of the AirPods, the decision to adopt an entirely wireless design was a good one and adds to the uniqueness of the product. Going wireless allowed for each AirPod to be incredibly lightweight - 4 grammes (or 0.14 ounces). They are so light that I often forget they’re in my ear when nothing is playing.

Initial setup and pairing

The W1 chip inside of the AirPods promises to simplify the pairing process and ensure the “clunkiness” of regular Bluetooth is no longer an issue. The pairing process was simpler than I could have imagined and went something like this:

  1. Open AirPods case
  2. Hold near iPhone
  3. Press Connect button that magically appeared on iPhone screen

That was it! AirPods were connected to my iPhone and every other device on my iCloud account. The next time I sat down in front of my Mac, I could pair to the AirPods. The option to connect also appeared on my iPod touch and even my Apple Watch recognised them. By default when AirPods are taken out of the case they connect to your iPhone, but the switching process is just as easy. To connect them to another iOS device the switch can be made in Control Centre with just a few taps. On the Mac, you can connect to the AirPods from the Sound menu bar item. I like the way Apple have implemented the switching, as it is a significant improvement over the typical "un-pair then pair" method of switching connections on a regular Bluetooth device.

Bluetooth range

There’s been a lot of talk about the “special sauce” used by Apple in the W1 chip that allows for brilliantly fast pairing and incredible Bluetooth range. I don’t have any other Bluetooth earphones to compare the range to, but I am impressed. I can walk around the entirety of a relatively large house with my phone in one corner of the house and the AirPods in my ears across the other side of the house, and the sound is as clear as ever. My experience is similar at the gym. My phone can be left in a locker, and I can be using equipment 15 or so metres away through multiple walls and the connection holds. I’m not sure if it’s normal for Bluetooth, but it sure is impressive.

Sound quality

As mentioned in my initial impression, I’m no audiophile. Whether they’re better than EarPods or not, I can’t say. It’s too close to tell. That said, I do appreciate good sounding earphones (to an extent). Up until now, I’ve used Bose SoundSport earphones while running and at the gym. I do notice the sound quality is better on these than AirPods, but at this stage, I don’t think they’re better enough to warrant choosing them over the AirPods when at the gym. Only time will be able to confirm this, but I think the convenience of AirPods will be enough for me to use them 95% of the time.

Phone calls

As a proud Millennial, I rarely make phone calls. The couple I had the misfortune of making while wearing AirPods went fine. They were uneventful. I could hear the person I was talking to, and they could hear me. I’ve nothing more to say here, move on…

Battery life and charging speed

AirPods

The battery life and charging speed of the AirPods go hand in hand. Although battery life isn’t fantastic for “wireless” earphones, my early usage suggests 5-6 hours on a single charge - in line with Apple’s estimates. They charge so fast that I don’t see this as an issue. By design, when finished listening to AirPods they go straight back into the case where they start charging again. A 10-minute break in usage might charge the AirPods nearly 50%. Apple says a quick 15-minute charge will give 3 hours of listening time (equating to a 60% top-up) and my tests have all either matched or bettered this figure. Having to charge so frequently might sound in conflict with what I said earlier about wearing them constantly. However, that isn’t necessarily so. Future models will undoubtedly achieve “all day battery life”, but until then I imagine most wearers - even those who want to wear them all day - will be able to find a few 10-15 minute blocks to top them up. The result of which is almost all day battery with little worry. As an example of my workflow, I might have them in for 3 hours of my morning while I work at my computer, two of which I’ll be listening to something. At this point, the battery is around 70% when I leave for the gym before lunch. The 5-minute drive to the gym is enough for the AirPods to almost top up completely to 100%, and the same goes on the way home, so I start the afternoon at 100% again. They charge so quickly that I see battery life being a non-issue.

Charging case
Just charging my pack of Tic Tacs

Just charging my pack of Tic Tacs

Apple says that a fully charged AirPods plus a fully charged charging case will total 24 hours of battery life. I haven’t done any formal testing, but it seems about right. I went 72 hours between the initial charge and the first recharge of the case. It’s hard to say how long I used them for each day, but either way, a wearer will have no trouble getting a full day of heavy listening on one charge. Remember I was using them an awful lot over these few days for testing, so I’d say an average user will manage to go close to a week between charges of the case. As an aside, charging the case does feel a bit like charging a pack of Tic Tacs. Now let's move right along.

Charge time

I mentioned before that the AirPods charge quickly, however, the same can’t be said for the charging case. As an example, the left earbud was at 9% battery, the right one had died at 1%, and the case was also on 1%. Plugging the case into charge brought both AirPods to 80% after 15 minutes, and to 100% only 7 minutes later. After an hour of charging, the case was at 64%. It took a little over 120 minutes to bring the AirPods charging case up to 100% battery. While you can expect the AirPods themselves to charge quickly, my recommendation is for wearers to get in the habit of charging the case overnight alongside your iPhone, as it takes about as long to charge.

Controls

AirPods know when they’re in your ear, and when you take them out. If you take just one AirPod out, the audio you’re listening to will pause and resume upon the replacement of this AirPod. This handy feature and has worked reliably every time I’ve tried it. Double tapping on either AirPod will toggle Siri; however, this control can be changed to play/pause the audio as required.

Siri

Siri on AirPods has been a disappointment for me so far. The way to active it is to double tap on either bud and then talk. It feels clunky and is less than ideal while out in public where others can hear you. It’s weird to talk about apparently nothing to nobody, asking to play, pause, skip, or turn the volume up. In my experience, it hasn’t worked reliably either. I would tell Siri to “play”, it would respond with “okay”, and then nothing happened. It’s also just an inefficient way to control whatever audio is playing, as it’s time-consuming, and results in paused audio while speaking to Siri. Controlling audio from your phone is much more efficient. Pressing the play button is going to work 100% of the time on your phone. But having to carry a phone around just to control AirPods isn’t perfect, as it defeats the freeing wireless ideal of not being weighed down by anything. One of the greatest advantages of AirPods is that my phone can stay anywhere in the house, in the locker at the gym, or in a bag and I can still listen to the audio. There is a solution, however.

Apple Watch as an accessory to AirPods

Just like the Apple Watch is an accessory to your iPhone, in many ways it is an accessory to AirPods. To truly be free from your phone while using AirPods, a smartwatch with audio controls of some kind is necessary. It doesn't necessarily have to be an Apple Watch, but for the sake of this paragraph, I’ll refer to the Apple Watch. The Apple Watch allows for the best of both worlds - control over the playback from the AirPods but also the freedom to walk around without a phone in reach. The “Now Playing” app in watchOS allows for basic play, pause, and skip controls, as well as volume adjustments. The Music app allows more detailed control over what album or playlist is playing, and my Podcast player has a watchOS app that allows me to change what Podcast is up next without having to unlock my phone. Interfacing with the audio through the Apple Watch is far superior to Siri, and for that reason, if you are at all interested in freeing yourself completely from your phone I’d strongly recommend the Apple Watch as an accessory to the AirPods. It’s strange to call it an accessory to a device that’s a third of its price, but that’s what it feels like after a few days of use.

IMG_6096.jpg

Wrapping up

AirPods are a transformative product. As a new kind of wearable device, their use in the immediate and long-term future are two different things, and I’m excited about the possibilities. As a product itself, they are more exciting than both this year’s iPhone and MacBook Pro. Their truly wireless deign sets them apart and contributes to the uniqueness of the product. The way they connect via Bluetooth is innovative and perhaps a little bit magical. I’m excited to use them daily going forward and to see where future generations of the product go. I’m prepared to make the prediction that these will replace almost all Bluetooth earpieces that are commonly worn by business professionals trying to look important, and drivers who spend long days in trucks and need to make a lot of phone calls while on the road.

My recommendation

There is currently a six-week wait on AirPods across most of the world, so it’s unlikely you’ll find a pair before Christmas. That said, they will make a great present for anyone who might’ve ordered them already. Should you get a pair? It comes down to a few things. If you’re someone who cares a lot about audio quality, then perhaps they aren’t for you. If you wear an Apple Watch, then you’re someone who already likes Apple accessories and new tech, and should probably check out the AirPods, both for the convenience as mentioned earlier and also because you’ll probably like the new tech inside of the AirPods. Finally, it comes down to whether or not they fit in your ears. As great as they are, the unfortunate reality is that AirPods won’t be very useful to you if they don’t stay in your ears. For anyone who is unsure, I’d encourage you to order a pair and take advantage of Apple’s 14-day return policy in the case they don’t fit. If anything I’ve mentioned in this review excites you, then AirPods are probably for you. So try them out, and let me know what you think.

24 Hours with AirPods

For a little over 24 hours, I’ve been using Apple’s newest wearable device - AirPods. I plan on writing a full review in the coming days so stay tuned for that, but in the meantime here are some first impressions. 

 

- Design: They’re incredibly small and light. It’s easy to forget they’re in your ears.

- They're easy to pair and make it easy to switch the connection between devices. More on that in the full review.

- I’m no audiophile, but they sound as good as the wired EarPods. 

- They charge fast. I haven’t used them enough to do full battery life tests, but every time I put them back into the case (which charges the batteries), they seem to get up to 100% before I pull them back out. 

- The freedom of wireless buds is great around the house and means I don’t have to carry my phone around while listening to a podcast.

- The range is great. I haven't yet stress tested this, but they were working when I was about 15-20 metres away with multiple walls in between my iPhone and AirPods. 

- Have used them during one gym session, and they didn’t fall out, nor did they feel as though they were going to fall out. They’re hardly noticeable once in their ears. 

- It’s useful to have an Apple Watch to control the volume on the EarPods without having to use Siri.