The Coppice Blog

News, tips, and sneak peeks

Coppice Pro

Posted:

Over the past few months we've taken a look at a lot of the functionality of Coppice but one thing we haven't mentioned is the business model. So today we're going to take a look at how we're planning to fund Coppice's ongoing development.

What is Coppice Pro?

We want to get Coppice into the hands of as many people as possible. At the same time, we want to make money so we can invest in further improving Coppice over time. To that end, we've decided to split Coppice's functionality up into two tiers: Core features and Pro features.

Core features will be available for free in Coppice. You will be able to download Coppice and use it with these features without having to pay a penny. And most importantly, you won't have to worry about a time limited trial expiring.

Pro features will be available after purchasing Coppice Pro. These will remove certain limits and provide advanced features to help you get the most out of Coppice. Coppice Pro will further enhance the Core features, with functionality such as advanced organisation and linking tools.

Coppice Pro will be available as an annual subscription for just $19.99 a year, available through our website.

Subscriptions

Unfortunately subscriptions can be somewhat polarising for some people, so we wanted to discuss a bit more about why we've taken this approach with Coppice.

Subscriptions can fundamentally change how you ship software. Using a traditional "paid upgrade" model, developers will release several free updates, but then collect a lot of features up into one large update to justify an upgrade price. This can often mean complete features stay unreleased for weeks or months, waiting for that big "2.0" update. With a subscription model we are freed from this restriction, as we have an ongoing income. This means we can release features when they are ready, getting the benefits of them to you sooner.

We are also able to lower the cost of entry. With the "paid upgrade" model, you are effectively asking users to pay up front for the several years of development between major releases. With a subscription model, you are only paying per-year, so we can offer a lower starting price.

Subscriptions also offer other benefits. While we have no concrete plans at the moment, our long term goal is to have Coppice available on other platforms beyond the Mac. Subscriptions will allow us to provide a unified payment model across platforms, so you won't have to keep paying separately for each platform.

Ultimately, we believe subscriptions provide the best model for sustainable, long-term development, while keeping the cost as low as possible to open up Coppice Pro to everyone.

Core vs Pro

So how do we decide what features will be in the Core tier vs the Pro tier? It helps to define what the core functionality of Coppice is:

  1. To collect your thoughts and ideas,
  2. To visually lay out those thoughts and ideas, and
  3. To create links between those thoughts and ideas

The Core tier will provide the basic functionality to make each of these possible, whereas the Pro tier will provide additional functionality to truly get the most out of them. Let's take a closer look at what this means in the initial version of Coppice.

Pages

You will be able to add an unlimited number of Pages to your documents in both Core and Pro, using both the initial types of Pages: Text and Images.

Coppice Pro will add support for Folders. These will let you group your Pages in the sidebar, helping you to better organise your documents.

Coppice's sidebar, showing Pages grouped into Folders

Canvases

In the Core tier you will be able to add as many pages to a Canvas as you like, lay them out, and view the relationships between them. However, you will be limited to just one Canvas per document.

With Coppice Pro, you will have an unlimited number of Canvases per document. You will also be able to set the Canvas theme (Light or Dark) on a per-Canvas basis, rather than it always automatically changing with the system theme.

Linking

Linking is an important part of Coppice, so the Core tier will allow you to manually create links between pages without any restrictions.

We want Coppice to help you find those links though, so with Coppice Pro you will be able to enable Auto-Linking. This will look for references to other Pages as you type and create links for you, leaving you to focus on the content of the Page.


Over time we will be adding new features to both our Core and Pro tiers. While our focus will be on further improving Coppice Pro, we already have several new features planned for the Core tier. In a few weeks we will be taking a look at our plans for Coppice after its initial release, so be sure to subscribe to the Coppice Blog, the Coppice Mailing List, and follow @coppiceapp on Twitter to stay up-to-date.

Designing for Accessibility

Posted:

Accessibility is something near and dear to our hearts at M Cubed Software. For over a decade we have advocated for making software accessible to everyone, and over that time have helped many other developers to improve the accessibility of their apps. So when it came to developing Coppice, accessibility was high on the priority list.

Making an app accessible doesn't just help the 15% of the population living with a disability, it also helps every single user by letting an app better adapt to their needs and workflow. By making accessibility a core part of the design process, rather than simply an afterthought, it ultimately helps you build a better app for everyone.

So what are some of the ways we've made Coppice more accessible?

Keyboard Navigation

Coppice is a very visual app, especially on a Canvas. In many cases you will use a mouse to navigate around the UI, but it's also helpful to navigate using the keyboard. We've worked hard to provide support for fully navigating Coppice's UI with just the keyboard by hitting the tab key.

This even extends to Canvases, where you can tab between pages, and then the controls within a page. We even flash the page content when you tab to it, to let you know exactly where you are in the UI.

Moving Pages

One of the primary tasks you will perform on a Canvas is moving pages around. As well as dragging pages with a mouse, you can use the arrow keys on your keyboard to move the selected pages around the Canvas. Holding down the shift key will move pages 10x as much, letting you quickly zoom about.

Sidebar Sizes

For many people, being able to change the size of parts of the UI can massively improve their ability to use an app. Some people prefer a UI to be more compact to fit more content on the screen at once, whereas others prefer the UI elements to be bigger so they are easier to read and interact with.

With Coppice, we support the ability to change the size of the sidebar in a document. By default this matches your system settings, but you can also override this specifically for Coppice, if you prefer something different

VoiceOver (and other assistive tools)

