Evernote vs. ToodleDo: A lesson in user respect

I love my internet bookmarks. My collection started in the Netscape Navigator browser in 1996, migrated to Delicious.com (a.k.a del.icio.us), then SpringPad, then Evernote. Each of those migrations was fairly easy, and each new solution offered a free service which could be upgraded for a modest fee for advanced features.

Delicious is now a different service, and SpringPad folded. So it wasn’t a surprise when Evernote started pestering me to upgrade every time I logged in. That in itself I didn’t mind so much. However, it began to bother me when the message became “get this LIMITED time offer!” and when I dismissed the message it would ask “Are you sure? You won’t get this offer again!” I did in fact get the offer again, every day for many weeks. I gently pushed back on social media regarding this dark pattern but it didn’t change anything.

So I already had a bad taste in my mouth when I logged in one day and I was notified that the “free” version would no longer support more than 100 notes (I have over 5600). I would lose access to pretty much everything if I didn’t upgrade.

I had already migrated a handful of times before so I explored my options yet again. Microsoft OneNote was a contender but I couldn’t find an easy way of using my Mac to migrate. That left Apple Notes, and I discovered with joy that it could import an Evernote export file easily. It was missing a bit of formatting and data but it otherwise worked well.

That was about when I discovered that Evernote had quietly removed the ability to export more than 100 notes at a time from their desktop application. Coupled with their curtailed features in the free tier, it seemed clear that Evernote intended to use my own data against me to keep me in their system. Thankfully I had an older version of the Evernote desktop application which allowed a full export. I made the switch to Apple Notes and I never looked back.

It should be said that I firmly believe in paying for valuable tools. Price and value was not the issue here.

Contrast my Evernote experience to what happened with ToodleDo, which I also use regularly. ToodleDo was acquired by a new management team a while ago, and right off the bat they communicated frankly with their users telling who they were and what they intended to do with their service. They assured users they would strive to keep the features they knew and loved. It was clear that they were real people who respected their users and their needs. Later on they sent out a message in the same tone, stating the fact that ToodleDo could use the extra funds and would I please consider upgrading to a paid tier of their service. I had paid for their extra features in the past when they were needed, and I valued their service and respect so I upgraded again happily and paid for unnecessary features for a limited time. Some time after that they wanted to get people to try out their new app, and again they made the request politely without coercion. They maintained consistent transparency and respect.

There’s a book by Dr. James Dobson entitled Love Must Be Tough. It is written to married folk suffering from unfaithful partners. His advice to them was, in a nutshell, expel the unfaithful spouse firmly from your household in the hopes that such treatment will shock them to their senses and make them realise the error of their ways. He presented evidence that shows that people who beg, plead, or try to manipulate their unfaithful spouses into staying only drive them further away.

Since I’m comparing myself to the unfaithful spouse here, I will point out that I agreed to starting relationships with Evernote and ToodleDo based on the promise of free service. I was grateful for it while it lasted, since they didn’t “owe” me anything. We all understood that they hoped to earn money from me someday. However maintaining a healthy relationship was still going to require honesty and respect, as it does in any human situation. By being disingenuous, disrespectful, sneaky, and manipulative Evernote eventually drove me away. The good feelings I had for their useful service were wiped away. ToodleDo chose to be vulnerable, respectful and honest and I stayed.

Good job, ToodleDo, I hope you guys stay running and have a successful business for a long time!

Triggering Haxe functions from within OpenFL TextField HTML links

It’s been a while since I posted anything useful (not sure if I ever have) but anyway here’s a tip for the Haxe / OpenFL coders out there.

Sometimes you need to have responsive, flowing text in your application and still use it to trigger functions, just like a webpage. So here is the solution. This works with a regular OpenFL text field, or a Label in FeathersUI.

var walkThruText = new TextField(); //or new Label();
walkThruText.htmlText = 'Want a walkthrough on how to use the tool?<br /><font color="#0000ff"><a href="event:tutorialClick">Watch this short tutorial</a></font> to become an expert.';

walkThruText.addEventListener(TextEvent.LINK, (linkEvent:TextEvent)->{
	switch (linkEvent.text){
		case "tutorialClick":
			trace("You clicked the link!");
	}
});

So the secret is to add an event with a name as the href on the <a> tag, then listen for the TextEvent when it gets clicked.

Bonus tip: text formatting within a TextField can be applied by either using the “setTextFormat” method on a text field and providing a start/end range, or you can use various html tags as listed here.

I hope this helps someone!

Mobile First?

One of the recent catch phrases in web development these days is “Mobile First”. The idea behind it is that since mobile now comprises the majority of web traffic, that’s what should get our most attention.

To many web designers, mobile first means “do a mobile layout first and then worry about the desktop experience later.” As a result, these designers give up the freedom that having a blank canvas affords. In other words, their designs look overly simplistic when viewed on a large device.

Should it take many screens of scrolling to find the information I need?

We fought for this

I started building websites professionally in 1996, when dial-up internet was the norm, and layouts were done using HTML tables. Once a page size exceeded 200KB, it was considered too large. We designed for 640 pixel wide screens at first, and if you happened to have 800 pixels on your CRT monitor you learned to live with condensed layouts.

Imagine my delight when CSS allowed designers to really work with the screen size instead of against it. Soon you could use fancy graphic backgrounds, custom graphic buttons, even rollover effects which didn’t require JavaScript programming.

Along the way bandwidth steadily increased. Nowadays a single homepage can easily exceed 10 MB and nobody complains. In the right hands, this can result in very beautiful experiences on the web.

The better way: User First

Websites are for people, not devices. If you remember that, a lot of the building blocks become easier to craft:

  • User interface isn’t just simple—it should be always organised to take advantage of the space available so the user can get more done, quicker.
  • Use less data if you can provide a comparable user experience. Compress your scripts. Lazy load your images. Choose the right image formats. Use an adaptive image compressor on your server to serve smaller images to mobile users.
  • Make it pretty and then simplify for mobile. People simply like to see graphics and the simple fact is that larger screens allow for more. Make sure it’s appropriate, but let your creative muscle get some exercise.

Web design is a craft, and it is communication. Embrace your end user and you will enjoy your job, and your users will enjoy what you produce.