The personal blog of Stuart Breckenridge

Custom Fonts in Email

I’m using custom email fonts through Cloud.Typography’s service. I found it easy to setup but noticed several drawbacks in early usage, which I’ve outlined below.

Note: For the purpose of this article, I'm using Mail on OS X El Capitan and I've assumed you have a Production project setup with email enabled at Cloud.Typography.

Setup

The first thing you need to do is create a new Stationery file. To do this, open Mail and create a new empty email message ⌘ + N, and then select File -> Save as Stationery.... In the save dialogue box, pick a name for your new Stationery file—I named mine Standard—and click Save.

After the Stationery template is saved, you need to locate it and edit the content.html file. Open a Finder window and use the Shift + ⌘ + G shortcut to open up a Go to folder... dialogue. In the window that opens, copy and paste this path and click Go:

~/Library/Containers/com.apple.mail/Data/Library/Application Support/Mail/Stationery/Apple/Contents/Resources/Custom/

In the resulting window that appears, open the Contents folder, then the Resources folder, option-click on the Standard.mailstationery file and select Show Package Contents. Again, open the Contents folder, followed by the Resources folder. In this folder you will see the content.html file, option-click it, select Open With, and then select a relevant program that can edit html files (I use Coda).

The html code should be edited so it looks something like this:

<html>
	<head>
		<!-- Add you cloud.typography css key here -->
		<link rel="stylesheet" type="text/css" href="https://cloud.typography.com/12345/67890/css/fonts.css" />
	</head>
	<body dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
		<!-- Add custom font styling in the span tag -->
		<span contenteditable="true" apple-content-name="body" style="display: block; font-family: 'Whitney SSm A', 'Whitney SSm B'; font-style: normal; font-weight: 400;" class="">		
		</span>
	</body>
</html>

Application

Once this is complete, save the content.html file. You can now navigate back to Mail and create a new mail message ⌘ + N and start typing. When you want to apply your custom font, select the stationery pane (top right of the compose window) and select the custom template (under Sentiments in the picker pane) and the typography will be updated.

Drawbacks

The drawbacks I’ve noticed are almost entirely on the part of the Mail app:

  • Custom Stationery—and therefore custom fonts—are not available in replies.
  • If you select Custom Stationery before typing your email, you can’t actually type any content into the email.
  • Custom fonts cannot be used to compose mail on mobile devices.

All in all, I’m not convinced on custom fonts in email. The entire solution seems sub-optimal.


Answers to Your Questions About Apple and Security  

The question:

Could Apple build this operating system just once, for this iPhone, and never use it again?

The (common sense) answer:

The digital world is very different from the physical world. In the physical world you can destroy something and it’s gone. But in the digital world, the technique, once created, could be used over and over again, on any number of devices.

Law enforcement agents around the country have already said they have hundreds of iPhones they want Apple to unlock if the FBI wins this case. In the physical world, it would be the equivalent of a master key, capable of opening hundreds of millions of locks. Of course, Apple would do our best to protect that key, but in a world where all of our data is under constant threat, it would be relentlessly attacked by hackers and cybercriminals. As recent attacks on the IRS systems and countless other data breaches have shown, no one is immune to cyberattacks.

Again, we strongly believe the only way to guarantee that such a powerful tool isn’t abused and doesn’t fall into the wrong hands is to never create it.


The Cheapest Smartphone in the World  

Hitesh Raj Bhagat, ET Bureau (via the Economic Times):

February 18, 2016 will be an important day for the smartphone industry - at 6am, registrations for the Freedom 251 will start. Priced at Rs 251 (less than $4), it’s not just the cheapest smartphone in India - it’s the cheapest smartphone ever.

Just look at the app icons and home button. They look disturbingly familiar.


ASICS to Acquire Runkeeper  

Jason Jacobs, founder of Runkeeper, discussing their acquisition by ASICS:

When we look ahead, it seems clear that the fitness brands of the future will not just make physical products, but will be embedded in the consumer journey in ways that will help keep people motivated and maximize their enjoyment of sport. By putting these two pieces together (digital fitness platform and world class physical products), you can build a new kind of fitness brand that has a deeper, more trusted relationship with consumers and can engage with them in a more personalized way.

Partnering with ASICS to fulfil this vision together makes a ton of sense. We both have deep roots in and focus on running as a core component of the fitness experience. There is strong alignment between our brands and core values. And from people using our Shoe Tracker feature in the app, we know that ASICS shoes are by far the ones that Runkeeper users run in the most!

From the end-user standpoint, not much will change. Not only will the Runkeeper product carry on, but we will be able to move even faster. We will be able to pursue the vision we’ve set out to pursue all along, with a partner that can bring many resources to bear that we couldn’t fathom having access to on our own.

My favourite running tracker and my favourite running trainer—I use the ASICS Gel-Kinsei 6—joining forces is good news. I’m hoping for discounts on merchandise in exchange for completing running challenges.

Related: Why I use Runkeeper instead of Apple’s Workout app.


Sparkle Framework Vulnerability  

Dan Goodin:

Camtasia, uTorrent, and a large number of other Mac apps are susceptible to man-in-the-middle attacks that install malicious code, thanks to a vulnerability in Sparkle, the third-party software framework the apps use to receive updates.

The vulnerability is the result of apps that use a vulnerable version of Sparkle along with an unencrypted HTTP channel to receive data from update servers. It involves the way Sparkle interacts with functions built into the WebKit rendering engine to allow JavaScript execution. As a result, attackers with the ability to manipulate the traffic passing between the end user and the server—say, an adversary on the same Wi-Fi network—can inject malicious code into the communication.

