No Aesthetic Sense

You may think "Mark, you're exaggerating when you say:"

In order to run Windows, you need to have a total lack of aesthetic sense, a willingness to put up with "updates" that brick your computer, a tolerance for Microsoft-Quality™ software ("let's add more buttons to a ribbon bar and ship it!"), and a willingness to use junk hardware that consumes twice as much power as needed and makes noise all the time.
me, yesterday

And then immediately an argument broke out on Mastodon where someone (I'll not shame him here) claims aesthetics are unnecessary and ruining the world, artists are frauds, a computer held together with zip-ties is good, and runs better than a pretty, well-built machine (what's EM interference? what's noise? why doesn't Windows wifi work? He does not know.)

These people exist, and are the majority of the customers of Microsoft and other artistically-void software companies.

And I have to point back to Steve Jobs, in 1995, just before NeXT got "acquired" by Apple and immediately took over:

Steve Jobs-1995

The Stubbornness of Windows Users

What we've got here is, a total failure to understand the purpose of the device or the OS.

A somewhat long sidebar here, state of the world in desktop operating systems:

  • Windows: Redmond still ships a garbage toy OS which is the bastard child of VMS and MS-DOS, that costs a lot of money, but runs on cheap (but not sub-$200) computers, many of which come in every shape and size. In order to run Windows, you need to have a total lack of aesthetic sense, a willingness to put up with "updates" that brick your computer, a tolerance for Microsoft-Quality™ software ("let's add more buttons to a ribbon bar and ship it!"), and a willingness to use junk hardware that consumes twice as much power as needed and makes noise all the time.
    Slightly positive, the graphics and sound systems work, and you get all the games; if that's all you're after, though, a PS4 or Xbox OnePlus+Ultra/190 (whatever the name is) is a better deal. You can generally browse the web on Windows, and you'll get some viruses and ransomware but it works. Dev tools on Windows are expensive and shitty, so in order to get real dev work done, Redmond now also ships Linux inside Windows. My bias shows, sure: I've never owned a Microsoft product in my life, and I'd eat broken glass before doing so, but I've had to use them in some workplaces. Dire, but minimally functional.

  • Linux: Distros ship a garbage OS for free that runs on garbage computers, including sub-$200 microcontrollers. In order to run Linux, you need to be masochistic, technically educated, not have any need for desktop apps, sound support, graphics support, games (some Steam stuff now works, sometimes, on higher-end machines!). As a server or microcontroller OS, or a very nerdy dev machine (emacs and C), it's adequate and somewhat supported. Only insane people use Linux as a working desktop. I say that as someone who ran it as a working desktop for a decade, and I loathed it.

  • FreeBSD, OpenBSD, NetBSD: Great server OS's, that ship for free and run on slightly more demanding computers. Only the most technical nerds will even know that these exist. Software, you basically write your own or port from other POSIX systems, which half the time is written for broken Linux APIs and so doesn't work right. On the bright side, they have such limited sound and graphics driver support that if you do have compatible hardware, you'll have working sound and graphics. If Mac OS X didn't exist, I'd be using FreeBSD.

  • Haiku (aka BeOS): Seriously, they shipped a working beta, and it seems nice. Great desktop, graphics and sound support if you're on compatible hardware. Down side, minimal software for it, and if you want to write your own the APIs are in C++. Fuck that, no. But… I do like BeOS, probably tolerable as a nerdy dev computer.

  • Mac OS X (or "tacOS", er, "macOS" as they now style it): The last of the UNIX® workstation OS's, that only runs on expensive devices Apple makes (it's possible to "Hackintosh" a garbage computer to run Mac OS X, but half the services won't work; don't do it unless you're nerdier than a FreeBSD user). Everything actually fucking works. Sound has no latency, and always works. Graphics, aside from low-end devices having a shitty Intel GPU, always works; I'm unhappy with them deprecating OpenGL and going with Metal instead of Vulkan, but Vulkan libraries have been ported. It's fine.
    There are games, Elder Scrolls Online and World of Warcraft in particular, and Steam's full of Mac games. Desktop applications on the Mac are adequate to amazing; there's no "you must use this one shitty program because it's all we've got" like GIMP on Linux. As a dev machine, it's unmatched. I don't touch Xcode unless I have to anymore, but that's what you use to make iOS and Mac apps, and it has some good dev tools like Xcode Server.

