How We Built Penbook

Slaven Radic is User Camp’s co-founder and lead developer.

I’ve been fascinated with pen computing for 20 years. I wrestled my Apple Newton MessagePad in college, convinced that paper’s days were over. But it was my love for paper that convinced me that technology will eventually free paper of its physical constraints and transform it into an even better tool. I just never thought I’d be in a position to not only use those apps, but create one myself.

Here at User Camp, we’ve been working on UWP-exclusive apps for the past three years. We love the tech stack, and also Microsoft’s refreshing approach to app store merchandising. (Only an ex-Apple developer truly appreciates what the Microsoft Store has to offer.)

When the Surface Pro 4 launched, I switched to it as my main development environment. Using my Surface Pen every day tickled something in me. It’s hard not to feel a bit inspired with Ink Workspace always there for you. Microsoft has put so much work (and marketing) into a smooth inking experience that it makes anyone feel creative.

I eventually gave into my Ink-development FOMO with our app Spirality, an app that was less a business decision and more of a flight of fancy. The fact that it still earns us money years later with its soft-sell IAP model tells you something about its users.

Eventually, we decided to take this niche seriously. Even though the Microsoft Store already had good (and great) inking apps, many were not targeting the latest Windows SDK, or were using outdated frameworks. This meant the inking experience wasn’t as good as the hardware allowed. We also had a vision for a lightweight inking app that would sit somewhere between Ink Workspace and OneNote — an app that provided a familiar UI, but improved upon physical paper in many small ways.

So we buckled down and made Penbook. Now, our little FOMO-induced app is up for a Windows Developer Award at Build 2018. Here are some lessons from our development process.

Lesson 1: The Windows Ink API is amazing

It took a few years for Microsoft to settle the inking API to where it is today. If you have older inking code, you may be frustrated to find it no longer works on later versions of Windows SDK. I feel your pain.

But with the benefit of hindsight, I’m grateful the API had evolved the way it has. It is now (fairly) self-consistent and enables much with little code. I still have some pet peeves and niggles that I’ve already communicated to the @WindowsInk team, but for 95% of all use cases it does its job well.

We also decided to stick to Microsoft’s UI and affordances as often as possible. It means that Penbook will get free new functionality when the Ink API moves forward. But more importantly, it relies on familiar interface patterns that users don’t have to re-learn.

Lesson 2: SVG is awesome

Maybe half of what makes Penbook fun is the included stationery. We designed 60+ stationery templates for people to use for their notes. We really wanted our stationery to be in a vector format, so it could look good at any level of magnification — but we didn’t want to deal with the overhead of a PDF engine living under the InkCanvas. Since Windows 10 recently added native SVG support to XAML, we decided to rely on it completely. This made the whole design process a lot easier, having Adobe XD and Illustrator export the stationery creative and UWP render it.

Lesson 3: Moving fast and not breaking things

Most of our older apps still target version 10240, the original Windows 10 release. This was out of habit — we didn’t want to cut off even a tiny subset of users who could be our potential customers.

There is definitely a place for being prudent when deciding what version of the Windows SDK you want to support. But Windows 10 is moving and improving at a fast clip. Sticking with older versions can lead to a subpar product, or an expanded development schedule, neither of which we could afford.

So we decided to target Fall Creators Update, the latest Windows 10 version that was then available, and Penbook has done well with it. Besides the fact that we were “only” giving up about 20% of the Windows 10 install base, our niche’s users were more likely to update to the latest and greatest Windows so that they could take advantage of the new pen-centric Windows features. And in the end, over 100,000 users have installed Penbook. Our next app will be targeting Fall Creators Update again.

See you at Build

Again, big thanks to the folks at @WindowsInk — I can’t wait to see where this API goes next. And if you have a moment to spare, you can even vote for us as the Application Creator of the Year for this year’s Windows Developer Awards. I’ll be at the awards ceremony on Sunday, so if you see me come say hi and I’ll get you a beer (provided they have an open bar).


User Camp is the place for Microsoft Store developers. You should follow us on Twitter.