Hacker News new | ask | show | jobs
by angersock 4304 days ago
That's a really nice feel-good list, but it also doesn't make a lot of sense in several cases:

"We value open-source frameworks and libraries over developing for popular ecosystems."

Most popular ecosystems nowadays are all open-source frameworks and libraries? Unless you're talking about Windows or Mac OSX, I guess?

"We value inclusiveness, diversity, and respect over pure meritocracy."

These are not mutually exclusive goals--even if they are, I'd rather have really good code, even if written by a racist or sexist, than bad code (period). Again, I'm not sure we have to make that choice.

"We value creating wealth over capturing wealth."

What does this even mean? This is a programming language, ffs. Your statement makes sense in, say, the heyday of APL or Smalltalk or some other very vendor-specific language, but that's not quite the case today. Are you talking about not doing data-mining to monetize your fellow man? About not creating yet-another analytics or ad platform? What then, exactly, are you driving at?

"We value teaching, learning, and improving our craft over short-term productivity."

Again, not mutually exclusive. Also, part of learning and improving your craft is knowing when a quick hack is the right answer instead of a full solution.

2 comments

I think this comment shows exactly what I was getting at. If no one disagrees, the happiness manifesto will die in a sea of nods and shrugs. :)

> I'd rather have really good code, even if written by a racist or sexist, than bad code (period).

That's a perfectly valid choice. In some cases, it's a completely correct choice. But that's not the tradeoff that I want to make.

Take a look at the original Agile Manifesto: http://agilemanifesto.org/

Sometimes you can have it all: good process, good tools, good individuals and interactions. But when they conflict, the AM says that we should favor the individuals over the processes.

I'm saying that as a development community, we should favor inclusiveness and respect, even at the cost of (some) technical merit. Similarly, we should favor open-source infrastructure, even at the cost of the App Store audience.

Can we use this as an excuse to drop Node.js, please?

After all, Javascript was created by a homophobe. We should use a more minorities-friendly language and not encourage the use of problematic technologies made by bigots.

Edit: also, someone claimed that a lead maintainer of the Linux kernel is a rape apologist. That's good enough to drop Linux, right?

`also, someone claimed that a lead maintainer of the Linux kernel is a rape apologist. That's good enough to drop Linux, right?`

If that was proved to be the true, then I would want him or her to work on Linux from jail.

Doesn't that depend upon the project? What if I want to build for the App Store audience? Should I be shunned by the "community".

I don't like the idea of associating political views with technologies.

"That's a perfectly valid choice. In some cases, it's a completely correct choice. But that's not the tradeoff that I want to make."

The problem is that it's used too often to shun or control people that don't agree with a political ideology. A good example of this is the Mozilla CEO.

An open and "accepting" community should also accept people they might not agree with..otherwise you should't call yourself open, accepting, or inclusive.

> An open and "accepting" community should also accept people they might not agree with..otherwise you should't call yourself open, accepting, or inclusive.

Being "accepting" does not imply being accepting of those who are themselves intolerant, and indeed the meaning and value of liberalism dissolves into something toothless and even dangerous when interpreted that way.

If the Russel's paradox aspect of this you bugs you, then label the position "accepting of all other beliefs except those which are themselves intolerant." In practice, this is what most liberals, even die-hard ones, subscribe to.

Nah, I think that you've still got to accept and engage with people who are intolerant of others--again, you yourself are a member of that group.

It's not usually a big deal if you are interacting in a strictly professional capacity: if they let their bigotry get in the way of good business and engineering and teamwork, you can drop them on those merits alone irrespective of their reasons for being subpar engineers or businessmen.

He was CTO for quite some time, so it appears people were OK with him making technical decisions.

Edit: Also, is there evidence that he was a vastly superior choice? I'd accept sufficiently advanced technology even from a wicked murderer.

I read it as "given a choice between A and B, I'll choose A". So...

When choices are available for a software library, pick an open-source one over a well-tested black box, and perhaps even contribute. If the black box is the only reasonable thing out there, then use it.

Rather than try to hire by a strict ordering of skill, create an environment with varied viewpoints that can all be heard. (Of course you still hire among the top candidates, and avoid bad coders)

When choosing between two jobs, one of which creates a new product that people love, and the other cuts into someone else's profits through algorithmic/technological superiority, pick the first one. If you don't have such a choice, it's not relevant.

Last one I'm not sure about, but one possibility is "go learn Haskell/Lisp or experiment with the latest algorithms/libraries in the evening rather than work 18 hour days for your job." If you really have to get something done for work, by all means do it.

It's not "always do this", but rather "when you do have the freedom to choose, pick this"