November 19, 2015

Desk PM Line Extends with Desk MD, & Desk NT

Desk PMDesk PM

Desk PM is a blogging application. I talked about it here. It has come a long way since. It has now spawned two other related apps.

Desk PM is an application with three features:

  1. It lets you publish to a wide mix of blogging engines.
  2. It lets you write in a WYSIWYG environment.
  3. It lets you write in markdown.

The product is now broken into three iterations:

Desk PM does everything, Desk MD dumps the WYSIWYG environment, and Desk NT dumps publishing.

Desk PM ($19.99)

Desk PM is a blogging solution. It lets you write, either in WYSIWYG or in markdown, and then publish to a wide variety of blogging platforms. It is competing with products like Blogo, Byword, and MarsEdit. In that space, these are some of the features of the competing solutions:

Desk PM Blogo MarsEdit Byword
WYSIWYG Yes Yes Yes Yes
Markdown Yes ? Yes Yes
Edit Images No Yes No No
Updating of Posts Yes Yes Yes Yes
Evernote Yes Yes No Yes
Blogging Engines Many 3 Many Many
Bookmarklet No Yes Yes No
Moderate Comments No Yes No No
Multiple Blogs Yes Yes Yes Yes
Distraction Free Yes Yes No Yes
Preview Posts Yes Yes Yes Yes
Write Offline Yes Yes Yes Yes
Schedule posts Yes Yes Yes No
Price 19.99 29.99 39.99 16.98

A cursory look at this table and a few things jump out at you. Blogo does more but only for 3 blogging platforms. MarsEdit is the older product in the category and its price reflects that. DeskPM is competitive in this marketplace.

The critical differentiator in this market would be the environment provided by the products for you to write in. I have no experience with Blogo, so I would say that the leaders in this field are DeskPM and Byword. Byword was designed as a markdown based text editor for writing. The publishing function is an add-on to that capability. Byword has a full-screen mode and a line/paragraph focus which is industry leading. This is the market DeskPM is designed for. Its user experience and interface design is its main differentiator from Byword. They are both well designed products and you wouldn't be unhappy in either.

In version 2.1, Desk PM has added three features:

  1. Publish to Medium. This is a feature which has also been added to Ulysses, Blogo, and Byword. Implemented through the Medium API it lets you add posts to the drafts section in Medium. You use the Medium editor to clean it up and post. A welcome addition for folks who like posting to Medium.
  2. Tables. The table creation function only works in WYSIWYG mode. It needs to be better thought through. Why only WYSIWYG mode? I don’t want to work in that mode. I want to work in Markdown mode and should have access to the table editor in that mode. This switcheroo in modes doesn’t make sense to me. The table editor is also not fully developed. Once you create a table it is virtually impossible to add rows or columns to the table. The functions show up when you right click on the table, but they don't do anything. Seems to me that the feature has not been completely implemented. Desk PM's closest competitor Byword doesn't support tables.
    DeskPM TableDeskPM Table
  3. Typewriter Scrolling is a feature which is dear to me. I hate looking at the bottom of the screen when I am typing and this is a good implementation of the feature. Of course, if you are looking for typewriter scrolling, Ulysses is the best implementation of this feature. However, Desk PM's implementation is workable and a good addition to the writing environment.

Desk PM still saves its files in a proprietary format, denoted by an extension .dpm. It is actually a package with the text file of your content and a settings file. The text file does contain your document, it has some screwy markup, but that is fixable if you need it. I would have preferred it if the application let me work in pure text files alone. It doesn't. It opens a markdown text file, it lets you add to it, but you cannot save the document as a markdown text file, you have to export it as a markdown file and the save function will ask you to make a new file with the .dpm extension. I use Ulysses and Sublime Text 3 to edit my text files. They all add features to my workflow, and I am not prepared to go all in with some proprietary format which is accessible by only one program. That is a deal breaker for me. I like the environment, like what it does with the publishing features, but I am not going to adopt a proprietary format for my work. So, if I am using Desk PM to publish, the process is always accompanied by writing in it and exporting the document periodically to markdown files. I work on the markdown files in other programs and then bring the content back to Desk PM. This is a pain. I have to maintain two versions of the same document and it adds unnecessary friction to the workflow. As you can tell from my feelings about proprietary formats, Desk PM currently doesn't figure in my workflow. It is a pity, because the writing environment is well designed. If you are willing to adopt Desk PM as your sole writing and publishing environment, this is not going to be as big a deal for you.

Desk PM is a well designed writing and publishing solution and is recommended with reservations.

Desk MD ($14.99)

Desk MDDesk MD

