20 Comments

When there is no good alternative, take the tools and do good work that counters the negatives of the orgs that provide them.

Three people eating half as much meat as they used to collectively make more impact than one person going fully vegan. It's OK to be one of the three, especially as one step in a longer process.

Expand full comment

Fair enough, but what if there are alternatives? And what if there are alternatives but they are not quite as good/comfortable/easy to use? Where do we draw the line?

Expand full comment

There's no line. Just do better. I.e. in everything you do, try a little bit to do better than before.

Expand full comment

In a technical situation so thoroughly dominated by evil megacorps, it's going to be more or less impossible to avoid work that's sponsored / controlled by one you don't trust. As an example, lots of maintainers of the Linux kernel work for Intel and Google.

Since this is unavoidable, my feeling is that you should take it seriously and limit damage where possible — don't use a Chrome where you have the option to use a Firefox, say — but also be realistic. Short of a cure for capitalism-as-currently-arranged, you're not going to avoid the taint of bad actors and bad funding, even if you stick entirely to FOSS and/or relatively ethical small-shop vendors. It's necessary, to some large degree, to treat the entire field of software as compromised and act accordingly. Don't trust overmuch, know who's responsible for the work you're re-using and what agendas it actually feeds into, have contingency plans for when things go bad.

This is kind of a non-answer. I don't have a satisfying one.

Expand full comment

I also don't have a very good answer to this, but here's another point for consideration: in talks that Soumith Chintala, who ported PyTorch from Torch in Lua, and works at Facebook says, PyTorch is maintained by Facebook, but also by a consortium of universities and companies, including NVidia, Twitter, Berkeley, and CMU. Source: DeepLizard, which I'm currently following for my own PyTorch experiments, and the project's GitHub repo. https://deeplizard.com/learn/video/iTKbyFh-7GM https://github.com/pytorch/pytorch/graphs/contributors

Expand full comment

If a company publishes a tool, is that significantly different than allowing their engineers free time to contribute to a community project (e.g. Kafka)? Or take Linux... Linus isn't exactly known for being a nice guy, so should you stop using Linux? Microsoft has a long history of antipathy towards open source... should we be suspicious of VS Code? The examples of companies that *someone* objects to and yet that put out valuable free products is long. Oracle... Java. Google... Go. Apple... Swift.

I think it's important to distinguish between a company's business activities and their open-source/freely-distributed engineering activities, as they may reflect different values, priorities, and benefits. But I think everyone should obey their conscience; if any association whatsoever with a company is too distasteful to you, then don't do it. But that does come with a cost of being shut out of popular projects where people are willing to make a different trade-off.

Expand full comment

In a sense every dollar Facebook spends on Pytorch is not spend on any of there questionable endeavours and actually "makes the world a better place (tm)" in some tangible way.

Expand full comment

But I don't really think Facebook's uses of machine learning make the world a better place, and anything they do to create a broader ecosystem of machine learning and practice should probably be evaluated from that perspective.

Expand full comment

That's fair and I absolutely wouldn't argue that they do. But having Pytorch around makes it possible for a lot of people to do impactful work in ML in the first place; a lot of them doing things with good intentions as well as positive outcome. However, it is very hard to weigh that against Facebook as a whole and Facebook's use of AI in particular.

Expand full comment

Take the free tools and run!

I don't have a cohesive thought, but I'm thinking about a few things:

- I think behind the scenes, these companies are deliberately investing in open source as a reputation management strategy. This drives conversations like this one, so developers are saying "Facebook isn't that bad, they gave us ___!"

- I'm guessing this even more of a dilemma in the web developer community - just take a look at the results from the last SO Developer Survey for frameworks used: https://insights.stackoverflow.com/survey/2019#technology-_-web-frameworks (React.js>Facebook, Angular.js>Google).

- Outside of open source tools, I bet there are still bunches of people who deleted their Facebook but are still on Instagram every day. I don't think it's necessarily virtue signaling, but using another product that brings FB revenue in the same way (aka selling your data) isn't really going to make a difference. FB is probably actually using that information strategically to pivot investment to IG.

Expand full comment

