Category: <span>Thoughts about Software</span>

A sidebar here with some of my thoughts on software development over the last decade……

In the old days, when a user ‘bought’ a copy of software, you were then able to use it forever. You owned it (technically, you owned a ‘license’ to do so, but that is irrelevant to this discussion) and that was the end of it. At that point, the company could improve upon their software and sell you updates with more features. A very simple relationship emerged from this delicate balance….they offer you new things and you have the option to buy them or stick with what you have. The converse of this is that they don’t get more money from you unless they create new features desired by you. A simple check and balance system that worked well for decades.

Now, most software reaches a point in its development where it really ‘does everything it needs to do’. Yes, yes, there are always other things it can do, but they can run out of primarily desirable and sell-able things to add. The application reaches a state of equilibrium, updates can fall off and development slows. Then more people don’t buy updates, and it continues like this. A software developer then faces a choice: Stop developing something an application for which they aren’t making money or get more creative about features. Many times this is why a software application disappears and a company goes out of business.

These was an era I refer to as B.A.

Before Adobe.

Adobe (makers of Photoshop and a zillion other applications) began implementing a new concept. Yes, before you try to correct me, there were others before Adobe but they were one of the most obvious at the time. The idea is simple and absolutely brilliant and fixes everything that is wrong about the previous software era from a business standpoint. If the person who came up with this idea didn’t get an award, they should have. I’m guessing that the board meeting in which this idea was presented basically went something like this……

Call it renting, leasing, whatever you want. You would have to be an idiot not to see the financial advantage this gives a software company. You must pay for every day you use our application, whether or not we add value to it in the future. Of course you can always switch to another competing application if you can find one, but have you ever wondered why software companies buy each other up?

Within a few years, most of the software used by the company at which I work began switching to this subscription model.

Today, we are in what I call the A.A. era, for After Adobe.

In my opinion, software features & enhancement has never been as good for the user as it was in the B.A. era of development and will never be so again. The only way it could get worse would be if software not only charged you a subscription fee, but also charged you ‘micro payments’ for every minute in which you use it. Don’t worry, it’ll happen, just give it time because it makes perfect sense.

UPDATE:

December 2023

Several of the applications to which my company already has subscription services have begun a new policy: In addition the the subscription fees, they now charge using a ‘token system’, where you basically pay for each time you use certain features and how long you use them. Most of these incorporate AI features, but here we are, already paying subscriptions AND per use fees. As Stimpy would say, Happy happy, joy joy.

A Change in Software Paradigm

Between work and home, I’m involved in many of things that require a fair amount of organization. My organizing applications have gone through several cycles…..

  • Datebook+ on the Palm Pilot and later compatible hardware. This application had a feature called ‘floating events’. If you placed an event on tomorrow’s date but didn’t complete it, the event would move to the current day each day, causing them to pile up and making it very obvious you were falling behind. You could easily move them into the future to reschedule things. When Palm went under…..
  • I moved to Outlook. While Outlook has it’s strengths for integration between mail, reminders, calendars and other data, I despise Outlook’s UI and email ribbon interface in particular. The difficulties in showing a properly threaded email tree (and NOT what they call a ‘conversational’ thread) are painful to endure.
  • Today, things are a bit convoluted. I moved to Thunderbird IMAP for email 100% a long time ago and can not imagine switching to another email program. Leaving Outlook was easy since I didn’t require it for email. I use it on multiple machines and my mail always stays in perfect sync. Since I have an iPhone, iPad, Mac and Windows PCs, the only way to have synchronized, consistent reminders was using Outlook and the iOS Reminders applications, since they all can synchronize to a Microsoft Exchange account. iOS Reminders has only one feature I like, and that’s the ability to add items to it fully by voice (Siri) and not use any buttons. I use Thunderbird for my Gmail accounts as well, as nothing on earth could make me suffer GMail’s web browser UI. Have I mentioned my hatred of web browser interfaces?

I needed something more robust and OSX Reminders aren’t very agile for manipulating more than a few dozen items. I was in needs of something that was 100% multiplatform and kept data in sync between platforms automatically.

