I think that in every era there has to be some kind of simplified programming environment for the quiet majority of developers who don’t need fancy administration features for their code, like git branches or multistep deployment processes; they just want to write code and have it run. Glitch is aimed at those developers.
Advocates of simpler creative software usually brush off the fact that a whole bunch of peripheral technology would need to be re-written to support their vision, usually by saying that that stuff wasn’t written right anyway. Spolsky takes a more measured approach, which I appreciate, by instead saying most people just don’t need those features1.
Glitch is far from the only product that simplifies software by making it impossible to do complex things. Apple themselves are advocates of this approach, GarageBand and iMovie being prime examples; and the entire design of iOS is based on the premise that software, and especially operating systems, are too complicated2. But it’s difficult to determine how popular these simpler versions of apps are relative to their more complicated counterparts. On the Mac App Store, Final Cut Pro and iMovie are the #1 paid and free apps in the video category respectively. In music, it’s Logic Pro X and GarageBand. Logic Pro X is the most popular paid app overall in the Mac App Store, and iMovie is the most popular free app. While this does indicate that both approaches are popular, it comes with the caveat that the free apps are subsidized by other parts of Apple’s business3.
The professional offerings like Final Cut Pro and Logic Pro X show up much more online: Their forums are more active, they get reviewed more thoroughly by the press, and they show up more prominently in onlinesurveys. In some ways this to be expected, online communities attract the most passionate users, which will also tend to be the users who want the most features. But it gives the impression that the simpler apps don’t have fans, and they’re used because they’re free, not because they’re good.
The argument for simple creative software feels very hand wavy to me. It’s based on the premise is that there’s another group of active users, that doesn’t show up in online communities and surveys, who has the ability to do complex creative work like making movies, music, or software, while not being able to learn the complex software to perform those tasks. The only way to know for sure would be to see the usage statistics for those apps, which aren’t available. Based on the information that is available, I’m not convinced that simple creative software has an audience of anything more than people looking for a free alternative to expensive software4, and there aren’t enough free users to build a business around. The only company that should be making these types of apps is Apple, in the interest of commoditizing the complements of their hardware products. So why are other companies making these kinds of apps?
The prices of Final Cut Pro and Logic Pro X are also almost certainly also subsidized by other parts of Apple’s business, but at $299.99 and $199.99, they are still expensive relative to most software. ↩︎
Apple approached ManvsMachine as one of six renowned artists challenged with pushing the iMac Pro to its limits.
We created a base algorithmic structure that served as a blueprint for each form and movement in the film. The CGI architectural structures were covered in high‑resolution photographic textures and embellished using a custom‑designed system that controls the foliage, architectural details, and other nuances. The result is a monolithic structure of massive scale and incredible detail.
There’s a short behind the scene video that explains a bit about how it was created on the Mac Pro with Houdini.
Matt Derbyshire, ex-Head of Product & Marketing at Ampify
Fecher also talked to a few indie iOS audio app developers who were willing to share sales numbers about their apps. This section starts at 25:36, I’ve summarized the sales numbers below.
Indie Developer 1: Audio Damage
Most of the developers Fecher spoke to chose to stay anonymous, but not Chris Randall from Audio Damage. Audio Damage has a suite of plugins, most of which are available on both iOS and desktop. Here’s how their revenue breaks down:
There’s a 50/50 split of revenue between desktop and iOS.
The mobile apps are priced at 1/8 the price of their desktop counterparts.
So that means there is eight times the sales on iOS at 1/8 the price.
Indie Developer 2: New Synth
The second developer Fecher spoke to had just released a new synth on both iOS and desktop. Here’s how revenue broke down for the first two months after launch:
33% of revenue came from iOS.
Desktop revenue was $13,000, and iOS was $6,922.
The iOS app version was priced at 1/10 the cost of the desktop version.
Indie Developer 3: iPad Synth
The third developer had a synth that’s only available on iPad, their revenue broke down as follows:
$125,000 in total revenue.
$80,500 in proceeds, so that’s after factoring in Apple’s 30% cut and other App Store costs.
$6,000 per month in average sales for the last three months.
This app was not featured by Apple.
Indie Developer 4: Adding AUv3
The fourth developer shared their data after adding AUv3 to their app, which resulted in a boost to sales.
$4,000 in revenue for the previous month before adding AUv3.
$15,000 in revenue the month after adding AUv3.
They calculated that adding AUv3 resulted in ~$33,000 in extra revenue over three months after adding it.
Indie Developer 5: iOS to Mac
The final developer had one music app app that was initially released for iPad, that was then expanded to iPhone and Mac. Their sales breakdown on each platform is as follows:
25% of sales come from iPhone, 35% from iPad, and 40% from Mac.
$500,000 in total sales over the last three years.
The iOS version is priced at 1/2 the price of the Mac version.
There’s Something Happening Here
There’s undoubtably something happening with iOS audio apps, it’s one of the most active creative app markets. The Audiobus Forum for example is not just the most active community for iOS music making, but possibly the most active community for music making period, fueled by a continuous stream of new apps being released.
There are some unique characteristics of this market relative to other creative app markets. For example, unlike illustration apps, a clear winner hasn’t emerged like Procreate, which is the #1 paid iPad app in the App Store. The closest to an overall winner so far is probably BeatMaker 3 which is currently the #3 paid Music app on iPad and #19 overall.
It’s fascinating to see an app like this come out on top for iOS, because the platform itself goes so far to emphasize the single app experience. That instead we have many small apps working together is likely the result of the App Store’s many restrictions making it difficult for a big winner to emerge1. Big winners thrive on creating their own ecosystem, and that’s hard to do when Apple has so many restrictions about what and how items can be sold, and how apps can be extended.
The variety of the iOS audio app market reminds me of the golden age of OS X indie development before the iPhone. It was a time when lots of new and innovative apps were being released by small companies, often consisting of just one person. The problem with an ecosystem like that is that it’s incredibly fragile, as the release of the iPhone, and Apple’s corresponding change in priorities, has shown. Many of the apps from the 2000s indie development scene are gone now, precious few developers from that era were able to transition to healthy businesses to maintain their apps over time. The true legacy of the OS X indie app movement is the iOS App Store itself, where more developers are competing over a larger market, but it’s a market where it’s notoriously difficult to make a living.
While the iOS audio market has found a way to thrive by embracing variety, it simultaneously has some of the same problem as other creative app markets on the iPhone and Mac app stores: There aren’t enough steady businesses to serve as anchors in the industry. What I’d like to see are more successes like Adobe or Ableton on the app stores.
I’m happy to introduce FS Bookmarks, a shortcut that lets you create direct launchers for files and folders stored in the Files app. FS Bookmarks is a hybrid Shortcuts-Scriptable tool that takes advantage of a native Files API (which I will call “bookmarks”) to expose the filesystem path of any file or folder stored in the Files app.
At this point I stopped reading and started scanning for how he did this because I’ve never been able to figure it out myself. Here’s the trick:
Under the hood on both iOS and iPadOS, files and folders stored in the Files app have paths such as this one:
That’s one ugly file path, but it’s how the system points to an app’s folder. In this case, the file path above is pointing to a folder called ‘Image Assets’ located under iCloud Drive/iA Writer. Similarly, a PDF document named ‘Expenses.pdf’ stored in your iCloud Drive Downloads folder should have this kind of filesystem path:
By themselves, these paths are useless as you cannot launch them in any way. However, I’ve recently discovered that if you combine the Files app’s shareddocuments:// URL scheme with an encoded version of the filesystem path, the file or folder can be reopened directly in the Files app. The launcher URL looks something like this:
You can get the part of the path that comes after /private/var/mobile/Library/Mobile Documents/ on your Mac by using the Terminal to cd first to ~/Library/Mobile\ Documents, then into the subdirectory you want to make a URL to, and finally using pwd to print the path1. Viticci continues by describing how the FS Bookmarks shortcut simplifies creating these URLs, but at this point I’d stopped reading to go see if this actually works (it does).
For me this is a breakthrough in the usefulness of iOS because jumping to a specific folder is important for retrieving information from the file system hierarchy2. There are two fast methods of retrieving information from the file system: launching and searching. LaunchBar is an example of a launcher, it’s a user-defined index of commonly used actions, whereas Spotlight, the search built-in to macOS and iOS, is an index of your entire file system. Both present a text box that you can type into to find what you’re looking for, but their use cases are different. A launcher is better if you already know exactly what you’re looking for, because its index is smaller and faster. Search is better if you’re not sure exactly what you’re looking for, because its index is larger.
A launcher does not have to have text-based interface, icons are commonly used instead3. The Dock is a launcher in macOS, and SpringBoard, the default screen on iOS, is a launcher for apps. Shortcuts makes a great launcher for everything else on iOS, and that’s what I use to open these URLs.
The key to using the file system’s hierarchy effectively is to use a launcher to jump to a standard base folder, instead of jumping directly to your final destination4. For example, if you have a “Projects” base folder, you’d jump to that with your launcher instead of jumping directly to a specific project folder like “Repla”. You’d jump to “Projects”, then navigate to the “Repla” subfolder inside it. Jumping to a standard base folder instead of trying to jump to the final destination is better for the following reasons:
Keeping all of the individual project folders in your launcher means micromanaging its index.
Individual project names often have too many hits, e.g., if you’re working on “Repla”, you probably have a lot of files with “Repla” in the name.
By jumping into individual project folders, you’re not building long-term reusable muscle memory, you lose your muscle memory when you switch projects.
With Viticci’s URLs we can jump to a standard base folder on iOS for the first time.
The location of the Mobile Documents directory itself is not the same between iOS and Mac, so everything that comes after Mobile Documents has to be appended to the root path /private/var/mobile/Library/Mobile Documents/. ↩︎
There’s been a decade long attempt to replace hierarchy with another form of organization, usually tagging. The argument being hierarchy is confusing. Which may be true, but hierarchy also fits nicely into the visual metaphor of folders. Tagging, on the other hand, is an entirely abstract concept, so it’s likely even more confusing. As far as I can tell, every attempt at replacing hierarchy has been a failure (when was the last time Apple talked about tagging?). The replacements are used less, harder to understand, and less effective than using hierarchy. This is usually what happens when you try to replace something ubiquitous that’s been refined over decades with something new, you get something that’s worse by every metric. ↩︎
A search interface, on the other hand, is essentially always text based. ↩︎
The only exception to this I’ve found is at the terminal. The z utility tracks which folders you’ve visited recently, and makes it easy to jump quickly to those. I use fasd combined with fzf to fuzzy find recent folders. This is the most effective way of traversing the file system I’ve found, but this approach isn’t available in any GUI environment that I’m aware of. ↩︎
The new 16” MacBook Pro still has a Touch Bar, but it now has a physical Esc key. I think this will quell most of the complaints about the Touch Bar, the touch Esc button was a particularly lousy replacement for a couple of reasons:
Esc is a commonly used key, especially for dismissing dialogs.
As a physical key, Esc is easy to type without looking because it’s in the upper left corner.
The remaining keys in the function row are also commonly used, but they were never easy to type without looking: Brightness, Mission Control, Launchpad, rewind, play/pause, fast forward, mute, and volume. For those keys the Touch Bar feels like a wash: The physical keys were slightly easier to type, but the Touch Bar is significantly cooler. So with the physical Esc key back, I suspect the complaints will die down, but why wasn’t the Touch Bar more successful?
Function keys have their proponents, but they’re rarely used on the Mac. They’re much more common on Windows because the Windows key, unlike the macOS command key, isn’t a modifier1. This means application and user-defined shortcuts2 end up in the function row. But function keys are worse than modifier-based keyboard shortcuts: They aren’t mnemonic and they’re too far from the home row to type easily without looking3.
Unfortunately, the Touch Bar is usually just used to add buttons, which effectively means it’s used as function keys, but with visual indication of each buttons purpose. Here the Touch Bar ends up stuck between the mouse and the keyboard, if you know the modifier-based keyboard shortcut, than that’s going to be easier to type without looking, and, if you don’t, using the mouse to click on something is easier because you’re already looking at the screen.
An ideal use case for the Touch Bar would appear to be selecting from a range of values. Choosing exactly the right color, or adjusting the many sliders in Lightroom Classic’s Develop module. Here the keyboard is clearly deficient, the keys have to move the value by a fixed increment, which might be much larger or smaller than the size of the intended change. The mouse fairs much better, but it’s still not a great fit because the mouse works best when you know in advance exactly what you want to click on, it works less well if you want to warm an image up and stop when it looks right4. The proliferation of custom controllers with knobs and faders for audio, photo, and video editing speaks to a need that isn’t being met by the keyboard and mouse.
Unfortunately, the Touch Bar isn’t a great fit for this use case either. Touch has lousy fidelity, it’s difficult to select a precise value. The Touch Bar’s minimal screen real estate exasperates the problem. It ends up being worse than the mouse and keyboard used as a pair: The mouse to get close, and then making fine-grained adjustments with the keyboard.
The last issue with the Touch Bar is that it isn’t on the desktop. This conflicts with the essence of what a laptop is: A desktop that you can take with you. Contrast this with an iPad, which is a truly mobile device. The applications we run on a laptop are not designed to preserve battery, handle intermittent internet, and startup quickly like mobile apps are. And the touch form factor itself trades the accuracy and ergonomics of the keyboard and mouse for being easier to use quickly with touch.
The Touch Bar doesn’t work with an iMac, or with an external keyboard, or when the laptop is in clamshell mode. It doesn’t work with desktop workflows. Selecting a value from a range comes up often in creative apps, and while the keyboard and mouse do come out on top for those adjustments, it’s still one of best use cases for touch. But audio, photo, and video editing are desktop tasks that take advantage of desktop workflows, the people doing these tasks often use external peripherals that makes the Touch Bar inaccessible5.
In summary, the Touch Bar’s problems are:
The Touch Bar is usually used for touch buttons, but keyboard shortcuts are better than touch buttons because they’re easier to type without looking.
When selecting values from a range, the Touch Bar is worse than the keyboard and mouse because touch has poor fidelity.
Even if the Touch Bar did have better fidelity for selecting values from a range, most of use cases for those types of edits are desktop workflows, and the Touch Bar isn’t available on desktop.
Touch in general hasn’t had the impact many of us expected and hoped for. Its main advantage has turned out to be that integrating the display and input method is an efficient use of physical space, which is at a premium when computing on the go6. There have been some interesting attempts at using touch-based controls in creative fields. When iPad was first released, it seemed like Lemur7 would gain traction in music production. But the software hasn’t turned out to be very popular, and the app is rarely updated. Instead the industry has gravitated towards control surfaces with physical buttons and knobs, and that integrate with desktop software, like Native Instruments’ Maschine and Ableton Push.
It’s hard not to wonder what Apple themselves think the advantages of the Touch Bar are. My suspicion is that Apple, like a many of us, overestimated the promise of touch based on the success of the iPhone and iPad. But touch is a mobile technology. Outside of mobile, when space isn’t at such a premium, the tactile benefits of physical controls win every time.
The Windows key not being a modifier causes problems with copy and paste at the Windows Command Prompt. Window standard copy and paste shortcuts, ⌃C and ⌃V, can’t be used because those keys are used to send signals to the shell, most notably control-C to abort the current task. The Mac sidesteps issue by using the command key for copy and paste. ↩︎
Many of the differences in keyboard shortcuts between Excel for Mac and Windows are moving shortcuts from the function row to modifier-based shortcuts on the Mac. Reliance on function keys on the Mac is a common tell for a cross-platform application that’s primarily developed on Windows. ↩︎
On a full-size keyboard with a dedicated function row (of which Apple hasn’t made in over a decade), function keys do have the benefit over modifier-based shortcuts of only requiring one key to be typed, they don’t require also holding down a modifier. ↩︎
To use the mouse to select from a range of values, you can hold the mouse button down, and then drag until you’ve selected the correct value, but this a more strenuous way to use the mouse, and you lose fidelity when releasing the mouse button. ↩︎
Sidecar might be Apple’s strategy for bringing the Touch Bar to the desktop. It shows a Touch Bar by default, and pairing it with Apple Pencil is interesting to also serve as a precise input device. ↩︎
The overarching marketing message is about listening to pro customers. Schiller also shared some details with Roger Cheng, at CNET, about how customer feedback shaped the design of the new keyboard:
A few years back, we decided that while we were advancing the butterfly keyboard, we would also – specifically for our pro customer – go back and really talk to many pro customers about what they most want in a keyboard and did a bunch of research. That’s been a really impressive project, the way the engineering team has gotten into the physiology of typing and the psychology of typing – what people love. […]
As we started to investigate specifically what pro users most wanted, a lot of times they would say, “I want something like this Magic Keyboard, I love that keyboard.” And so the team has been working on this idea of taking that core technology and adapting it to the notebook, which is a different implementation than the desktop keyboard, and that’s what we’ve come up with [for] this new keyboard. We’re doing both in advancing the butterfly keyboard, and we’re creating this new Magic Keyboard for our Pro notebooks.
This all sounds great, but the question remains about what had changed at Apple, that caused them to ship the butterfly keyboard after they’d been shipping laptops that everyone loved for years before that1.
If I had to wager a guess, I’d say what changed is caution. The iPad, and above all the iPhone, have an aura of caution around them. While the iPhone does take an occasional risk, like removing the headphone jack, for the most part it feels like they aren’t released until they are perfect. Removing the home button from the iPhone X is a great recent example2. I’ve yet to see anyone point out what a triumph that was. The iPhone’s core mechanical button was replaced by gestures, and people barely noticed. Gestures! The iPhone X’s home gestures are the satisfying crack of the ball meeting the sweet spot when you’ve hit a home run. It’s unequivocal proof that Apple’s still got it, and the fact that nobody’s even talking about it is illustrative of how much of a grand slam it was.
Other times caution means holding back, the iPad’s clumsy multi-tasking gestures haven’t been allowed touch the iPad’s core user experience of using one app at a time3. Because they just aren’t ready yet, putting them front-and-center in the iPad user experience would be a butterfly-keyboard-like catastrophe.
It feels to me like whatever mechanism Apple uses to refine great ideas, and determine when to hold the lousy ones back, was absent from the Mac products that shipped from 2015-2018. Since then it’s been put back in place, the guard rails are back up.
Another great example of Apple making sure something is perfect before shipping it is Face ID. It’s really hard to take an existing excellent feature, and replace it with another one that solves the same problem in a completely different way, without bungling the switch. ↩︎
You can use the iPad’s multi-tasking if you know about them, but you can also just use an iPad one app at a time, without ever even knowing they are there. ↩︎
Ultimately, it’s the ecosystem that explains why I can’t stop raving about the iPad. When it came out, the big knock on the iPad was that it was just a big phone; today, that’s what I love about it — like the Watch or AirPods, the iPad feels intuitive and natural to me because it works just like the device I use most often, my phone.
Like a phone, in most scenarios I find the iPad to be faster, more portable and easier to use and maintain than any traditional P.C. I’ve ever owned. The iPad’s limited screen space and emphasis on full-screen apps also makes for fewer distractions than on a traditional personal computer. The iPad, like my phone, lets me log in to my bank using my face; the Mac, in 2019, doesn’t even have a touch screen.
I’m convinced that perception of the iPad online is warped by it being a great device for writing1. The thing about writing is that it’s a baseline use case for a device, because everyone does it (even if it’s just sending text messages). As a result, it’s one of the most well-supported use cases on the device, and by extension it’s one of the most common types of apps developers create. This is why, for example, there are a seeminglyendlesssupply of greatwritingapps on the iPad, but only a couple of great imageeditors, and only one great video editor. For each of those tasks you’re walking up a scale of how common the task is, and how much out-of-the-box support you get for it as a developer. So it’s a great device for writing, and it’s natural for writers to share their opinions online, because hey, that’s a great use of writing! So when you read opinions around online, it’s usually writers saying they’ve managed to make it work for themselves, who have one of the best supported workflows on the device.
The only time Manjoo breaks out from his own workflow is in references a conversation with Dan Seifert, deputy editor at The Verge:
The iPad still can’t do everything a laptop can, and I still have to log in to a “real” computer sometimes. I had a long chat recently with Dan Seifert, the deputy editor of the Verge, who uses an iPad every day on the subway but often finds the device infuriating.
“For someone like me, who’s been using a desktop operating system for a long time, there’s a lot of built-in conventions that I’m used to that can be frustrating,” Seifert said. In particular, the iPad doesn’t work with antiquated work flows that are built for PCs. Say you need to log into your company’s bespoke publishing system or expense program? It’s possible those won’t work on your iPad — at least not yet — because they were built for much older devices.
“Antiquated work flows”2? Really? What about the state-of-the-art way that the very website that his article is being shared on is designed and built? Sure, there’s going to be some organizational padding between an opinion columnist and those behind The New York Times digital products, but does that mean he’s really unaware that none of the tools they use to do their jobs even run on iPads?
Along with writing, illustration is another field where the iPad really shines. And, to complete the trio of great iPad use cases, the third is “in the field” work such as reviewing footage for a video shoot on site, or photos for a photo shoot. In other words, cases where the form factor benefits of the iPad outweigh its workflow deficiencies. ↩︎
You can make the argument that most people don’t want to do the type of tasks that an iPad still isn’t suited for, such as graphic design, 3D, heavy photo editing, video editing, motion graphics, making games, or any kind of programming, including building websites–but referring to them as antiquated workflows is just plain false, those are arguably some of the fastest moving fields in existence. ↩︎
When the new Apple Pencil came out a year ago, I integrated it into my iPad editing workflow. I can edit podcasts with the Apple Pencil at a pretty impressive rate of speed, and the precision of the Pencil means that I’m more inclined to make detailed edits on the iPad than I am when I’m editing on my Mac with Logic Pro X and a trackpad. In fact, every episode of The Incomparable that I’ve edited in the past four months has been done on my iPad Pro.
One of the great things about Ferrite is that it doesn’t have a preferred interface mode—you can use touch, keyboard shortcuts… or Apple Pencil. While I was trying out the new iPad Pros and the new Pencil, I decided to try to edit a podcast in Ferrite, and my mind was blown. Now I was tapping and sliding the pencil to delete extraneous audio. The latest update added support for double-tapping on the new Pencil, which I mapped to a play/pause toggle so I could edit more quickly without putting the Pencil down.
This is a great sign for the iPad; more than anything the success of the platform hinges on the interaction model. The only interaction I personally prefer on the iPad is scrolling, for everything else I prefer the Mac. I have an Apple Pencil, but only really use it occasionally for quick sketches. For me, the problem with the pencil for me is that, while you do get additional precision with it, everything else gets worse. Pinch to zoom, two finger tap to undo, and of course scrolling itself all range from difficult to impossible with the pencil in your hand. This combination of tradeoffs mirrors the trackpad on macOS. I use a Magic Trackpad 2 and I find it to also be poor for precise edits. But I still prefer it to a trackball or mouse, because, with multi-touch gestures, I find it to be a more comfortable device in sum, despite its shortcomings when making precise edits. Snell says in the post he’s using a trackpad when he edits on the Mac, so my follow-up question would be how does he thinking editing on the Mac with a mouse stacks up?
Snell is going to continue doing most of his podcast editing on iPad, but he still needs to use his Mac as the final step in his workflow because the audio plugins that give him the best results simply aren’t available on iOS:
Now here’s the tough one, one I don’t have a good answer for as yet. As cool as it is that I edit every episode of The Incomparable on my iPad, the fact is that all the audio files for that episode are prepped on my Mac before they get to my iPad. I sync audio tracks using a proprietary tool, then use iZotope RX to remove background noise, and finally use a compressor (currently it’s Klevgrand’s Korvpressor, but it’s the latest in a string of ones I’ve used, they’re like Spın̈al Tap drummers) to balance the volume of audio across different tracks.
Ferrite includes a compressor plug-in and a volume-leveling preprocessing feature, neither of which can I get to generate the output I desire. Korvpressor has an iOS version that I can use as a plug-in in Ferrite as I do on the Mac with Logic Pro X, but the iPad version crashes reliably, so I can’t use it. And there’s absolutely nothing I’ve found on iOS that can match the quality of noise and echo removal that iZotope provides on the desktop.
There are some apps that replicate this workflow in perhaps the most iOS-like way currently possible, most notably AUM, but it’s still not a workflow that feels as at home on iOS as it does on macOS. ↩︎
Part of the point of both of these waves of company creation is that merely taking Excel or Word or Powerpoint and putting them onto the web may make the file share thing work a bit more smoothly, but doesn’t actually create a new workflow. If I’m a lawyer reviewing files for court, pasting the file names into a Google Sheet is probably better than pasting them into an Excel file on a network drive, but it’s still not as good as an actual tool. […]
If you want to book X, the old workflow is a spreadsheet or an old-world database, plus phone calls, faxes or email. And the way you solve this is not by moving it from Excel to Google sheets, any more than the way you solve version tracking of video edits or legal document review is to move it from Excel to Google sheets. You solve it with a dedicated workflow and tools. Honor is Figma for home help - or vice versa. […]
Meanwhile, a few years ago a consultant told me that for half of their jobs they told people using Excel to use a database, and for the other half they told people using a database to use Excel. There’s clearly a point in the life of any company where you should move from the list you made in a spreadsheet to the richer tools you can make in coolproductivityapp.io. But when that tool is managing a thousand people, you might want to move it into a dedicated service. After all, even Craigslist started as an actual email list and ended up moving to a database. But then, at a certain point, if that task is specific to your company and central to what you do, you might well end up unbundling Salesforce or SAP or whatever that vertical is and go back to the beginning.
The piece also references an image by Andrew Parker that perhaps expresses the idea more concisely. As Evans describes it, “[by] showing how many startups were unbundling parts of Craigslist into dedicated vertical marketplaces”. The point is that web apps and mobile apps are more specialized compared to desktop software, and the trend is increasing over time1.
I feel like the odd man out by advocating for powerful, flexible software these days. I’m usually talking about creative software, where power and flexibility are nonnegotiable. You can normalize your business processes in order to use an off-the-shelf solution, but if you do the same with creative software, you’re removing the capacity for expression. But even for general purpose software, it feels odd that it’s often the most technical people who are advocating for switching from the flexible, powerful tools to the off-the-shelf solutions.
On one hand I suppose it makes sense, since it’s the programmers themselves that are making these more specialized tools for everyone else, but on the other hand, we’re also supposed to be the people who actually like software. Yet here we are telling people to use Google Sheets instead of Microsoft Excel, even though it’s less powerful and people like using it less.
I’ve always loved the chapter on tools from The Pragmatic Programmer, where Dave Thomas and Andy Hunt advocate learning one text editor well and using it for everything. The tech community does a good job of doing this for their own tools, the aforementioned ones, but promotes the opposite for everyone, and everything, else. I think people would be better off investing in learning a few flexible and powerful2 tools that they can use long-term, rather than constantly migrating their data and workflow from one specialized app to the next until the end of time.
The rise of more specialized apps is partially being driven by the ease of installation of mobile apps (or lack thereof for web apps), which lowers the barrier of entry to having many apps, especially when compared to the desktop. ↩︎
The trade-offs of specialized versus general purpose tools are different between personal and business software. Off-the-shelf software is great for business software, because there the priority is collaboration. In the workplace, everyone needs to be able to use the same tool with as little friction as possible. But the trade-offs are different for individuals, with their own personal data. There I think the priority, beyond the capabilities of the program, is being able to open their files for decades to come. ↩︎
The feature that matters the most is Apple’s go-to-market strategy. How will 2019 Mac Pro hardware, software and services will be sold and supported? If they answer remains ‘Apple will do it,’ the new computer may have failed already.
Up until 2010, there was a thriving third-party ecosystem to support professional Mac users. This ecosystem was made up of individuals and businesses who didn’t just ‘bet their business’ on professional Mac hardware and software but bet their business on those who themselves bet their businesses on the Mac.
One of the most frustrating things about modern Apple is how they prevent healthy businesses from forming around their products. Most of the creative apps on the iOS and Mac App Store seem to be supported by development teams on life support.
It’s not enough just to make great products, you also need a great ecosystem. All of the popular creative apps are surrounded by a cottage industry of plugins, specialized hardware, and tutorials. The Mac has a great ecosystem of healthy businesses outside of the Mac App Store. The iOS App Store, while a popular place to publish apps for companies who have their main business elsewhere3, and a few small companies, it’s just not a good place to build a business in general. The risk is too high, and the ceiling of success too low. And, by extension, it’s a bad platform for users interested in doing creative work to invest in because the tools they depend on often disappear overnight.
Procreate, not coincidentally, is also the creative app that is the best match for the iPad’s form factor. ↩︎
The other day, I came across a website I’d written over two decades ago. I double-clicked the file, and it opened and ran perfectly. Then I tried to run a website I’d written 18 months ago and found I couldn’t run it without firing up a web server, and when I ran NPM install, one or two of those 65,000 files had issues that meant node failed to install them and the website didn’t run. When I did get it working, it needed a database. And then it relied on some third-party APIs and there was an issue with CORS because I hadn’t whitelisted localhost.
My website made of files carried on, chugging along. This isn’t me saying that things were better in the old days. I’m just saying thatyears ago websites were made of files; now they are made of dependencies.”
Years ago websites were made of files; now they are made of dependencies.
And adds to it:
The last line really hit a chord with me: that’s exactly it. Worlds of scarcity are made out of things. Worlds of abundance are made out of dependencies. That’s the software playbook: find a system made of costly, redundant objects; and rearrange it into a fast, frictionless system made of logical dependencies. The delta in performance is irresistible, and dependencies are a compelling building block: they seem like just a piece of logic, with no cost and no friction. But they absolutely have a cost: the cost is complexity, outsourced agency, and brittleness. The cost of ownership is up front and visible; the cost of access is back-dated and hidden.
It’s been a big week for Photoshop, Photoshop for iPad is out now, and on the desktop, Photoshop 2020 has been released. The desktop app icon has been updated to use the new rounded-corner style also used by Lightroom, here’s the new icon:
And here’s the Lightroom Classic icon that still uses the old style with sharp corners:
So far it seems like the new icon style is being used to designate products that are cross-device? Dimension, Lightroom, Premiere Rush, and Photoshop are the ones that use it now, and of those only Dimension isn’t cross-device yet.
1) Consistent Free Transform – When in free transform, clicking the link icon (in the Options bar) will toggle the “constrain aspect ratio” option on/off . The state of the icon is sticky – once it’s set, it will stay that way until it’s clicked again. This means that, regardless of the contents of the layer (pixels, type, shape, etc.), transform will behave consistently. Holding the Shift key while transforming will temporarily toggle the opposite behavior.
Before switching back to app development in 2011, I worked for eight years as a user-interface designer, and I practically lived in Photoshop during that time. Then I became so frustrated with Adobe for not creating an app like Sketch1 that I swore off their products for years, doing all of my design in Sketch and using the wonderful Acorn for image editing. Recently, I decided to go back to Adobe’s products when I did my overview of creative apps on Apple’s platforms and realized that, while Adobe had missed the boat with Sketch, the companies product line is otherwise quite healthy (to say the least)2.
So I’ve been using Photoshop again, and for the most part the application feels similar to when I left it3. But one thing that’s been driving me crazy is the default behavior for “Free Transform” has been inverted, you used to hold shift to constrain proportions, but now it constrains proportions by default, and you hold shift to turn off constraining proportions. This change was apparently introduced in Photoshop CC 2019, and I’m not the only one it’s been driving crazy, Veerle Pieters shared how you could revert to the legacy behavior by editing a configuration text file. The new approach of providing a toggle setting in the toolbar, that remains sticky between launches, seems like a good compromise.
I’d contend that Adobe leaving the user-interface design tool market open for a competitor like Sketch to emerge is the biggest blunder in creative apps I’ve seen in my 20 year career. ↩︎
Take Claire Boucher, aka Grimes, who spent years tooling around with GarageBand in Montreal’s underground scene while searching for her voice as an artist and producer. Those experiments eventually led to the 27-year-old’s breakthrough album, Visions, which was recorded entirely on the digital audio workstation, or DAW. Eventually, though, she realized the software’s limitations couldn’t keep up with her appetite for digital complexity. “It really can’t do anything,” Boucher once told Clash magazine. “There’s not a lot of stuff in GarageBand that’s good.” Boucher has since graduated to more advanced DAWs like Ableton Live.
There’s a general feeling that GarageBand 10 (which is the current version, released in 2013) is too limiting:
According to several musicians, newer versions of GarageBand make it harder to innovate and customize, showing that there’s a fine line between a program that’s accessible and one that’s too accessible. “You feel like you’re being told what to do now,” says Harvey. “So I just use an old version because I like the control it gives me.” In general, advanced users of GarageBand prefer the version of the software they first recorded on, suggesting that these digital natives aren’t above the comforts of nostalgia and familiarity.
GarageBand is an interesting prism to look at Apple’s perspective on creative apps because it’s the only creative app that Apple makes for iOS1. Personally, I find GarageBand so limiting it gives the impression of being hostile to creativity. It has wonderful built-in drum kits, and a fantastic array of ways to sequence and play them, but you can’t make new drum kits using your own samples, or even mix and match the built-in sounds. GarageBand’s drum kits are essentially a drum sampler, where you can only use samples provided by Apple. Similarly, GarageBand for iOS 2.2 added a powerful new synth named Alchemy2, but the version in GarageBand has a minimal interface that hides most of its controls, so you can use a great synthesizer, but only with the presets designed by Apple:
There’s a difference between simplifying tools, and being hostile to the very idea of expertise and open-ended creativity. Apple is increasingly veering towards the latter. This is the same Apple that’s simultaneously marketing the iPad as a replacement for a computer and selling $10,000 computers to creative professionals. Creative professionals have always needed expensive computers, but other than being more powerful, they were the same computers used by the rest of us. We could learn to use the same tools that the pros use, just on a smaller scale. Tools like GarageBand are working to undo the 35 years of democratization of creative tools brought on by the personal computer; it’s a throwback to a world where creativity is reserved for only the professionals that had access to the expensive tools required to do it.
You could arguably include iMovie as a creative app, but it’s marketed more as an editor for home movies. ↩︎
The Logic Pro X screenshot is showing Alchemy’s “Advanced” view, the minimal interface used by GarageBand is also available under “Simple”, but the “Advanced” view from Logic is not available in GarageBand. ↩︎
Adobe has released Lightroom 3 and Lightroom Classic 9. The headlining feature for both versions is the same: When creating a panorama by merging photos, there’s a now a “Fill Edges” option that uses content-aware fill to even out the edges. The rest of the new features are different between versions, with Lightroom focuses on improving the built-in tutorials1 while Lightroom Classic focuses on new organizational features and performance improvements.
I’ve played around with Lightroom’s built-in tutorials, but the technology only plays nicely with the sliders that affect the whole image, and not the more specialized tools like brushes and the guided upright tool. This limits how helpful they can be because the sliders themselves aren’t exactly difficult to use. ↩︎
Uploading all of the images to the cloud is more problematic than it at first appears. For example it means if you’re doing a large photo shoot, you have to upload all of the photos to work with them in Lightroom (and pay Adobe’s cloud storage fees). ↩︎
I spent the most money I ever did on this MacBook Pro, and it’s also the worst machine I ever had because the keyboard breaks down (like, it won’t register the s). When I dock it and use a different keyboard, it’s fine of course. But sometimes I visit my co-founder in Berlin, or want to work from a coffee shop, and then it’s nice to have a working keyboard. So far I’ve brought it in for repairs three times, and each time I’m without my workhorse for a week. Those are unplanned holidays that are dragging my productivity–and basically my company down.
The list of issues he encountered jumped out at me:
Device support is still lacking. I could not get Apple’s Magic Trackpad 2 to work without soul crushingly fragile hacks. But I guess a newer kernel is coming that will fix this . I was unable to get my TomTom Running Watch to sync. My Fujitsu SnapScan document scanner had no Linux tools (on macOS it can automatically OCR & archive to my Dropbox). This is very dear to me so I ended up using VirtualBox with a Windows VM for that.
Photos. Leaves to be desired. This is the main reason I’ll probably always at least keep an iPad or very lightweight MacBook around. But if I don’t have to get a maxed out MacBook Pro 1, I could get a high-end Linux machine and a modest Apple device, and still save money.
Copy paste is still horribly ‘broken’. I guess \<Cmd\>C isn’t a thing on Linux and \<Ctrl\>C has a different meaning in terminals, so I can get with that. And I guess there are tricky/valid historical reasons for having two different clipboards, but for the end user, it’s just shit not being able to copy in one app and paste in the next if you closed the former. Or having data in one clipboard while you need it in the other. Luckily I found a workaround that I listed further down. Wholeheartedly recommended. Paired with training muscle memory to do \<Ctrl\>\<Insert\> (copy) and \<Shift\>\<Insert\> (paste) on Ubuntu, that solves the problem.
I invested in a screen with high DPI, but it’s not ‘Retina’, and the fonts don’t render like they do on macOS. It seems like a small thing, but 4 weeks in, I never would have thought I still sometimes feel as though my eyes are dry and almost literally hurting Did Steve Jobs spoil/ruin me for life? Edit: I wrote this before my upgrade to Cosmic, and it got significantly better afterwards
If I close the lid of my XPS and open it 2 days later, the battery is fully drained. I just opened by MacBook after leaving it for weeks, and it still has juice enough to do serious work with (if the keyboard only allowed!). So it seems hibernation is much better on a Mac. Edit: aspointed out by GD in the comments, this: isn’t actually Linux’ but MSFT’s and Dell’s fault for promoting “connected standby”
Every reboot my screen brightness is so low I can barely see a thing. The button to increase brightness is maxed out. It turned out I have to venture into the power saving settings to crank the brightness up there, but it does not persist across reboots. I avoid reboots now. If someone knows how to automate this let me know in the comments below!
Selecting the right audio/video input/output is a proper chore. My Mac seemed to pick sane seemingly obvious defaults, whether I hooked up a screen with webcam, removed it, etc. With Ubuntu I have to open the audio settings and select the proper i/o at least twice a week as it doesn’t pick obvious candidates. It’s annoying for me, and often enough also for my teammates who I video conference a lot with. Sorry folks!
I thought Snaps were really cool until I used them in my day to day. I used snaps for GitHub Desktop, Spotify, VSCode, Slack, and have since reverted all of that to using plain APT repositories. Issues ranged from intense CPU hogs, to links in Slack not opening, or always opening in a new Firefox window, seemingly random segfaults, etc. I guess it’s still a bit too early and some programs don’t like to be contained so much, or I’m just plain unlucky. I didn’t have time to deep dive, APT works fine.
There are other ways but if I want to type an é, out of the box, I have to type: \<Ctrl\>\<Shift\>U 00e9, and then, that doesn’t not work in my code editor. Long-pressing a button on macOS wins! I keep forgetting this code, too, so I’m saying Renee a lot. Sorry Renée!
As tedthetrumpet points out in the comments, I too really miss Preview on Spacebar
Criminy. Linux appeals to me philosophically, I love the fact that it’s community driven, so it’ll never be taken in a direction that conflicts with the community’s desires, like I’d argue is happening with macOS today. But, while I write a lot about how I disagree about Apple’s current direction, I still love macOS and I still love Apple (“It’s the first personal computer worth criticizing”—Alan Kay). Here are the reasons I don’t think I’d consider switching:
While Linux runs all the most important programming apps, it doesn’t run any of the most important creative apps. This alone is probably a dealbreaker for me. Commercial creative software is amazing these days, and for me that’s the best reason to own an a computer today.
I mainly use laptops, and the integration that comes from the hardware and software being from the same vendor is particularly important for that form factor. For example, many of the items in Kev’s list stem from that separation. Even if I did setup a Linux-based programming environment, something I’ve considered doing to try i3, I’d still want to run it in as a virtual machine in a host OS that provides the stability and features that come from this hardware and software integration.
There really is nothing else out there like the Mac indie community, and the passion of its participants. The community talks about the same things that I like, namely great software and powerful features for using the platform effectively. I’d love to follow a podcast like the Accidental Tech Podcast and The Talk Show for Linux, but that doesn’t seem to exist. The closest thing I’ve found is the Changelog but that focuses on individual open source projects and not the platform itself. For me to switch, someone needs to sell me on the idea that Linux is for people like me, that love great software, because right now I just don’t see it.
For relatively simple tasks such as using multiple apps side by side or opening more than one window for an app such as Pages, the iPad support site is cryptic and, in some cases, just plain wrong. As just one example, the on-line guidance advises: “go to Settings > General > Multitasking & Dock…”. Trouble is, the General section of Settings on my iPad Pro doesn’t have a Multitasking & Dock section. A little bit of foraging gets me to the Home Screen & Dock section where, yes, the Multitasking adjustments are available.
On the positive side, one now has a real Safari browser, equivalent in most regards to the “desktop” version, and the ability to open two independent windows side by side.
Because I feel self-conscious about my mental and motor skills, I compared notes with a learned friend, a persistent fellow who forced himself to learn touch typing by erasing the letters on his keyboard. He, too, finds iPadOS discoverability to be severely lacking. There are lot of new and possibly helpful features but, unlike the 1984 Mac, not enough in the way of the hints that menu bars and pull-down menus provide. It all feels unfinished, a long, long list of potentially winning features that are out of the reach of this mere mortal and that I assume will remain undiscovered by many others.
The iPadOS multi-tasking features are deliberately hidden1; they’ve obviously been designed around users who don’t want to use them, never having to see them. So it’s not discoverable, but that’s not the most important take-away from these design decisions, the more important take-away is that Apple doesn’t think most iPad users need these features.
It’s hypocritical for Apple to promote the iPad as the future (“what’s a computer?”) when everything the company makes is built with Macs. Carts can’t pull horses; what Apple should be doing is improving the iPad to the point those employees are using iPads for their work and then start pitching it as the future.
How can Apple design a nice multi-tasking system for a platform that their own employees can’t even use for their work?
For me personally, the biggest problem with iPadOS multi-tasking is that it is stuck behind sluggish and clumsy gestures like dragging, and touch and hold. I don’t mind using these gestures for deleting and re-arranging apps, but for something that you’re interacting with constantly, like a multi-tasking system, I find them excruciating. ↩︎
I don’t use many web services already, because I don’t want any company to be able to revoke access to my own data. When I do use a web service, I prefer to use it with a native client that automatically keeps an offline backup of my data, and, if that’s not possible, then I manually export a backup every month (I do this with Pinboard for example).
Subscriptions have some similar issues to web services. I have a thought experiment I like to do: If I canceled all of my subscriptions, and then started up my computer offline five years from now, would I be able to access all of my data?1 Subscription services like Adobe Creative Cloud fail this test because you’d lose access to those applications after the subscription lapses. The maximum offline grace period Adobe offers is 99 days for annual customers:
In offline mode, annual Creative Cloud members get 99 days of grace period; month-to-month members get 30 days of grace period.
This is still much safer than using a web service. With a web service, you lose access the application and you lost access to your data. With subscriptions for native apps (that work with files), you’ve only lost the access to the application. You still have your data, and the data is the most important thing. Even if Adobe decided they never want you as a customer again, you could still presumably find someone else with an Adobe license and access your data that way (or, more likely, just use a third-party tool that supports the same file format). But I still don’t feel good about subscriptions failing that test, and I’m not sure what to do about it with so much software going the subscription route.
This scenario isn’t as far fetched as it sounds. I have bootable backups that are at least that old, and every once in awhile I have to boot one up to grab an old file. ↩︎
What I want from a new version of an operating system, especially one as mature as Mac OS, is that it fixes or improves what was not working well in previous versions, and that it leaves tried-and-true features and functionalities as untouched as technically possible. I don’t need and I don’t want disruption for disruption’s sake on a yearly basis. While I understand that today’s tech motto is The show must go on, that also doesn’t have to mean that the show should get painful to watch.
Back to Mori’s piece, what we should expect from Apple going forward is that they’ll reduce the flexibility and power of the Mac3 as much as possible while still making sure that those apps can run. So if you depend on the Mac for something other than those apps, you’re going to be in for a bumpy ride.
It’s hypocritical for Apple to promote the iPad as the future (“what’s a computer?”) when everything the company makes is built with Macs. Carts can’t pull horses; what Apple should be doing is improving the iPad to the point those employees are using iPads for their work and then start pitching it as the future. ↩︎
The list of third-party software is surely a lot longer, and most likely includes many media production apps like Ableton Live and Cinema 4D. Notably, it probably doesn’t include any indie Mac apps (although any apps that already also run on iOS are probably fine). ↩︎
Power and flexibility are difficult to maintain, and Apple has convinced themselves, perhaps rightly, that they can be compromised without impacting the Mac’s market share. ↩︎
The Omni Group is an employee-owned company where people bring their dogs to work.
In other words: when you think about managing large projects, think about culture first. It almost doesn’t matter what the details are — how we’re organized, what we use for source control management, and so on — because a great culture makes for a happy team that will figure out how to work together. And Omni has done a great job with that.
Omni’s culture deserves an article of its own, but I’m not going to get into culture much. Instead, this is an engineering-centric tour of the details of how we manage our apps.
They have several internal tools that are native macOS apps: OmniAutoBuild, OmniBugZapper, and OmniCrashSorter.
I like this bit about using AppleScript for automated testing, I do the same thing with Repla:
OmniFocus has unit tests that cover the model classes; other apps have more or less similar test coverage. The problem we face is the same problem other OS X and iOS developers face, which is that so much of each app is UI, and doing automated UI testing is difficult. Our solution for our Mac apps is AppleScript-based tests. (That’s one of the best reasons for making sure an app supports AppleScript, and writing tests is a good way to make sure that the support makes sense and works.)
They still use subversion (Update 10/31/19: Brent informed me via email that they switched to git this year):
We use Subversion. All the apps and the website are in one giant repository. I wouldn’t be surprised if everybody’s working copy is just a partial version, rather than the entire thing.
What stands out to me is that there isn’t much here that sounds like it’s needed to change in the last decade or so. They’ve been avoiding trends and fads, just steadily making some of the best software in the industry, year after year.