Desk MD is a markdown editor without the WYSIWYG feature. It does away with the WYSIWYG mode and concentrates on Markdown. It is positioned as a markdown based blogging product. This is a product with a lot of promise hobbled by poor execution.

Again, the proprietary format. It saves files with the .dpm extension. A markdown editor which doesn't save its files as markdown text files. Someone thought this was a good idea? It lets you open markdown text files, but when you want to save it, it insists on the .dpm extension. Excuse me?

The Desk family of products share the same codebase. But don't tease me. In Desk PM, tables are implemented in WYSIWYG mode. In Desk MD, there is no WYSIWYG mode, so tables are not available. But they show up as an inaccessible feature in the Format menu.

Tables are out of your reachTables are out of your reach

It has the publishing features from Desk PM. So, you can write and publish in it. It is a nice environment to write in. But the product doesn't seem very well thought through. This is the category where there is a ton of competition in the marketplace. I could go old listing out all the markdown based text editors in the market, so, I am going to name just two. Two of the behemoths in the marketplace are iA Writer and Byword. You can argue about which is the best environment to write in for you, but they are both well designed alternatives which are playing in this space. So what makes Desk MD special in this space? I don't have a good answer to that question. Why would one adopt Desk MD instead of the competitors? I also don't have a good answer to that one.

What could the developer do to make this product competitive?

  1. Ditch the dpm format. The dpm format makes sense for the WYSIWYG editor, since Desk MD doesn't support that, why is it burdened with the dpm format? If you are wedded to that format, give people an alternative to work in text files without the friction.
  2. Implement table editor right. Do it in markdown. None of the majors support tables at this point.
  3. Build in touches which make the product better at handling markdown. For instance, be innovative about links. Let me highlight a word and press a keyboard command to let the app know this is a link. Surround the word with square brackets, and copy the URL from the clipboard, surround it with brackets and place it after the square brackets. If there is no URL in the clipboard, place the cursor between the brackets waiting for the link to be typed in. Let me highlight a word, and press the left square bracket, surround the highlighted word with square brackets when I do that. You are making linking easier. There are a ton of these features you can add which would make Desk MD a better markdown editor than the competition.
  4. Support all of a markdown variant. Pick one, Gruber's Markdown, Github Flavored Markdown, or CommonMark. Pick one. Support it fully.

At this point in the product evolution, I cannot recommend Desk MD for anyone but those users of Desk PM who are irritated by its support of WYSIWYG mode. There are better markdown editors in the marketplace.

Desk NT ($9.99)

Desk NTDesk NT

I have no idea why this product exists.

We live in a mobile world. Notes are documents we want to be accessible everywhere. Desk NT doesn't have an iOS equivalent, so notes you take in it are restricted to the Mac and the Desk NT application.

There is no opportunity to add to the notes collection easily. You have to always have the application open and switch to it, to make your notes. No ability to be in one application and quickly jot down a note for Desk NT from that application. No quick entry option.

It seems the developer took the Desk PM product, stripped out the publishing and called it Desk NT, and is trying to sell that as a note-taking solution. I don't see how this is better than any of the other available options for taking notes.

So, what happened?

The developer of a very successful product Desk PM now has three products in the marketplace, two of which are badly designed and ill-conceived. This is what the developer says about the product proliferation decision: "With version 2.0 I’ve segmented the original award-winning app into three distinct products, based on community and customer feedback!"

Lesson No. 1

Product mix decisions should never be based on customer feedback. The customers you have are already using Desk PM, they have no idea what the market would be for a markdown based pubishing solution or a note-taking app. They will express an opinion, specially if you ask them to, but it is by definition an ill-informed opinion. You should ignore them. Simple rule: Listen to them when they talk about Desk PM, ignore everything else.

What is the relevant criteria for deciding on a line extension like this one?

  1. Does it make sense to the brand? You were trying to position Desk PM as a write and publish solution. Now you have Desk NT, which is a write only solution. Does it take away from your write and publish position? I think it does. This is a bad idea.
  2. Do you have the resources to support line extensions? You have a product Desk MD which doesn't do tables, but the menu item exists. You have started supporting tables but the contextual menu drop-down has items which cannot be selected. You do not have the resources to support three products. Desk PM in its first version was distinguished by attention to detail. It had features missing, but the ones it did have were well thought through and implemented. Version 2.1 is a mess. You do not have the resources to support three products. This was a bad decision.
  3. Are you going to be competitive in the new categories you are entering with the line extensions? Your competitive advantage is user experience with Desk PM. The folks who like Desk PM have already given you their money. They are not going to buy Desk MD or Desk NT. They get all the benefits of those products in Desk PM. So, you are talking about new users. User experience is a feature relevant to the user who has already bought your product. New users have no idea how they will feel using a product they have never used. So, it is a feature which is difficult to make salient to the prospective user. Looking at the markdown editor marketplace and the notetaking marketplace, these are crowded with a plethora of choices. How are you going to get heard in that space? How are you going to distinguish yourself in that space? Why are you picking that fight? This is a really bad idea.

