Emacs unfortunately uses Emacs lisp, not common lisp or scheme.
Emacs unfortunately uses Emacs lisp, not common lisp or scheme.
Homebrew is fairly different from pip, cargo or npm in that only python developers use pip, only rust developers use cargo, etc. And those are mostly used to manage libraries, rather than executables.
Meanwhile, essentially everyone who uses the console uses homebrew regardless of what programming languages they might or might not use. I was making a joke about how good, useful and basically required homebrew is.
Homebrew might as well be default.
Crappy default package management.
What’s wrong with homebrew?
Am I missing something? Ctrl-f on https://en.m.wikipedia.org/wiki/List_of_Futurama_episodes doesnt turn up an episode with that name, and googling “they don’t think it be like it is but it do Futurama” turns up nothing interesting.
As an aside, what Futurama episode did they quote him in?
“They don’t think it be like it is, but it do” is originally a quote from a Yankees player, Oscar Gamble, about Yankees management in 1975.
It’s a sensible, grammatical construction in his native dialect, but is well remembered mostly because it isn’t very sensible in SAE.
That’s different, in that its grammatical in a dialect but not in Standard American English.
In particular, it’s using the ‘habitual be’. It’s saying something like “people don’t think it always is like it currently is, but it’s always like this.”
I don’t really think it’s better. They’re fine for coding.
They’re basically the corporate default because they’re easier for companies to buy and remotely administer, they’ve got good VPN software, good resale value, etc.
Inventing FUD is a bad look regardless of if you’re punching up or punching down. It’s not about who the target is. It’s that FUD is inherently dishonest, and being dishonest reflects poorly on your character.
The Linux community should try to be better than that. We shouldn’t stoop to Microsoft’s old level.
Admittedly, I haven’t set up a dual booted Linux machine in about a decade, so I don’t know if it’s gotten dramatically worse.
From his blog post:
While you may compile dialects into it, you still have to accept the fact that running code in the browser means running JavaScript. So being able to write that, free of any tooling, and free of any strong typing, is a blessing under the circumstances.
By his logic, JS linters are bad because they’re tooling that restricts your access to all of Javascript. But linters mean you don’t have to read PRs with a fine tooth comb to make sure there’s no footguns like using == instead of ===.
Also, you could use that same logic to advocate for writing JVM bytecode directly instead of Java/Kotlin/Scala/Clojure/etc.
The question is really whether tooling pays its way in terms of lower bug rates, code that’s easier for coworkers to read, and code that’s easier to reason about.
Companies generally want something they control, so they can lock your computer and wipe it remotely when they lay you off.
They care about your arch install because they don’t want it any more than your OS X install. Their arch install would be fine, but their JAMF controlled OS X install is probably much cheaper for them to manage, practically speaking.
I honestly think it has very little to do with the OS itself.
I think it’s more about practicalities and inertia - ordering laptops with the OS preinstalled, administering them, corporate VPN software, etc.
Both are great development OSs, but OS X is a better corporate OS.
OS X is literally a heavily modified version of FreeBSD with a very shiny GUI.
It ships with a terminal that has zsh installed by default, and homebrew is a decent package manager. You can write scripts for it in precisely the same way you do for Linux.
It being closed source means you can’t edit the OS itself. And there’s certainly a bunch of weird stuff that it does. But mastering linux and mastering OS X are pretty similar things.
Linux’s big competitive advantage in web servers is licensing. You don’t have to pay Apple a penny to start up a linux VM, and you don’t have to contractually run it on apple hardware.
In most modern languages, the difference in building your project on linux vs OS X is basically non-existant. I’ve spent nearly a decade working on backend web services on company MacBooks that get deployed to a linux EC2 instance. Running the server locally makes basically no difference.
Linux’s advantages are more legal than technical.
In software, it seems incredibly common for companies to give developers MacBooks and then have their software deployed on a linux VM in AWS.
It’s just one of the lower friction corporate options for software companies. The last time I used an institutionally managed linux computer was college.
There’s definitely tech jobs where you need to know linux. But there’s also a ton of jobs where you don’t have to know much of anything about it beyond common unix stuff, and where OS X specific knowledge is more useful.
Emacs is a bunch older than common lisp.
One of its more idiosyncratic design decisions was using dynamic scope, rather than lexical scope. They did add in per-file lexical scope, though.
It also just doesn’t implement a lot of common lisp’s standard library.