It's also vitally important to provide full support for those who use assistive tools such as VoiceOver. In many cases this just means ensuring controls are correctly labelled in the UI. We have also made the effort to ensure navigating through the UI with assistive tools is as easy as possible, by ensuring the UI has a hierarchy of groups, rather than appearing as one long, flat list of every element in the UI.

Coppice also presents other challenges. By its nature, it is a very visual tool. So how do you communicate this to someone who may not be able to see? There are also other actions such as resizing a page. How do you make this functionality available to someone who cannot see the page edges or who may not have the fine motor function to be able to use a mouse?

The video below shows some of the solutions to these problems we have added to Coppice. When you select a page using an assistive tool like VoiceOver, it reads out the page type as well as where that page was linked from, which gives you some context as to the relationships on the canvas. Interacting with a page also exposes special resize handles so that users of assistive tools can easily resize a page.

The Future

This is just the start for accessibility in Coppice. As with any aspect of software, there are always ways to improve accessibility. Our goal is to make Coppice one of the most accessible pieces of software around. That's not an easy task for an app as complex and as visual as Coppice, but it's one we intend to continually work on.

To achieve this we will need your help. If you ever find something in Coppice that feels inaccessible, please get in touch and we'll try to fix it as soon as possible. And if you want to try out the features above before release, you can add your name to the waiting list for the Coppice Private Beta.

As always, if you would like to stay up-to-date on Coppice, make sure to subscribe to the Coppice Blog, the Coppice Mailing List, and follow @coppiceapp on Twitter.

Designing for Privacy

Posted:

At M Cubed Software we believe that privacy is a fundamental human right. Sadly it isn't one that is universally protected, and it is common in the software industry for some companies and their apps to vacuum up user data left, right, and centre. We prefer to take different approach, so today we'd like to show you how we have built Coppice and our surrounding infrastructure with Privacy in mind.

(All information here is accurate as of the time of writing. If you are reading this at a later date some details may have changed, but our principles will always remain the same.)

Privacy Policy

The key to privacy is transparency. Transparency about what data we collect, how we collect it, and why we collect it. This level of transparency is something now required by law thanks to the EU's General Data Protection Regulation (GDPR) and takes the form of our Privacy Policy. This outlines the data we collect, the reasons we collect it, and what your rights are with respect to your data. We have just updated this to be even more comprehensive and clear, so be sure to check it out.

Data Minimisation

Privacy is fundamentally about protecting data, and the easiest way to protect a piece of data is to not have that data in the first place. As such, when we were building our websites and the infrastructure to support Coppice, we took a long hard look at every piece of data we stored and asked "is this something that we need or merely something that we want to collect?" If it's the latter then we tried to remove it.

Here are a few examples of how we minimise data collection:

M Cubed Accounts

When you sign up for an M Cubed Account we only ask for your email and password. We don't ask for your name, your address, or any other data that is not absolutely necessary to provide you with a secure way to manage your subscription.

The Coppice Mailing List

Similarly, when you sign up to the Coppice Mailing List we only ask for your email. Sure, it would be nice to have any email we send you start with your name but it isn't necessary for the mailing list to work. We have also chosen a mailing list service that allows us to disable tracking when we send out emails. All we need to know is whether the email failed to get to you, we don't need to track what you do with it after it arrives.

Analytics

We also keep our analytics to the bare minimum. For our websites the story is simple: we only collect essential access logs.

For Coppice, we give you an option to send us some basic analytics data to help us improve the app. This is entirely opt in and is stored anonymously on our servers. You can always change your mind in our Preferences window, and we also give you full details of what information we send, as well as exactly how each piece of data helps us make Coppice better. Below is an example from one of our machines.

We even went an extra step with this. The tool we use to collect and send this data (Sparkle) is used by many apps on the Mac and can collect a lot more data such as how fast your CPU is, how much RAM you have, etc. For some apps this is very useful information, but for us it isn't necessary. Unfortunately it doesn't allow developers to choose what data is sent, so we opted to customise it to let us only send the data we really need to make decisions about Coppice. When Coppice is released we will be offering these changes back to the Sparkle project so other developers can benefit.

A sheet from Coppice's preferences explaining why analytics are collected. Below is a table showing the data that is sent (OS Version, CPU Type, Model, Language, App Version, and Bundle ID). Above the table is a toggle allowing users to switch between the Raw data or a human readable version

A Local App Means Local Data

One of the benefits of writing a native app that runs on your machine is that we don't need to handle your data. In fact, unless you actually send us a document you created with Coppice, we don't know anything about what you create with Coppice. Your documents are stored where you want, and you have control over who you give access to them.

Coppice is Our Product, Not You

Unfortunately there are some companies out there that don't view their app or their service as their main product. Instead, they see it as a way to collect the thing they really make money on: your data.

We take a different, more "traditional" approach: offering you a great product in exchange for a great price. That is how we make our money, and it makes all of the other points we mentioned above so much easier to implement. It also means that you are our number one priority. We don't need to add features and functionality to satisfy some other group of people. Instead we can focus on making sure Coppice keeps providing you value.


So that is a bit about how we view privacy and how it has been designed into Coppice. Privacy is always an ongoing thing, so if we ever need to change something we'll be sure to always be completely transparent with you. If you have any questions related to privacy then please feel free to email privacy@mcubedsw.com at any time.

If you would like to stay up-to-date on Coppice, make sure to subscribe to the Coppice Blog, the Coppice Mailing List, and/or follow @mcubedsw on Twitter.