From the department of little things that (still) make for quality apps…
I'm currently working on a Go API for a new product we’re working on at Squirrel Point Studios. My current editor of choice is Nova by Panic. I have the app configured to allow me to run the app and tests in several ways right in the editor. I’m a fan of turning my editors into an IDE when possible.
I like accomplishing as many parts of the development process in one app. Nova delivers on this in much the same way as something like Visual Studio Code. Sure there is a smaller audience and thus a smaller extension library but this doesn’t mean you can’t do the same things. There may only be 2-3 Go extensions vs 100 that might exist in the other editor but you can get what you want done.
I’ve used VS Code for years and it’s probably the best example of an Electron app there is but it’s not a native app and never will be. I’ve built Electron apps when it served the purpose at hand. It has its benefits but native is almost always better unless you’re looking to cut some corner (expense.) More correctly, native apps have more upside than other solutions. Not all native apps live up to what is possible but some do and it’s worth seeking them out.
One of the side effects of using Nova as an IDE (and why I started this whole brain dump…) is you can end up with several tabs of output from various actions. I tend to keep these tabs in a pane at the bottom of the editor view, as shown here.
Today I closed all my source code files to start on a new feature leaving only the report tabs open. My OCD causes me to need these panels to appear in the bottom of the editor. In one of those “it just works" moments that have become more infrequent over time, I right clicked on a report tab that I had moved to the lower pane and in the menu that appeared there is an option for “Move All Report Tabs To This Pane.” This was unexpected and very welcome. Sure I could have just dragged the handful of tabs to the lower pane but someone at Panic thought this might be helpful and took the time to add this feature. I salute that person and all the folks at shops like Panic that still care enough to add these little touches that are probably missed by 90% of users.
I remember when I first started using a Mac full time around the time of OS X 10.1. Those early days were full of little moments where you would just try things to see if they worked and very often they did. As MacOS has matured and more so as web apps have displaced native applications we see less and less of these little bits of forethought that reveal themselves as “magic.”
I think these little touches should be part of the spec for Mac-assed Apps, a term coined by Collin Donnell that I learned about via this post from Brent Simmons. This sort of thing is why I continue to fight the battle against web apps and universal frameworks. Sure, there are good examples but a conservative estimate might be 1:1,000 good vs adequate applications. Those of us who understand this are still out here using old school apps like BBEdit and new fangled examples like Nova. We resist the temptation of the new shiny thing everyone else is using because these Mac-assed apps do the job and often do it better if you just give them a chance.