7 ms·
I learnt to programme using Pascal on Mac Plus in 1988. I had my first job as a programmer in 1989 on Macs.... Until very recently I had a soft spot for Macs,
by worik 6y ago
I learnt to programme using Pascal on Mac Plus in 1988. I had my first job as a programmer in 1989 on Macs.... Until very recently I had a soft spot for Macs, I had not really used them since 1992
Recently getting a job developing for iOS in Swift I am amazed at how the developer experience has degraded. There is so much friction
In 1988 the documentation was very useful (Inside Macintosh - I think that was the name of the book). In 2020 Apple has decided that documentation is not really worth the effort. There is a cursory description of most APIs, not all, and no examples.
I had to get a license to develop software for the computer (paid for) sitting on my desk. I paid, but did not get the license. I swallowed that insult because if I make a fuss Apple could wipe out my employer at the stroke of a pen.
Accessing the file system is a constant hassle. Why so hard?
I cannot install emacs on my mac. (I probably could, but how hard am I going to struggle?)
Software that is free (as in GNU) is charged for in the App store. For example I cannot get my hands on a simple interface to diff anything like ediff.
The Xcode compiler/debugger has some serious bugs, and as far as I can tell Apple's policy is not to fix bugs in developer tools...
I am amazed that they care so little for those who are not quite the most important. If I could find a quality tablet that runs free software (are you listening Pine?) I would lobby hard to get off iOS.
- artificial 6y agoA lot has changed over the decades, security models and stances have traded a lot of flexibility. To smooth some of the rough edges of purely compiling from source take a look at homebrew (https://brew.sh/ https://brew.sh/). Spacemacs (https://www.spacemacs.org/ https://www.spacemacs.org/). I don’t develop desktop software any more and didn’t rush get into it on Mac, I’ve played around with swiftui a bit for iOS and server side (https://vapor.codes/ https://vapor.codes/). Perhaps the server side will scratch the itch?
- smoldesu 6y agoThese are stopgap solutions made to imitate aspects of other operating systems, and ultimately "break" the security model of the Mac. Apple knows the end-user is the weakest link in any security model, so by reducing the end-user's capabilities, you limit the risk they pose to the system. I'd rather just use an operating system that doesn't second-guess my choices in the first place.
- astrange 6y agoInstalling homebrew and emacs doesn't require turning off security. Maybe the one about "only run Apple signed software" - is that the default? I don't think it is.
- artificial 6y agoI don't think a 3rd party package manager "breaks" the security model. I'm pragmatic and that gives me a few choices about flexibility. I'm able to run the software I need locally (Adobe Products) and the shell is familiar and I've got the utilities I need and the languages to interact with them and I'm able to get what I need done. Thankfully my workflow isn't one that requires fighting the OS or tooling support. I spend my time fiddling with the server side of things and now that docker is a thing it's more application side than anything.
- salawat 6y agoThe non-existence of Free Software in iOS or Android (though F-droid has made it more accessible, but still at the cost of being to actually use your device to it's max without going out of your way to Root) is all because of the friction of development to facilitate a monetizability first model. Monetizability scales inversely with usability. The more usable something is by the end user, the less control a manufacturer has over what eventually gets done with it. Manufacturers have come to realize this, and are pushing hard to sell people on them knowing what is best for people so they can perpetuate user hostile design paradigms. It's sickening, and practically ensures the creation of a larger rift between those who eventilually learn to use computers to their max potential and those who don't. The mechanisms required to constrain the overall programming space to enable gatekeeping mechanisms necessarily set the barrier to entry higher than it would otherwise need to be set.
- brokenmachine 6y agoVery insightful. I've never thought of it in this way, but you're exactly correct. It's the same with glued-in batteries, dongles, etc. Monetizability scales inversely with usability.
- chrisseaton 6y ago> Accessing the file system is a constant hassle. Why so hard? Apple prioritise the user at the expense of the developer. I think this is the right balance. > I cannot install emacs on my Mac. What's stopping you? > Software that is free (as in GNU) is charged for in the App store. I don't think this is in conflict with the spirit of the GNU project? Paying for software distribution is fine in the eyes of the GNU project and their licence. What's your problem with it? > I am amazed that they care so little for those who are not quite the most important. Apple think normal users are the most important, not developers. I think they're probably right.
- smoldesu 6y agoLast month I heard people saying that Apple thinks normal users are more important than graphic designers, and the month before that I heard people claiming that we shouldn't worry about Parallels support because "normal users" don't need it. At this point, I'm not even convinced there is a normal user.
- chrisseaton 6y agoIf you prioritised developers over everyone else... who do you think the developers would be developing for?
- _qulr 6y agoIt's ironic that Apple is also preaching "Everyone Can Code". In other words, everyone is or can be a power user. Computers are becoming more and more essential to our lives, so deliberately dumbing them down is a disservice to everyone, who should be learning more not less about how computers work. My dad was in sales. My first exposure to computers was when he bought an Apple II way back in the day. He used VisiCalc, naturally, the "killer app" for the Apple II. Was he a "power user" or a "normal person"? I'd say both!
- chrisseaton 6y agoWhy does a coder have to be a 'power user'? Why can't the applications needed for coding be like any other normal application? You don't need to use esoteric stuff like emacs to be a coder.
- Someone 6y ago“Software that is free (as in GNU) is charged for in the App store” It can be argued that the App Store is incompatible with the GPL for other reasons (in spirit, if not in letter), but selling GPL software is allowed. https://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowMoney https://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowMon...: “Does the GPL allow me to sell copies of the program for money? (#DoesTheGPLAllowMoney) Yes, the GPL allows everyone to do this. The right to sell copies is part of the definition of free software. Except in one special situation, there is no limit on what price you can charge. (The one exception is the required written offer to provide source code that must accompany binary-only release.)”
- rayxi271828 6y ago> I cannot install emacs on my mac. (I probably could, but how hard am I going to struggle?) Eh? It's as simple as $ brew install emacs for me. I haven't come across any Emacs struggles that are Mac-specific?