123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229 |
- <!doctype html><!-- This is a valid HTML5 document. -->
- <!-- Screen readers, SEO, extensions and so on. -->
- <html lang="fr">
- <!-- Has to be within the first 1024 bytes, hence before the `title` element
- See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset -->
- <meta charset="utf-8">
- <!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 -->
- <!-- The viewport meta is quite crowded and we are responsible for that.
- See: https://codepen.io/tigt/post/meta-viewport-for-2015 -->
- <meta name="viewport" content="width=device-width,initial-scale=1">
- <!-- Required to make a valid HTML5 document. -->
- <title>đ¨ How Basecamp blew up (archive) â David Larlet</title>
- <meta name="description" content="Publication mise en cache pour en conserver une trace.">
- <!-- That good ol' feed, subscribe :). -->
- <link rel="alternate" type="application/atom+xml" title="Feed" href="/david/log/">
- <!-- Generated from https://realfavicongenerator.net/ such a mess. -->
- <link rel="apple-touch-icon" sizes="180x180" href="/static/david/icons2/apple-touch-icon.png">
- <link rel="icon" type="image/png" sizes="32x32" href="/static/david/icons2/favicon-32x32.png">
- <link rel="icon" type="image/png" sizes="16x16" href="/static/david/icons2/favicon-16x16.png">
- <link rel="manifest" href="/static/david/icons2/site.webmanifest">
- <link rel="mask-icon" href="/static/david/icons2/safari-pinned-tab.svg" color="#07486c">
- <link rel="shortcut icon" href="/static/david/icons2/favicon.ico">
- <meta name="msapplication-TileColor" content="#f7f7f7">
- <meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml">
- <meta name="theme-color" content="#f7f7f7" media="(prefers-color-scheme: light)">
- <meta name="theme-color" content="#272727" media="(prefers-color-scheme: dark)">
- <!-- Documented, feel free to shoot an email. -->
- <link rel="stylesheet" href="/static/david/css/style_2021-01-20.css">
- <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
- <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
- <script>
- function toggleTheme(themeName) {
- document.documentElement.classList.toggle(
- 'forced-dark',
- themeName === 'dark'
- )
- document.documentElement.classList.toggle(
- 'forced-light',
- themeName === 'light'
- )
- }
- const selectedTheme = localStorage.getItem('theme')
- if (selectedTheme !== 'undefined') {
- toggleTheme(selectedTheme)
- }
- </script>
-
- <meta name="robots" content="noindex, nofollow">
- <meta content="origin-when-cross-origin" name="referrer">
- <!-- Canonical URL for SEO purposes -->
- <link rel="canonical" href="https://www.platformer.news/p/-how-basecamp-blew-up">
-
- <body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick" data-instant-intensity="viewport-all">
-
-
- <article>
- <header>
- <h1>đ¨ How Basecamp blew up</h1>
- </header>
- <nav>
- <p class="center">
- <a href="/david/" title="Aller Ă lâaccueil"><svg class="icon icon-home">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use>
- </svg> Accueil</a> â˘
- <a href="https://www.platformer.news/p/-how-basecamp-blew-up" title="Lien vers le contenu original">Source originale</a>
- </p>
- </nav>
- <hr>
- <figure><a class="image-link image2 image2-974-1456" target="_blank" href="https://cdn.substack.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe80c61-caa9-42bb-bcf8-bdc766cf11d2_5864x3922.jpeg"><img src="https://cdn.substack.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe80c61-caa9-42bb-bcf8-bdc766cf11d2_5864x3922.jpeg" data-attrs='{"src":"https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/7fe80c61-caa9-42bb-bcf8-bdc766cf11d2_5864x3922.jpeg","height":974,"width":1456,"resizeWidth":null,"bytes":1402908,"alt":"Photo of a half-opened laptop with the screen showing a rainbow-colored explosion. Joshua Woroniecki / Unsplash","title":null,"type":"image/jpeg","href":null}' alt="Photo of a half-opened laptop with the screen showing a rainbow-colored explosion. Joshua Woroniecki / Unsplash"></a><figcaption class="image-caption">Joshua Woroniecki / Unsplash</figcaption></figure>
-
- <p><strong>I.</strong></p>
- <p>At 8AM PT on Friday, a bleary-eyed Basecamp CEO Jason Fried gathered his remote workforce together on Zoom to apologize. Four days earlier, he had thrown the company into turmoil by announcing that âsocietal and political discussionsâ <a href="https://world.hey.com/jason/changes-at-basecamp-7f32afc5">would no longer be allowed on the companyâs internal chat forums</a>. In his blog post, Fried said the decision stemmed from the fact that âtoday's social and political waters are especially choppy,â and that internal discussions of those issues was ânot healthyâ and âhasnât served us well.â The public reaction had been furious, and Fried said he was sorry for the way the new policies had been rolled out â but not for the policies themselves. </p>
- <p>Behind the scenes, Fried had been dealing with <a href="https://www.theverge.com/2021/4/27/22406673/basecamp-political-speech-policy-controversy">an employee reckoning over a long-standing company practice of maintaining a list of âfunnyâ customer names</a>, some of which were of Asian and African origin. The internal discussion over that list had been oriented primarily around making Basecamp feel more inclusive to its employees and customers. But Fried and his co-founder, David Heinemeier Hansson, had been taken aback by an employee post which argued that mocking customer names laid the foundation for racially-motivated violence, and closed the thread. They also disbanded an internal committee of employees who had volunteered to work on issues related to diversity, equity, and inclusion.  </p>
- <p>On Friday, employees had their chance to address these issues directly with Fried and his co-founder. What followed was a wrenching discussion that left several employees I spoke with in tears. Thirty minutes after the meeting ended, Fried announced that Basecampâs longtime head of strategy, Ryan Singer, had been suspended and placed under investigation after he questioned the existence of white supremacy at the company. Over the weekend, Singer â who worked for the company for nearly 18 years, and authored a book about product management for Basecamp called <em>Shape Up: Stop Running in Circles and Ship Work that Matters</em> â resigned.</p>
- <p>Within a few hours of the meeting, at least 20 people â more than one-third of Basecampâs 57 employees â had announced their intention to accept buyouts from the company. And while many of them had been leaning toward resigning in the aftermath of Friedâs original post, the meeting itself pushed several to accelerate their decisions, employees said. The response overwhelmed the founders, who extended the deadline to accept buyouts indefinitely amid an unexpected surge of interest.</p>
- <p>This account is based on interviews with six Basecamp employees who were present at the meeting, along with a partial transcript created by employees. Collectively, they describe a company whose attempt to tamp down on difficult conversations blew up in its face as employees rejected the notion that discussions of power and justice should remain off limits in the workplace. And they suggest that efforts to eliminate disruptions in the workplace by regulating internal speech may cause even more turmoil for a company in the long run. </p>
- <p>âMy honest sense of why everybody is leaving because they're tired of Jason and David's behavior â the suppression of voices, of any dissent,â one employee told me. âThey really donât care what employees have to say. If they don't think it's an issue, it's not an issue. If they don't experience it, then it's not real. And this was the final straw for a lot of employees.â</p>
- <p><strong>II.</strong></p>
- <p>While Fridayâs meeting would eventually grow heated, it began on a conciliatory note. Fried, who employees described as looking tired, began the meeting by apologizing for announcing the policy changes by a public blog post rather than first telling all employees. Hansson tuned into the meeting from bed, where he reported that he was feeling ill, and after making introductory remarks turned off his camera for the duration of the meeting.</p>
- <p>Fried opened the floor for comments and questions. For the next two and a half hours, employees pressed the founders on the policy changes, the events leading up to them, and the state of the company. The first part of the meeting was devoted to discussing the events that had unfolded in the companyâs internal Basecamp chat last month, in which an employee had cited the Anti-Defamation Leagueâs â<a href="https://www.adl.org/sites/default/files/documents/pyramid-of-hate.pdf">pyramid of hate</a>â to argue that documents like the âfunnyâ names list laid a foundation that contributes to racist violence and even genocide.</p>
- <p>Roughly 90 minutes into the meeting, Singer raised his hand and spoke. One of Basecampâs most senior executives, he had joined the company in 2003, when it was known as 37Signals and consisted of just four people. From his original role designing interfaces, Singer had risen to become head of strategy â essentially, Basecampâs chief product officer.</p>
- <p>Along the way, he had also alienated some of his coworkers by promoting conservative views. In 2016, three employees said, he praised right-wing website Breitbartâs coverage of the presidential election in an internal forum. (About a week before rolling out the policy changes, the founders deleted nearly two decades of internal conversations from previous instances of Basecamp and its other collaboration products. Among other things, this made it more difficult for employees I spoke with to accurately describe past interactions with Singer in the forums.)</p>
- <p>In the April discussion about the list of customer names, Singer posted to say that attempting to link the list to genocide was âabsurd.â On the Friday call, he went further.</p>
- <p>âI strongly disagree we live in a white supremacist culture,â Singer said. âI don't believe in a lot of the framing around implicit bias. I think a lot of this is actually racist.â</p>
- <p>He continued: âVery often, if you express a dissenting view, you get called a Nazi. ⌠I have not felt this is open territory for discussion. If we were to try to get into it as a group discussion it would be very painful and divisive.â</p>
- <p>Singer concluded his remarks. Fried responded, âThank you, Ryan.â </p>
- <p>A handful of other speakers followed. Then a Black employee asked if the company could revisit Singerâs remarks. (Iâm withholding the employeeâs name and other identifying details out of colleaguesâ fears that they could be targeted for harassment for speaking out.)</p>
- <p>âThe fact that you can be a white male, and come to this meeting and call people racist and say âwhite supremacy doesn't existâ when it's blatant at this company is white privilege,â the employee said. âThe fact that he wasnât corrected and was in fact thanked â it makes me sick.â</p>
- <p>Fried went to move on, but other employees pressed for more of a response from him and Hansson. At that point, employees said, Singer spoke up again.</p>
- <p>âI can gladly respond,â he said. âI stand by what I said. Saying white people have something in common is racist. I stand by it ⌠I am very sure I donât treat people in a racist way.â</p>
- <p>(Singer remembers one of these quotes differently: âI said that claiming anybody <em>must</em> have a certain viewpoint because of the color of their skin is racist,â he said today.)Â The Black employee said they did not want to hear from Singer, but after some cross-talk he finished his statement.</p>
- <p>âThe difficulty of this conversation is exactly why I raised it,â he said. </p>
- <p>The Black employee responded: âYou said, âwhite supremacy doesn't exist.â That's a factual lie. It's not true.â</p>
- <p>To which Singer responded: âI said we have different ways of framing ⌠If you want to debate whether it exists anywhere, then yeah. But not here at this company, not with the people I associate with.â </p>
- <p>âIt exists right now,â another employee said. âThis is fucking bullshit. You are being ridiculous.â </p>
- <p>âI donât accept that framing,â Singer responded. âItâs not productive to argue further. I donât want to argue. This difference in views, it is what makes a political discussion so difficult.â </p>
- <p>Employees once again pressed Fried and Hansson for a response.</p>
- <p>âI donât like hearing that someone doesnât feel valued,â Fried said. âI donât know what to say ⌠I can understand why [the employee] feels uncomfortable right now. I feel terrible about it. I donât know how else to respond.â </p>
- <p>The employee called for the founders to denounce white supremacy. âThat would be the bare minimum for me,â they said. </p>
- <p>âIâm not here to share my personal views on anything,â Fried said. âIâm horrified when one group dominates another.â Fried, who is Jewish, added that he had lost relatives during the Holocaust. âI think itâs absolutely the most disgusting thing in the world ⌠I canât say thatâs happening here.â </p>
- <p>Fried added that he didnât âknow what to say about specific terms. I donât know how to satisfy that right now.â </p>
- <p>Hansson remained on mute. </p>
- <p>It was in that exchange that several employees decided to quit Basecamp, Iâm told. Two employees told me that they had found themselves crying and screaming at the screen.</p>
- <p>âThis was the test, as far as Iâm concerned,â one told me later. âDo you protect this extremely senior employee that youâve protected for many years? And [the answer] was yes.â</p>
- <p>Over the next hour, employees continued to come forward to discuss Basecampâs new policies and what would be like going forward. But before the meeting ended, one employee spoke up to address Singerâs remarks directly in a way that Fried and Hansson did not.</p>
- <p>âRacism [and] white supremacy are not things that are so convenient that they only happen when full intention is present, or true malice is present,â the employee said. âEvil is not required. Weâre not so lucky as for this to come down to good and evil. Itâs as simple as creating a space where people do not feel welcome.â</p>
- <p>The employee continued: âThe silence in the background is what racism and white supremacy does. It creates that atmosphere that feels suffocating to people. It doesn't require active malice. It's not that convenient.â</p>
- <p>The meeting broke up after no more employees had questions.</p>
- <p><strong>III.</strong></p>
- <p>A half hour after the meeting ended, Fried posted an internal note saying that Singer has been suspended pending an investigation. He added that the company was bringing in unspecified outside âhelpâ to address the situation. </p>
- <p>On Monday morning, in an interview, Fried told me that Singer had resigned. </p>
- <p>I asked Fried to clarify his remarks during the Friday meeting, which had clearly caught him off guard.</p>
- <p>âI denounce white supremacy unconditionally,â he told me. </p>
- <p>Fried declined to answer my other questions on the record.</p>
- <p>I also asked Singer about his remarks. Here is what he said, over email, in full:</p>
- <blockquote><p>âI objected to an employeeâs statement that we live in a white supremacist culture. White supremacism exists, and Americaâs history of racism still presents terrible problems, but I donât agree that we should label our entire culture with this ideology.</p><p>On the call, the view I gave was we all want a future where everyone is treated fairly. And yet there can be disagreement on whether defining our culture as âwhite supremacistâ helps us to get there. The subject is so charged that discussing such disagreements at work quickly leads to misunderstanding, heated accusations, and loss of faith.</p><p>Unfortunately, painful misunderstanding did result. Tensions were so high after the call that I decided it wonât be tenable to stay on the team. I gave my resignation over the weekend.â</p></blockquote>
- <p><strong>IV. </strong></p>
- <p>This week was to have been Basecampâs (virtual) biannual meetup, in which employees come together to bond over social activities while talking about the future of the company. </p>
- <p>Those discussions will still take place, but amidst a backdrop in which some of the companyâs most senior leadership has abruptly departed. More employees are likely to follow in the coming weeks as they find new jobs and make other arrangements, Iâm told. In the meantime, no changes to the policies that Fried laid out last week are planned.</p>
- <p>Fried and Hanssonâs moves last week, and the discussion around them, revealed clear fault lines between executives and workers that go far beyond Basecamp. Founders at Coinbase, Basecamp, and other companies have sought to quash internal dissent that, in their view, distracts workers from the company mission and makes everyone miserable. To a manager, the exchange that led to Singerâs departure could lend credence to the idea that addressing social injustices on company Zoom calls is bound to be disastrous. </p>
- <p>Meanwhile, employees at those companies have recoiled at what appear to be transparent efforts to prevent their workplaces from becoming more diverse, equitable, and inclusive. </p>
- <p>No one I interviewed offered a confident prediction about how the past weekâs events would affect Basecamp over the long term. On one hand, itâs clear that the five books Fried and Hansson wrote <a href="https://basecamp.com/books">lecturing other people about good management</a> made them a lot of enemies, at least on Twitter, where they have been criticized relentlessly. On the other hand, as one employee told me, itâs not clear that average Basecamp customers know or care much about Basecamp the company, and no one predicts a mass revolt of the user base.  </p>
- <p>But as much as the conversation about Basecampâs moves has been framed as âpolitics,â it seems important to remember that the entire affair began when a third of the company â not all of whom are among the 20 who have departed so far, by the way â volunteered to help the company become more diverse and equitable. It was only when their committee dug a skeleton out of the company closet â that list of names â that Fried and Hansson moved to shut the whole thing down. </p>
- <p>âIt was actually a positive thing we were doing,â one employee told me, marveling at the chaos that had followed. âWe had identified the problem, how it happened, and vowed not to do it again. It was a company doing exactly what it should do. The founders refused to lead, and so the company was doing it itself.â</p>
- <p>Another employee said they had been thrown by the fact that the founders, after years of telling employees that they were part of an elite chosen few who were good enough to work at Basecamp, would get rid of them so easily.</p>
- <p>âThey just want to build cool shit all day,â the employee said. âThey don't want to deal with people, which is something you have to do as a manager ⌠Jason and David just threw us away.â</p>
- </article>
-
-
- <hr>
-
- <footer>
- <p>
- <a href="/david/" title="Aller Ă lâaccueil"><svg class="icon icon-home">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use>
- </svg> Accueil</a> â˘
- <a href="/david/log/" title="Accès au flux RSS"><svg class="icon icon-rss2">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-rss2"></use>
- </svg> Suivre</a> â˘
- <a href="http://larlet.com" title="Go to my English profile" data-instant><svg class="icon icon-user-tie">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-user-tie"></use>
- </svg> Pro</a> â˘
- <a href="mailto:david%40larlet.fr" title="Envoyer un courriel"><svg class="icon icon-mail">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-mail"></use>
- </svg> Email</a> â˘
- <abbr class="nowrap" title="HĂŠbergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340"><svg class="icon icon-hammer2">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-hammer2"></use>
- </svg> LĂŠgal</abbr>
- </p>
- <template id="theme-selector">
- <form>
- <fieldset>
- <legend><svg class="icon icon-brightness-contrast">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-brightness-contrast"></use>
- </svg> Thème</legend>
- <label>
- <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
- </label>
- <label>
- <input type="radio" value="dark" name="chosen-color-scheme"> FoncĂŠ
- </label>
- <label>
- <input type="radio" value="light" name="chosen-color-scheme"> Clair
- </label>
- </fieldset>
- </form>
- </template>
- </footer>
- <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
- <script>
- function loadThemeForm(templateName) {
- const themeSelectorTemplate = document.querySelector(templateName)
- const form = themeSelectorTemplate.content.firstElementChild
- themeSelectorTemplate.replaceWith(form)
-
- form.addEventListener('change', (e) => {
- const chosenColorScheme = e.target.value
- localStorage.setItem('theme', chosenColorScheme)
- toggleTheme(chosenColorScheme)
- })
-
- const selectedTheme = localStorage.getItem('theme')
- if (selectedTheme && selectedTheme !== 'undefined') {
- form.querySelector(`[value="${selectedTheme}"]`).checked = true
- }
- }
-
- const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
- window.addEventListener('load', () => {
- let hasDarkRules = false
- for (const styleSheet of Array.from(document.styleSheets)) {
- let mediaRules = []
- for (const cssRule of styleSheet.cssRules) {
- if (cssRule.type !== CSSRule.MEDIA_RULE) {
- continue
- }
- // WARNING: Safari does not have/supports `conditionText`.
- if (cssRule.conditionText) {
- if (cssRule.conditionText !== prefersColorSchemeDark) {
- continue
- }
- } else {
- if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
- continue
- }
- }
- mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
- }
-
- // WARNING: do not try to insert a Rule to a styleSheet you are
- // currently iterating on, otherwise the browser will be stuck
- // in a infinite loopâŚ
- for (const mediaRule of mediaRules) {
- styleSheet.insertRule(mediaRule.cssText)
- hasDarkRules = true
- }
- }
- if (hasDarkRules) {
- loadThemeForm('#theme-selector')
- }
- })
- </script>
- </body>
- </html>
|