Lesson No. 2

Focus. You are an independent. You need to focus on one product. Even if you were not an independent, I would give you the same advice. Focus on one product. Make it the best product in the marketplace. Churn like hell in that marketplace. When consumers think of blogging and the Mac, the only name on their minds should be Desk PM. Don't let anything distract you from that task. That marketplace has a lot of charm. Fewer competitors and a lot of users. It is a specialized task. You can be innovative and market leading in that category. You had a good start with version 1.0 of the product. Make it count.

You want a new challenge? Make an iOS version of Desk PM. Write and publish from any device, anywhere.

Don't look at ancillary markets and drool. My product can also be a markdown editor, there are so many more people buying markdown editors than blogging tools, let us go to that market. I am going to take my product, strip out the non-essentials and then I can be competitive in that market. No, you won't. The people in the marketplace making markdown editors are focussed on making the best markdown editor they can make. Your markdown product is a stripped down version of a market leading product in another category. You are not competitive. Don't waste your time.

So what do we do now?

If I was the developer, this is what I would do:

  1. Dump Desk NT. Give the purchasers their money back.
  2. Have Desk PM do WYSIWYG. That is the only product which needs to use the .dpm format. Go whole hog. Support WYSIWYG fully in it. Write and publish.
  3. Have Desk MD do markdown. Pick a flavor of markdown and support it fully. Support text files. No .dpm file support. Go whole hog on the markdown support. Again, write and publish.

What does this do? It gets rid of the confusion. Gives your products a much cleaner focus. Lets you own "write and publish". Makes you competitive.

In the meantime, Desk PM is recommended with reservations. Avoid Desk MD and Desk NT.

Note: I purchased Desk PM. Review codes were provided by the developer for Desk MD and Desk NT. Of course, after this I will not be surprised if developers refuse to issue me review codes.

Note: Arm & Hammer Cat Litter is a brand extension. Arm & Hammer Advance White toothpaste is a line extension. When you go to a different category it is a brand extension. When you are playing in the same category with a different variation, it is a line extension. So, Desk MD and Desk NT are line extensions of Desk PM. If the developer made a weather app, called Desk Weather, that would be a brand extension.

macosxguru at the gmail thingie

This is a review from Macworld, Mr. Simon is considerably kinder.:
Desk review: Writing app has an expanded lineup but the original is the best value | Macworld

Blogging Desk PM Desk MD Desk NT line extensions
November 17, 2015

Typora does Markdown right

Typora IconTypora Icon

Typora is still in beta. So, this is not a review. I am going to talk about two of the things that Typora does which has me excited about its evolution.

Preview and Writing rolled into one

Makes the markdown syntax disappear when you finish writing it. It is represented on screen as the finished output. So, you don’t need to preview the markdown, the preview is updated on screen in real time. Fantastic.

Tables done right.

This is the best implementation of tables in a markdown based text editor. Thanks to Typora, I am using tables a lot more in my articles. You have to give it a try. I find myself using Typora exclusively for tables.

Waiting for the product to be commercially released so that I can give the developer my money.

macosxguru at the gmail thingie

Markdown Tables Typora
November 14, 2015

Links of Note 2015-11-14

Learn some stuff.
Learn Enough™ Command Line to Be Dangerous | Softcover.io

Learn some more stuff.
Learn Enough™ Text Editor to Be Dangerous | Softcover.io

Research on line length.
Readability: the Optimal Line Length - Articles - Baymard Institute

This made me switch to System Font.
Choosing a font for writing — Medium

macosxguru

November 14, 2015

Evolution of a Song

Bob Dylan. Okay, he is a bit of an acquired taste, and there seems to be a generational effect when it comes to his appeal, but there is a new collection of CDs from him which got my attention. Columbia has been packaging what they call, the Bootleg series, and releasing some of his older stuff. The Cutting Edge 1965-66: The Bootleg Series Vol. 12 is the latest release. There is a version available which is a little insane. 18 CDs worth. I am listening to it in parts. An interesting exercise. You get to see the evolution of the songs. Take a song like Subterranean Homesick Blues. It is a great music video, you can watch it here. The collection has eight versions of this song and if you know the final released version, it is an absolute blast listening to its progression. Gives you an insight into the process of creation. Absolutely mesmerizing.