Of course, I say that, and:

libswiftcore-crash Good job, Apple, ship it.

So, end sidebar, the reason you buy Mac hardware is to run Mac OS X, the least bad hardware/software combination available in this horrible century.

What you'd use a Mac Mini for is what you'd use an iMac for, but cheaper and often hidden away:

  • Switch to the Mac from another OS. Steal the keyboard and screen from your garbage computer. You may need some dongles to convert the cables. Learn how to use a Mac. Buy something better when you need it, and re-sell the Mini, which will still be worth 2/3 or more of the original price.

  • Run a multimedia display. Put a playlist of music, photos, or videos on one or a bunch of LCD panels; you can't do this with a Linux microcontroller like Peter suggests, because their graphics and sound don't work worth a fuck. Just try playing a random folder of media on Linux, you'll throw it through the window. It's worth $800 to not fight with Linux.

  • Run a build farm for Xcode Server. Probably need a mid-priced Mini for this, but speed won't matter much because it's an invisible server. It can't be rack-mounted, because not every workplace has a machine room with racks, they just need a little device in some (well-ventilated) cupboard to support the developers.

  • Streaming audio, video, or other server. Put this in a colo farm with a static IP, and deliver whatever media you want. Your podcast and web site has to live somewhere. Now, you can do that with AWS/EC2 and other shared servers, much cheaper, but you don't control the computer, they mostly run Linux (ugh), and often you've written software for the Mac.
    I have an old Mini at colo that runs Minecraft, some file shares, holds backups, used to run Xcode builds but I don't need that now, sometimes runs one-off networking services I want to try out. I may upgrade to a new one, but my needs aren't quite as heavy on it as they were. Invalidstream is currently run from an old Mac pro, but I think he'd be fine on a higher-end Mini now.

  • Literally any other use that doesn't require using it on the move, or extremely heavy CPU or GPU loads. Not a top-of-the-line gaming, Photoshop, or movie editing device by itself, but an external GPU could put it on par with an iMac, maybe even an iMac Pro for some jobs. Probably not a stage DJ device, there they'd use a MacBook Air or even an iPad, but ideal for sticking in an audio booth and doing podcast recording and mixing. Unlike a garbage computer, you can be in the room with a Mini and not be blasted off the air by the overheating fans and clicking drives, and unlike a MacBook it has enough ports.

Most of those tasks require it to be small, quiet, and still attractive if it is visible.

The $799 base model is for only the most minimal uses. For $1,599, you can get:

3.2GHz 6‑core 8th‑generation Intel Core i7 (Turbo Boost up to 4.6GHz)
8GB 2666MHz DDR4
Intel UHD Graphics 630
512GB SSD storage
10 Gigabit Ethernet (Nbase-T Ethernet with support for 1Gb, 2.5Gb, 5Gb, and 10Gb Ethernet using RJ‑45 connector)

That seems like a reasonable Mac workstation, if it had more RAM. +$200 to get 16GB RAM is OK, +$600 to get 32GB RAM is overpriced, +$1400 for 64GB is "bend over and squeal like a pig". You can get 64GB of the same RAM for under $500, and there's a Snazzy Labs RAM Upgrade Tutorial and Teardown; the disassembly doesn't look fun, but worth doing if you're going to use it as a server. A casual user can live on somewhat less RAM with the Apple RAM tax.

lain-s1e3-open navi