If you want to find if there are affected apps on your Mac, run this command in Terminal:

find /Applications -name Sparkle.framework

On my Mac, Coda 2, Fabric, GPG Keychain, and Sketch show up as using the Sparkle Framework. However, it’s important to note that the vulnerability only works when updates are served over a non-HTTPS connection. With that in mind:

  • Coda 2 is not affected
  • Fabric is not affected
  • GPG Keychain is not affected
  • Sketch is fixed as of v3.5.2

Say what you want about the state of the Mac App Store, but this stuff hasn’t happened there.


Apple Special Event on March 15th  

Matthew Panzarino:

Now, it looks like the date has solidified. March 15th is the date, according to sources, and we should indeed be seeing a rumored 4″ iPhone and a new iPad.

My bet is that we’ll also see the launch of iOS 9.3 with support for Apple Pay in Singapore, Hong Kong, and Spain (via Amex).


Thoughts on Apple Watch from Around the Web

Brent Simmons:

Here’s the thing, though: the Apple Watch contains a hundred miracles of engineering and design, surely, but serious problems with software and services can turn even the most incredible hardware into something you just sit on your desk and ignore.

Nick Heer:

I’ll add one more to the mix: since watchOS 2.0, I haven’t been able to launch native third-party apps on my Watch. Apps from TestFlight work fine, as do WatchKit apps, but native third party apps continue to experience an issue associated with the FairPlay DRM that prevents them from loading — they simply crash at launch.

Marco Arment:

The result is promising, but clunky and slow. It could be so great at its three most useful functions — notifications, activity tracking, and timekeeping with robust complications — if only they were more reliable and better executed. Someday, I hope they are.


Running Without Apple Watch Workouts

This week I’ve been running every day: five days on the treadmill and one day pounding the pavement. I could have used the Workout app on my Apple Watch to track these workouts, but it lacks basic functionality that all other fitness trackers have, which make it of little use to me.

#####A Lack of Context After completing any workout which is tracked by the Apple Watch, the resulting data set is shipped into Activity app 1 on your iPhone. From there you can see:

  • Type of Workout
  • Active/Total Calories
  • Total Time
  • Total Distance
  • Average Pace (plus Splits)
  • Average Heart Rate

Things you can’t see, which result in a lack of context:

  • Maps (for outdoor activities)
  • Heart Rate at any given point on a run
  • Elevation (for outdoor activities)

Maps are perhaps my most sought after feature. If I want to know where on a route I am gaining or losing time, they are essential. If I want to recall where my Saturday Morning Run was a year ago, they are essential. It’s something Apple could easily implement, given that they have their own mapping service.

These features are available–and have been for a long time–in competitor apps such as RunKeeper or Strava.

#####Inability to Edit Another bugbear is the inability to edit workouts logged by Apple Watch. For outdoor workouts, this is OK, as I’ve found the GPS to be accurate. For indoor workouts, it’s criminal. For every 5KM run I’ve completed on a treadmill, Apple Watch has logged it as somewhere in between 4.25KM and 4.75KM2. Once it’s logged, that’s it, forever inaccurate.

I’ve been using RunKeeper this week. Workouts has been a huge letdown.

  1. And the Health app. ↩︎

  2. This is after several hours of outdoor calibration runs. ↩︎


Matt LeBlanc to Co-Host New Top Gear  

Via the BBC Media Centre:

Iconic American actor Matt LeBlanc has today been revealed as one of the new presenters of the upcoming and eagerly awaited return of Top Gear - the planet’s biggest motoring entertainment show.

LeBlanc’s appointment marks the first time the show has ever had a non-British host in its 39-year history.

In what promises to be an explosive cocktail of car-obsessed entertainers and cultural clashes - the eagerly anticipated return of the revamped show is expected to noisily announce itself on BBC Two and TV screens everywhere this May.

An inspired choice. I genuinely hope that the new Top Gear and the as yet unnamed Clarkson, Hammond, and May show, are good!


Innovation Time. Or Not.  

Adrian Kingsley-Hughes for ZDNet:

…Apple is facing a challenge that it’s not previously faced with the iPhone, and that is that sales have plateaued.

Have they? Based on the results of one financial quarter this is quite a statement. I’m sure it takes into consideration the pent up demand that existed for larger screened iPhones that resulted in huge sales for iPhone 6 and 6 Plus. I’m sure it also takes into consideration the 60%1 of users on pre-iPhone 6 devices that haven’t yet upgraded.

On the subject of the innovation needed for the iPhone 7:

Think there’s not much left that Apple could do? Think again! Here are just a few ideas off the top of my head:

  • Waterproof iPhone
  • More durable iPhone
  • VR integration
  • New battery technology
  • Built-in health sensors
  • Gesture control

Waterproofing has been attempted by Samsung and Sony, where it was abandoned by the former and discouraged by the latter2. The iPhone 6s is waterproofed to a degree; making it fully waterproof can’t be classed as innovation.

Is there a durability crisis with iPhones I’m not aware of? Does the use of stronger Gorilla Glass not make iPhones more durable? Or, for that matter, the use of stronger aluminium3?

VR is interesting, but what is the use case for integration in an iPhone and how would it work? VR, to me, makes no sense on an iPhone.

New battery technology: moving from Li-ion to something newer, longer lasting, and faster charging would be innovative. No disagreement here.

Health sensors for a device that’s mostly in your pocket? How would they work?

Gesture control is nothing more than a gimmick. Importantly, gesture control is not innovative as it’s been done before.

It’s a strange set of feature requests, to say the least.