I stumbled across Workflowy several years ago online while looking into organizing applications. It was the least expensive of it’s competition and I immediately loved it’s simplicity. I purchased a subscription and immediately began using it to supplement the OSX Reminders application.

I quickly discovered that the ability to outline (hierarchically) my information was very powerful. The only things lacking for me at the time were date support, notifications of due times and Siri voice support for quickly adding items. At the time I started using Workflowy none of this was available.

But what Workflowy did bring to the party was worth it for me. I made some suggestions, discovering that I wasn’t the only one clamoring for dates, notifications and Siri support and contributed to those ‘feature requests’.

Workflowy did add date support over the last few years, although not truly reminders. I wasn’t the only one to continue to suggest other feature support. A few times over the years, people have suggested that perhaps Workflowy’s development pace had slowed (there are a lot of online articles about this), as we never saw any of the things we requested develope.

Around 2022 I commented on a forum thread about Workflowy development to which a several people agreed. Like most online discussions, some didn’t, including a Workflowy forum moderator. It was implied that development of the features we had been suggesting wasn’t on the table, yet no one had told any of use who had been asking for years. All we ever heards was ‘positive enforcement of our suggestsions, i.e. “it’s coming”, “we’re working on it”, etc. Of course, the developers are under no real obligation to tell anyone what they are planning, but since this was an active discussion it seemed like we were being a bit mislead. All the discussions were very professional, both from Workflowy and users such as myself.

I decided to look for other alternatives……there were several, amongst which I discovered Dynalist. It did most of what Workflowy did plus some things better, was a little different and was a bit more expensive, and it had a very open dialog with it’s users about features, planned items, and development seemed to move quickly. This was very noticeable by a history they keep online of features and versions as they are added in an online Trello system. Development seemed constant (monthly blog updates were always a good sign), whereas as every couple years I would hear that Workflowy was ‘reorganizing’, ‘hiring all new people’ or some such thing. This stuff happens, to be sure. Maybe.

I cancelled my Workflowy subscription and. migrated all my outlines & data to Dynalist in about 15 minutes.

Dynalist development was very rapid the first year I was on it……then development quickly slowed to a crawl and a few of their own employees (of which there seem to be two) had implied that they were working on another application. The only thing worse than hinting features to your users as “soon” and “right around the corner” in multiple posts on your forums and Trello accounts is to never deliver on anything suggested.

When did it become so hard to say “Nope, sorry, that’s not going to happen (for whatever reason)”? Are we that afraid that everyone will jump ship?

I recently began researching Outliners again because of this. There are quite a few out there and they are in various stages of usability.