Let's suppose that there are two types of people who work at companies: GOODPEEPS and BADPEEPS. The issue is that the bigger the company, the bigger the chance of BADPEEPS. These BADPEEPS make bad decisions, treat people badly and listen to horrible incentives. This will reflect badly on the company (rightly so).

This does not mean that within the company there are no GOODPEEPS who have something valuable to share. In many cases the GOODPEEPS have an opportunity that will not work in just any other company. Maybe even only at this one company to do that they do. To leave the company would be to perhaps abandon an open source project.

I would not feel bad about using an open source tool just because a subset of the authors (who might very well still be GOODPEEPS) work in a large company that has BADPEEPS. It's an inevitable fact that a project that is large and popular has BADPEEPS profiting near it.

That said, if you wonder what alternatives there are... as far as PyTorch/tensorflow are concerned ... you could wonder if you really need those two tools? Maybe scikit-learn is enough?

Expand full comment

Tech giants are the problem. Not the individual “bad peeps” (that’s a false dichotomy btw) who work inside them. These companies are capital driven which means they favor monopoly, wage suppression, user exploitation, and unethical military contracts. Using any products made by them contributes to their legitimacy. That’s not ideal when we’re trying to figure out how to avoid the oncoming tech dystopia we have been stumbling into.

Expand full comment

There's always mxnet which was originally backed by Amazon (also not great) but is by now part of the Apache eco system. However, the community around mxnet and consequently the available packages are much more limited than for either Pytorch or Tensorflow.

Expand full comment

It seems well intentioned and principled to abandon or refuse to use any tool, service, library, etc. that Facebook has had some part in. I get that. But I think painting such a black and white picture misses the mark. To refuse to use PyTorch because you don't trust Facebook or wouldn't want to work for them seems, in my opinion, to be rather extreme. There are good and bad aspects of Facebook, just as there are with Google. Would you abandon all Android-powered devices, Gmail, Google Search, TensorFlow, etc. because of Google's handling of Andy Rubin? Or their plans (although now abandoned) of building a censored Chinese search engine?

Expand full comment

I guess the question is, do the good aspects outweigh the bad? It seems like, in all the cases you mentioned, Google comes out looking bad rather than good. Does it make sense to support a "bad" company by using its tools? And the bigger question is, but what if you don't have a choice?

Expand full comment

That's a great point! Also, I didn't mean to only illustrate instances of Google being bad. My point was that companies like Google, Facebook, Apple, etc. are not "only good" or "only bad," but that they're a mix. I think the point at which the bad outweighs the good (at least to the point where one would no longer support that company by using its tools) is a matter of personal opinion. Is Facebook more bad than good? Google? Apple? I think everyone has different thresholds.

I don't know what I'd do if I didn't have a choice. For example, I used PyTorch heavily in grad school during a deep learning class. Although we had the option of using TensorFlow, all of the lectures, recitations, and code examples used PyTorch, and the TAs were extremely well-versed in PyTorch. It would have been much more difficult to get through that class by trying to go against the current.

Expand full comment

Yeah, if anyone has a satisfying solution to this, please enlighten me. I am facing pretty much the exact same dilemma. Hate Facebook but use (and actually very much enjoy using) Pytorch at work. So far I am getting away with a healthy dose of cognitive dissonance but I am not sure if that's a permenant solution.

Expand full comment

Guns don't kill people? Unix came about because goodpeeps had a problem to solve and they used what tools and hardware they had at hand. The internet was initially funded by DARPA. There is a place for renunciation as exemplar, but most of us are unwilling to take on that sort of fundamentalism. Each of us has their own ethical framework and so we make the choices we are comfortable with.

Expand full comment

(2) here.

That's the beauty of humans because we can reflect and make our own choices inside our moral compass and evaluate each situation and make the best decision of their self-interest.

I'll expand the argument here: Some people really do not care at all about several aspects like those. And it's alright with that because of its last instance this it's related to the people's free will and their belief systems.

Of course, we need to have some sort of cognitive dissonance, but for those cases, I just remember the old saying that says: "Forget the cow and drink the milk.

Expand full comment

I like the comparison to the internet. However, DARPA no longer controls the internet, so similarities only go halfway. In that sense the internet is more like mxnet (formerly Amazon, now Apache Foundation), and I feel it is easier to argue why I feel okay using it since it is no longer in the hands of the original creator.

Expand full comment