Windows and Linux users, people who've only used garbage computers, are confused by Apple's attitude on pricing, upgrades, and repairs because they've never thought about non-garbage computing.

Apple doesn't price based on hardware costs (except for RAM, which they tax 50-300% over cost), but on where it fits in a Portability/Power chart, starting at $1000, because you're buying "machine that runs Mac OS X", not "random collection of parts that does not run Mac OS X". You'll never see Apple micro-adjust prices day to day as part prices or exchange rates change, because it has nothing to do with that.

If you want to upgrade an Apple device, other than RAM in some models, you sell it at a high resale value and buy a better one. Garbage computers are useless in a couple years, cost more to replace parts than they're worth, and have no resale value at all.

If you want to repair an Apple device, it's either free for as long as your AppleCare lasts, or $100 in most cases. Don't keep open containers of liquid on your desk (*), don't abuse your expensive hardware, and the repair isn't a problem (notably, the same guy at Snazzy Labs fucked up his iMac Pro and Apple unsurprisingly told him to go piss up a rope).

*: I wanted to link in the atp.fm episodes where John warns about this, and then gets to say "I told you so", but I can't find them with obvious keywords.

Windows Schadenfreude

After my recent woes with iOS updates (and a completely trivial Mojave update), but always saved by backups (I eventually found my iTunes backup password in my old journal, and put it in 1Password), I sympathize, but also laugh in their direction:

NEVER let a system auto-update. ALWAYS have backups.

Anyone who lets their OS or software update without backing up first, is asking to have their files deleted. Anyone who doesn't maintain a couple backups, with at least one offsite, is asking to have their files deleted. I often say people don't learn about backups until after their first catastrophic data loss, and sometimes not then, but you can beat the curve and learn first.

I use a daily cloud backup, and a weekly to monthly full-disk backup with SuperDuper!. Many people like Time Machine, it doesn't fit my workflow well, but it's a good tool for non-technical users.

You may be thinking, "I don't use a Mac!", but the advice is the same for other (lesser) computers, and you need it more. Only the specific apps for backup will differ. I'm looking for recommendations.

Non-Apple Development: Does It Exist?

By no means the first time I've seen this sentiment:

Still interesting to see people talking passionately about the Open Web and how bad silos are (which is good)
whilst simultaneously linking only to Apple things and app-locked things in general; the web is still here and
it damned sure isn’t exclusive to Apple and your phone.
@simonwoods

The thing is, Android, Linux, & Windows devs don't step up and produce good apps or attractive web sites, so what else would anyone link to?

I presume most of the non-Microsoft-employed Windows devs are in enterprise, doing something awful with SAP or Excel or Outlook; I'm not really familiar with their universe, but they certainly don't make a lot of nice end-user software, and they don't hang out on any obvious nerd sites. Are they ashamed to admit what they do? Do they not have Internet access? That 95% of the desktop computer market has a nearly invisible developer population is weird. There's some Windows game bros, eating C++ bugs and mostly being dicks to everyone, but they're not making end-user software (Coming soon: Call of Duty: Mind Mapping Edition!)

Linux devs do sometimes make end-user software, but it's unspeakably awful, like GIMP. Server-side, sure, there's plenty of systems, though I think not many people live and develop on it. My bias is admitted: I loathe Linux as though I were Edmond Dantès himself and Linux had imprisoned me (which in effect it did), and I have sworn eternal vengeance. But my impression is that most server software devs work on Macs, or rarely Windows, and use git or Docker uploads to get everything on Linux.

Android software is almost always made after a web or iOS prototype, and generally as an afterthought; nobody makes Android-first apps except basic system utilities like wallpaper-changers.

There is web-first stuff, including now cross-platform web tech, which could in theory be built on Linux or Windows; yet it seems that most end-user web devs making anything nice are, again, Mac users. If you have any aesthetic sense at all, if you want a nice UNIX environment but don't just work in emacs, it's the least terrible option.