The absolutely insane 18 disk edition is a little difficult to find. You might have more luck finding the 6 disk edition. It is available The Cutting Edge 1965 - 1966: The Bootleg Series Vol. 12 (6 CD Deluxe Edition).

macosxguru at the gmail thingie

Music Creation Evolution Bob Dylan
November 8, 2015

Writing (Better) Markdown in Sublime Text 3

If you are using Sublime Text 3 you need to get package control installed. Go here. Follow the instructions and get Package Control installed. Have you installed it? Good.

Sublime Text 3 provides a Markdown package by default. It is nice but lacking in features. We are going to use the community contributed packages and ignore the default markdown package. These are the packages we are going to install to make Sublime Text 3 a fantastic markdown editor.

  1. The Markdown Editing package.
  2. The typewriter package.
  3. The Github Markdown Snippets package.
  4. Themes for Markdown Writing.

The MarkdownEditing Package

Read about it here. Install it through Package Control.

What does this do? Read the readme.md file in the package and you will get all the details. I am going to highlight some of the features which makes this package useful to me.

Flavors of Markdown supported

The MarkdownEditing package brings support for three flavors of markdown to Sublime Text 3: Standard Markdown, Github Flavored Markdown(GFM) and MultiMarkdown. I have all markdown files assigned to Github Flavored Markdown and that lets me use tables, footnotes and tasks.

Features which I find useful