Here’s a quick synopsis of my latest research into alternative outliners…..your needs would, of course, be different….

  • Workflowy
    • Stable and solid, but development is slow. VERY slow. If you expect something to be added soon, don’t. You’ll only be disappointed. Features take YEARS, and that is not an exaggeration. Track some past suggestions on their forums for the track record. They’ve implied that development slowed because of the war in Ukraine, where their developers are. Several times they’ve claimed to ramp up development with new hires but it doesn’t seem to change. I was banned from their forums for being too vocal about the lack of development. I’ve never lost data in Workflowy. I decided to leave it because of slow development and lack of the ‘promised’ Panes features.
  • Dynalist
    • Begun as a clone of Workflow whenWorkflowy development slowed. Stable and solid, but never got split views/panes. This makes it very difficult to manage large outlines quickly. Development slowed, then stopped in September of 2021. The developers have abandoned the product for new project (Obsidian). Dynalist is done updating and nothing has been changed since, but they’ll still take your money and pretend it is an active product. If you’re ok with the now static feature list, it’s a very solid application. People still post to the forums but are clueless that development stopped and the product is ‘dead’. The devs don’t post anything letting you know this.
  • Obsidian
    • Written by the developers of Dynalist, it is totally different from Dynalist and Workflowy. Cute displays for Mind Maps, but I’ve never needed those ‘trendy featrues’ to show how organized I am. Personally, I think people are too enamored with the new trend of terms like “second brains”, “Getting Things Done”, “Zettelkasten” and “Mind Maps”. For crying out loud, make hierarchical lists, re-arrange them then delete things when you do them. Spend less time organizing and more time actually doing the work.
    • Obsidian has a third-party free plugin base that is really nice. However, since it has no inherent outlining, you have to rely on third-party support….and people stop supporting their plugins too often to rely on them. The Outlining plugins that do exist for Obsidian don’t allow drag and drop of items, which is pretty crippling. Obsidian has a Panes system, but it is nearly useless with out native drag and drop for re-arranging of items. If only the Outliner of Dynalist had been brought into Obsidian or the Panes of Obsidian had been brought into Dynalist…..harmony would exist. Plugins like these suffer from lack of development as soon ad the plugin dev has solved the problem for which he has written it–then they stagnate from lack of interest and fall out of sync with the main app’s API. I like my code to all be created from the same dev so there is no finger pointing about issues.
  • Legend (aka Moo.do)
    • When I found this outliner around 2021, I thought I’d found the holy grail. Fantastic panes, great outliner (although a bit lacking in color support) inexpensive for what you get, rapid online feedback to questions, …..what’s not to like? Originally called “Moo.do” (perhaps before a marketing person was consulted?), it underwent some re-writing and became Legend. It is almost impossible to stumble upon online (search “Legend App organizer”.)
    • I ported my lists over to it to test, and hit nothing but bugs bugs bugs. I lost data left and right. I could rarely go more than an a few minutes without discovering a bug or losing my data to bad syncs. To their credit, Legend’s development team (which seems to consist of a single dev travelling Asia while writing code on his laptop) was always quick to respond. I corresponded with pages of confirmed bugs and he was very good about responding. That said, development was far too slow, and there are far too many bugs in Legend to even consider using it to manage information that I rely upon. I consistently lost data when using Legend between various devices. It has been mentioned that the “syncing” engine of Legend is being re-written (as of 10/22). Perhaps when that has been debugged, it will be worth revisiting. The one-member development teams of these outliners seems to be a pattern which concerns me for long-term use.
  • Notion
    • A very complex organizer with a ton of great features. But the outliner was pretty kludgy, and has no “email to inbox” capability. Maybe one day, but too expensive for a weak outliner. Too complex for every day task management. Takes far too many clicks to do anything but has lots of features. Suffers from “web interface” weaknesses that native apps do not. Click, click click click click click….do something. Not productive.
  • Omni Outliner
    • Really nice outliner, but not designed for multiplatform use. No Windows version (deal-breaker) or other non-mac platforms. MacOS only, therefore no syncing. Devs will never port it to Windows.
  • Omni Focus
    • Rather limited outliner, lots of organizational features but can be used in cloud. No Windows version (deal-breaker) or other mac platforms. Very nice people to talk with, shame they’ll never port to Windows.
  • ToDoist
    • More of a to do list than a real outlining application. Great for To-dos, but takes a lot of button clicking to do simple things. Typical of most web-type applications.
  • Roam
    • Seems to be making a lot of noise out there and I’m not sure why (great marketing, perhaps?) Not a lot of features, several times the cost of everyone else, and it just doesn’t seem worth it. Far too complex for quick organizational lists and todo. Lots of clicking to do things.
  • LeoVUE
    • An interesting programmer oriented organizational wiki tool. Way too complex for rapid the organization I need, and not really designed for such.
  • OpenToDoList
    • More of a to do list than an outliner. Doesn’t seem to be going anywhere quickly. Oriented more towards linux fans and programmers.
  • LogSeq
    • Could be interesting one day but way too early in alpha development at this stage. Way too buggy for reliable use.
  • Transno
    • This looked great but couldn’t find a lot of info. I fear it may be dead as there were dead links on their web page and I never received a single response to my inquiries.
  • GetOutline.com
    • Very interesting. Still communicating with this group to get features. Seems like another Notion or Roam clone.
  • Evernote
    • Too complicated, too webby, too many clicks and more of a todo application.
  • Taskmaster
    • More of a todo list than an outliner.
  • Quire
    • Too many clicks. A lot like Evernote or Roam. Looks pretty.
  • Checkvist
    • Simple Outlining. Works, no panes. Lots of potential but not multi-platform.
  • Wunderlist
    • Nice. Gone. Bought by Microsoft to drive users to Microsoft Todo.
  • Zenkit Todo
    • Another Everlist clone. No panes, too many clicks.
  • Amplenote
    • Simple, notes, no panes.
  • QOwnNotes
    • Very programmer-centric, lots of markdown capabilities. Some panes. Expected to be compiled by users. Too complex for mortals that aren’t programmers every day.
  • Clickup
    • Very teams-oriented. Lots of clicks to do things, very web-centric, project based.
  • MinimalList
    • Simple lists and outlining. An Android app but doesn’t appear to be multi-platform.
  • Noteplan
    • Another Notion/Evernote clone. Too webby and no pains, too many clicks.
  • Taskade
    • Complicated, has outlines, similar to Evernote, includes AI (because that will save us all) and MindMaps.
      • Athens / Athens Research
    • Open source outliner, lots of Markdown required, written for people who want to code as much as stay organized. Has potential but not for the timid.
  • Reflect
    • More about note taking, has AI (to save us all) and Mindmaps.
  • Tana
    • Another Notion clone.