There's an old joke,

"Never ask someone if they use a Mac. If they don't, don't embarrass them; if they do, they'll tell you."

This might be more true than it seems, maybe Mac nerds just talk about it constantly? But why don't others?

If you make end-user software for other platforms, I'd like to hear how, and why, and why it's so invisible?

Microsoft Says They'll Support Atom

Re Microsoft Acquires Github,

reddit AMA with Nat Friedman:

Developers are really particular about their setup, and choosing an editor is one of the most personal decisions a developer makes. Languages change, jobs change, you often get a new computer or upgrade your OS, but you usually pick an editor and grow with it for years. The last thing I would want to do is take that decision away from Atom users.
Atom is a fantastic editor with a healthy community, adoring fans, excellent design, and a promising foray into real-time collaboration. At Microsoft, we already use every editor from Atom to VS Code to Sublime to Vim, and we want developers to use any editor they prefer with GitHub.
So we will continue to develop and support both Atom and VS Code going forward.

Obviously, trusting Microsoft is how you get left in the desert staked out over an anthill without your editor of choice, but it's a little better to at least hear the new puppet CEO of Github commit to it.

Microsoft Acquires Github

On the one hand, Microsoft under Satya Nadella are… still evil, but less annoying about it than they were under Steve "Eats Kittens For Breakfast" Ballmer and Bill "Never Met Someone He Didn't Fuck Over" Gates. Satya just wants to rule the cloud and Office licensing, and seems somewhat aware that Windows alone is not suitable for that task, and that Microsoft's own programmers are mediocre at best.

On the other hand, watching FOSS nerds freak out at this has been amusing. Some will manage to move to self-hosting their own git servers again as people used to before Github centralized "decentralized version control". Remember how we all had our own Subversion and Mercurial servers (and Bitbucket if you wanted C-DVCS)? Good times are back. A lot of people are going to learn very hard lessons about backups, redundancy, and system administration.

On the gripping hand, Github owns Atom, and Microsoft also has VS Code based on Electron; are they going to fuck up my IDE of choice or even "integrate" it into VS Code? Ugh. VS Code is too much like coding in Eclipse for my taste, no fun.

Update 2018-06-04 from Atom slack:

lee-dohm: I just want to let everyone know that we're here, we're ok, and that as soon as I have any news to share that I'll bring it here to all of you :grinning:
Just to let everyone know, I've been given assurances that Atom remains key to GitHub. Our product roadmap is
set and the team will continue all of their work.

Windows

"Counterfeit", Microsoft says, about a disk made from their own free downloads and only usable on a machine already infected with Genuine Windows®.

This bullshit is why you shouldn't use Windows, no matter how many non-kitten-eating announcements and events Satya Nadella puts on to show that he's not Steve Ballmer. Sooner or later, Microsofties will always show their true nature and eat a kitten.

Paint No More

Microsoft is deprecating MS Paint. I'm never been a Windows, but on the few times I've had one on a work desk, MS Paint was a cute, useful tool; BMP was a terrible format, but once it could save as PNG or JPG it was fine.

Update 2017-07-27: Paint isn't being killed, but sent to a farm upstate

I'd mock, but oddly OS X has never shipped with a real paint program. The closest is an Xcode sample project Sketch, which IIRC was shipped pre-installed at one time, and you can grab Xcode for free and build (you may have to open the project and set Deployment Target to your OS version, because it'll be too old). And Sketch is just a toy line-drawing program, not a pixel editor. You can sort of draw in Apple Notes now, but don't rely on that, I get terrible results and often lose those sketches.

Obviously, there's plenty of professional software, like GraphicConverter, Acorn, Pixelmator, Sketch - no relation?, Photoshop, etc. I miss Fractal Design Painter, but dislike the way Corel Painter went.

I'm not opposed to leaving this to independent developers, just surprised by Apple not Sherlocking a major application category.