This is going to be a long list. I am fond of this plugin:

  • Asterisks and underscores are auto paired and will wrap selected text. So, it is easy to apply bold and italic just by typing one or two asterisks. When you are wanting an italic, just type an asterisk and the cursor gets surrounded by two asterisks. Type another one and you are in markup for bold. I don’t use that much though, I press ⌘ + ⌥ + B. That gives me four asterisks with the cursor in the middle. I type in what I need bolded, then press ⌃ + E to get to the end of the markup and get on with my writing.
  • Backticks, the markup for code, are paired.
  • Lists are handled well.
    • At the end of a list item, pressing Return will insert a new list item. If it is an ordered list, you will get a new list item with the incremental number already in place.
    • Pressing Tab on the blank list item will indent it and switch the list bullet to another one (Order is *, -, + in a cycle). Much like this list is doing.
    • Pressing ⇧ + Tab on a blank list item will unindent it, and switch back to the list marker which was used in the previous level of the list.
    • You can disable automatic bullet switching or choose which bullets to be used, in the settings file.
    • If a list item contains a GFM task, pressing Return at the end of the line, will continue with a new blank task.
  • At the end of a blockquote line, pressing Return will extend the blockquote.
  • More interestingly, selecting some text and pressing > will convert the content to a blockquote. You don’t have to select the whole paragraph, any portion of it selected will turn the paragraph into a blockquote.
  • If you select a word and type [, the word is going to be surrounded by square brackets and the cursor will be placed at the end of the right square bracket. Type ( and the right parenthesis is going to be added, with the cursor in the middle. Paste or type in the URL, and you now have a link completed.
  • ~ wraps selected text with ~~ (strikethrough).
  • Select a line. Type # and it is preceded by a #. Type as many as the header level needs. Move on.

Keyboard Commands

I am going to talk about some of the keyboard commands that are useful to me. However, I made a change to the default assignments. By default, ⌘ + ⌥ + V pastes the contents of the clipboard as an inline link on selected text. Didn’t work for me. It clashed with the default paste command, and I changed it to ⌘ + ⌥ + L. Works like a charm now.

You change the default keyboard commands by finding the keyboard command in the Plugins default Keybindings file. SublimeText>Preferences>Package Settings>MarkdownEditing>Key Bindings - Default file. In this case, it was:

{ "keys": ["super+alt+v"], "command": "paste_as_link", "context":
        [
            { "key": "selector", "operator": "equal", "operand": "text.html.markdown", "match_all": true }
        ]
    }

I changed the “super+alt+v” to “super+alt+l”. Copied the whole section into the SublimeText>Preferences>Package Settings>MarkdownEditing>Key Bindings - User file. Now when I select a section and press ⌘ + ⌥ + L, it surrounds the selected text in square brackets and then puts the URL in the clipboard in parenthesis after the end of the square brackets, turning the selected text into a properly formatted Markdown inline link. Very useful.

Keyboard command Effect
⌘ + ⌥ + V (changed to ⌘ + ⌥ + L) Pastes the contents of the clipboard as an inline link on selected text
⌘ + ⌥ + R Pastes the contents of the clipboard as a reference link
⌘ + ⌥ + K Inserts a standard inline link
⌘ + ⌥ + B & ⌘ + ⌥ + I These are for bold and italic formatting. They are a toggle, you can turn them off/on.
⌘ + ⌃ + 1…6 These will add the heading markup. Number denotes the number of hashes.

Configuration

The default flavor of Markdown the plugin supports is Github Flavored Markdown. If you want to change that, open a markdown file and select your flavor from the menu View > Syntax > Open all with current extension as.

Depending on your choice of flavor, you can look at the default settings files here:

Packages/MarkdownEditing/Markdown.sublime-settings [GitHub flavored Markdown]
Packages/MarkdownEditing/Markdown (Standard).sublime-settings
Packages/MarkdownEditing/MultiMarkdown.sublime-settings

You can override any of the default settings in the appropriate user settings file. Each flavor has a different settings file.

Bold and italic markers are configured through ST shell variables. You can choose Preferences > Package Settings > Markdown Editing > Bold and Italic Settings - Default to see the default settings file. In order to override it, copy & paste its content into the user settings file Preferences > Package Settings > Markdown Editing > Bold and Italic Settings - User from the menu and make your edits. Should be fairly uncomplicated.

The package comes with a selection of themes and you can use them if you want. I am going to cover themes in greater detail a little later in the article.

The Typewriter Package

The Typewriter package does two things:

  1. Typewriter scrolling: Saves you from staring at the bottom of the screen when you are typing a document. Keeps the current line at the middle of the screen and it makes writing a better experience.
  2. Typewriter typing: A travel back in time. This plugin setting moves your cursor to the end of the file and disables mouse clicks and all commands that move the cursor and/or select text – leaving you only with letters, numbers, symbols, Backspace, Delete and Enter.

You can enable the Typewriter Scrolling setting by putting this in your Markdown Distraction Free User file:

"typewriter_mode_scrolling" : true,

The Typewriter Typing mode is a toggle. Use the ⌘ + ⇧ + P command and type Typewriter. It will show up and you can toggle it on and off by choosing it. I don’t use this much. It drives me batty.

For the best results in Typewriter Scrolling mode you should set add this to your distraction free preference file:

"scroll_past_end": true

The Github Markdown Snippets package

This is an interesting snippets package. You type the trigger and hit Tab and the snippet expands. These are the snippets available:

List of Tab Triggers Markdown Equivalent
mh1-mh6 Heading1-6
mb Bold
mi Italic
mbq Blockquote
mstrike Strikeout
mhr Horizontal ruler
mcode Inline Code
mpre Code Block with language based highlighting
mol Ordered List
mul Unordered List
mtable Table

Themes for Markdown writing

The MarkdownEditing Package ships with a few themes. Here are a few more which I like:

  1. This one is from Wes Bos. It is called Theme - Cobalt2. It is a dark theme which supports all of Markdown. While I am on the subject of Wes Bos, he has a book on Sublime Text called Sublime Text Power User. If you want to use this editor to its full potential, you have to get the book and the videos which come along with it.
  2. The Material Theme from Mattia Astorino. I particularly like the lighter theme.
  3. The Github Color Theme by Alexander Ekdahl.
  4. The Preap Theme by equinusocio.
  5. The Predawn Theme by Jamie Wilson.
  6. The Writing Color Scheme by kmisiunas.

There are about 110 themes posted on Package Control. Before installing any of them, it is a good idea to download the zipped file from the github repository, open the theme file in Sublime Text 3 and search for the word mark. If the theme supports markdown you are going to find a lot of occurrences of that word, more than 15, at least. If it doesn’t, it is going to be a lot fewer. Fewer occurrences of the word denotes that the theme doesn’t really support markdown. You can tweak those themes to support markdown, but they will not be adequate without the tweaking. I am going to deal with how to tweak a theme to support markdown in a later article.

Conclusion

I use Marked 2 app for previewing the markdown files. It is one of mad scientist Brett Terpstra’s creations. It does a lot of things, and does them well. I wouldn’t use markdown without it. Get yourself a copy.

You can find my Sublime Text 3 setting files here.

Acknowledgment

I must express my admiration of the readme.md file which accompanies the MarkdownEditing plugin. I have learned from it, and have used it to write this article. Thank you Ali Ayas for making my life better.

Update 2015-12-23

I have been using the Material Theme, and the color scheme: Material-Theme-Darker.sublime-theme. Together they provide a beautiful environment to write in. Very impressive.

Update 2015-12-01

There is a new color scheme called Mandarin Peacock Color Scheme - Packages - Package Control which got posted to packagecontrol.io. It is a dark scheme which supports all of the Markdown tags. Very nice.

macosxguru

Markdown Sublime Text