Live data from Hacker News

Stop Building on Corporate-Controlled Languages

blog.deckc.hair

21–30 of 324 posts

Re: Stop Building on Corporate-Controlled Languages

#21

I don’t see the issue with using corporate backed languages. Java (the language, the core libraries, and the compiler, etc) are all GPL2. GoLang is BSD licensed, c#/dot net is some mix of MIT and a few others. So what’s the problem? There doesn’t appear to be any risk here.

Did you read the article? The author is concerned about spyware.

Re: Stop Building on Corporate-Controlled Languages

#22

Remember when programming languages were free? When your compiler/editor didn't call back to some corporation every time you compiled code? When our package managers weren't linked to data aggregators watching our every move? When we used free tools to build free software.

If you're building for a proprietary OS, then yes the tools sometimes aren't free - e.g. iOS development. However we can 100% use free tools to build free software running on a free OS, with the simplest example being C code compiled by GCC running on Linux.

Re: Stop Building on Corporate-Controlled Languages

#23
My response to the plea in this article is simply "No thanks." If Go gets that bad, I'd be happy to use an ungoogled fork of it, or migrate to another toolchain or language, or whatever needs to happen. But until then, I'm not going to preemptively switch ecosystems and banish technically good options from my tool belt because I have fears about what could happen.

I want production quality toolchain and runtimes. That's hard. Go has a high quality library of cryptographic functions. Hard. Go has a fast usermode thread scheduler with preemption on many platforms. Hard. Go has an incredibly low latency GC that doesn't need much tuning for most workloads. Very hard. Some of those hard solutions are self-inflicted by the choices made in the language, but the fact that they are solved so well is what makes it valuable. A mediocre implementation of Go would have less value. A mediocre implementation of a random language with a tiny ecosystem by comparison would be even harder of a sell.

I am by no means trying to say that Nim is low quality or not interesting for anyone. In fact, I actually think Nim is cool. It is not the only other smaller programming language I like. I have a strong affection for Zig as well. There are unique properties that make these languages desirable. Zig comptime is really cool for example. I like stuff like this.

But: I also think Go is a great piece of production-quality software. I know many people hate the language now, especially now that the honeymoon has thoroughly ended. But I still like it. I feel highly productive in it, the ecosystem is good, and at the end of the day, I know I can make reliable and fast software in it.

Corporate control is a shame, but the truth is that corporate control is not the problem at all. The problem is funding. Because anyone can fork Go, but can you pay maintainers? Can you run the CI, the website and playground, host the CDN with the downloads? Etc. Sometimes the answer is yes, especially with how much GitHub subsidizes a lot of those things, but in general the answer is no.

"Corporate control" is not the problem itself. Governance is just an outwardly visible consequence. The true control comes from maintainership and stewardship. Because if nobody is stepping up to the plate to take that role, then whoever is doing it today effectively has control over the project.

Re: Stop Building on Corporate-Controlled Languages

#24

I don’t see the issue with using corporate backed languages. Java (the language, the core libraries, and the compiler, etc) are all GPL2. GoLang is BSD licensed, c#/dot net is some mix of MIT and a few others. So what’s the problem? There doesn’t appear to be any risk here.

There's some risk. A language and it's tooling can be GPL or BSD-licensed, but if it's corporate-controlled, the following things can happen:

- The corp still doesn't need to take direction, nor input, nor patches from the community.

- The corp can steer the language and frameworks wherever they want. Sure, you may be able to then fork it, but is that fork going to gain any traction? Probably not.

And it definitely will not work on that corp's Official Operating System platform.

Re: Stop Building on Corporate-Controlled Languages

#26
I never liked these arguments.. We can’t live without some trust, it is simply impossible the same way we can’t avoid all risks in life. Putting our head in the sand doesn’t solve anything.

As for the concrete languages mentioned, Java is probably the safest bet out of managed languages, not only does it have a proper specification (both the language and the JVM), it can be carried forward by multiple companies single-handedly, it is that critical piece of infrastructure. Also, even from an incentives point it doesn’t make sense to put backdoors or whatever, as they themselves use it very heavily, so each big company in effect “checking” the others.

Re: Stop Building on Corporate-Controlled Languages

#27

Open source projects are under financed and their maintainers are overwhelmed. I would rather read proposed solutions about that because that seems like the more important problem.

The economics of independently lead open source is still a problem with no solutions in sight. The economics for corporate controlled open source are quite clear. It's a cost saver for corporations to open source solutions to common problems. This gets others to buy in, which spreads maintenance costs and ensures that no one is seriously winning in the domain of the project. Essentially de-risking cost/benefits in th…

I’d also like to throw another counter example out. C# and Typescript from Microsoft are both excellent languages and are led by Anders Hejlsberg.

Re: Stop Building on Corporate-Controlled Languages

#28
I feel this way about TypeScript.

That said, I see its value. We use it at my company.

TypeScript is open-source but created and (I think) pseudo-owned by Microsoft, which has had terrible ethics over the years, including the 3 E's [1]

[1]

""Embrace, extend, and extinguish" (EEE),[1] also known as "embrace, extend, and exterminate",[2] is a phrase that the U.S. Department of Justice found[3] that was used internally by Microsoft[4] to describe its strategy for entering product categories involving widely used standards, extending those standards with proprietary capabilities, and then using those differences in order to strongly disadvantage its competitors."

https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguis...

Re: Stop Building on Corporate-Controlled Languages

#29
post #5
post #3

Terrible arguments. Golang and Android Studio are both open source, and you could compile them yourself. Telemetry can be turned off in Android Studio, and you can use stuff like flatpaks to isolate the software from your system, and completely turn off networking permissions if you don't trust the settings.

Also, you end up with very similar questions for non-corporate languages like Nim because you don't really know who created the software, what their motives might be, and whether the binaries you are receiving are really what the source code says it is. Reproducible builds help, but once you are going down this path of verifying instead of trusting, then it doesn't really matter who built the software.

I have seen this perspective a lot in government and adjacent entities. For them, commercial software and corporate open source has a clear financial motive. If they can't identify why a project exists and continues to receive support, they see a security risk, either via direct compromise or project abandonment and the associated supply chain rot.

Re: Stop Building on Corporate-Controlled Languages

#30

I don’t see the issue with using corporate backed languages. Java (the language, the core libraries, and the compiler, etc) are all GPL2. GoLang is BSD licensed, c#/dot net is some mix of MIT and a few others. So what’s the problem? There doesn’t appear to be any risk here.

That was my first thought - Java has been corporate controlled since at least 1999 when I started using it and... so far none of the Bad Things that were predicted have happened to it.
Post reply on HN