UPDATE:

October, 2022:

After Dynalist was abandoned by its devs, I went back to Workflowy. Despite it’s painfully slow development it remains the only one of the outliners I’ve used that is stable enough to be trusted not to lose your data. Workflowy data is reliable, just don’t expect any features you ask for to be added and you’ll be happy.

August, 2023

Decided to give Legend another look. Sychronization was as buggy as ever. Kept losing data and iOS app was a buggy mess.

November, 2023

I’ve been working with Legend’s developer quite a bit on bugs. He was very open to getting the synching stuff working and very responsive. After a few months, synching has now became pretty bulletproof for me. The iOS app became usable and I switched from Workflowy to Legend. I’ve been on it a few months now without any fatal issues. The app has a lot of features, most of which I don’t use, but Pane, Outlining and Synching have been rock-solid for me for months now across all OSes.

Something I’ve learned in my years of using these on-line, subscription-based outliner/organizer apps…..

The development teams either are or seem like they are 1-2 people. They appear to be ‘companies’ with a product, but are all run more like a hobby application that was brought to market. This is obvious in the incredibly slow rate of development and feedback. They all claim tens to hundreds of thousands of users. The vast majority of those users must be the free/trial users, because if they were all paying they’d be making millions of dollars and development would be much faster.

Do not buy ANY of them with the hopes that a feature that has been promised soon will ever be implemented. I’ve seen things that were labeled as ‘soon’ still absent after 7 years. Buy it for what it is at the time, then stop hoping for features. Your blood pressure will thank you. That way, everything new that appear will be a nice surprise. Someday.

I’m an experienced programmer for more than 40 years. I’ve written very large, robust applications (see elsewhere on this blog) in several months of spare time. I refuse to accept the slow pace of development that has become acceptable by these companies of developers, especially when they are being paid. The only logical reason for such slow developing is that they are not being developed full-time. So that needs to be kept in mind.

A sidebar here of some of my thoughts on software development over the last decade……

In the old days, when a user ‘bought’ a copy of software, you were then able to use forever. You owned it (technically, you owned a ‘license’ to do so, but that’s a detail) and that was the end of it. At that point, the company could improve upon their software and sell you updates with more features. A very simple relationship emerged from this delicate balance….they invented new things to offer and you can chose to buy them (or not). The converse of this is that they don’t get more money from you unless they create desirable features. A simple check and balance system that worked very well for decades.

Now, most software reaches a point in its development where it really ‘does everything it needs to do’. I call this “Usefullness Saturation”. Yes, yes, there are always additional things it could do, but they can run out of primarily desirable features and sell-able things to add. The application reaches a state of equilibrium, and development slows. Then people don’t buy updates, and revenue for the program stagnates. A software developer then faces a choice: Stop developing something they aren’t making money on or get more creative about features. Many times this is why a software application disappears and a company goes out of business. No one buys it because it doesn’t get better, or doesn’t continue to add what they need. Enter the ‘subscription model of software‘ aka Software as a Service/SaaS, as the current “final solution” for developers of software. Here was have the perfect method to get a continuous, guaranteed revenue stream from the user with minimal work from the developers over time. This is nirvana for developers, and the worst possible world for the consumer. As a dev, your only competition is other apps that may become available. You have no other motivation to improve the product as revenue is ‘locked’.

