For me personally, usage of Scrum on a project is a red flag, and I will try to avoid the project if I can. The existence of worse modes of work (which I also avoid) only constitutes an argument in favor of Scrum if they actually are the only alternatives.
To elaborate - from my perspective, Scrum feels
Perhaps that’s all a result of “doing it wrong”. For communication purposes, however, Scrum-the-formally-defined-process is much less relevant than Scrum-as-it-is-implemented. For me, the term is already tainted enough that I would actively avoid associating myself with it in any way.
FWIW: my experience of Scrum-as-implemented has been very positive.
I don’t really get the “disrespect” narrative; for me the most fulfilling thing, the thing that makes me feel impact and responsibility, and the best for my “personal development” (to the extent that I understand the concept at all) is to have contact with a customer that I’m solving problems for.
Scrum has struck the best balance I’ve found between overhead and effectiveness; the overhead is not zero but it’s less than any other formal process I’ve seen applied unless we count Kanban (which is essentially Scrum without the iterations, and I found lead to endless indefinitely-scoped “do the thing” tasks where it was easy to get lost doing nothing useful). “No process” is of course the lowest overhead but I find it unpleasant to work under: much more of a blame game when things go wrong and something isn’t done, and too easy to end up building something useless.
I think the elephant in the room that this article doesn’t directly address is “Do the programs you write have many types of data which should never be substituted?”. If all the types in your program really are strings, and you’re just moving text around you would likely be hindered by types. If by contrast you have many different kinds of integer that should not be mixed like weight and account balance you might really benefit from stricter types.
If all the types in your program really are strings, and you’re just moving text around you would likely be hindered by types.
I’ve yet to work on a useful program where the data’s representation as a “string” was the highest level of meaning that could be assigned to that data. As soon as you get past writing a toy you will start to have to differentiate between what different string values mean, and then we are talking about types–and arguably at precisely the point where we can start to leverage the power of a (good) type system. Speaking as someone who writes Clojure as his day job, it’s clear to me that this is why core.typed exists, and why there is so much activity around clojure.spec (and schema before it)–it’s obvious that “everything is a string” (or in the case of Clojure, “everything is a map”) isn’t good enough to represent the kind of data we work with as professional programmers (and the jury is out on whether or not clojure.spec is up to the task).
So while that’s not to suggest that we always need a sophisticated type system–or that we aren’t sometimes hindered when forced to use a type system like Java’s–I think it’s fair to say that it is rarely, if ever, the case that we don’t have more meaning assigned to the values in our program above and beyond than their encoding as low-level storage representations.
I think another good example of this situation is algorithmic code - the structure one would like to express (e.g. sortedness, sub-solution optimality, graph acyclicity) is often beyond what the type system can represent. You end up with numeric arrays / matrices / edge lists without much further type structure.
At the opposite end is either unit-heavy code (as in your example) or structure-heavy code (e.g. configs / ASTs / requests), both of which significantly benefit from what a typical type system offers.
If all the types in your program really are strings, and you’re just moving text around you would likely be hindered by types.
Could you give an example of such a program? I deal with strings relatively often, but the bulk of the logic in my programs (client-side JavaScript) benefit quite a bit from types (via TypeScript).
Very cool! I really like the live updates. I’ll definitely keep this in mind!
By the way, is there a name for the query language? It might be useful to have such mini-languages as libraries - a parser that produces an AST, and maybe an interpreter skeleton. The actual interpreter code will likely be specific to the app it’s embedded in, but it’s always nice to be able to “port” your knowledge of primitives to another tool.
Yeah, I intentionally kept the language totally separate – it’s there as the lang module in the repo. There isn’t a name for it, it’s roughly based on the SumoLogic query language which was roughly based on the Splunk query language.
The interpreter is currently tied a bit too tightly to the renderer which would make it hard to reuse. It’s on my TODO list though :-)
In case anyone else doesn’t feel like reading the whole article, here’s what I took to be Stallman’s proposal:
The robust way to do that, the way that can’t be set aside at the whim of a government, is to require systems to be built so as not to collect data about a person. The basic principle is that a system must be designed not to collect certain data, if its basic function can be carried out without that data.
Given that this clearly builds on WFC, the “attribution” in the Related Work section seems rather understated to me:
The “Most Constrained Placement with Fuzzy Arc Consistency” solver is similar to the Wave Function Collapse project by @ExUtumno.
To make sure I’m not misreading the situation, I went and checked the commit log and, indeed, the first commit implementing a WFC-like algorithm - 01bc61 - has the commit message
holy shit, wave function collapse works.
The stuff before 01bc61 is from 2015 and implements something else.
In light of this, some sort of reference – say, “there’s this popular algorithm called WFC that I’m using as the starting point” – should be in the intro sentence of the article.
It’s interesting to observe how the lobste.rs debate culture forced this discussion into its most civil and productive form.
All of the above threads are a really good read for anyone trying to understand what each side’s good-faith arguments as well as their “sales pitches” look like and what their effects (on a micro scale) are.
Apropos, as far as I can tell there are 3 sides/factions to this, at least judging by the sample here. I’d be curious to hear if anyone sees a different clustering.
Yeah. I’m always impressed by civility here as I remember what happened with same topics on other sites.
Oh yes, definitely. I bet a ton of people would be interested in signing up for something like that.
Go to your local hacking space?
I have a bit of trouble to understand the point of going through 3 application rounds to take time off, not get paid and meet other people taking time off and not getting paid.
Sounds a bit like doing Erasmus…
People have been doing write-ups about the benefits if you’re wondering about them. The mains ones I’m seeing across the write-ups are:
A break from mentally-taxing work to only do the work they want. People tend to do one or more fun projects there instead of those they’re usually forced to by work. It’s also common to do both concentrated learning and building activities.
Improved focus since they’ve left environments with a lot of distractions. Obviously, they might need a gameplan for email, phone notifications, etc. Based on prior data, I’ll also add their focus at RC might improve by the mental and financial commitment they made by going there. Many who might get distracted doing random stuff on the Internet at home will try harder to complete their project to avoid walking away with nothing. Double true if they lost pay like you indicated. That makes the trip more like an investment.
A crowd of people to learn from or help. They usually like listening to interesting projects others are doing there. Face-to-face provides a different experience than just Googling summaries on their Githubs or something. Regardless, I speculate that these connections with others can be a mental break from or boost for the focused projects people are doing at RC. Kind of a pause for them to let stuff process with extroverts benefting directly having people to talk to on top of that.
You might get a job. RC is run by recruiters. People with not-so-great employment doing 1-3 might have some job skills or portfolio additions to show off. That they keep funding it is either some serious charity or the fact that they’re getting enough people jobs to keep funding it. Probably a mix of both. So, there could be job-seekers visiting who would rather not be doing 20-30 sessions of whiteboard coding in front of non-coders assessing their skill. RC might be a better experience.
Of course, this assessment is based on just a handful of posts I’ve read written by people who visited. Anyone who visited or works there feel free to correct anything that seems off.
I would say these are all pretty spot on! I keep meaning to write a “Why RC?” page for our website that clearly and directly answers the question of why you might want to come, but for now you can get a pretty good idea by reading our about page and the things linked from it under “Further Reading”
I think the only thing missing from is that RC is about more than just the time you spend at the retreat—you’re also joining a tight-knit community of peers dedicated to teaching and learning from each other. The value of this is tremedous, but hard to capture in words. If any other RC alums want to jump in here and try to explain it I think that would be great :)
On point 4—all of RC’s operations, including our living expense grants for people underrepresented in programming, are funded by our recruiting revenue! You can read more about the career benefits of RC on our page about this and in our manual.
I’m one of many alums. Here are a couple thoughts on my experience, which I found very positive and better than regular unemployment:
I learned a lot about myself and improved a lot as a learner at RC - much more so, I think, than I would have if I had just been unemployed for a few months on my own.
I am not as involved in the alum community as I’d like to be but it sure seems fun. It’s nice to feel like you share a connection with some pretty interesting and accomplished people. It’s a diverse crew and I like seeing what different people are thinking and learning about. I also like that, collectively, the community knows a lot and will help you with your problems if you need them.
Sounds like a hacker space to me. My city has two, and if I hop onto a train I can get to another 5 in less than an hour.
The whole concept of having application rounds asking someone for permission to spend your own, free, unpaid time on the things you want to do … that sounds very foreign to me, maybe it’s just some concept that’s more widely understood in the US.
If grown-up people are unable to make an independent, autonomous decision on how to spend their time, this looks like a parenting/education failure to me.
It is not a hacker space, any more than a blank wall beneath a bridge where you can spray paint is an artist’s colony.
It’s a focused retreat for programmers to gather in one space for a period of time with other programmers, who are all there, as @jamesjporter says, to teach and learn from each other about how to be a better programmer, including theory, hardware, new models and techniques, etc.
I don’t know what else you’re misunderstanding about it, but I suggest you withhold public judgement until you learn more.
The social signal is different - “hacking on stuff” vs. “hacking on stuff, as a result of passing 3 application rounds”. Beyond that, the application filter presumably also has some sort of effect on who’s there, compared to regular “open” hacking spaces.
I have been informed that “actually decent” plots are provided by a Julia package UnicodePlots. They do indeed look rather neat, so until jp gets there, UnicodePlots does make better plots :)
Although I think the author does point out some very valid weaknesses in CoCs, both theoretically and in how they are currently implemented, I think the author overlooks, or chooses not to address, a few important points in favor of CoCs.
The largest factor to me is that, regardless of any particular problems with CoCs, the choice to not have a CoC has, in many cases, become a sort of dogwhistle for events that are explicitly inclusive of harassers, and have no intention of running a broadly welcoming event. In essence, the choice to not have a CoC these days is tantamount to an open invitation to the worst of the people in our industry. That’s not to say that good people don’t also attend these events, or even that the organizers are knowingly trying to create that sort of environment, but ignorance of the message you’re sending doesn’t necessarily change the message itself.
I also think the author is getting rather bogged down in the nitty gritty specifics of the language of the CoC. As a community organizer and moderator, I do find having specific CoC terms useful from time-to-time, but by and large the goal I think a CoC is less about rules and more about values. A CoC as a statement of community values can serve two important purposes:
First, a CoC can help a community manage and be intentional about it’s growth. Small communities may not see any need for a CoC, because in small groups there is often enough social pressure to prevent toxic jerks from dominating the community, but as a community grows and the social graph becomes less fully connected, the opportunities for toxic and abusive corners of the community to appear, and without intentionally managing these, an entire community can devolve. The CoC in this case can provide a shared vision for the values of the community and help to slow the festering of some of these more toxic community elements.
Second, a CoC lets members outside of the community know what the shared value of a community are, and helps people to make an informed decision about whether their values align with the community, and if the community is worth engaging with.
Thanks for a thoughtful response to the submission. :)
A few thoughts:
In essence, the choice to not have a CoC these days is tantamount to an open invitation to the worst of the people in our industry.
I would suggest that that status, and the dogwhistle effect you mentioned earlier, is perhaps due just as much to repeated memes about coded messaging and hostility as any of the actual behavior in those communities. At some point, repeated public shaming starts to create pathological behavior on its own.
I also think the author is getting rather bogged down in the nitty gritty specifics of the language of the CoC.
The issue is that, if you expect fair enforcement of rules, you need to use language as clearly as possible. I understand your viewpoint (of CoC as values and not as rules documents) doesn’t take that approach, but for a great many folks a Code of Conduct is taken at face value to be a “Hey, if you do , then happens, so please consider instead.”
a CoC lets members outside of the community know what the shared value of a community are
The problem with treating CoC as signalling documents is that it undermines their efficiency as behavior guidelines (because you have to include language and statements whose purpose is aligned more with value expression than on expressing permissible behavior). Separating the “rules” documents (“hey folks, if you harass somebody, you will be ejected”) from the “values” documents (“we believe that everybody should be secure all the time”) lets a community be more explicit in both areas.
Secondarily, I’d argue that the great benefit of technology is that it works regardless of the value and belief systems of the folks using it. Both a Marxist and a libertarian can sit down at, say, a numerical methods conference on optimization and expect to find something useful for planning out resource expenditure. Neonazis and Antifa both benefit from a good lightning talk on OPSEC. Both Republican and Democrat workers benefit from sharing knowledge about how to use AWS properly.
Using a CoC to try and shoo away folks who have ideological differences runs directly counter to the free exchange of ideas, and serves to limit the utility of those communities by ostracizing others. If we lived in a world where, say, you could point to somebody and say that “This person is a Nazi” with 99.999% accuracy, maybe I’d feel differently–but abuse of terms and the public square by overzealous if well-meaning people (some of whom are even users on this site!) has caused me to severely doubt the reliability of our mechanisms.
Thanks for your thoughts as well. A few follow-on thoughts to your notes:
I would suggest that that status, and the dogwhistle effect you mentioned earlier, is perhaps due just as much to repeated memes about coded messaging and hostility as any of the actual behavior in those communities. At some point, repeated public shaming starts to create pathological behavior on its own.
I think there’s probably some truth to this, especially the problems with public shaming. There is an unfortunate tendency to shame people in a way that I think makes them double-down on problematic behaviors. That aside, I don’t think we can ignore the effects of something, dog whistling in this case, regardless of it’s original cause.
The issue is that, if you expect fair enforcement of rules, you need to use language as clearly as possible. I understand your viewpoint (of CoC as values and not as rules documents) doesn’t take that approach, but for a great many folks a Code of Conduct is taken at face value to be a “Hey, if you do , then happens, so please consider instead.”
Writing clear rules intended to be taken literally that cover all forms of potentially allowed and disallowed behavior is essentially a fools errand. Ultimately there must be some human arbiters of behavior that will have to interpret the intention of the rules, look at the behavior, and decide if a violation occurred. You’re basically talking about a miniature domains-specific legal problem here, and if you look at the complexity of most modern legal systems it’s clear that you can’t really have a clearly written exact set of rules that will apply without human interpretation.
I do agree with your suggestion that having a separate rules and values document can help. In the communities that I help moderate we do exactly that- we have a set of rules that are more specific, and have specific consequences, along with a broader values document that outlines the types of behavior we want to see, and how people should behave. The rules document still requires some level of human judgement.
Secondarily, I’d argue that the great benefit of technology is that it works regardless of the value and belief systems of the folks using it. Both a Marxist and a libertarian can sit down at, say, a numerical methods conference on optimization and expect to find something useful for planning out resource expenditure. Neonazis and Antifa both benefit from a good lightning talk on OPSEC. Both Republican and Democrat workers benefit from sharing knowledge about how to use AWS properly. Using a CoC to try and shoo away folks who have ideological differences runs directly counter to the free exchange of ideas, and serves to limit the utility of those communities by ostracizing others. If we lived in a world where, say, you could point to somebody and say that “This person is a Nazi” with 99.999% accuracy, maybe I’d feel differently–but abuse of terms and the public square by overzealous if well-meaning people (some of whom are even users on this site!) has caused me to severely doubt the reliability of our mechanisms.
This is one set of values, but I think it’s not the only one. There’s a place for venues that are focused on allowing all people regardless of ideology or background, but it’s perfectly reasonable to want to run or participate in other types of communities.
In communities that I moderate, I am unapologetically uninterested in excluding some ideologies. Ultimately, there are some ideologies that simply cannot coexist, and focusing on equalizing them just favors the more aggressive of the ideologies. I’m okay with excluding Nazis, because the alternative is to exclude people who are targeted by Nazis. This is one of the ways a CoC can help signal values- by being explicit about the values of the community it is quite quickly clear on which side of this particular chasm an organizations values fall.
In communities that I moderate, I am unapologetically uninterested in excluding some ideologies. Ultimately, there are some ideologies that simply cannot coexist, and focusing on equalizing them just favors the more aggressive of the ideologies. I’m okay with excluding Nazis, because the alternative is to exclude people who are targeted by Nazis. This is one of the ways a CoC can help signal values- by being explicit about the values of the community it is quite quickly clear on which side of this particular chasm an organizations values fall.
Exactly. There’s always the “why can’t you be tolerant of my (intolerant) views???” mock innocence, or the “don’t be so easily offended, it was just a joke” mock confusion.
There’s a place for venues that are focused on allowing all people regardless of ideology or background, but it’s perfectly reasonable to want to run or participate in other types of communities.
Yet, regrettably, the attempt to run those venues gets a great of slander and libel about dogwhistling–as you yourself point out earlier. So, clearly, there isn’t a place for them, if they don’t wish to be tarred by folks who feel they aren’t sufficiently repressing some outgroup.
I’m okay with excluding Nazis, because the alternative is to exclude people who are targeted by Nazis.
You could exclude neither, and let them sort it out themselves elsewhere. Indeed, seeing each other in a context that doesn’t constantly reinforce their ideology might serve to build bridges and mellow both sides–and while your example is a bit stacked, one could apply the same argument to fundamentalists and secular folks, to Israelis and Palestinians, to feminists and men’s rights activists, and so forth.
Assuming that people from different backgrounds will never get along is a very pessimistic view of humanity.
EDIT: Anyways, I’m happy to continue this via PM or email if you’d like to go back and forth more…I don’t mean to clutter up the main thread too much. :)
You could exclude neither, and let them sort it out themselves elsewhere.
One important lesson of the (waving my hands here) social media information age is that this strategy is not viable, because it always results in a “win” for the trolls. Communities are both empowered and obliged to stamp out this form of sociopathy with prejudice, because failing to do so means ceding the public square to the extremists.
Free speech and free expression are wonderful goals in the absence of context, but they aren’t trump cards that outweigh all other factors, they’re variables in a complex equation that, when solved, should (among other things) minimize human suffering.
Exactly. If our Code of Conduct bans violence, but doesn’t exclude, say, explicit white supremacist clothing, the end result is that black people aren’t going to feel comfortable showing up to the con if there’s a bunch of skinheads with swastikas all over the place.
“But if the skinheads do something to the black patrons, they’ll get kicked out!”
Sure, but there’s a concept of making people feel comfortable at an event open to the public. The white supremacists are welcome (in theory) to come to the con, but they need to keep it to themselves.
The CoC is almost a courtesy to the skinheads in that example. The owner of the venue (or the lessee) is almost always allowed to make people leave. At least in New York, if you’re told to leave and then don’t, it becomes criminal trespass. Codes of Conduct don’t matter in any practical sense when you get to that point.
I think instead what they’re useful for is what you say elsewhere in this thread, which is setting a tone: is your con t-shirt and jeans, or jacket and tie? Is it for some political goal or for advancing professional development?
That complex equation comes down to value judgments. You’re not likely to know the ultimate effects of your actions. For instance: affirmative action is not colorblind, but it might lead to genuinely colorblind outcomes some generations from now.
If you’re using deontic ethics instead and your sense of duty requires you to defend freedom of speech, that doesn’t necessarily yield a result worse in terms of human suffering. Utilitarianism’s core problem is that although you can look at the immediate outcome, you don’t know the ultimate yield.
I think these ideas are somewhat compatible. At some point, the question becomes “freedom for whom” – if you can’t get people to show up to your con because of extremism, how much speech did you facilitate? I think there’s something more to championing freedom of speech than not prohibiting things.
You could exclude neither, and let them sort it out themselves elsewhere. Indeed, seeing each other in a context that doesn’t constantly reinforce their ideology might serve to build bridges and mellow both sides–and while your example is a bit stacked, one could apply the same argument to fundamentalists and secular folks, to Israelis and Palestinians, to feminists and men’s rights activists, and so forth.
I know this is a little late to the conversation, but your examples are full of grossly false equivalences. I’m pointing this out not to attack you, because I think you just haven’t really thought it through or are unaware of the context for the statements you’re making, but because spreading them is bad for society.
Start with “fundamentalists and secular folks”. Fundamentalists are radical theocrats, and in the United States, are identified by believing things like homosexuality is sinful, women must submit to their husbands, etc., and in general being radically intolerant of other peoples’ private business. “Secular folks” are “everyone else”, in terms of values.
Feminists believe that women are as human and as entitled to agency and dignity as men are; MRAs believe that women are inferior to men and should be enslaved.
There is no meeting halfway with them. Their values are bad, and any social currency they might gain by publicly participating in high-prestige, “neutral” contexts, like tech conferences, will be used to further their heinous agendas. Ignoring this is how Nazis take over; it creates safe spaces for them, and once they’re in, the space is unsafe for everyone else.
Feminists believe that women are as human and as entitled to agency and dignity as men are; MRAs believe that women are inferior to men and should be enslaved.
There are some folks that identify with MRAs that believe that, and they’re scum. There are also some feminists that cannot share a room or conversation with a man because they view men as needing to be eliminated (for example, Solanas). Ignoring the shades of belief and judging groups by the most offensive members is in fact what puts all discourse in peril.
This is all quite off-topic for Lobsters. If you want to argue, hit me up on DM. :)
It’s slightly off-topic for lobste.rs, but not for this thread, and I don’t want to minimize the point that you cannot meet Nazis halfway.
So, again, your equivalence between MRAs, any MRAs at all, even the most milquetoast “I think society needs to nicer to men” whiner, and even the most extreme misandrist feminist activist is false, because there is no large-scale issue with cultural and institutional misandry, but there is cultural and institutional misogyny. One viewpoint is laughably absurd and harmless (“men should be eliminated”; it’s not a credible threat to men), the other is simply, “Keep things as they are or make them even shittier to women,” which is extremely credible as a threat to the well-being of women. See also below, re: the President brags about sexually assaulting women.
Going back to, and again I need to emphasize that we’re talking about literal Nazis, given that the most powerful single official of the most powerful nation on the planet is an unapologetic white supremacist and rapist, it’s insane to say, “Let’s just set politics aside and welcome anyone.” The presence of Nazis is a threat to public safety and well-being, whether or not they’re in uniform or are being “polite”. Failure to deal with them as the manifest threat they are, given the friendly political environment for them, is spineless abdication of moral duty. There is no “both sides” argument to be made.
I’m telling you this not to accuse you of cowardice, but to help you understand what you’re actually arguing and who would benefit from it, so that you may stop being part of the problem, and start being part of the solution.
One viewpoint is laughably absurd and harmless (“men should be eliminated”; it’s not a credible threat to men)
Well, except for the fact that the author shot two men and attempted to shoot a third, and was on record for being “dead serious” about her manifesto.
the other is simply, “Keep things as they are or make them even shittier to women,” which is extremely credible as a threat to the well-being of women.
There are certainly some folks claiming membership that push for misogyny, but the actual stuff asked about is things like genital mutilation, how domestic abuse of men is handled (when it is recognized at all) and what support networks they have, how divorce and custody is handled, and so forth. You grossly misstate reality here. That’s forgivable, because people tend to be fuzzy with terms these days, but still.
we’re talking about literal Nazis
Somebody hide the Sudetenland! Quick, warn Poland! Buy stock in Volkswagen (and IBM )! That’s what a literal Nazi is about. If you want to talk about neo-Nazis, white supremacists, or even the (poorly-grouped) alt-right, I’m happy to criticize positions they have (most of which range from garbage to odious). Using incorrect terminology makes it hard to talk about a thing productively.
Why does this matter? We can’t defend or even relate to literal Nazis following orders liquidating a ghetto. Some poor white trash who had his job outsourced to Shenzhen though? Somebody who has strong opinions about how blacks are attacking police (despite growing up in a rural town with no African-Americans at all, and a police force which consists of like a county sheriff and a couple of deputies)? Those folks we can reach and educate, if we stop lumping them in with perpetrators of one of history’s biggest genocides.
given that the most powerful single official of the most powerful nation on the planet is an unapologetic white supremacist and rapist
That power is why he’s able to maintain such a solid Department of State, why Congress is doing whatever he wants, why he has met such acclaim and success in his dealings, and why he has been able to dismiss all of the court cases and suits brought against him. Alternately, he’s a boogeyman inflated into vast proportions by people looking to be scared about something.
There is no “both sides” argument to be made.
There is, I’ve made it, you don’t buy it because you’re invested in demonizing and dehumanizing the side you don’t like, life goes on, history will be on the side of tolerance and the dialing back of polarization–or we’ll be shooting at each other and fighting over cans of food in a generation.
This line of discussion is not on-topic for lobsters, and is quite divorced from even the original question of codes-of-conduct.
Welp, you have clearly stated your desire to do nothing in the face of evil and refuse to even name it, so, you’re correct, we will never meet on this.
When you say, “All are welcome,” what you are really saying, and what is heard loud and clear by both aggressors and victims, is, “This is a safe space for Nazis.” Or rapists. Or slavers. Or killers. You get the picture. So do they.
Writing clear rules intended to be taken literally that cover all forms of potentially allowed and disallowed behavior is essentially a fools errand. Ultimately there must be some human arbiters of behavior that will have to interpret the intention of the rules, look at the behavior, and decide if a violation occurred. You’re basically talking about a miniature domains-specific legal problem here, and if you look at the complexity of most modern legal systems it’s clear that you can’t really have a clearly written exact set of rules that will apply without human interpretation.
I completely agree, and this is my biggest problem with the whole “code of conduct” paradigm: it creates a promise of clear, formal rules that can’t possibly be delivered on. Talking in terms of values and moderation policies is a more useful framing that puts the human subjectivity front-and-centre and guides us towards thinking about questions (Who’s going to moderate? What process will they follow? Who are they accountable to?) that are really quite central to dealing with conduct issues in communities, but are swept under the carpet by thinking in terms of a “code” that a project can simply adopt.
Im ok with a higher false positive rate for ‘Is this person a Nazi’ test if it means fewer false negatives. The beauty of technology is not that it’s value less, but that it’s an expression of human value. Technology is anything people make and which things people make is a huge signal of what they value. While some technology are useful tools regardless of value (i can use the butt of a gun to hammer a nail) we can make a pretty good statement about what that society values based on their technology.
While I don’t inherently disagree, I find that a lot of CoC’s that get pushed out are rather restricting. I find it’s better to interpret them as guidelines, not rules, rules lead to toxic individuals getting wiggle room through loopholes.
I’ve also been to events in Germany that don’t have any CoC at all and I don’t hear many complaints from other events around here either. If you’re being a jerk you get thrown out, end of story.
The CoC provisions on offensive speech are usually interpreted broadly benefiting certain groups over others. In other words, it works the opposite of the general rule where these give enforcers lots of leverage over large groups of people. The wiggle room is theirs.
Personally I think any ruleset is only good if it’s applied equally to everyone, same for guidelines.
If a CoC is provisioned and enforced it must be done with the same rigour and accuracy as one would apply law in a proper court.
Personally I think any ruleset is only good if it’s applied equally to everyone, same for guidelines.
That runs into the whole “why can’t you tolerate my intolerance?” problem though. If they say that “hate speech is not allowed” and you interpret a gay married couple discussing their honeymoon is hateful towards Christians (note that not everyone feels this way, just using an example), then who wins? The decision is up to the organizers of the con, but in general most these days are going to side with the married couple (as they should, IMNSHO).
If a CoC is provisioned and enforced it must be done with the same rigour and accuracy as one would apply law in a proper court.
Absolutely not. They’re not laws. They’re rules that a private entity made up for participation in a private function. The correct interpretation of the CoC is exactly whatever the organizers of the con want it to be and nothing else. Generally, they’re going to interpret it in whatever way furthers the goal of the con (e.g. more attendees, higher quality talks) or the values of the organizers (more diversity in gender or ethnicity or whatever).
I would interpret “no hate speech” as strict as Section 1 §130 StGB of german law;
“1. […] against any national, race, religious or ethnic group, against parts of the population or a single person based on predetermined groups or incite parts of the population to violence or despotism or 2. the dignity of another human being, based on a predetermined group, parts of the population or membership in a predetermined group or a specific part of the population insults, maliciously attacks or frames […]” (excuse my crude translation)
Section 2 covers any transmission of anything mentioned in Section 1.
I think that about covers it in terms of “hate speech”. In the specified case, the couple wins since they’re part of a predetermined group of the population.
They’re not laws. They’re rules that a private entity made up for participation in a private function
I think they should be handled like laws. Rigour, precision, efficiency and accuracy are important. The organizers of a con should therefore word their rules such that any violation will be absolutely clear in either word or spirit of the rules without a doubt. If anyone breaks these rules and spreads hate speech then there will be no doubt by anyone involved they crossed the line. There will be no need to extensively discuss it or any wasting of time on people who want to wiggle around the rules.
I would love if some organizer did precisely this.
I cannot see how anybody could interpret that as hate speech. In an attempt to overcome by own biases, can you flip that example on its head somehow so I can relate to it?
Trust me, people can and do. The whole “I’m fine with gay people but do they have to throw it in my face??” because they have a picture of their significant other on their desk or something, whereas the person in question wouldn’t bat an eye at a heterosexual person having a picture of their spouse on their desk.
I’m having trouble coming up with an opposite example, which is my fault.
Oh, I know that there are people who would find that offensive. But the bar for hate speech is higher than merely being offensive.
Opposite? How about being annoyed that something says husband and wife. Or taking offense at something like a father and daughter event because nobody in your family is technically a father.
Fair enough. I was trying to come up with an example from a right-wing perspective (“opposite” in that regard), but the thought process is alien to me so it’s hard.
(This is just for the sake of the argument, we’re already off the track so I’ll roll with it) One might interpret Christian couples taking PR actions against abortion as hateful against its supporters.
http://www.cbc.ca/news/politics/summer-jobs-abortion-images-ccbr-1.4523255
[Justin Trudeau] called flyers depicting bloodied, aborted fetuses used by the Calgary-based Canadian Centre for Bio-ethical Reform (CCBR) “hateful.”
Joyce Arthur, executive director of the Abortion Rights Coalition of Canada, said she believes those images … should be outlawed as hate propaganda.
[emphasis mine]
They’re not laws. They’re rules that a private entity made up for participation in a private function. The correct interpretation of the CoC is exactly whatever the organizers of the con want it to be and nothing else. Generally, they’re going to interpret it in whatever way furthers the goal of the con (e.g. more attendees, higher quality talks) or the values of the organizers (more diversity in gender or ethnicity or whatever).
A CoC is legalistic by its very nature. I’m fine with an organisation adopting formal rules that are interpreted as rigorously as actual law; I’m fine with an organisation using the subjective judgement of its human moderators. But adopting an ambiguously-worded “code” that is in practice subject to interpretation is the worst of both worlds: it reduces moderators’ flexibility, but doesn’t offer participants enough clarity to be useful.
In essence, the choice to not have a CoC these days is tantamount to an open invitation to the worst of the people in our industry. That’s not to say that good people don’t also attend these events, or even that the organizers are knowingly trying to create that sort of environment, but ignorance of the message you’re sending doesn’t necessarily change the message itself.
Equally, the message I get from the choice to have a CoC, as someone generally perceived as white and male, is that I’ll be held to a double standard and if the wrong person takes a dislike to me then I’ll be thrown out, regardless of my actions. That’s probably not a fair reflection of the organisers’ intentions, but it is the message.
Apart from that concern, which I totally agree with, I also try to stay clear of projects that boast a CoC because it shows me that their priorities lie in politics, rather than in technical matters. It’s a waste of my time to spend any effort on endeavors like that.
It frequently doesn’t though.
Almost any large project with a code of conduct has it precisely because they want to focus on the technology more than the politics, and without a code of conduct, or with too loose a code of conduct, they end up being controlled by the loudest jerk.
See the replies to my comment up thread for people who are advocating for CoCs for nakedly political reasons that have nothing to do with technology.
It’s my experience that the only people who whine about this are better left excluded, because somehow, white dudes are still abundantly present and everyone has a nice time.
White dudes? Yes. Working-class people, or even just any kind of conservatives? Often not. People have a nice time yes, but people tend to have a nice time in homogeneous spaces - everyone having a nice time is, if anything, even more common at events attended solely by white dudes. So equally I could say the only people who whine (your term) about diversity/inclusivity/… are better left excluded.
Some thoughts, from someone running a con that has chosen each year to not have a CoC, but is in the process of developing an alternative model:
The largest factor to me is that, regardless of any particular problems with CoCs, the choice to not have a CoC has, in many cases, become a sort of dogwhistle for events that are explicitly inclusive of harassers, and have no intention of running a broadly welcoming event.
It’s not a dogwhistle for events that are explicitly inclusive of harassers. A lack of something is not the same as explicitly including the opposite. The author explicitly covers the lack of effectiveness in many conference CoCs under gray zones and enforcements.
As someone who organises a conference, attends lots of events around the world and spends a bit of time sharing stories with organisers, I have yet to see a conference with the resources to properly ensure that all participants know and understand the CoC, how to use and enforce it. Such an event may exist, I haven’t seen it. I’ve experienced harassment and stalking at events myself, and watched it fumble wherever I’ve reported it.
That’s not to say that CoCs are useless, some events may find them useful, but for the majority of events I’ve attended they have caused more problems than they solve in themselves.
Second, a CoC lets members outside of the community know what the shared value of a community are, and helps people to make an informed decision about whether their values align with the community, and if the community is worth engaging with.
Nearly every CoC I encounter is a variant of or asserts to be inspired by the same geek feminism-based CoC. I have argued against it repeatedly on the grounds that anyone using it has not properly considered the purpose, scope and enforcement of such a document, nor the complications it presents. I have had event organisers flat out admit that they’re using it because people who don’t come to their event will choose not to come to their event if they don’t.
Frankly, if someone feels that the presence of a CoC is the determining factor in whether they attend an event. Maybe an event without a CoC isn’t the event for them. A copy-paste geek feminism sample CoC is a dog whistle to say, “We’re virtue signalling our CoC but don’t really care enough to do it properly”.
Organisers should focus on their existing community and welcoming new arrivals at the event rather than people who won’t turn up if there isn’t a universally ignored and unenforced document put up everywhere to make existing people feel that little bit shittier.
Nearly every CoC I encounter is a variant of or asserts to be inspired by the same geek feminism-based CoC
If you are a geek and not a feminist, what are you? I’m a male, geek, and a feminist.
I’m surprised anyone working in high technology would choose to not be a feminist and prefer to live in the last century. Fortunately I don’t meet many of those people. They seem to only exist on the internet.
I reject the label feminist for many of the reasons outlined here: https://necpluribusimpar.net/the-trouble-with-feminism/ (and frankly I wouldn’t call myself a geek either, especially not if people are going to use it as an excuse to say that I am obliged to hold one or another political opinion. It’s never been a label I particularly cared for in any case).
I don’t have a problem with reasonable Codes of Conduct in principle, but in practice, as stevelord states, they are specifically feminist advocacy, and I think that many vocal strains of modern feminism are hostile to values I think are important and want to see reflected in the culture around technological work. A succinct way of putting it is, I would be fine with any Code of Conduct that mentioned James Damore by name as someone whose speech would be unambiguously permissable in a project or convention - and if a Code of Conduct was designed by people who want James Damore’s words to be grounds for expulsion (as they were for him in the technological community of Google engineering employees), I don’t want that Code of Conduct in force in any space I care about.
I would argue that this is an example of doing exactly what CoCs are intended to do. If you think a project should have people like Damore driving away people who don’t want to be made out to be novelties or second-class class contributors, then frankly I don’t want you in my community.
You’re free to give your “diverse utopia” a shot on your own turf, but the moment you try to co-opt or subvert an existing community or project imagined, initiated, and implemented by (as your side frequently points out) utterly un-“diverse” (i.e. white male) contributors you are throwing the first punch.
This kind of subversion has already occurred - repeatedly - so the bed has been made and all you can do now is lie in it. I, and I’d bet most people in tech, did not expect our field of work to be made into a political battlefield, but hey, solving problems is what we do. We’ll solve this one too.
It’s interesting that you yourself point out how many existing projects and communities have adopted more inclusive policies. The fact is that culture is shifting toward inclusion, and even non-idealistic communities are realizing that broad and inclusive policies attract more and better contributions, and the benefits more than outweigh the technical contributions that would have been made by hateful and toxic community members. It’s not like those of us who value and appreciate CoCs and otherwise inclusive policies have any particular power to dictate the rules and structure of existing projects. Communities are broadly recognizing the value of CoCs and adopting them because the people there want to make their communities better.
If I can just point you at an example of CoCs causing significant damage to communities, I’d point you at FreeBSD’s huggate scandal.
That’s what everyone needs to avoid. CoCs mustn’t be entered into lightly. They have to be properly considered, debated and set up to enhance rather than detract from a community.
You really believe James Damore’s anti-intellectualism is a benefit to technological work? His contributions had nothing to do with technological work and seemed to create a huge distraction away from technological work. I would love to see an argument from you detailing how James Damore’s speech was constructive to technological work.
If you are confused about why I called James Damore’s speech anti-intellectual, I would hint here that empiricism is no substitute for thinking.
Thanks for your comment. Just one thing. I didn’t state they’re specifically feminist advocacy, it’s the blanket adoption of the geek feminism wiki CoC template I was rallying against.
To be clear:
Part of running a decent conference is accepting that there will be people there with different views to you. Your job as an organizer is to create a fun and friendly event, not arbitrarily provoke people (I do enough of that in my spare time :)).
Sorry, perhaps I wasn’t clear. By geek feminism-based CoC I specifically mean this template and it’s wholesale adoption verbatim or almost verbatim.
That one has exactly the kind of politically-motivated and dominating stuff I aim to block in CoC proposals:
“‘Reverse’ -isms, including ‘reverse racism,’ ‘reverse sexism,’ and ‘cisphobia’ (because these things don’t exist)”
My emphasis added. The start is denial victims exist in white, male, or straight groups operating in environments where minority members dominate the power structure. This is dictated by proponemts’ political beliefs that are controversial even among minority members they claim to he about protecting. The next move the ideology brings is not allowing them a say in things or allowing statements/actions toward them that would be offensive/banned if done to other groups. The next is ridicule or ejection as a response to dissent.
All starts with accepting the sophist definitions and rules of a tiny few intended to dominate their opponents in larger groups that they enshrine into a CoC they’ll tell groups is just about civility and stopping bad behavior. No it isn’t: it’s ideological subversion of groups’ norms to enforce the pushers’ beliefs. They’ll put down minorities resisting those beliefs as quickly as anyone else, too.
Your counter has no evidence. So nobody should believe it. That simple.
Unfortunately, I still have to go into a workplace where many groups are dominated by politics benefiting one type of minority (blacks) at everyone else’ expense. That’s in social groups, work assigned, and promotions. Sounds like the definition of structural racism to me. If ever applied to non-whites, the two sentences above would be all the proof they needed that they’re victims of structural racism. You’d agree with them. Logically, there the same function or algorithm for determining structural bias that just have different inputs or outputs. As the sophistry goes, those on the linked article and now you if backing them redefine their own term for just these conversations so it can’t apply to a white person.
With the magic of political bias and agendas, the same definition can be two, contradicting things so that one group is villainized whether delivering or receiving damage interacting with other groups. Such sophistry is not just illogical: it’s inhumane given the damage it supports to decent people in the target group. So, I’d fight a CoC or agenda that starts with a declaration that non-whites in positions of power would never abuse their power against whites. Likewise, women never abusing men. Both are insane statements in light of both recorded history and minority members’ own incessant claims about how other minorities mistreat them at work, school, etc.
The logical response is banning and addressing every instance of group X uses their power to discriminate against group Y with who X and Y are varying case by case, place by place, issue by issue. That protects the most people with the most fairness. It also takes hardly any additional effort in event white or male discrimination is as rare (“nonexistent”) as my opponents believe. Most work would probably still benefit their preferred groups as well given that’s where most of the discrimination is right now.
Note: I should also point out to anyone reading along that even a sub-Reddit on feminism had a list showing they recognized male-specific biases and discrimination. It’s done from their viewpoint but has points that corroborate my claims. Clearly, it’s only some feminists I’m battling with these claims rather than all feminists.
Unfortunately, I still have to go into a workplace where many groups are dominated by politics benefiting one type of minority (blacks) at everyone else’ expense. That’s in social groups, work assigned, and promotions. Sounds like the definition of structural racism to me. If ever applied to non-whites, the two sentences above would be all the proof they needed that they’re victims of structural racism. You’d agree with them. Logically, there the same function or algorithm for determining structural bias that just have different inputs or outputs. As the sophistry goes, those on the linked article and now you if backing them redefine their own term for just these conversations so it can’t apply to a white person.
Sorry for the late reply.
So, we don’t really know each other. I have some ideas about you: male, 20s, information security professional. Probably not in California. From what you’ve previously posted, it sounds like you had it not so easy growing up.
Here’s where I go out on a limb a little bit: you believe that the most important thing about doing your job is professional competence, like ability to debug an issue or design a feature to be safe and easy to use. You also hate that there are exploitable systems in place in society; exploitable systems are bad.
Now, it sounds to me like your boss thought other things were important, like smelling nice or getting along with other teams, were also important, and when some of your friends, who you thought were very good at their jobs, were fired or laid off, they were replaced by people your boss, who is not white, knew or approved of.
Am I way off base?
Anyway, I’m saying all this to demonstrate that I have some idea of how things are, based on my decades of professional interaction with infosec teams, and working in IT, and being online.
So, you say above, “My black boss favors other black people over white people, sounds like the definition of structural racism to me.” But your error is so fundamental that explaining how wrong you are is such a huge task. It requires you to understand:
To this point, consider how you feel about the decision to exclude the fascist Urbit dude (Moldbug) from a conference, where presumably, he was going to talk about his idea for a feudal internet and recruit people to support him and its development. You’re mad because you think the details of his software, developed as a reification of his values, is not a political issue, merely a technical one, and you don’t think any status given to him for speaking at that conference will carry over to his Moldbug persona, and no one who he thinks should be subjugated will stay away as a result of his presence. I leave the absurdity of that belief to stand on its face.
To the second point, for example, and to bring up something you said previously in a different thread, there is no study of the unfair discrimination done by female bosses against men because there are so few female bosses.
And so, that brings us to the final thing you need to understand before you could understand why I said your statements were baseless and false:
You have a black boss who favors people who are like her, and this offends you. To say, “this is structural racism in action,” though, is to ignore the fact that 90% of the bosses are white men who also favor people like them, and that the current real cultural and political landscape favors people like them in terms of access to education, and jobs, and wealth opportunities, and protection by police, and ability to relocate to some other place where the people there will probably be friendly to them. And most of them are hostile to the idea of changing that to make it more equitable.
And I don’t think you’ll ever understand that, or at least, not here and now. So when you say something unfounded and ignorant like, “reverse racism is just as bad as real racism”, which is false and baseless because it ignores nearly every relevant factor in favor of “any exploitation of an exploitable system is offensive and bad”, the most legitimate response is a one-liner like the one I gave.
“So, we don’t really know each other. I have some ideas about you: male, 20s, information security professional. Probably not in California. From what you’ve previously posted, it sounds like you had it not so easy growing up. Here’s where I go out on a limb a little bit: you believe that the most important thing about doing your job is professional competence”
I appreciate you attempting to understand where I’m coming from. Unfortunately, it gave a great example of the kind of projection I’m talking about that certain types of politics depend on to prop up myths or suppress alternative views. The profile doesn’t even match some of my comments on Lobsters about my job, how people get promotions, or what to expect in businesses. It is common among people that push a specific type of politics or CoC’s. Almost every one of them that profiles me says same thing you did. So, let’s get a better picture.
I grew up in areas where dominant groups were very different from me: black school with pervasive racism against whites; rural areas with rednecks that look down on “nerds” and tech; mixed, suburban school that was great in comparison, all groups anti-nerd in nicer way, and a nerd/outcast crowd that was cool (yay!); businesses and other organizations with different makeups. I’m in 30-40 range. I’m not currently in tech or information security as main job: I went into operational side of a company that does mix of high-volume sales and service activities. My job mixes both: sometimes moving product, othertimes handing customers. Our customer base is as diverse as they get with me interacting with, serving, taking abuse from, or being praised by at least 22,000 people face-to-face on record with high, satisfaction rate from those surveyed. With many, especially in groups, I’m required to listen to or make conversation with them to make a pleasant experience. I also observe and listen to what they say to each other just being curious of how they act and what they think. On Facebook, I also created a diverse crowd to see all the things people could teach me about popular topics that I’d otherwise miss due to a filter bubble.
My long time effectively being a white person in both minority-dominated environments and effective slave to mix of people showed me they act effectively the same over sample size of twenty to thirty thousand people in many circumstances with tens to hundreds of thousands of interactions with them among my coworkers and I. Most exploit our company’s level of service to get what they can out of us. Most sound polite, some neutral, and a few ugly with almost all apathetic to burdens or damage they cause. Last subset will use their power in ways that seriously disrupt the company or cause employees harm. Some have used race/gender cards against white males but root cause of exploiting power with misinformation or threats is something all groups do to us. The cards are rarely necessary given our vulnerability. The bosses, which come and go a lot, are mostly either folks wanting a safe bet at blue-chip company with upward mobility or opportunists wanting a ticket punching opportunity move laterally into better pay at another company. At upper levels, it’s almost always politics over performance with team supervisor level being a mix of performance and politics leaning toward performance if it’s about at least keeping the job.
As part of my work, I constantly ask my customers of all groups questions about their jobs, lives, and even politics with no judgment or argument: I just tell them I’m curious, I like hearing others opinions, and thank them for whatever they tell me. Depending on how I assess them, I’ll either politely decline further engagement or carefully ask questions making sure I don’t step past their boundaries. Down-to-earth, non-judgmental or just fun-loving customers I’m more open with or do my comedic approach I do with coworkers for their enjoyment. Those few being non-threatening to my career means I can self-censor less and be myself more. Work style is goofball/satirist/wiseguy who has everyone’s back or gives headaches to those team decides needs it.
That leads me to the next thing. I’d be willing to bet that neither you nor most people advocating some of these views, CoC’s, etc have been under the power of large numbers of minorities or interviewed hundreds to thousands in diverse area for their views without leading questions that reinforce your own beliefs. The comments you see me make on here are often compatible with many of them I’ve talked to. That’s despite some’s attempts to censor them saying that’s about “protecting” minorities or blocking what offends “them.” There’s a huge gap between what piles of black people tell me and what some liberals (including whites) tell me that pretty much all black people think. For instance, most black people I interview in the Mid-South think racism is something every group can do, that it can happen at many levels, and black people can be racist, too. There are plenty that think the other way but they aren’t majority I’ve encountered. When the latter are in control, the views that disagreeing blacks espouse about definition or nature of racism being a general thing are not allowed despite coming from minority members. The standards/rule promoting groups claim to advance or protect minorities while systematically excluding all of them with dissenting views from participation. And then they have a problem with whites making similar claims, too.
Your longer comment might make more sense if you were responding to what a white male with minimal social interaction would believe after a few brushes with run-of-the-mill discrimination. Thing is, my posts are a summary of position of whites, blacks, men, and women who believe these things based on their lifetimes of interaction with their groups and others with many of us under power of other groups in organizations they control. So, we’ve gotten to see it both ways. We’re a very diverse crowd. We shouldn’t be pigeonholed into these projections that pretend it’s one or two subsets of demographics, we have limited experience with other groups in control, we must be social idiots who don’t know The Game at work that gets promotions, and so on. We’re a mix of minority members and white males who understand people, have tons of experience with them, and disagree with your position based on those experiences. Seeing how minority members disagreed among themselves on topics of race, gender and so on reinforced my fight against any group dictating one set of beliefs/practices being acceptable or not. My own group saying it could just be bias but many of them concluding similar things from different backgrounds hinted it might be greater truth.
“there is a difference between small, local, private social spaces,”
It turns out this is true but circumstantially rather than fundamental. The experience I’ve had with thousands of people (esp minorities), observing many more groups controlled by them, listening to minority members in structures controlled by majority or minority types, and so on indicates minority members act just like whites or males. They reward those like them, discriminate against those substantially different, and mostly don’t care about other groups in day-to-day speech or actions. This trend is supported by data from most groups going back most of human history. Any country that has a certain majority with power will have its members come to dominance mostly rewarding their group or a privileged few penalizing others. There’s usually common enemies, too, to unify them. African countries under black control had same traits. Over here, it was mostly white males in power reinforcing their preferences which perpetuated that cycle. So, that’s the majority of the problem at the national level. Switch to cities, organizations, etc that blacks control, you see a reversal of the effect where they boost their own group more and battle/minimize politics of others.
From there, how do we react? Well, if it’s a universal phenomenon, then we need to define it as a universal phenomenon rather than definitions or practices that only villify specific groups for others’ gain. The honest definition costs us nothing: we just note bias, expect each group to combat theirs, and assess it in al group activities by default. Minority members that agreed with me and I are all already doing it to varying degrees. So, it’s not hypothethical. From there, we’d expend most of our effort on whatever is most prevalant in our locale and the national level. I’d expect most of that to be combating white racism or male sexism at national level. At local one, it will usually depend on the group with white dominated areas having mostly white racism we gotta fight, non-white dominated areas having non-white racism we have to fight, and occasional weird ones you’d not expect if just using checklist-like approach to who is oppressors or victims. It will vary as the demographics and beliefs vary among the various power and social structures.
For instance, our [huge] company has different types of -ism’s in different groups depending on their makeup. The executive and senior levels are definitely biased for whites and mostly males with promotions all politics. Middle started from there to get much more mixed with mosty same politics plus some new. On lower levels of management, there’s been a shift in my area toward blacks benefiting only certain types of blacks in two to three groups, white women in three, white men in two others (one biased for women), and one was mixed before ejecting a scapegoated, white dude recenty to get a black guy. Last one in flux. The black-controlled groups even wanted to poach me to boost their numbers but my bosses and I prevented it. I’m still forced to help them once a day or so but that’s driven by cost-cutting and politics, not racial issues.
Blocking transfer was good since turnover is at record high now in their groups, even among black men and women, since leadership’s favoratism discriminates across three attributes (race/gender/age) instead of one or two we’re used to dealing with in the South. High-performing workers with great, social skills who were mostly white, Asian, and one Pacific Islander were given unpopular grunt work with older, black women given better work or promoted. They talk to them differently, too. The advantaged blacks ranged from low performers that transferred to that group (the older women) to a few high performers so good I’d personally invest time in if they asked. Two, a younger male and woman, were exceptions to get advantaged with older women. Women to male ratio in general for advantaged positions is around 8-10 to 1 with ratio among high-performers 1 to 1 to around 3 to 1 depending on what skills you want and whose coming/going. Their personnel decisions don’t make sense unless structural discrimination and/or politics is at play.
Which is what I expect by default and combat for all types. And we end with:
“And I don’t think you’ll ever understand that, or at least, not here. So when you say something unfounded and ignorant like, “reverse racism is just as bad as real racism”
You’re really saying you think all the minority members I’ve listened to or worked with who agree with my position couldn’t possibly understand because of (white male stuff here). It makes no sense because they’re not white males but share my position. Majority are women, too, with many sharing positions on women topics some labeled sexist or something on various forums. You’re right that I can’t understand why only one set of views about minority matters is allowed or often reported, a good chunk preaching them being white, when minorities themselves have an interesting, diverse range of views. I’ve learned a lot from listening to them. They helped shape what I think on tolerance, true inclusiveness, and so on where rejecting certain views on false pretenses (eg only ignorant or hateful white dudes say that) would lead me to systematically discriminate against or suppress minority members with those views in large numbers.
That would be racist and sexist like my white, male executives who only tolerate their type of people, views, and practices. I’m not like that. So, I avoid it and fight it when people who do it want to make any form of it a standard practice to force everyone to think, talk and act like them. Usually have minority members backing me up in most places, too, except on these tech forums. Since they’re not present and invisible to my opponents, I have to speak up on their behalf to let people know they and their beliefs exist. They wouldn’t want to be dismissed with labeling and/or censored.
Welp, at least I’m way off-base in my projection, though your childhood was what I meant by rough time (you brought it up in a different comment) :)
So, that’s a lot to reply to, and I don’t want you to think I’m ghosting or don’t appreciate the long and thoughtful reply. I do, and I thank you. But I’m about to walk out the door and won’t be able to reply in kind until tomorrow. Or, if you don’t want to continue publicly, I am happy to DM. Or if you’re sick of me and my shit, I respect that.
But I mean, I’m surprised you’re not in the industry, when you’re so passionate about what it’s like for people who are in it.
These discussions take a lot of energy as I aim for strong accuracy minimizing effects of my biases. They don’t piss me off or anything except for few times I’m straight up attacked in a clear way. I might not reply just to get back on other stuff like tech or better job, but I’ll definitely read and think on whatever your reply is. :)
Far as IT or INFOSEC, I assumed you’d assume I was in it because it’s a reasonable assumption. I didn’t hold that against you so much as use it to illustrate we come here and to our beliefs from many backgrounds that might surprise you. Most people online can’t believe I’m not in INFOSEC. Some have accused me of lying about that to protect my identity at some defense contractor. Yeah, I’m living in movie True Lies lol…
minority members dominate the power structure.
If only there was a movement that wanted to eliminated dominating power structures…. I just can’t put my finger on it. Or that’s it! Welcome comrade, have you googled The Bread Book?
Lol. I do try to keep them in check. I stay away from communism, though. Utilitatianism via incentives, regulation, and individual action are my preferred methods.
It seems like a reasonable CoC. Your argument that organizers copy and paste it is strange. 50% of software is GPL, and the remaining are copy-paste licenses like MIT, Apache, and BSD. Likely less than 1% have licenses that are custom. Would you say the same thing about software people choosing a license and copy-pasting it? It seems to me most projects do make a big deal about which license they choose.
A well designed CoC like the one you linked seems reasonable to re-use.
Software licences are not the same as CoCs. Software licences police the use of software. CoCs police peoples public behaviour. Using a boilerplate template is a clear indicator that people are posting it to say they’re good people rather than properly looking at how they use or enforce them.
You may think the Geek feminism CoC template is fine. I find it deeply problematic for most events in my size, location and cultural bracket for events I’m involved in. That’s not to say it doesn’t make interesting points, but it’s better that event organisers consider them (along with everything the wiki has to say about CoCs) when preparing their own.
I think enforcement is less important than setting expectations. CoC is priming people on what kind of behavior is expected. This priming will have a positive consequence where people will likely act better. There is good psychological research behind priming that you should read. Enforcement is not the primary purpose of a CoC.
I think enforcement is less important than setting expectations.
If you’re setting expectations withough an ability to enforce them then this will be your outcome.
I’m discontinuing this thread with you as you’re no longer adding anything to the discussion.
I’m neither a geek, nor a feminist. I strongly resent any association between people who claim they are geeks and myself. I am also an anti-feminist. Unlike modern feminists I believe in equality; men and women should have the same rights, just like blacks and catholics and whatever other people from any group you can think of. Modern feminists don’t think that (EttiCosmocrepe provided a link below) and that’s why the are my enemy.
Last I checked feminists want the sexes to be equal. Sounds like you are a “traditional feminist”.
I’m neither a geek, nor a feminist.
I am also an anti-feminist
hence
Sounds like you are a “traditional feminist”.
I believe your reasoning really speaks for itself, hence no further comment is necessary.
I think your pet definition of feminism has clouded your reasoning. Example: You said you want men and women to be equal. That’s what feminism is! In the same breath you call yourself an anti-feminist because you have this strange idea of what feminism is.
Technically someone who wants men and women to be equal is an egalitarian. Feminism and Masculism are mostly concerned with equality for the respective side.
Until you decide to explain which version of feminism (or even generation of feminism, grossly speqking) I don’t think it’s easy to have a productive conversation.
You can’t have both. They’re mutually exclusive. Even given 100% equal opportunity there will always be differing outcomes. You can optimize for either, but you reach a point where optimizing for one will always displace the other.
This isn’t to say we don’t live in a deeply unequal world in either sense, just that what you want isn’t possible.
Notice I didn’t say equal outcomes, I said equitable
Notice I didn’t say equal outcomes, I said that your two options were mutually exclusive and implied a trade-off between them.
You can’t have both. They’re mutually exclusive. Even given 100% equal opportunity there will always be differing outcomes.
When I said the outcomes need to be equitable, I obviously recognize equal opportunity will result in differing outcomes. This is not a contradiction. This is simply your failure to recognize dynamic systems. Imagine a system using dead reckoning . We have our simple model of system behaviour (equal opportunity leads to equal outcome). Efforts for equitable outcomes is a course correction after applying a Kalman filter from our expected simplified model. What really happened is equal opportunity resulted in different outcomes because people are different. So we apply equitable distribution to course correct. This is a self correcting system.
The truth is “equal opportunity brings more equal than no equal opportunity outcomes, but obviously not equal outcomes” is a complex model. We can simplify with “equal opportunity brings more equality” and then course correct with equitable distribution.
It’s absolutely strange that computer people fall back on “logic” instead of dynamic systems to deal with an obviously dynamic system (society).
What would an equitable outcome look like, I’m genuinely interested in what you exactly mean with it.
Society should decide what people need at a minimum (housing, food, healthcare, access to internet, etc) to live a decent life and provide it to them. Some people will need to be provided more than others depending on their differences (people with disabilities may need more help, etc).
In other words, from each according to their ability, to each according to their need.
I like the term David Graeber defined here called “everyday communism”
If it’s public, I’m curious to hear more words or links about your alternative model for a CoC. What do you see as key differences do you see in problems to be addressed, approach to solving them, enforcement, administration, education, etc.?
CoCs assert to set expectations for behaviour, but in reality they tend to focus on harassment. We have had harassment at our event (and I have no doubt that plenty goes unreported), but our most common problems are theft, fighting and damage caused by drunkenness. I’ve never seen a CoC address this.
Another common (at least to us) area CoC’s tend to fall completely short is disruption of talks. BSidesScotland’s Code of Conduct is very good in this respect.
Now some people might think that all we need to do is make a multi-page document outlining what we can and can’t do with a 4 page section on harassment and we’ll be fine. We won’t. In the interim we’ve settled on Wheaton’s Law as the equivalent of a CoC, along with some light rules about enforcement. However, we still have theft, damage, violence etc. on occasion.
The current (non-public) iteration is something we’re calling house rules - a one-pager that goes up on the site, at our event that everyone’s supposed to abide by focusing on actions, not opinions. People who think that a person’s value is defined in some aspect of identity can attend. Act on that, and they’re getting thrown out. People who believe that it’s right to punch people dumb enough to think worth is related to skin colour are also getting thrown out. People who steal or try to steal are getting thrown out.
To make this work we’re going to hold training sessions with ops leads and all the crew, and we’re going to make sure attendees know the house rules through a mix of mailshots, entry in the brochure and possibly (although we’re not sure yet) having the house rules printed up and put up probably around the registration area. On top of this we’re looking into first aid training for ops leads and a bunch of safeguarding education so we can improve our responses.
This assumes that we get this ready in time for this year’s event. Previous iterations have failed due to opposition to identity-based CoCs, mostly from female members of the crew and female attendees. The feedback that I’ve had is that anything that singles people out on the basis of gender or identity is unfair and uncomfortable for them, and introduces an ugly element to our culture that previously wasn’t part of it.
More than anything else, we’re trying to specifically avoid a re-run of donglegate, the FreeBSD debacle(s), and make sure we’re ready to properly support a very severe incident. Ultimately we just want our event to be the same great event it’s always been, to make sure people have a good time and to be welcoming to everyone.
Interesting article, however to me this everything that is wrong with open source software, in the good old days (and still around 50% of the time now) open source software (and contributions) come around when people need to solve X problem, and opensourcng your work is a great way to help others, then usually if the code is found to be useful (or in demand) then contributors join in, and before you know it you have some code you wrote to help you out on a project, working for thousands of users in ways you never expected.
“Necessity is the mother of invention” is a very fitting statement for open source (in my opinion). Creating software for a problem you don’t have (or that doesn’t exist) seems very counter productive, this whole attitude of wanting to create an open source project for “Internet points” absolutely perplexes me. If you want to help the open source community there are thousands of projects that would love the help.
Marketing open source software? I mean put it on Github with a decent readme and a search engine will take your potential users there, however if you created some software for a problem that doesn’t exist, don’t expect too much traffic.
Testing is a good point, but usually in smaller scale open source projects (or single maintainers) you write the code to solve a problem you have, maybe there are a few tests, but to me if I found a piece of software that did what I wanted, and had no tests, I would just write my own tests, we have so many users of open source software now that just seem to moan or log issues when it doesn’t work for them, when in reality they should be sending pull requests (or diffs if you took your dinosaur to work) saying “hey, cool project, I used it but noticed you had no tests, I creating the following, hope this helps”. However, I can count on my hand the amount of times I have seen pulls/diffs like this.
I have gone off on a bit of a tangent, but hey.
What part of the OP, exactly, implied that open source today is all about “Internet points”? Don’t you think that’s just a tad bit uncharitable of you?
I also think your thoughts on testing for small single maintainer projects are way off the mark. I wouldn’t be able to maintain the projects that I do if I didn’t have tests. There would just be no feasible way. I would probably need an army of clones of myself working in concert to do it.
I think basically everything else you said is off the mark too, speaking as someone that has been involved in open source since 2003 or so. I remember the “good old” days before Github, accessible CI, emphasis on docs and testing, etc., and frankly, we are in a much better state nowadays. I mean, those days sucked. Hard.
Add testing, documentation, build, distribution, marketing…
Almost like they are building a product but without any plan for sustainability.
Spend hundreds of hours building something polished, lots of users show up asking for support and then burnout happens. Who maintains the maintainers?
If your goal is to release something that others use and to incorporate feedback from others, then testing, documentation, distribution and all that stuff improves the sustainability of the project.
If you’re just looking to throw something over the wall and don’t care whether anyone uses it, then don’t polish it in the first place?
Like, isn’t this whole thing trivially solved by just asking the simple question, “What problem are you trying to solve?” Instead, people seem intent on bantering about “Internet points.”
If your goal is to release something that others use and to incorporate feedback from others, then testing, documentation, distribution and all that stuff improves the sustainability of the project.
This is contrary to every small OSS project I’ve ever seen. I’m speaking mostly of single person projects. Perhaps you are thinking of large, multi-person projects, e.g. Rails, Rust, etc but those usually have full-time people paid to work on the project. That’s the key bit to sustain it: a paycheck.
Perhaps you are thinking of large,
Uh, no, I’m not. I’m speaking from my experience maintaining mostly small single person projects in my free time.
Watch the “Uh”. It’s patronizing. Be kind.
At this point I’m not sure what we are discussing anymore so I’ll leave it here. We are likely looking in the same direction but with different angles.
wanting to create an open source project for “Internet points” absolutely perplexes me
I think it’s money that has entered the equation, and “internet points” are just an indirect means. An upside is that now there’s an additional incentive to make things. A downside is that now there also is an additional incentive to advertise.
Some passages in the article correspond very closely to what I usually see CoCs as: Václav Havel’s “Workers of the world, unite!” sign (from Power of the Powerless). Most people are not nearly as ideological as these documents make it look, and so the presence of a CoC mostly tells me that someone felt compelled (or was “encouraged”) to put it there.
Still, it’s undeniable that the well-timed promotion of CoCs has yielded a valuable political asset (or high value target, depending on your viewpoint).
To me a 10x developer is just someone who doesn’t waste time constantly, browse the internet, and takes every opportunity to work at a consistent fast pace because they enjoy winning and enjoy being on a team that wins.
I don’t know if there are a lot of 10x developers, but there are a lot of 0.10x developers.
waste time constantly
From what I’ve seen so far this and “tying people up in zero value discussions” are the most frequently employed methods to 0.10x oneself and/or one’s team. The best way I know of to counter both of these is to clarify goals, and work backward from those:
(Edit: to clarify, “waste time” as in “do work the result of which does not decrease distance-to-goal”)
I have found that as long as I have meaningful work to do, I actually prefer the work to browsing. Meaningful in the sense that it has a 1) clear goal that 2) I find worthy of reaching. This can be due to the actual end goal (e.g. product / decision / situation), or it can be due to some aspect of reaching it, e.g. an interesting technical problem to solve or a challenging social situation to navigate.
yeah pretty much I’m a .10x dev right up until the work is interesting, and then I’m a mighty 1x developer. I’ll admit its something I’d like to push through and be able to merely do work for work’s sake. I can hear my father, “Stop messing around and get it done.” lol
Java, XML, Soap, XmlRpc, Hailstorm, .NET, Jini, oh lord I can’t keep up. And that’s just in the last 12 months!
Oh simpler times when we only had 7 new technologies in the last 12 months. Also after I read that I realized this was published in 2001 and it suddenly made a lot more sense.
All they’ll talk about is peer-to-peer this, that, and the other thing. Suddenly you have peer-to-peer conferences, peer-to-peer venture capital funds, and even peer-to-peer backlash with the imbecile business journalists dripping with glee as they copy each other’s stories: “Peer To Peer: Dead!”
s/peer-to-peer/blockchain/g, this may have been from 2001 but it’s still so relevant
What are the 2018 equivalents? Obviously Blockchain: Is there anything else that has that ‘new hotness’ quality which makes it irresistible to neophiles?
Also of interest is the converse: what are the things that have recently lost (or are in the process of losing) this quality?
On top of it, we have a new fad of stronger-consistency DB’s with SQL layers. One of few fads I like, too. I hope they design even more. :)
A 10x engineer isn’t someone who is 10x better than those around them, but someone who makes those around them 10x better.
So how do you call someone who is 10x better than those around them then?
I once worked at a place with over 500 staff developers, where people like that were fired with little hesitation. Still there were some developers that would run circles around anyone else. They’d do a week worth of mere mortal’s work in a day, and it’ll be tidy, well designed and commented throughout.
Guess you can deny people of superior skill and talent exist until your first very humbling encounter with one.
“a week worth of mere mortal’s work in a day”
Those of us who doubt the existence of 10x developers don’t deny the existence of 5x developers, of course!
(I’m kidding, but I do think there’s something weird about the numbers used. No one thinks every dev is equally productive, how many people think they can precisely measure 10x?).
Thing is, if you distribute their work to a team of 5 people, it’ll take several days due to communication overhead. So easily that or even more.
Or maybe you could be one of them if you applied yourself. (i’m teasing)
Of course highly capable people exist, frequently though what I’ve observed people calling 10x developers are actually 1x developers in an environment of 1/10x developers. I think the biggest thing that separates the highly effective individuals is actually the fact that they don’t allow themselves to spin their wheels. They defend their focus. They spend time understanding the problem before getting started. A really really good guide on like how to think effectively in this way is in G. Polya’s “How to solve it”. He talks about general problem solving strategies. Pure mathematics is like lifting weights for programmers. Get swole.
There’s some hubris assuming you’re the only one on Lobsters familiar with mathematics :)
Thanks, but after couple decades programming professionally, am pretty certain I know my limits.
What made you think that I think that?
It’s always healthy to doubt your limits, a lot of people have imagined barriers after which they no longer try. Especially when it’s incorrect base strategies. A lot of people assume its that they just aren’t working hard enough, when really they just aren’t applying their effort in a constructive way. They try working harder and they hit a wall, instead they should be reevaluating their base strategies.
I don’t doubt my limits, just happen to know them. My average productivity, my burst/deathmarch productivity, how much work it takes me to burn out and how long to recover. Short of using stimulants, doubt there is much untapped cognitive potential left.
Your problem is that you view cognitive ability and effort as a primary determinants in productivity. To paint an extreme picture, the smartest mind applied to the dumbest strategy, or the hardest worker on the dumbest strategy will both still be much less successful than the dumbest laziest mind applied to the smartest strategy. In this way strategy is much more important than ability, especially if you are already mundane in your abilities.
Brilliance, blood, sweat, and tears only matter if they’re working in the right direction. Or in other words, mediocrity well applied will outpace brilliance every time.
Without addressing the content of this discussion between you and @varjag, I find your tone and implications disrespectful and condescending: “Get swole”, “It’s always healthy to doubt your limits”, “Your problem is that”. I believe this deserves to be pointed out.
Quite contrary, I think your problem is you axiomatically accept that baseline mental capabilities are roughly equal across population. Working form there, and knowing nothing about me really, you arrive that my problem-solving approaches must be lacking to account for the stark difference in productivity I claim.
So speaking of problem solving, this does not look like a productive approach.
Sorry for being a dick. I was trying to be playful but I think I was being an ass. I was admittedly trying to address things I viewed as trends but I was talking to you an individual. My view is really about how I’ve seen really really capable people faceplant, and maybe not the brightest push through. That doesn’t mean everyone can, or should try to beat the best and hardest working. Sorry for being weird and pushy I guess I’m just going through some shit I wasn’t aware I was going through.
These foundational versions of paradigms with small, useful amounts of primitives are also ideal targets for practicing formal verification. I’m saving this one for potential exercises in SPARK Ada or theorem provers if I learn them. With 60 operators, a verified APL looks quite doable. Also, it would be far from boring since the next move after single-threaded implementation would be verifying SIMD, multicore, or FPGA implementations to max performance. Might even be able to sell it if layering something useful on top given APL-style tools success in finance market.
Here’s an interesting paper about typing array programs that I came across a while ago: http://www.ccs.neu.edu/home/shivers/papers/rank-polymorphism.pdf. Summary from the abstract:
We present the first formal semantics for [the array-computational] model, along with the first static type system that captures the full power of the core language.
Our static semantics, a dependent type system of carefully restricted power, is capable of describing array computations whose dimensions cannot be determined statically. The type-checking problem is decidable and the type system is accompanied by the usual soundness theorems. Our type system’s principal contribution is that it serves to extract the implicit control structure that provides so much of the language’s expressive power, making this structure explicitly apparent at compile time
That’s really neat. Especially making it regular and work with SIMD/MIMD like I speculated about. You should make it a real submission next week in case anyone likes it who didn’t see this thread.
I was about to do just that, but apparently it has already been posted here.
40-50%* of those are not advice that helps the reader, but a political position that the author wishes to advance. There’s nothing wrong with the latter, but sneaking it in under the pretence of engineering career advice only serves to increase polarisation.
* depending on how you read “Encourage everyone to participate equally”. There’s encouragement and there’s encouragement…
I’d have preferred an argument along the lines of “please stop driving down my market value by doing things for free” or just a treatment of the “software as a means to an end” view.
As it stands, the post just reads like a list of excuses, including the false dichotomy of “enthusiast” (meh) vs “pragmatist” (yay). Though that would make for a pretty decent Virgin Enthusiast vs. Chad Pragmatist meme.
Sounds like a language that doesn’t try to waste my time :) Speaking of which, i think it might be interesting to think about what an “iteration” in the language might look like - something to address “I changed some stuff, what is the result?”.
Now, there are people who use “tests” for this purpose, but that term comes with a lot of baggage, much of which results in my time being wasted, at least in the short term. So perhaps it’s possible to factor out the quality-assurance/maintainability/code-monkey-metrics aspects and find something that a) is in-between a REPL and a test suite and b) has a simple, baggage-free term for a name.
Perhaps “examples”? As in, some sort of collection of inputs and their previous/expected/possible results together with short-term time-saving automation. Could be as simple as recording stdout on each run and showing a diff on the next re-run. Or something very clever with generators and fuzzing.
(Edit) Adding on to the diff idea, having useful “diffs” for (nested) maps, lists, and primitive types out-of-the-box might already go a long way.
I think this is a fantastic idea. I can’t speak for other developers, but even when I don’t write full tests for a piece of code, I always run it on some example input, in a REPL or a scratch executable file, and “eyeball” the results to see if they match my expectations. Even though these “examples,” as you call them, don’t come with a machine-checkable criterion for their correctness, they are still valuable in their own right as a first step towards validating that a codebase behaves as intend, and also serve as a kind of executable documentation that future developers can use to understand how a project’s APIs work in practice. Current tooling seems to lack first-class support for this kind of example code, and in some cases (e.g. REPLs) actually actively works to ensure it never lasts beyond a single session, but I think it would be valuable to treat it as an important persistent artifact of the development process; an asset to stand alongside code, documentation, and tests.
This might be more trivial than what you’re looking for, but one very general thing is reachability and its definition as the transitive closure of the “step” relation (
reach(v) = U{reach(w) u {w} | edge(v,w)}).Many things can be viewed as “states and steps” and “can I reach w from v?” is then often something you want to know.
Like in these slides, the reachability problem shows up in some formal methods work on model-checking transition systems. The abstract and finite state machines have been applied to tons of problem areas. That means reachability itself might benefit tons of areas through them. Just me hypothesizing there based on seeing it turn up in quite a few papers.
Slightly more meta than that, reachability as the transitive closure of steps is also a useful way to encode things for model checkers (and model finders, in my case). For example, when using using model-finding for procedural level generation, it’s straightforward to constrain structural properties of levels. But if you want to also constrain dynamic properties of levels, like “the player must be able, consistent with the game mechanics, to reach X in the generated level”, you need to encode a little declarative model of reachability. That’s often easiest to do by defining what can happen in one step first, then adding a transitive-closure rule for overall reachability. E.g. the player model in Figure 8.11 of this textbook chapter does that with a little 3-state FSM player.