A brief reflection on Mac software stagnation
morrick.me
morrick.me
As noted, several app categories seem to have "matured" and/or ossified and are dominated by one or two players. For example, Microsoft and Apple dominate the "office" productivity software market on macOS.
Moreover, apps like Discord, Teams, VS Code, etc. seem to be cross-platform web apps which are clunky and unsatisfying compared to native apps. (Other web apps don't even have desktop versions and only exist in the browser.)
That being said, Adobe's offerings are expensive subscriptions which have opened up a market for Affinity as well as Pixelmator and Acorn.
I was working in PowerShell ISE today and was thinking "this has to go" the whole time. So if I have any PowerShell work in the future I'm going to try the VS Code tooling for that.
I knew at least one person at Capital One who was using it for their Spring Boot project instead of Intellij.
(Windows PC)
Why is functionally so different between the native app, web and teams. How is this an industry standard?
I edited a table, moved a picture and changed a footer. How can that be complex?
On a daily basis you could never tell which method of extracting a document would or wouldn’t work. Sometimes they wouldn’t open at all. Or would only open on web, but not desktop (or the other way around).
Not least because one of the apps I used to use -- Panic's Coda -- had really severe keyboard lag issues in some situations, on hardware that should have been fine with it.
In my experience VS Code is plenty quick enough, not least when I am editing something inside a VM or on a remote server using the Remote SSH mode.
It might show a bit of keyboard latency but the Remote SSH mode more than makes up for this, for me; the sheer flexibility it offers me as a developer means I am going to ignore a bit of general latency.
And we've put up with worse in IDEs and programmers' editors, for sure.
One thing I would observe about speed complaints in VS Code is that they come from people who navigate through text mostly through keys; people with a vi or emacs back-story.
There is no doubt at all that it repaints more slowly than some editors when scrolling down through code line-by-line or page-by-page with the arrow keys etc., because of all the code actions that fire off when the cursor moves.
But it is not noticeably laggy when scrolling with a trackpad, because the cursor does not move.
This difference probably explains people's very polarised and simultaneously valid responses to VS Code.
* Omnigroup's suite of apps for macOS and iOS
* Craft
* Drafts
* Fantastical
* Hook
* Marked
* Mela
* Rectangle
* Scrivener
* Postbox
[1]: https://www.omnigroup.com/blog/omni-roadmap-2022
[2]: https://www.craft.do
[4]: https://flexibits.com/fantastical
[5]: https://hookproductivity.com
[7]: https://mela.recipes
[9]: https://www.literatureandlatte.com/scrivener/overview
[10]: https://www.postbox-inc.com
[11]: https://www.macstories.net
[12]: https://sixcolors.com
The most useful apps still come from the indie developers; it's just not as high profile as it once was. It's become more artisanal.
If you read MacStories [11], Six Colors [12] and other indie Mac websites, you'd see lots of innovative Mac and iOS apps.
iTerm2 is perhaps the best terminal app on any platform: https://iterm2.com.
- iTerm2 - it works right, it feels responsive. I don't have to futz with it but can
- Pixelmator Pro - it's what Photoshop used to be to me 20 years ago
- Omnigraffle - When I need to hand-layout a diagram it's my favorite ever
- Postico - It's weird that I like a single DB UI. But it's nice over just pqsl sometimes.
I have some handy utilities I like:
- The UnArchiver
- Flycut
- SwiftBar
- Disk Inventory X
- Amphetamine
- Skitch
- Magnet
I use Office 360 begrudgingly. But I do like it better on macos than Windows.
The rest of my GUI stuff is largely cross platform (and some electron)
- Firefox
- Chrome
- Notable
- Signal
- KiCAD
- Wireshark
- VirtualBox
- IntelliJ (I use less and less)
- Spotify
The killer app for me in a lot of ways is just Homebrew. I live in the terminal. I love having up-to-date dev tools. I hate maintaining it. Even with Linux it can be a pain to hit the sweet spot between up-to-date and DIY. I'm happy running a FreeBSD server, but I want my workstation to not require a lot of planning. I also love that I can install/update native apps from it. I always use it before I hit the App Store.
I've ditched making VSCode and IntelliJ like vim and made neovim like VSCode. It's glorious. I use git and text for almost everything I do, unless I can't or when a picture helps.
And I don't play games on my laptop anymore. Really just Minecraft on my tablet. Sometimes I let my kids play with me :)
You might want to check out pgcli sometimes if you find yourself using pgql on occasions. It does the same but includes various quality of life features such as tab-completion, syntax highlighting and improved table views
How does one go about getting the IDE features like autocomplete or source change tracking in NeoVim?
But the most recent major neovim release has lsp support + treesitter. Some Linux distros don’t ship it yet, but Arch and Homebrew on my Mac are up to date.
There are lots of examples out there for the configuration. I don’t think that mine’s great enough to share.
I’d just Google “neovim lsp config” or such.
I'm curious (since I very rarely use MacOS) what makes it better than say: Alacritty, kitty, or even something basic like xfce4-terminal?
In terms of responsiveness I can't think of something better than alacritty/kitty.
In terms of everyday basic features something like xfce4-terminal seems to cover everything. Does iTerm2 have features that make everyday usage more pleasant?
That said both stay out the way and cause me no issues but I'll pick Cinnamon/Linux over MacOSX ninety nine times out of a hundred anyway.
We believe implementing platform-specific APIs for each platform, e.g. Objective-C APIs for Mac leads to a better user experience but it is much more challenging to maintain. We're currently building a cross-platform UI framework with that philosophy. Hopefully it will make Mac development easier. Learn more here [1]
Well... the golden ages (which I'd say are the mid-90s to 2010-ish) are over.
- Business software has pretty much consolidated and the existing tooling from office suites to data warehouse and workflow stuff (i.e. SAP) offers so many options that it's incredibly hard for new players to gain a foothold - you need to identify some niche, build it out well enough to offer an actual benefit and market the hell out of your idea, and maybe in 0.1% you have a chance at lucking out.
- there are a bit of open-source efforts (e.g. Thunderbird, Mozilla, LibreOffice) but they lack funding so they struggle along, mostly used by those not wanting to spend money on the above-mentioned pay products
- Utilities from file management (Winrar, Winzip, Total Commander) over media players (Winamp) to task managers have been absorbed by the operating systems. These days, particularly Apple is known for outright ripping off ideas from popular App Store apps.
- the people who made the really innovative apps in the golden age were highschool and college students. These people have since found employment at big companies, removing both the time and the ability to work on side gigs (hard to do a side gig when you're staring at a screen for 40+ hours a week, and why bother with side gigs when your employer demands copyright even over stuff you do on your own time?). Today's young people aren't interested in programming any more, they're more interested in Tiktok or to fight on the political level.
- All major OS platforms have alienated developers. Microsoft with win32 -> .net/WPF -> UWP -> WTF, Apple with Cocoa -> WTF, and Linux never got around to settle on one way of packaging applications and dependencies or on window managers or on <insert long list of forks, disagreements and other crap that happens without a central steward here>.
- it seems like the flurry of cheap or free high-quality IDEs and the consolidation (basically it's VS Code, IntelliJ or Eclipse these days) directly coincided with the end of big-corporate desktop app developments. Basically when no one pays four figures for an IDE any more because no one wants to develop for desktop, it makes sense that the others go down in price (Visual Studio/VS Code) or vanish (Borland).
- Mobile, web-based SaaS and subscription based stuff lured a part of said alienated developers with better pay and actual innovation
- ETA: Games... that's a different beast. Can't argue that there is innovation present. But most of the attention of the major actors seems to be focused on console-exclusive or other walled-garden deals, and the mobile market draws in the f2p whales. There are rare gems (e.g. Factorio) that simply would not work on a console due to a lack of a keyboard, but that's it.
There are no LAN parties. Conventions are more corporate now. Nobody camps out in line for a Wii.
The 90s to early 2000s was the golden age of everything because of context. The substance is almost irrelevant.
All the corporate "Bring back 1996" releases fail because they just rerelease pieces. It's like telling people that drinking alone till you puke is the same as a party.
Even more businessy software is the same way. Programmers are no longer excited about tech. They just think it's a security risk and maybe secretly respect Kackzynsy's views
Why would they innovate even if they had time? The cool thing to do is interesting algorithms, blockchains, and minimalism. Nobody wants to make a super awesome GUI app. That's too easy and the new generation of programmers looks down on how the world is GUI dependent.
Everything it tech sucks because the culture in general manages to make it suck even though the actual tech is absolutely amazing.
And every new NPM dependency feels like installing a Russian hacker’s “free library” on my computer.
They still take security seriously, but not to the point of avoiding widely trusted dependencies or trying to push back on tech in general and use more analog things
I have to admit that, after starting my own product, I’ve found my thing (doing features with a bit of backend and a bit of product management…).
It is worth considering that this viewpoint is age-dependent.
I feel this way instead about the mid-eighties to the early 90s, and I personally believe that games went rapidly downhill just after Quake, until the mid-2000s casual gaming boom. Everything went 3D and the fun was beaten out of every game concept.
Speaking from a British position, I think your problem with "entertainment" generally is very specifically the manifold outcomes of the US television network syndication model.
US TV companies make too many episodes of everything, because of that model, and that feeds inevitably into a particular story development concept that involves teams of people growing and feeding an addiction.
Not so long ago, a British Prime Minister (David Cameron) told Tina Fey that he wanted a more American model in British TV -- more episodes.
https://www.bbc.co.uk/news/entertainment-arts-48021899
"Come and convince our showrunners that they can't just make six episodes of things. Like you guys, they should make 200 episodes," she recalled him saying.
Fey rejected the request, however, explaining that US writers were, in fact, jealous of the less-is-more British approach.
The way this works -- that everything has to have a spinoff, everything has to have a multi-episode story arc, everything has to have a universe -- is also why cinema is screwed, because it is now a feeder for this system.
So my suggestion is: watch things that don't have more than ten episodes ever. Watch films that don't have sequels. Reject syndication culture.
In particular I think indie horror games feel well-crafted and original now even if they're cheap. Can't tell you why though.
I watched an interview from the 80's-90's in which a developer discusses the process of coming up with a concept for an arcade machine. They said something like "It's like trying to create digital drugs."
> the new generation of programmers looks down on how the world is GUI dependent
I personally think we have a good mix of GUI and terminal apps right now. They both have their uses.
> That's too easy
I feel like making a GUI app is harder precisely because of the added development work.
> Programmers are no longer excited about tech
I'm less enchanted with having to know several frameworks before getting a job, rather than simply understanding a language/paradigm well and being quickly onboarded, but that's probably just a sign that I personally shouldn't be a software developer.
I've never sorted or btreed or third normal formed or a* searched something. I've never designed a new machine learning model. I couldn't implement even a toy version of AES. I've never done a GPU shader.
I just find out who has, come up with a workflow model and UI that uses it, then track down all the edge cases that need a few if statements to handle, and maybe pack and unpack some bytes for a microcontroller.
I couldn't quite be replaced by a CRUD builder tool, because I'm doing embedded stuff, and a lot of CSS theming work... but it's not unimaginable.
Regarding the developers alienation, it is incredible how the developer advocates keep changing and newer PMs are able to sell rewrites with a straight face, ignoring what they were selling at previous BUILD, WWDC, Google IO.
It's fiddly and annoying (and usually expensive) to license for a team (compared to SaaS subscriptions). It tends to be less "online" - more likely for work to exist only on staff laptops and more difficult to share and collaborate on work (compared to software where all of the "work" exists online and live collaboration is expected).
My work situation is just VSCode (which I'll probably use in the browser half the time going froward via codespaces), Chrome and whatever Terminal app comes with the OS. And 10 tabs open for email, chat, calendar, docs, video calls, project boards, version control, devops stuff etc. I assume that's pretty typical.
People conduct serious business on phones. Mobile apps and sites are more important to products that we would all assume are “sit down at a desktop computer” type of products.
Any effort you put into a desktop-only app is basically leaving most of the money on the table, unless it’s a desktop computing specific niche (and if it is, it was probably already thought up 10 years ago).
The reality is that the browser has become the OS that everyone targets. In many ways, this is a good thing. The apps I run on my Mac work just as well on Windows and Linux. You mention Microsoft/Apple dominating office software. But there's a whole new world built on top of things like Notion and Google Docs/Sheets now. Web apps are more than capable enough today outside of niche scenarios.
Once I have something working as i like, I will not update. It seems that long term stability and continuity became a dirty word and now we are forced to update every year because someone has new hardware to sell you or a new subscription service to push you into.
having to install 12gb xcode so i can convert my chrome extension to safari. or my local env/build system stop working because i update from catalina to big sur for a new uglier flatter design.
and why they have to give these stupid arbitrary names to their os, its all marketing, it makes it confusing to know what was previous and what next...
Its main rendering surface is not using the DOM, most of the work happens in other processes, it can even use native tabs in MacOS now. As a result it really feels snappy, unlike Slack and other common electron apps.
How many good options are there.
The only good option is to separate your UI and logic and write a new UI layer for each platform. It is hard work and there's no easy out. On a phone, the UI has to be touch only. On Windows you probably need to support touch and keyboard/mouse. Linux may lead you to develop a TUI and GUI. Your macOS version should probably be a GUI.
Then on each platform, there are significant differences for things like where the settings UI should be and where the settings should be persisted.
And you are seriously underestimating the cost of Electron (which isn't an option on some relatively big platforms like Apple Watch). Memory consumption, CPU utilization, and battery consumption are the key factors and a well written native app will always beat a well written Electron app usually by more than 20%, especially on battery consumption. If you are lucky and have millions of users, then multiply that across all the users and it's a tremendous amount of waste.
I can see why you might choose Electron if you have very few users or the app is essentially a web page.
I'm not going to buy any subscriptions. And luckily I don't need to, since the classic funding model in this space still brings better apps.
You can have my Sublime Text when you pry it from my cold, head hands.
Shoutout for Tower Git, Kaleidescope, and TablePlus as well.
* Lucrative FAANG jobs have hollowed out the indie dev market
* Apple's cultural push for $1 apps has made it hard to charge sustainable amounts for indie apps
* The rise of iOS has pulled ObjC (and now Swift) devs away from Mac software
* Our industry has moved towards vertical integration. Eg before we used to use Campfire for team communication, using indie apps such as Flint as clients because campfire had an api. Nowadays tech companies want to 'own' the whole shebang, eg Slack has no API and publish their own desktop client. But these big companies by nature have no appetite for making a nice native app, it's all electron so they can get x-plat feature parity.
I'm not going to blame Apple for that. Unless it is to have provided the App Store arena — within which developers quickly raced to the bottom on pricing.
Who can blame users though for expecting free stuff? Web browsers became free. Apple and Microsoft started bundling more and more apps with their OS's. Facebook: free, Twitter: free, etc.
I honestly don't know how indie developers make any money these days.
I'm considering trying shareware again. At least the odd check in the mail used to get pizza for the girlfriend and I on Friday nights.
But try and keep your day job too.
But Apple based the App Store on iTunes, where the songs were 99 cents and curation was a token effort. It took years for Apple to recognize that people needed to be able to find the good apps more than a few hours after they released onto the store.
The trend had been in that direction already. The marginal cost of software is pretty close to zero so prices were always going to be squeezed towards that. It probably did accelerate the process though.
Being a developer on iOS still seems to be a better idea than Android:
> Consumer spending on the App Store reached $72.3 billion in 2020 and in the same period, it reached $38.6 billion for Google Play. While in 2019, the consumer spending on the App Store was recorded at $55.5 billion and Google Play Store’s spending stood at $29.7 billion.
* https://www.gadgetsnow.com/featured/iphone-users-vs-android-...
> According to our data set (€1 billion in mobile revenue since 2017), the average transaction on an iPhone is 26% higher than that on an Android! So even if the conversion rate on an iPhone reduced by 20%, that iPhone traffic will still be relatively more valuable than the Android alternative.
* https://www.wolfgangdigital.com/blog/battle-of-the-internet-...
I do not remember the exact moment because i watched it long ago, but in this video[0] by Pangea software about their games and history, it is mentioned that it was Steve Jobs himself that suggested the low prices. Initially they wanted to use similar prices to gameboy games.
There are some pretty good $1 apps out there, while at the same time there are dumb apps written in electron demanding I sign up for a $10+/month subscription for the privilege of putting my 10kb text files in their cloud instead of Dropbox...
It used to be impossible to beat pixel-perfect obsessively polished Aqua UI. You just had to use native Cocoa, because everything else looked like a cheap knock-off. Now you can slap border-radius + box-shadow and your widgets will look the same or better than Apple's current confused half-iOS design.
And this is a mentality that I see very often. When I read software reviews they go like: „xyz is a pretty decent piece of software, but at 50 Euros it is a rather expensive piece.“ WTF.
Maybe it’s a sign that personal computing is now about as interesting as other appliances. Things are mature.
The author has posted a follow-up here: http://morrick.me/archives/9523
I think it's that we stopped building, promoting, and improving new public protocols. And by "we" I mean "tech giants". There should be an open, widely-used social layer atop the Web, supported by everything under the sun. Why isn't there? Facebook and Google and Twitter have infinity money (thanks to advertising and/or VC) to throw at free products that lock in users, instead. Why's chat more silo'd now than ever? Similar reason, deep pockets with large marketing & advertising budgets pushing products that deliberately don't interoperate well. Et cetera.
We couldn't invent email today. I'm not even sure we could invent the Web, anymore. For values of "invent" that include getting enough support for something to really be a standard that's widely used, not just a few white papers and something a few enthusiasts use, doomed to obscurity. This state of things is not because we ran out of things that would make excellent, useful protocols.
Things werent going great with Buzz, Salmon, OpenSocial. But they were teething, finding themselves, evolving. That all got killed by one vain executive, who murdered an explorable interconnected future for a cheapass Facebook knock-off.
It's sad af it takes a massive name to drive big change, to get people hyped. There's plenty of interesting-ish projects about that could, that deserve uptake, usage, advancement. Maybe BlueSky will have technics sufficiently capable to match & drive a new interconnected angle. Im so tired of the ongoing re-silo-ization of all computing.
Web sites with fantastic content are still out there. We just can't find them because Google search doesn't list them anymore and web sites don't link to each other.
But what I don't understand is, why are people so upset about it? It's not the world's only RSS client.
There were a few reasons I could think of why people were upset:
Reader started in the era of when Google was generous. It gave away 1GB of email storage and free Email service for your own domain. It felt like a betrayal to end the service like this. There was the same reaction when Google announced the end of Gsuite legacy free edition.
Finally, Google essentially declared to the entire world that RSS was dead. Although Google claimed that usage of Reader had fallen, the users who continued to use it do get values from it and thus they very much disagree with that assessment. It wasn't like Google was a small business that had fallen on hard time.
It's not just that they aren't promoting open protocols—they're competing against them at a cost to the user of $0.00, which completely sucks all the air out of the room, even for open source contributors.
I think that still is true and applies fully. But we have seen few inspiring & motivational changes in computing in the last decade. Personal computing has been outmoded by profitable/cloudy Service-As-A-Software-Substitute (SaSS) systems. I don't think we have a lot evidence one way or another- it's just been greed & taking & ego that's made competing against cooperation/inter-networking/protocols be de-jure accepted. There just haven't been many efforts that have tried to see if improving the world has returns, creates good. These companies, as you say, are competing against what I see as basic, moral goodness & civil open society. But for a while these companies understood there was something to be gained by begetting rich & healthy online systems.
That pretense that these companies care in the least, most modest ways about anything outside their firewalls has been abandoned. The G+ era was the start of a new era of not giving a shit, thinking only of yourself, and there's been few left to hold up a light, to present a moral charge, there's been such absence of evidence after this dry up that doing the right thing, letting what you love free, can be good. Except, perhaps, in the more covert forms of tech. Projects like Kubernetes are undercurrents, demonstrating that the techies love taking advantages of & growing healthy technical ecosystems, love pushing the bounds, love creating value because they can. But in terms of consumer-facing technology, we've seen very little that matches the well accepted, reasoned, & hoped for course that tech like OpenSocial, Buzz, Salmon was trying to key up.
Recently, ActiviyStreams, ActivityPub, & other social web protocols have been doing ok. But we're still seeing only a very limited, unexpanding set of adopters. There hasn't been the kind of ultra-wide-scale adoption that tech like RSS/Atom had going, had pushing it forward. It's out there, but it's niche. And 100%, it's in many ways because content providers & platform providers both are trying to trump the social-benefit of open protocols, are desperate to capture the value themselves, while giving nothing away to a broader ecosystem.
I think this is where FF could have done something big, and maybe even saved themselves from irrelevance. Unfortunately, the time to start that was probably ten years ago, and if anything they've moved away from that sort of thing. Not sure it'd help, now, even if they changed course.
BTW, I set up an instance of Apache Wave for some family and friends and no one was really that interested in using it. More excitement when it was a Google service, to your point that changes often rely on a “massive name.”
And if you feel the impulse to list the ways that IRC is superior to slack, you are likely to just illustrate the mismatch between features people love to talk about or implement and features that drive adoption and retention. The OSS community is somewhere between incompetence and active hostility when it comes to good UIs, for example.
(edit: as an example, see the sister comment and its complaint about „more gloss-coated shit-consumerism“)
Chat happens to be the worst possible example for this idea that bad technology is winning against OSS or open protocols by throwing money into advertisement and fooling users that are just too stupid to understand. Besides slack, Signal and Telegram, two entities completely unknown by consumers and with budgets that round to zero took over that highly competitive market.
> The OSS community is somewhere between incompetence and active hostility when it comes to good UIs, for example.
Mostly true! But commercial clients for open protocols are A Thing, for the tiny handful of user-facing protocols that haven't been sent toward a slow, obscure death. I'm writing this from a (largely) closed-source Web browser. I also have a closed-source email client open.
Unfortunately, of the dozens trying, ALL are contaminated with performance hindering Web3 features. Nobody just wants to make an open social protocol. They want it to have a coin built right into it, mandatory anonymity routing, immutable scuttlebutt logs, DHT-clogging random access to individuals 256kb blocks of any file, etc.
And mobile apps don't even get.discussed till the project is half dead already.
I think Tox has the most potential of anything out there now and could possibly be usable if they can get the mobile bandwidth down. Matrix also has potential.
Yggdrasil is a great component but not useful without applications to run on it.
IETF?
It's not just open source. Personal software in general is failing. Failing to become interpersonal. But if we simply glue in centralized services (how we typically connect), we begin walking down a vulgar path of anti-personalization/de-personalization. New ways must emerge to keep personal software relevant (imho).
Ironically Chrome got its start as an Apple WebKit fork, but they invested a lot in it from then.
Anyway. People just write it in Electron, or just go for web app directly. It's like Java of yesteryear - "write once, run anywhere, but never good".
We can fight it or embrace it, I'm afraid.
Discord came out of nowhere and now owning its space.
The one that has stagnated is GMail I guess; I think they have too much legacy stuff that they cannot cut, so it’s hard to innovate.
It's amazing what they have achieved within that constrained platform but I was using vector graphics tools, image editors, word processors and spreadsheets in the eighties and nineties.
Some things have changed of course, a wider range of formats, easier collaboration online but there is nothing fundamentally new about this stuff.
Yes, of course you could do all these these things in the 80s, but the added features today are far beyond what was possible then
Did you read the story yesterday on the demise of Freshmeat[1]? User bloopernova started a great thread on how exciting it was to watch that site for new software.
Before that time, in the 70s and 80s, there were clubs where people would meet up to talk about computers and software with each other. A new version of Google Docs is about 1% as amazing as getting Electric Pencil running on your TRS-80 or Syncalc going on your Atari 800.
“The platform is the application”, in a sense. The last piece of software that really truly changed my life was Waze. And that software couldn’t have been desktop software. The next piece was one of Google Translate and/or the many language translation apps in the App Store, including the camera-based ones. Again, that’s software that if it was useful at all would have a very different level of usefulness as desktop software.
At some point I suspect AI will actually become useful, and that might - MIGHT - open up new desktop software categories. But we aren’t there yet.
- built in (Finder, Activity Monitor, Reminders)
- macOS native but get little benefit from that other than existing before Electron (iTerm, Tower but even that is an ancient unmaintained version because I’m not sold on the subscription model)
- Some Chromium thing, mostly Electron (~90% of my daily usage if not more)
And I know this will vary by user but… I suspect that breakdown is similar for anyone using more than built-ins. I love the idea of “Mac-assed Mac apps”[1], but there just… aren’t many and they’re either very specialized (Panic stuff and Pixelmator being prominent examples) or very minimal and of unpredictable quality (the vast majority of the Mac App Store). Though this is a good reminder that I want to buy Paw[2] even though I currently don’t have much use for it.
But like… being real, the issue isn’t that native macOS UI toolkits are bad in some way. The issue is that nobody is developing platform-specific desktop UIs at all, give or take first parties and marginalia. If anything, Linux is healthier in this respect than anything else, and that’s because it’s already a hodgepodge of community efforts.
1: https://daringfireball.net/linked/2020/03/20/mac-assed-mac-a...
The main reason I am not interested in indie development is that (1) it is very difficult to sustain in the long run and (2) I don't want to invest a lot of time to learn skills that work only in a closed env
Also, I think most necessary apps for the desktop are already there - I cannot think of anything new that would be a must have. I could say the same for mobile apps but many of them are not apps, they are a window into a service once can subscribe to. So in that sense they are new
Mimestream is the mail best app I’ve used in decades (gmail only). Id pay the creators $100 or more for a license if he charged.
TablePlus is decent.
Obsidian for notes.
Monodraw for ascii drawings.
OmniFocus is great (if you're into that kind of task-tracking/GSD tool)
I personally like it because it feels really snappy and lightweight, in terms of UI and performance.
I filed feature requests for the missing APIs when I worked at Google (not on the Gmail team), but I never saw any sign up uptake unfortunately.
https://blog.helftone.com/monodraw-maintenance-mode/
Monodraw was released in May 2015, about three and a half years ago. Unfortunately, it did not achieve commercial success and it meant I had to get a job.
People can't just not update their computers anymore. And when you do, old software stops working. So you have to update that, too, often upgrading to a new version and paying for it (or else already being on a subscription plan).
This means that a large part of your software budget is eaten up by the overhead of just keeping up to date.
Relatedly, SaaS/subscription pricing means software companies are less incentivized to make new software versions enticing. And the hassle of switching subscriptions means transaction costs and lock-in. Consumers aren't likely to switch apps and newer versions of apps won't likely get any switchers because their improvements are incremental at best. So what's the business proposition for a new first-class desktop application?
This is very different than what I remember from when Mac OS X was introduced. I remember getting big fat books from Big Nerd Ranch and having wonderful documentation to me as I learned the basics of Objective-C and Cocoa.
I've been trying to get back to desktop app development after more than 10 years doing web stuff, and if feels like a totally different place. Heck, there are stub pages at Apple that only list the function signatures and nothing more?! WTF! There are no recent books about developing for macOS.
Two other Mac-native tools that I really enjoy using every day: GitUp (http://www.gitup.co/) and Postico (https://eggerapps.at/postico/).
It works together very well with Secretive[1] which allows you to keep your SSH key in your Mac’s Secure Enclave and require Touch ID to use them, as well as displaying a notification showing what’s trying to access keys. It can also store keys in hardware dongles (like YubiKeys) and has a nice native UI for managing multiple keys.
[0]: https://git-fork.com/ [1]: https://github.com/maxgoedjen/secretive
"It looks… just like Apple Mail."
"Yes"
"… why?"
This allows it to function similarly to the Gmail web app while also being a good citizen of the Mac desktop and being much more lightweight.
A lot of the unexpected odd integrations of Gmail and an IMAP email client disappear, most notably including Search, which has never seemed to work quite right in Apple Mail w/ Google services.
I should of course just bail on Google, especially since they're discontinuing my previous freebie G-Suite account, but, well, you know.
It doesn’t make sense to have a new app for Django development since there’s so much stuff that happens “under the hood”.
Is this ecosystem stagnant or mature?
You say tomayto I say tomarto
Is this possible? If I remember back to the 1980s when much of my works was done with Emacs, Makefiles, Common Lisp, and C/C++, then I can imagine a world today where I would still get paid to just use those tools, these tools were only used to produce non-executable digital content, but we had fresh digital entertainment always available. Can this all be extrapolated out to 500 years in the future? I could live with it if everything was secure, efficient, and inexpensive.
Off the top of my head, these apps are fairly recent and pretty great.
- OBS (obsproject.com)
- Visual Studio Code
- Tower (git-tower.com)
- Timing (timingapp.com)VS Code works incredible on MacOS despite not being native.
It's a bit of a dog on my machine. I only use it for one particular plugin.
Why build native instead of cross platform. The costs are significantly higher and you'll lose out on market share. See figma VS sketch.
Things like macheist we're great back in the day because you knew you were getting (reasonable) quality but most importantly safe apps. The closest thing now is setapp. I don't subscribe to it but it sure is useful as a first port of call for finding an app that does what I'm looking for thats probably been through some sort of quality control. I've found a few apps through there.
Apps I use daily and install instantly on any mac: AppCleaner, AppPolice, little ipsum (random strings of lorum impsum), colorslurp (colour picker), itsycal (calendar in your toolbar) disk inventory x, betterSnapTool (mimics window snapping from mac but lets you drag and drop to custom sizes) Rocket for emojis, and licecap for gif screen recording
CleanShotX, Viscocity, Tunesify, and Pixelmator.
>Remember when I was pointing out that iPads were becoming incredibly powerful machines but with an OS that wasn’t capable of taking full advantage of that amazing hardware? Apple has managed to put the Mac in a similar position, in my opinion. The new 14-inch and 16-inch M1 Pro/Max MacBook Pros are brutally performant and energy-efficient machines, but with an operating system that instead of aging well has been rendered immature by too many haphazard plastic surgeries.
Such as? Because all my pro apps still work: Photoshop and Creative Suite (and Affinity versions of the same), Final Cut Pro, Resolve, and Premiere, Logic, Pro Tools, Live, Cubase, and co, and so on.
In fact, thanks to M1, their recent versions work better and faster than ever.
I’d recommend iina over vlc for everyday use. Keep vlc though for all the wierd stuff.
serial 2 for console/hw needs
iterm2
rectangle
deliveries from junecloud
calculator/textedit
little snitch
karabiner elements
homebrew
tables plus
mongodb compass beta (db client)
negative (pdf dark mode)
tailscale
medis (redis gui)
lanscan
google earth pro
davinci resolve studio
fcp/logic/motion/compressor
xcode
contrast.app (picker/a11y)
betterDummy (screen res)
all the beta/dev/browser versions
midiview
I have a few assorted goalposts:
* Where are the AR glasses? Google dropped the ball.
* I need to be able wave my hand to send things to other people's eyes.
* Most games still can't play at 60 fps, which is 2006-era tech.
* VR headsets are still poor quality.
* Cloud gaming still can't achieve < 1ms input delay. What's up with that? How am I going to post a multi-speedrun where a program randomly switches between game tabs?
* Interfaces in general are slow. There needs to be as little delay as possible between my thoughts/actions and the computer's response.
* Why can't an iPad simulate the sensation of texture? Tracing lines in sand with my finger on my phone was a cool webgl tech demo 10 years ago. Now I want to feel the sand.
* Self-driving cars still don't work.
$$$$
The laws of physics are a hard pill to swallow. Unless you want a datacenter at every street corner, this is not gonna happen.
Macs in the 2000's had productivity apps that were needed, fun to discover & to try out:
* Growl for notifications
* AppFresh for automatic downloads
* Quicksilver for file/app search
All of which has been solved by the OS.
Web 2.0 solved connecting with friends and strangers around the world, as well as many other problems, by FAANG+.
Web 3.0/VR will be 2.0 on steroids, which too eventually will get boring.
As big of a nerd I am, computation I'm finding can only go so far in satisfaction, thus eventually "stagnate."
> Right now, it feels a little bit like the three main MacOS app frameworks are floating in unanchored space: AppKit is not the future, Catalyst is not ready to replace it, and using SwiftUI remains a long way off for big, complicated apps.
I think OmniFocus counts as a big and complicated app and it's being rewritten using SwiftUI: https://www.omnigroup.com/blog/omni-roadmap-2022
I seem to remember they were laying people off a couple of years ago.
This is why I cannot take MAUI's decision to use Catalyist on the Mac as anything other than taking shortcuts to port Xamarin.iOS to the Mac, not even VS for Mac rewrite is using it.
You're kidding, right?
In its nearly 40 year history, the Mac has never sold better; Apple has had many consecutive record quarters since the start of the pandemic.
It's obviously not just about price and consumers; several companies bought boatloads of Macs for their developers:
"Uber, Twitter among companies giving engineers 'fully loaded' M1 Max MacBook Pro": https://appleinsider.com/articles/21/11/08/uber-twitter-amon...
iOS has 50% market share in the US. It makes sense why Uber and Twitter (a pittance of desktop users) buys them - they have to.
case in point: I have blender and five 3d model viewers installed but still often get zilch options when I try to open a model from the web.
image you could click on an image or object and being offered a myriad of actions already installed or available on the app store.
[1] brew install --cask cog
Edit: I'm not affiliated with the project in any way.
I think I've actually checked Cog before, but Wikipedia says the last build was 10 years ago, so I passed. Today I checked github and it's very active, great to know!!
Modern browsers and web backends makes it so much faster to implement functionality that takes forever to implement in a native Desktop app. People who are "native app" envangelists tend to completely ignore this major difference.
e.g. "Auto Layout" in Swift is just a bare bones reimplementation of what we have in modern css with flexbox and grid.
also: it is much easier to collaborate with other people when you can just send them a link instead of "Word doc version 2, final, really final".
> "Auto Layout" in Swift is just a bare bones reimplementation of what we have
> in modern css with flexbox and grid.
How to say "I have no idea about Auto Layout of Swift UI" without saying it.
Not to mention that Auto Layout was introduced with OS X 10.7 Lion in2011 and iOS6 in 2012. CSS grid appeared in 2017 and viable support for flexbox around 2015. Interesting how they managed to do a "bare bones reimplementation" of something a few years before that something even came to live. Especially when those mechanisms are not very similar to each other.
Auto Layout has it roots in Cassowary, and is constraints based, which neither CSS Grid or Flexbox are.People who never worked with native tech have no idea, how faster it is to do stuff on it, because you do not have to reinvent every small wheel and cog, unlike web tech.
E.g. navigation stack which iPhone OS/iOS had since the day one and React Native was/is struggling for years to have it. Or table views and reusable cells. When you add SwiftUI into the mix the "web evangelists" claims about web-tech superiority start to sound as credible as Russian propaganda.
I've been working with both stacks for years, and these nonsensical claims just make me sad.
Problem is a lot of devs only ever did web development and think this is “ok”.
Stagnation means not being experimented on by vendors. I’m happy with that.