If you aren’t bored by now, see the section of my blog named “A Change in Software Paradigm”.

A Saga of Outliners

Over my decades in the post production and visual effects business, I’ve experienced many occasions where we’ve had to name a new computer, service or application. Sometimes we would ask people’s opinions, sometimes we didn’t. I’ve kept track of some of them over the years along with snippets of the conversations that took place when names were ‘discussed’. Here are a few of them, usually with two to five people at a time responding, verbatim. You just can’t make this stuff up and it will all end up in my book one day.

ME: “We’ll name the new giant killer render farm machines after monsters from old Japanese monster movies, “GodZilla, Mothra, Rodan….Cool, right?”

Why Monsters? Why not muppets or famous wrestlers, dude? Those would be way better. Why not just Farm1, Farm2, Farm3. That’s too confusing and no one will remember them.

ME: “We’ll name the business servers FS01, FS02, etc for File Server 1, File Server 2, etc…so people can remember them.”

The Crowd: “That’s boring and not very creative. We want to look creative. Why not use names of famous people like Sinatra, Davis, Martin….”

ME: “We’ll call the temporary directory “TEMP”, so you always know it’s temporary, ok? They’re only temporary so keep them somewhere else.”

THE CROWD: (at any future time) Why did the things that were in TEMP go away?”

ME: We don’t need another temporary folder. Just use the one called TEMP”

THE CROWD: “We need another and it should be called TEMP2. But it will be permanent.”

ME: “Isn’t that what everyone thing else, besides TEMP, is already?”

THE CROWD: “No, that isn’t clear enough. How about renaming the old TEMP folder JUNK. NO! How about STASH or GLOVEBOX?”

ME: “We’ll name the new media servers after pop culture waitresses, like Alice (Brady Bunch’s maid), Rosie (the Jetson’s maid), etc. Get it? They were all servers, right?”

The Crowd: “No one will ever remember those. Why not make ours Graphic Server and the other one Edit Server…?”

ME: “We’ll just name the backup server “Backup Server” because that’s what it is and does. Easy, right?

 The Crowd: “How are we supposed to know what it backs up?”

ME: “We’ll call the new universal encoder application nCode? Get it? nCode? Clever, right?

THE CROWD: Person’s eyes roll back into there head as they think ‘geek’.

ME: “We’ll call the app that manages all the jobs JobManager. Perfect and no doubt about what it does!”

THE CROWD: “Couldn’t you come up with a better name than JobManager? Not very exciting.”

ME: “We’ll call the Houdini Render Controller “Harry”. Get it? Harry Houdini?

THE CROWD: “Harry is a dumb name for a program.”

ME, a year later: “Since the Render Controller can now render things other than Houdini, we’ll call it “UltraRender”.

THE CROWD: “Can’t we just leave it as Harry? We want it associated it with Houdini?

ME, years later: “We’ll call NEWEST render controller “Miranda”, after the character in Shakespeare’s “The Tempest” who watched all the ships from the attacking fleets crash into the rocks!”

THE CROWD: “What? Why can’t it just be called RenderController?”

ME: “We’ll call the new media server Kong, because it’s a giant monster bigger than anything we’ve ever had before.

THE CROWD: Why Kong? Why not just “Server”? Why not “GraphicsServer”? Why not “Jobs”?

ME: “What should we name the new Media Library application?”

THE CROWD: “Who cares what it’s called?”

ME, later: “We’ll call the Library Application Emily, short for Electronic Media Library”.

THE CROWD: Why Emily? Who’s Emily? Why not Library? Why not DAM? Who came up with Emily?

THE CROWD: “I really think this (JobPortal Server) needs a name. You know….like ‘Kong’…..but not like ‘Junk Drawer’ “

ME: sigh.

After a while, we stopped asking people for name suggestions. A former president once said to me “Questions I know the answer to, I don’t need to ask, right?”

What's in a name?