|
|
Subscribe / Log in / New account

Debian discusses Discourse

Debian discusses Discourse

Posted Apr 17, 2020 18:17 UTC (Fri) by josh (subscriber, #17465)
In reply to: Debian discusses Discourse by IanKelling
Parent article: Debian discusses Discourse

It's second-class compared to the web interface, but it seems quite comparable to the experience of mailing lists elsewhere. If you took away the web interface entirely, or treated it as a read-only archive, the email interface doesn't feel especially *worse* than any other mailing list manager. You just don't get the advanced features that only exist in the web interface and have no analogue in email that would allow representing them.


to post comments

Debian discusses Discourse

Posted Apr 17, 2020 18:34 UTC (Fri) by pizza (subscriber, #46) [Link] (72 responses)

> It's second-class compared to the web interface, but it seems quite comparable to the experience of mailing lists elsewhere.

There are things you can't do via email that you can do via the discourse UI -- and that is pretty much the entire point of using discourse; to gain those additional capabilities. This means email users are by definition second-class, and that's even before one considers the importance that discourse places on rewarding "user engagement".

It leads to an entirely different user interactivity paradigm, and therefore culture, than traditional email. I make no value judgement if that's _better_ or _worse_, just that it is inherently different.

(That said, I do find it sadly hilarious that we keep reinventing the wheel to compensate for ever-crappier mainstream email clients. Small wonder nobody wants to use email any more..)

Debian discusses Discourse

Posted Apr 17, 2020 20:57 UTC (Fri) by josh (subscriber, #17465) [Link] (39 responses)

That was my point. It's not worse than a mailing list, it just has more features than a mailing list, which you can only use if you don't just use it via email.

Email is a lowest-common-denominator. Should it be a limiting factor preventing the use of other communication mechanisms, just because those mechanisms can't be translated to email?

https://xkcd.com/1782/

Debian discusses Discourse

Posted Apr 17, 2020 21:28 UTC (Fri) by pizza (subscriber, #46) [Link] (26 responses)

> Email is a lowest-common-denominator. Should it be a limiting factor preventing the use of other communication mechanisms, just because those mechanisms can't be translated to email?

I don't know if I'd call email a LCD; there are a ton of things I can do via email that those other communication mechanisms can only dream of, because I'm not limited to whatever features those other tools have deigned that I shall have access to. Including aggregating every account on everything, highly expressive filtering, multiple personalities, full indexing and searching, and the ability to fairly easily tie into other tools. Oh, and total control over my own data.

(Of course when "email" just means "gmail/o365 web/app" then many of those would-be benefits go right out the window..)

Meanwhile, back to Discourse -- like other tools designed around "user engagement", it is set up to reward frequent, shallow uses, and penalizes those who use it more infrequently but with longer/more considered responses -- because more page hits mean more opportunities for data gathering and advertising impressions. Due to those metrics, folks participating via email (or indeed, even the main UI but not logged in) are _penalized_ versus those that remain logged in.

That is what is meant by email users being relegated to second-class citizens -- and yes, while a self-hosted Discourse instance allows one to turn off many/most of those "engagement"-oriented features, you're left with what basically amounts to a crappy forum with a crappier mailing list bolted onto the side.

Again, I'm not saying that a discourse forum is necessarily _worse_ than a mailing list, but the choice of tools influences the culture that develops (and vice versa), and Debian-as-an-organization has some very strong views on the sort of culture they wish their organization to embody, culture that seems to be incompatible with what Discourse fosters due to its fundamental design. Will that desired culture detrimental to Debian in the long run? Time will tell, but either way it's their sandbox.

Debian discusses Discourse

Posted Apr 18, 2020 0:06 UTC (Sat) by NYKevin (subscriber, #129325) [Link] (18 responses)

> (Of course when "email" just means "gmail/o365 web/app" then many of those would-be benefits go right out the window..)

As one of the twenty-somethings who seem to always get blamed for not liking email sufficiently, I thought I'd chime in on this.

For me, "email" does mean "Gmail." I know perfectly well that I could set up a local MUA and configure it fancily, but frankly, setting up adequate (but not great) Gmail filters is already an order of magnitude more effort than I actually wanted to spend in the first place. I just want to talk to people! I don't really care whether it's over Gmail, Discourse, or some other thing, so long as I can access it from x-www-browser (because I already spend a lot of time on the web for other purposes anyway, and human context switching is far more expensive than computer context switching). In practice, Gmail serves that purpose acceptably. However, if I'm limited to plain text emails (I've never encountered a mailing list that encourages the use of HTML), then the actual feature set available to me is rather circumscribed in comparison to other technologies. So that's why I do regard email as a LCD. That doesn't mean I don't use it - my family is actually rather frustrated that I refuse to use Facebook etc. But it does mean that I consider it a legacy technology, which primarily serves as a backup option for people who are not otherwise able to communicate.

> Meanwhile, back to Discourse -- like other tools designed around "user engagement", it is set up to reward frequent, shallow uses, and penalizes those who use it more infrequently but with longer/more considered responses -- because more page hits mean more opportunities for data gathering and advertising impressions. Due to those metrics, folks participating via email (or indeed, even the main UI but not logged in) are _penalized_ versus those that remain logged in.

I agree that engagement metrics are Not Great, especially for a project such as Debian. They might make sense for a community where forum posts are the primary or only means of participation, but that obviously does not describe any open source or free software community. There are quite a lot of forum-only internet communities not related to software development, who are probably the intended target of these features.

> That is what is meant by email users being relegated to second-class citizens -- and yes, while a self-hosted Discourse instance allows one to turn off many/most of those "engagement"-oriented features, you're left with what basically amounts to a crappy forum with a crappier mailing list bolted onto the side.

I'm not sure you're giving forums, in general, enough credit here. A forum has a far lower barrier to entry than a mailing list, for several reasons (note: in this context, "entry" = "mostly lurking with limited posting"):

- Most mailing list web interfaces (e.g. Mailman/Pipermail) force you to read one email per page-load, while most forum software allows you to read many messages per page-load. Even if this was the only benefit, it would be enormous all by itself.
- Mailing list threads are nested, and can turn into a horrendously complicated tree of responses. Reading the whole thread involves a pre-order tree traversal, and with poor quoting it may be difficult to remember the context in which each reply was made. Most forums are flat and do not nest replies, which makes it harder for long off-topic tangents to be sustained, and makes it less complicated to read the entire topic in one pass. This also makes it more socially acceptable for moderators to split an off-topic set of comments into a new thread (at which point they are entirely removed from the original thread and no longer visually clutter it).
- If you join a mailing list, then everything gets sent to you and you're expected to post-filter. If you post to a forum thread, you (may, depending on software capabilities) automatically receive replies from that thread only.
- Mailing lists trivially allow for off-list communication, which cannot be easily moderated. Forums usually have private messaging, but it's still on-service and subject to moderation if abused. More generally, moderators on a forum have a much richer set of tools available to them than moderators on a mailing list (which does require appropriate discretion from said moderators, of course).
- Forums can have stickied and locked threads, for metadata such as rules and announcements (which are both highly relevant to lurkers since they usually have excellent signal-to-noise ratio). Mailing list threads can be locked, but this is usually only done in extremis. Announcements are normally implemented as "just a regular thread, except on the foo-announce@ list." If you don't subscribe to that list, then it's simply assumed that you're not a "real" member of the community.

Debian discusses Discourse

Posted Apr 18, 2020 0:46 UTC (Sat) by pizza (subscriber, #46) [Link] (4 responses)

> For me, "email" does mean "Gmail." I know perfectly well that I could set up a local MUA and configure it fancily, but frankly, setting up adequate (but not great) Gmail filters is already an order of magnitude more effort than I actually wanted to spend in the first place. I just want to talk to people! [...] In practice, Gmail serves that purpose acceptably.

I'm glad you have something that is "good enough" for your purposes, but without a decent MUA and a workflow I've refined over many, many years, I'd have been long overwhelmed by the sheer volume of communication traffic I need to stay on top of and meaningfully respond to, much of it highly technical in nature.

Yes, there was a learning curve for this stuff, and maintaining it takes some time and effort, but in return, I gain efficiencies that pay for themselves many, many times over in the form of (much!) higher personal productivity.

>> That is what is meant by email users being relegated to second-class citizens -- and yes, while a self-hosted Discourse instance allows one to turn off many/most of those "engagement"-oriented features, you're left with what basically amounts to a crappy forum with a crappier mailing list bolted onto the side.

> I'm not sure you're giving forums, in general, enough credit here. A forum has a far lower barrier to entry than a mailing list, for several reasons (note: in this context, "entry" = "mostly lurking with limited posting"):

It was not my intent to call all forums crappy, just that Discourse with those "engagement" features turned off amounts to little more than a relatively crappy example of a forum, with an even crappier implementation of a mailing list tacked onto it. In other words, turn those features off, and there are better forums, and much better mailing lists.

Debian discusses Discourse

Posted Apr 18, 2020 6:54 UTC (Sat) by NYKevin (subscriber, #129325) [Link] (3 responses)

> I'm glad you have something that is "good enough" for your purposes, but without a decent MUA and a workflow I've refined over many, many years, I'd have been long overwhelmed by the sheer volume of communication traffic I need to stay on top of and meaningfully respond to, much of it highly technical in nature.

I receive a large volume of email as well. I found that prioritizing emails with my own address in the To: and CC: lines, and one or two carefully chosen lists, was sufficient, and nearly all of my other filters are just quality-of-life "skip the inbox" filters. I've got several thousand unread emails in my inbox at any given time, and I'm not too concerned about reading most of them, because I already read all of the messages that I actually need to care about. The rest, I just let float by into the ether, occasionally plucking one from the stream of detritus if the subject line looks interesting. I'm sure this sounds horrifying and uncivilized to some readers, but I read all the email I need to read, and I don't read the rest. Isn't that what a filtering strategy is meant to accomplish?

> Yes, there was a learning curve for this stuff, and maintaining it takes some time and effort, but in return, I gain efficiencies that pay for themselves many, many times over in the form of (much!) higher personal productivity.

I'm well aware of this general concept; I have a highly tricked out zshrc and a moderately tricked out vimrc. I just don't see much point in extending that effort to email when the only benefit is making the number next to my inbox folder smaller (as opposed to, say, allowing me to execute commands or edit text with fewer keystrokes, which directly increases my productivity).

> It was not my intent to call all forums crappy, just that Discourse with those "engagement" features turned off amounts to little more than a relatively crappy example of a forum, with an even crappier implementation of a mailing list tacked onto it. In other words, turn those features off, and there are better forums, and much better mailing lists.

That's certainly fair, and I'm not sufficiently experienced with forum software to comment here. My concern, however, is that nobody is discussing any forum-like alternatives as far as I can see from limited skimming of the Debian discussion (as I mentioned above, there's a laundry list of reasons why these discussions are hard to read as a non-participant, so I may have missed something). And it's likely that many of the same arguments you and others are making against Discourse would translate to most other forum software packages as well (none of them are going to support POP3 or SMTP, for example, so you won't be hooking your MUA up to the forum).

As a result, I fear the "older" open source and free software communities may reject forums altogether, and wall themselves off into an aging and disfavored protocol. SMTP already requires numerous weird extensions to the RFC just to make it slightly harder to send spam, and its encryption story has never made much sense in comparison to HTTPS. Meanwhile, web-based technologies get more powerful and modern every year. Meanwhile, the "younger" open source (mostly) communities will embrace GitHub et al. and refuse to even have mailing lists, which creates a worst-of-both-worlds scenario wherein Debian developers (and anyone else in the "distro" space) have to constantly context-switch between their MUAs and their browsers to interact with each other and upstreams respectively. There's also a serious risk of email ceasing to effectively federate, as more and more anti-spam measures are piled on top of a system that was never designed for a global, trustless internet. I don't think this is happening any time soon, but nobody appears to be planning for it at all.

There are problems with web-based tech, too. Federation is usually poor to nonexistent (unless you count dumb hyperlinking), many sites are bloated beyond all reason, the web is increasingly a Chrome/Chromium monoculture, and it's not clear that anyone actually cares about any of these problems enough to do something about them. However, if all of the people who most strongly object to those issues simply avoid using the web entirely, then the web will continue to develop without their input, and things will get worse.

Debian discusses Discourse

Posted Apr 18, 2020 13:01 UTC (Sat) by pizza (subscriber, #46) [Link] (2 responses)

> (as I mentioned above, there's a laundry list of reasons why these discussions are hard to read as a non-participant, so I may have missed something).

It's worth noting that what makes this hard is that you were a _non-participant_, not because it took place via email versus Discourse or some other forum. How do you ensure you don't miss something important, without reading the whole thing? (Important to _you_, not what others involved might think is important. Because, especially when discussing technical things, the details matter)

> And it's likely that many of the same arguments you and others are making against Discourse would translate to most other forum software packages as well (none of them are going to support POP3 or SMTP, for example, so you won't be hooking your MUA up to the forum).

This is one of the points I tried to make earlier. I've participated in forums where the admins went through great lengths to make email users have a first-class experience in the discussions. Technically, it worked great, but for any given message, you could *always* tell who wrote it via email and who wrote it via the web site -- not just from superficial details like quoting style or the typical length of the response, but the depth of what was said as well -- the difference between the cultures was quite stark. It quickly became clear that folks who did most of the actual development work overwhelmingly preferred email, and the mass of non-[code-]contributing users overwhemingly preferred the forum.

Of course, looking just at the traffic/usage metrics the latter vastly outnumbered the former, leading naive outsiders to question why so much effort went into supporting those old fogeys who just didn't want to embrace modern things..

I've seen this pattern repeat itself many, many times over the years.

(Oh, and you don't need to make your forum directly speak POP3; that's what the recipients' email servers are for, and these days webapps that do any sort of email notifications nearly always directly speak SMTP)

> However, if all of the people who most strongly object to those issues simply avoid using the web entirely, then the web will continue to develop without their input, and things will get worse.

Until, of course, those developing those "modern" web thingeys with ever-more-"modern" tooling realize they still need an actual operating system running on actual hardware, at which point their heads explode when they encounter that _very_ different mentality and culture.

Systems administration used to be the ultimate example of "box of tools, make it do what you want" and a necessary rite of passage (or minimum threshold of competence to enter) but now, like so much else, it's just another platform API to interact with, handed down from up high on immutable [1] slabs of javascript.

[1] Immutable for the end user; the service provider can and will change it whenever they feel like it.

Debian discusses Discourse

Posted Apr 18, 2020 16:04 UTC (Sat) by NYKevin (subscriber, #129325) [Link] (1 responses)

> It's worth noting that what makes this hard is that you were a _non-participant_, not because it took place via email versus Discourse or some other forum.

I already rattled off a huge list of reasons why I disagree with this assertion. I will not repeat myself.

> How do you ensure you don't miss something important, without reading the whole thing?

Is this a trick question? I would read the whole thing. But that's a lot easier when it's in a forum than when it's in an email thread, as I explained.

> Until, of course, those developing those "modern" web thingeys with ever-more-"modern" tooling realize they still need an actual operating system running on actual hardware, at which point their heads explode when they encounter that _very_ different mentality and culture.

Pffft, they don't need to care about that. Just look at Chrome OS. Sure, someone has to develop Zircon etc., but the average web developer does not care.

> Systems administration used to be the ultimate example of "box of tools, make it do what you want" and a necessary rite of passage (or minimum threshold of competence to enter) but now, like so much else, it's just another platform API to interact with, handed down from up high on immutable [1] slabs of javascript.

This is a Good Thing, it means more people can contribute with less effort. Sure, they may be using a methodology, language, and layer of abstraction that is foreign to your experience, but they're still, y'know, developing software.

Debian discusses Discourse

Posted Apr 18, 2020 16:29 UTC (Sat) by pizza (subscriber, #46) [Link]

> Is this a trick question? I would read the whole thing. But that's a lot easier when it's in a forum than when it's in an email thread, as I explained.

Our experiences obviously differ, but the best interface I've personally used for staying on top of a large number of mailing lists is a nntp reader pointed at the gmane nntp gateway.

> Pffft, they don't need to care about that. Just look at Chrome OS. Sure, someone has to develop Zircon etc., but the average web developer does not care.

...Nor should they have to care.

However, it behoves those webdevs to be aware that they aren't the only fish in the pond, and their ability to generally not care is due to a great deal of effort on the part of many other folks who (usually) have pretty good reasons for doing things their own way.

> This is a Good Thing, it means more people can contribute with less effort. Sure, they may be using a methodology, language, and layer of abstraction that is foreign to your experience, but they're still, y'know, developing software.

"developing software" basically consists of bolting abstraction layers on top of abstraction layers, which is great until one of those buried middle layers inevitably leaks all over your shoes.

Debian discusses Discourse

Posted Apr 18, 2020 9:16 UTC (Sat) by nilsmeyer (guest, #122604) [Link] (7 responses)

>- Mailing lists trivially allow for off-list communication, which cannot be easily moderated. Forums usually have private messaging, but it's still on-service and subject to moderation if abused. More generally, moderators on a forum have a much richer set of tools available to them than moderators on a mailing list (which does require appropriate discretion from said moderators, of course).

I don't see how this is a good thing. You can block / ignore people on mailing lists without having to resort to a moderator or other authority figure. This allows you to make your own decisions on who you want to interact with instead of making a decision for the whole community.

Debian discusses Discourse

Posted Apr 18, 2020 11:30 UTC (Sat) by smurf (subscriber, #17840) [Link] (4 responses)

Yes, you can do that. No, it's not efficient, nor effective, and will do nothing to fix an unwelcoming culture. Ask any female and/or minority participant of "open" tech mailing lists or fora.

Debian discusses Discourse

Posted Apr 18, 2020 12:44 UTC (Sat) by nilsmeyer (guest, #122604) [Link] (3 responses)

I'm not saying it fixes a culture, obviously if a large portion of a community lands in your ignore/block list then it's not the right community for you. I still think it's far more efficient and less stressful than to try and get individuals removed.

Debian discusses Discourse

Posted Apr 18, 2020 18:11 UTC (Sat) by NYKevin (subscriber, #129325) [Link] (2 responses)

That's why I characterized it as a barrier to entry. Sure, you *can* block people one at a time, and tell yourself that they're outliers. You *can* build up a thick skin and get really good at ignoring barbs. But the need to do those things makes it harder for new people to get involved in the community.

> I still think it's far more efficient and less stressful than to try and get individuals removed.

I have never "tried to get individuals removed." I have, on plenty of occasions, pressed the equivalent of the "report" button and thereafter ignored the person. It's not my problem, it's the moderators' problem. This is another cultural difference between forums and mailing lists: Forums have a much greater tolerance for the moderators doing their jobs. Even in the thread linked in this very story, you can see a moderator and a member of the community arguing back and forth about the former's authority to politely ask a third user to stop making references to Hitler. On a typical forum, such an argument would be quite ridiculous.

Debian discusses Discourse

Posted Apr 18, 2020 19:02 UTC (Sat) by pizza (subscriber, #46) [Link] (1 responses)

> That's why I characterized it as a barrier to entry. Sure, you *can* block people one at a time, and tell yourself that they're outliers. You *can* build up a thick skin and get really good at ignoring barbs. But the need to do those things makes it harder for new people to get involved in the community.

How is this phenomenon unique to email or mailing lists?

> I have, on plenty of occasions, pressed the equivalent of the "report" button and thereafter ignored the person. It's not my problem, it's the moderators' problem.

Yeah, "make it someone else's problem" is great for an individual until you're on the receiving end of someone deliberately reporting your posts because they don't like what you have to say, and that "someone else" is a three strikes algorithm that perma-bans you before you have a chance to object.

(Or if you're the one having to administer or moderate the forum/mailing list/whatever, and the professional troll you just blocked turns their sights to you and your family instead. Welcome to the jungle.)

Debian discusses Discourse

Posted Apr 22, 2020 1:21 UTC (Wed) by NYKevin (subscriber, #129325) [Link]

> How is this phenomenon unique to email or mailing lists?

Because:

- In a forum, a deleted message is gone. In a mailing list, a message deleted from the server has already been delivered to everyone's inbox, and normally cannot be recalled.
- Mailing lists usually lack a one-click report button or link. They *might* have an abuse address, but typing out a message justifying yourself creates a lot more friction than just hitting a button.
- Off-list communication is completely impossible to effectively moderate. Forums need not expose a user's email address, typically require registration, and if necessary can implement IP blocking etc., so that their private messages are a lot harder to abuse.
- Mailing list users, in my experience, tend to be a lot more suspicious of content moderation than forum users, which makes it harder for list moderators to use the limited tools they have.

> Yeah, "make it someone else's problem" is great for an individual until you're on the receiving end of someone deliberately reporting your posts because they don't like what you have to say, and that "someone else" is a three strikes algorithm that perma-bans you before you have a chance to object.

I've never heard of a forum designed that way. Can you provide a specific, real-world example?

> (Or if you're the one having to administer or moderate the forum/mailing list/whatever, and the professional troll you just blocked turns their sights to you and your family instead. Welcome to the jungle.)

Moderators are not new users, so I would characterize this as out of scope. Moderation will always be difficult. But as explained above, a forum does provide the moderator with more powerful tools and a greater shield of pseudonymity, if it comes to that.

Debian discusses Discourse

Posted Apr 19, 2020 15:31 UTC (Sun) by spwhitton (subscriber, #71678) [Link]

Seems like it's useful to have both (centralised moderation and personal killfiles), and e-mail has the flexibility of allowing for both, as compared with a web forum.

Debian discusses Discourse

Posted Apr 23, 2020 9:27 UTC (Thu) by neilm (guest, #28422) [Link]

> I don't see how this is a good thing. You can block / ignore people on mailing lists without having to resort to a moderator or other authority figure. This allows you to make your own decisions on who you want to interact with instead of making a decision for the whole community.

Just for the record, Discourse allows individual users to mute others (so you never get a notification about a post) or even ignore other users (suppress all posts and notifications from these users.). This doesn't require moderator intervention.

Debian discusses Discourse

Posted Apr 18, 2020 15:18 UTC (Sat) by nilsmeyer (guest, #122604) [Link]

> However, if I'm limited to plain text emails (I've never encountered a mailing list that encourages the use of HTML), then the actual feature set available to me is rather circumscribed in comparison to other technologies.

I think Markdown is a good compromise here since it's still readable as plain-text without a renderer and it could also be rendered on a console. HTML adds far too much bloat for my taste and most clients don't support it well.

Debian discusses Discourse

Posted Apr 18, 2020 16:05 UTC (Sat) by ballombe (subscriber, #9523) [Link] (3 responses)

Part of the problem is that youngsters use their smartphones as communication device over laptop or desktop, and smartphones do not provide persistence storage the way desktop does. For one thing, smartphones do not have hard-drives and they can easily get lost. This leads to a reliance on online storage of message, that is cloud, gmail, forum archive etc.
Email is more useful when the email archive is available as files on the development box.

Debian discusses Discourse

Posted Apr 18, 2020 16:58 UTC (Sat) by mfuzzey (subscriber, #57966) [Link] (2 responses)

True but not sure how relevant that is regarding communication that is part of developing free software?

I don't think serious software development can be done on a smartphone (unless you hook up enough external gear that it essentially stops being a smartphone and is just a CPU module).

A smartphone is really a content consumption and basic communication device and is not really suited to content creation.

So, if you're using a desktop / laptop to actually do the development work (writing code, documentation or whatever) you're better off using the same technology to communicate with others on the project

Debian discusses Discourse

Posted Apr 18, 2020 19:43 UTC (Sat) by ballombe (subscriber, #9523) [Link]

> True but not sure how relevant that is regarding communication that is part of developing free software?

That means they are uncomfortable with email processing, so mailing lists overwhelm them.
Imagine your phone beeping each time you receive an email from LKML !

> I don't think serious software development can be done on a smartphone (unless you hook up enough external gear that it essentially stops being a smartphone and is just a CPU module).

I do not disagree, but it is not the point.

> A smartphone is really a content consumption and basic communication device and is not really suited to content creation.

This is not their experience at all. In fact most of what they created digitally since they were eleven was done on their smartphone.

> So, if you're using a desktop / laptop to actually do the development work (writing code, documentation or whatever) you're better off using the same technology to communicate with others on the project

Sure, but for them that would mean setting a dedicated email address for FLOSS interaction and learning how to use a MUA, while they can accept a pull-request on github with their smartphone.

Debian discusses Discourse

Posted Apr 23, 2020 15:07 UTC (Thu) by mrshiny (guest, #4266) [Link]

I'm over 40 and greatly appreciate the ability to do things like respond to tickets, review code, tag commits, etc, from a web based interface on my phone. It dramatically boosts productivity because I can do it at any time; I don't need to be at a workstation.

Sure, I'm not coding from my phone, but a significant portion of development work is not coding, and having the flexibility to do it from a mobile device is very valuable. YMMV but it's 2020, people are using phones for work.

Debian discusses Discourse

Posted Apr 18, 2020 6:45 UTC (Sat) by josh (subscriber, #17465) [Link]

I do completely agree that the gamification bits need disabling.

Debian discusses Discourse

Posted Apr 19, 2020 18:01 UTC (Sun) by tesarik (subscriber, #52705) [Link] (5 responses)

> Oh, and total control over my own data.

This part got somewhat little attention. Email was designed as a decentralized service, just like most of the early-days Internet services. Anyone can run a MTA, let people know about it somehow (MX record in DNS these days) and that's about it. Sure, mailing lists have a central point, but as soon as you fork off a private off-list thread, you're on your own. Also, moving a mailing list to another provider is relatively easy, and there are usually many copies of the complete mailing list archive, should anything wrong happen to the main site.

OTOH if everything is stored in a single database, this database (and its operator) constitute a single point of failure. Even worse, if someone tampers with the database (some government agencies come to mind for some reason), will anyone even have enough evidence to prove it?

Just saying…

Debian discusses Discourse

Posted Apr 21, 2020 9:54 UTC (Tue) by pkern (subscriber, #32883) [Link] (4 responses)

The counter point to this is that ~noone on the internet requires encryption for email and is easily subjected to downgrade attacks. So MTAs can tamper with email (ad footers), withhold email and it's not like you are in control of your data there either when the MTA inserts your IP and everything is sent in the clear. Yes, you can sign email but now you have all the problems of PGP or S/MIME alongside the others.

Anonymity is also much harder to achieve with email than it is with web fora. And it turns out anonymous posting to mailing lists is frowned upon, which is kinda ironic given how people say they are in control of their data. (Really? Tried to delete a post on someone else's machine?) Yes, if you are tech savvy and run your own MTA you might be able to be more in control. Otherwise you likely are not.

Debian discusses Discourse

Posted Apr 23, 2020 5:11 UTC (Thu) by bferrell (subscriber, #624) [Link]

"So MTAs can tamper with email (ad footers), withhold email and it's not like you are in control of your data there either when the MTA inserts your IP and everything is sent in the clear."

For these very reasons, I run my own MTA. I've done so for a long time.

Is it easy? Maybe if I were setting it up from scratch today it would be more tedious now than it was when setting up an MTA was new. And I've had to bolt things on over the years to keep it up to date.

So it's hard. So what. As others here have mentioned, it gives me full control of my mail.

Know what else is hard? Writing code and thinking logically.

It makes my ears bleed and my brains leak sometimes. When I do it, it's a choice I make and I really don't think it's anyone else's responsibility to make it easier for me to execute on that decision. That decision is MY interior landscape.

In my opinion (humble or not), it's rude and obnoxious to try to hold others responsible or accountable in any way for my landscape/my decisions. That opinion is based on years of trying to do exactly that and finding out just how poorly THAT works.

'nuff said.

Debian discusses Discourse

Posted Apr 23, 2020 5:38 UTC (Thu) by tesarik (subscriber, #52705) [Link] (2 responses)

You may be right with encryption, although any reasonably modern MTA implements SSL, so as long as the mailing list host and your MTA support it, everything is encrypted end-to-end. If you add a backup MX relay operated by a third party (to allow receiving mail when your MTA host is down/unreachable), then you no longer have full control, indeed. But whether you add such MX (and which provider you choose) is still your own decision.

On the other hand, if you (hypothetically) move everything to Discourse, and Civilized Discourse Construction Kit, Inc. is bought e.g. by Baidu, Inc. next year, what can you do?

Regarding anonymity, I believe that topic is completely separate. FWIW many FOSS communities have never aimed at anonymity of individual contributors. Quite the opposite! They give credit where credit's due and often keep a very long list of all people who have helped. For example, I sent a small patch set to the Wine project many years ago, and my name was added to the AUTHORS file automatically. I did not even expect it to happen, but I was flattered. My name is still there; I have no intention to ask for deletion. Why should I?

Debian discusses Discourse

Posted Apr 23, 2020 5:44 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link]

> On the other hand, if you (hypothetically) move everything to Discourse, and Civilized Discourse Construction Kit, Inc. is bought e.g. by Baidu, Inc. next year, what can you do?
1. Fork the Discourse (it's OpenSource).
2. Switch to another forum software, leaving the old forum as a read-only archive.
3. Switch to another forum software, importing the data from Discourse.

Debian discusses Discourse

Posted Apr 23, 2020 19:50 UTC (Thu) by nybble41 (subscriber, #55106) [Link]

> … although any reasonably modern MTA implements SSL, so as long as the mailing list host and your MTA support it, everything is encrypted end-to-end.

End-to-end encryption would mean zero instances of the message in plaintext from the time it leaves the sender's mail client to the time it arrives at the final recipient's mail client. SSL transport for e-mail is not end-to-end. It only encrypts individual links. Every server in the path can see the plaintext, including (at a minimum) your SMTP relay, the mailing list host, and the recipient's MTA.

Debian discusses Discourse

Posted Apr 18, 2020 1:35 UTC (Sat) by karkhaz (subscriber, #99844) [Link] (11 responses)

> Email is a lowest-common-denominator.

Why is this a bad thing?

Email, precisely because of the lack of whizzbangs and knick-knacks mentioned in the article, allows the user to decide for themselves what features they want to build over it. It is like a Unix program that can be composed with other tools, while Discord is more like a macOS Application that implements exactly what the developers want, and serves the developers' (rather than the user's) needs.

For any of the features that the community as a whole want---what could be simpler than defining an X-header and implementing it in a few Free email clients of choice? Clients like mutt, riseup, and so on are generally quite receptive to this sort of thing. Would you rather beg Discord to implement a feature that matters to your community and nobody else?

By using email, I have the freedom to barely use it at all. I don't like the idea of my mail service getting a request from wherever in the world my laptop is every minute, so I use IMAP just to download my email once to a personal server, whence it gets committed to git-annex, and replicated to all my machines over git over SSH over WireGuard. No need for the data to remain permanently on the hosting server or to travel all over the world over TLS.

I can run python scripts over the Maildir to organize everything the way I like. I can choose a mail provider outside the surveillance catastrophe that is the United States, or host it myself. I can view threads, while the commenters on here that hate threading for some reason can just use a client that shows a straight list of emails. I could belabour the point, but I'd rather not, because I realise that not everybody shares my values. Using Discord forces everybody to have the same values and make the same compromises, while I can still talk to somebody using GMail even if I would never subject myself to such a crippled interface.

Can I do any of these things with Discord? Of course not. Should email have been implemented with any of these features from the beginning? Of course not, because then I wouldn't have the chance to decide which of them are important enough to implement myself.

Debian discusses Discourse

Posted Apr 18, 2020 1:54 UTC (Sat) by Cyberax (✭ supporter ✭, #52523) [Link] (10 responses)

> Can I do any of these things with Discord? Of course not.
You actually can, through its API.

Debian discusses Discourse

Posted Apr 18, 2020 2:26 UTC (Sat) by karkhaz (subscriber, #99844) [Link] (4 responses)

What a kindness! But I prefer to do it not using an API, since how I deal with my email isn't Discord's business.

I possibly wasn't clear enough above: literally none of my email manipulation happens server-side. I download my email once, trash it on the email provider, then work with it on my own machines. As far as my email provider knows, every single email that gets sent to me gets deleted without being read very soon after it reaches my machine.

The larger point is that Discord's API is Discord's API. If there's something I need from it that it doesn't provide, there isn't anything I can do about that. Using a protocol like email, that gives you nothing, leaves you free to build anything.

Debian discusses Discourse

Posted Apr 18, 2020 7:10 UTC (Sat) by gfernandes (subscriber, #119910) [Link] (3 responses)

"Getting deleted on the server..." is simply a request you may send.

What the server does with it, isn't under your control. You can't verify whether said deletions are in fact actual deletions or mere archivals.

Debian discusses Discourse

Posted Apr 18, 2020 12:29 UTC (Sat) by karkhaz (subscriber, #99844) [Link] (2 responses)

That's absolutely right. If I was very concerned about this, I could choose to host email on my own servers. With Discord, I don't have the choice.

Debian discusses Discourse

Posted Apr 23, 2020 16:50 UTC (Thu) by mrshiny (guest, #4266) [Link] (1 responses)

Discourse != Discord. Discourse is open source.

Debian discusses Discourse

Posted Apr 23, 2020 20:27 UTC (Thu) by karkhaz (subscriber, #99844) [Link]

Thanks, I noticed this very late in the discussion. The same issues do still apply, but the discussion and range of viewpoints on this thread have been truly fascinating and eye-opening, and I'm learning a lot about what other people value from non-email platforms.

Debian discusses Discourse

Posted Apr 18, 2020 19:27 UTC (Sat) by riking (guest, #95706) [Link] (3 responses)

A human using a custom client interacting with the API to participate is against the TOS. You won't get caught until it starts to become a problem. The API exists, but it ain't libre.

Debian discusses Discourse

Posted Apr 18, 2020 19:28 UTC (Sat) by riking (guest, #95706) [Link] (1 responses)

To clarify: the above is talking about discORD, not discOURSE. Discourse has no such TOS restriction on custom clients, merely latent technical difficulties.

Debian discusses Discourse

Posted Apr 18, 2020 19:31 UTC (Sat) by Cyberax (✭ supporter ✭, #52523) [Link]

Ah, OK. This makes sense, Discord it totally a software-as-a-service.

Debian discusses Discourse

Posted Apr 18, 2020 19:30 UTC (Sat) by Cyberax (✭ supporter ✭, #52523) [Link]

What ToS? Discourse can be hosted and you can set up whatever ToS you want. Just out of curiosity, I also checked ToS for Rust's Discourse: https://internals.rust-lang.org/tos and it has nothing there.

Debian discusses Discourse

Posted Apr 20, 2020 18:17 UTC (Mon) by hkario (subscriber, #94864) [Link]

yeah, web API, with web API focus on backwards compatibility

no, thank you

Debian discusses Discourse

Posted Apr 18, 2020 17:04 UTC (Sat) by marcH (subscriber, #57642) [Link] (31 responses)

> > It's second-class compared to the web interface, but it seems quite comparable to the experience of mailing lists elsewhere. You just don't get the advanced features that only exist in the web interface and have no analogue in email that would allow representing them.

> There are things you can't do via email that you can do via the discourse UI -- and that is pretty much the entire point of using discourse; to gain those additional capabilities

The entire issue is summarized above. Discourse and all other web interfaces offer advanced features (auto cross links, filtering, searching,...) not because they have a web interface but because the discussions are in a _database_.

The code review / discussion solution of the future is a some sort of hopefully open-source and distributed database, there's no escaping that. However this future tool just doesn't have a good command line interface yet that advanced users can script to death like they already do for email. Think pwclient done right and from scratch. Email will be of course be one of the interfaces.

Every time some email fanboy starts with: "but look at all I can do with my crazy email scripting" they give a laundry list of features built-in in most databases.

Fixing this will be compared to creating git.

Debian discusses Discourse

Posted Apr 18, 2020 17:07 UTC (Sat) by marcH (subscriber, #57642) [Link] (4 responses)

Forgot this sorry: NNTP was the closest we got so far. That's why so many people loved gname.org.

Debian discusses Discourse

Posted Apr 19, 2020 15:37 UTC (Sun) by spwhitton (subscriber, #71678) [Link] (3 responses)

Could you explain a bit more how accessing mailing lists over NNTP is like having a database?

Debian discusses Discourse

Posted Apr 19, 2020 16:29 UTC (Sun) by marcH (subscriber, #57642) [Link] (2 responses)

Let me rephrase: _Usenet_ is a distributed database.

As I wrote earlier, every advanced "email scripter" is independently re-inventing/mimicking database features on top of mbox files. As of August 2019, none of that was "distributed". Proof: messages didn't even have a universal unique key yet:
https://lwn.net/Articles/797613/ "Change IDs for kernel patches"
Hard to believe from the community who created git.

Debian discusses Discourse

Posted Apr 20, 2020 23:53 UTC (Mon) by spwhitton (subscriber, #71678) [Link] (1 responses)

Hmm, not sure you've established a significant difference between e-mail and Usenet here, since AIUI you can't just go and edit Usenet posts that already exist to add metadata. lore.kernel.org would seem to be as much of a database as Usenet in your terms. But I have not really used Usenet myself, so I might be misunderstanding.

Debian discusses Discourse

Posted Apr 21, 2020 0:26 UTC (Tue) by marcH (subscriber, #57642) [Link]

> lore.kernel.org would seem to be as much of a database as Usenet in your terms.

Maybe it is, and maybe it is closer to a proper code review database than Usenet.

It's also 40 years later.

Debian discusses Discourse

Posted Apr 18, 2020 17:18 UTC (Sat) by pizza (subscriber, #46) [Link]

> Fixing this will be compared to creating git.

I'm cautiously optimistic that the folks that brought us Linux and git will cause lightning to strike a third time.

(And yes, I share your view of gmane.org; that was an immeasurably useful service..)

Debian discusses Discourse

Posted Apr 20, 2020 11:17 UTC (Mon) by dunlapg (guest, #57764) [Link] (24 responses)

Fixing this will be compared to creating git.

That's part of why I was initially really excited last year when I read about Fossil: distributed VCS with integrated wiki, issue tracker, &c, all built on top of a SQL database.

Unfortunately the author doesn't understand review-based workflows; as such, AFAICT it will currently only work for SQLite's very "cathedral"-style development model. But I think it could serve as inspiration to someone. It would be really nice if bitkeeper : git :: fossil : $THE_NEXT_BIG_THING.

Debian discusses Discourse

Posted Apr 20, 2020 14:07 UTC (Mon) by pizza (subscriber, #46) [Link] (9 responses)

> Unfortunately the author doesn't understand review-based workflows;

It's more like "deliberately doesn't understand." ...What a disappointment.

(Even on stuff where I'm the only developer, I make _very_ heavy use of rebasing. It's one of git's killer features..)

Debian discusses Discourse

Posted Apr 20, 2020 21:33 UTC (Mon) by madscientist (subscriber, #16861) [Link] (8 responses)

That argument also misrepresents what it means to "publish" a change when stating the rule "never rebase published changes". The document apparently assumes that any push of any code off of the local system "publishes" it. If you have that rule then certainly, rebase is problematic after any code is pushed. And since a lot of testing of code these days is done through some kind of CI system which requires your code to be pushed somewhere, you can't test your code without "freezing" it, which is unfortunate.

But the answer is not that rebase is a terrible concept! The answer is that your definition of "publish" is wrong.

In systems I've worked with we use branch namespaces to segment "public" and "private". Developers are allowed to rebase their private branches all they want, including after the private branch is pushed to a server, and still run all tests on them.

Only once a commit is pushed to a public branch is it "published" and rebase is no longer allowed. We have Git hooks on the server to ensure this but those hooks apply only to public branches.

If you're trying to track someone else's private branches that's fine, but you may have to do extra work if they rebase it and that's just the way it goes.

Debian discusses Discourse

Posted Apr 20, 2020 21:53 UTC (Mon) by marcH (subscriber, #57642) [Link]

> But the answer is not that rebase is a terrible concept! The answer is that your definition of "publish" is wrong.
> In systems I've worked with we use branch namespaces to segment "public" and "private". Developers are allowed to rebase their private branches all they want, including after the private branch is pushed to a server,

"Volatile" and "immutable" are better names. There are private branches with immutable SHA1s and public branches with volatile SHA1s (linux-next).

There are also many different circles of privacy whereas you either make the promise that a SHA1 will not change or you don't, no grey area somewhere in the middle.

https://public-inbox.org/git/70ccb8fc-30f2-5b23-a832-9e47...

Debian discusses Discourse

Posted Apr 21, 2020 13:11 UTC (Tue) by gracinet (guest, #89400) [Link] (6 responses)

It's also possible to have these distinctions provided by the DVCS itself:

The phases concept has been introduced in Mercurial precisely to formalize these kind of use cases: "draft" changesets (commits) can be amended or rebased, whereas "public" changesets are strongly immutable.

This is better in my opinion (at least it's trying to be) than exchanging patches that aren't officially in the DVCS yet or relying on conventions, such as GitHub PR sources from forks being volatile.

Disclaimer: I do work on Mercurial.

Debian discusses Discourse

Posted Apr 21, 2020 15:51 UTC (Tue) by mathstuf (subscriber, #69389) [Link] (3 responses)

I feel like I'd always just use "draft" changesets until it has passed review and CI though since I find a clean history is far more valuable than "one more fixup" things even towards the end of the review. Is there a way to turn a draft into "public" without modifying the draft itself?

Debian discusses Discourse

Posted Apr 21, 2020 16:49 UTC (Tue) by gracinet (guest, #89400) [Link]

> I feel like I'd always just use "draft" changesets until it has passed review and CI

Indeed that's exactly the kind of use cases it's meant to support.

> Is there a way to turn a draft into "public" without modifying the draft itself?

Yes, that's the crux of it. The phase information is not part of the changeset itself. When you push to a server (or any remote), it might publish it or not, according to its configured rules.

On top of that, there's a whole system for non destructive history editing (https://pypi.org/project/hg-evolve/)

Debian discusses Discourse

Posted Apr 21, 2020 16:54 UTC (Tue) by farnz (subscriber, #17727) [Link] (1 responses)

Yes, you can change phase only on a changeset in Mercurial. One way to set things up is that only core automation can make commits public; doing so means that you push draft commits around (with metadata that tells you about amends, rebases etc) and then eventually end up with the automation creating a public commit that is flagged as the "successor" of your draft commits.

Changeset Evolution provides a lot of the metadata stuff you might want when implementing this sort of workflow, and Octobus are doing a lot of work to drive this forward.

Debian discusses Discourse

Posted Apr 21, 2020 18:01 UTC (Tue) by mathstuf (subscriber, #69389) [Link]

OK, that sounds reasonable. The way we assume it happens in the workflows I work on is that branches on forks -> draft, branches on the main repo -> immutable. Everyone uses a fork for development (this also avoids the "what are all these branches?" problem when forking).

Debian discusses Discourse

Posted Apr 21, 2020 16:18 UTC (Tue) by madscientist (subscriber, #16861) [Link] (1 responses)

Well, we don't do our work in GitHub so I can't say what capabilities are offered (or not).

We find that using branch naming conventions is simple, clear, and pretty much foolproof. We have a (very small) set of branch name prefixes which represent "managed" branches and we have hooks for those branches which are very strict about what can be pushed there.

Then any other branch name which does not use one of these prefixes is open to whatever you want to do with it.

The act of pushing changes to a "managed" branch is what causes it to become public/immutable.

I know obviously MMV throughout different projects but this works for us and we don't really feel the need for more "built-in" support.

Debian discusses Discourse

Posted Apr 21, 2020 20:33 UTC (Tue) by marcH (subscriber, #57642) [Link]

> Well, we don't do our work in GitHub so I can't say what capabilities are offered (or not).

A GitHub PR "draft" (if that was the question) is only blocking merges and not connected to force pushes. You could use it as a "volatile SHA1" flag if you want to but that would be merely by convention and I think projects prefer to force push always til the end of the review or never.

> works for us and we don't really feel the need for more "built-in" support.

Fine as long as you don't really care about giving or receiving "drive-by" contributions to/from people with different conventions - same spirit as mailing lists: https://lwn.net/Articles/818238/

Debian discusses Discourse

Posted Apr 20, 2020 15:59 UTC (Mon) by marcH (subscriber, #57642) [Link] (6 responses)

> Unfortunately the author doesn't understand review-based workflows;

Wow, so the guy designed and implemented a version control system but he never corrects commits locally just for himself. I'm pinching myself. I taught myself git the first time only to use git-svn and get that "Super Save and Undo" ability. I still use it every minute of every day. For instance I often revert, test and drop the revert to make sure a new test works.

https://www.fossil-scm.org/xfer/doc/trunk/www/rebaseharm.md
> These changes are accomplished not by removing or modifying existing repository entries, but rather by adding new supplemental records. The original incorrect or unclear inputs are preserved and are readily accessible. The original history is preserved.

Yeah I totally want my stupid initial ideas and typos to be archived forever on the Internet. Oh my...

Debian discusses Discourse

Posted Apr 20, 2020 18:21 UTC (Mon) by mathstuf (subscriber, #69389) [Link] (5 responses)

The obvious extension is that every in-editor edit should end up as a new commit. There's obviously a line between that and "commit the final version". I just prefer it to be far on the side of "working sets of commits" than "what happened to be in my tree at time X" than DRH :) .

This post sums things up really well I think: https://jeremykun.com/2020/01/14/the-communicative-value-...

Debian discusses Discourse

Posted Apr 20, 2020 19:53 UTC (Mon) by marcH (subscriber, #57642) [Link]

> The obvious extension is that every in-editor edit should end up as a new commit

You've been reading my mind :-)

Nice https://jeremykun.com/2020/01/14/the-communicative-value-..., thanks!
> " Programs must be written for people to read, and only incidentally for machines to execute.” The same view guides my philosophy for working with revisions, that code changes must be written for people to read [and review] and incidentally to change codebases.

Relatively subjective discussions about code review aside, I just realized Fossil can say good bye to "git bisect":

> "what happened to be in my tree at time X"

Another casualty of this strong Fossil opinion and mistake: it forces you to collapse the history and the "history of the history" onto the same axis (https://blog.linuxplumbersconf.org/2016/ocw/proposals/384...)

Of course git doesn't take a stance and let's you do that too, in fact Github tries to push you into that exact same Fossil direction [*]. Git is the C++ of version control: it lets you do absolutely anything including of course shooting yourself in the foot.

The Code Review Tool of the Future will treat the history of the history/of the code review as a first class citizen and subsume git pile, git series, etc. Due to its severe data[base] shortcomings, email is especially bad there.

[*] https://github.com/isaacs/github/issues/959#issuecomment-...

Debian discusses Discourse

Posted May 21, 2020 12:45 UTC (Thu) by nix (subscriber, #2304) [Link] (3 responses)

The obvious extension is that every in-editor edit should end up as a new commit.
You think it's a joke, but this is what git-wip does, triggering a commit in a not-normally-visible ref on every save via editor hooks. Its only problem (other than an unavoidable complete lack of useful commit log, so you more or less have to do a log -p restricted by date to find stuff you want to recover) is that it's so transparent that I usually forget that it even exists, so I don't use its careful records of every save I did as often as I could. It's part of magit but also a separate project and I think there is a vi-hooking variant around too.

Debian discusses Discourse

Posted May 21, 2020 13:33 UTC (Thu) by mathstuf (subscriber, #69389) [Link] (2 responses)

Using such functionality locally for backup purposes is fine, but I will judge if that branch goes for review :) .

Does it save commit history or is it a series of snapshots all sharing the same parent? Even better would be to reconstruct the history like Vim's (and probably Emacs') history tree too. If it's just a temporal snapshot history, a history viewer where you could collapse the nodes down by a time span would be nice.

Debian discusses Discourse

Posted May 21, 2020 13:45 UTC (Thu) by farnz (subscriber, #17727) [Link]

This is one of the things I like about Mercurial's Changeset Evolution feature - I can have a messy pile of commits while I'm working, and then have a clean pile for review that I've fixed up, but that maintains the links to my messy pile so that I can see how I got there.

Debian discusses Discourse

Posted Jun 2, 2020 13:10 UTC (Tue) by nix (subscriber, #2304) [Link]

It uses branches named after the complete ref of the branch being saved under, e.g. for the branch I'm working on now (named 'oracle/ctf-next'), the working tree's state is saved in a branch named 'refs/wip/wtree/refs/heads/oracle/ctf-next', and the index's state is saved as 'refs/wip/index/refs/heads/oracle/ctf-next'. The names are a bit long, but customizable, and unambiguous. The commit log comments have got more useful since I looked at them last and now say why the wip is happening and what file is being newly preserved.

Every time you commit, the corresponding wip branches are restarted: the old ones are still accessible until the reflog expires (this is clunky, but I can't really see a way around it). You end up with wip branch history like this:

193b21c09b (refs/wip/index/refs/heads/oracle/ctf-next) autosave ld/lexsup.c after stage
9848c17b26 autosave ld/lexsup.c after stage
23ccc37ffb autosave ld/ldlex.h after stage
9ece7ac0f3 autosave ld/ldlang.c after stage
4652ac99a8 autosave ld/ldlang.c after stage
c9a78b787f autosave ld/ld.texi after stage
2e0966c4e8 autosave ld/ld.h after stage
bfd20b8df2 start autosaving index
bfeee83394 fixup! libctf, ld: add --ctf-variables and omit variables from CTF by default
fbcdd02300 libctf: add ctf_link_set_variable_filter
...

(where bfeee83394 is the last commit on the real branch.)

or this, for a working tree:

436a729994 (refs/wip/wtree/refs/heads/oracle/ctf-next) autosave ld/ldlex.h before stage
662a4b4ee5 autosave ld/ldlang.c before stage
1c3b615c7d autosave ld/ld.texi before stage
1dccab233e autosave ld/ld.h before stage
5958b6cd68 autosave ld/lexsup.c after save
22bfa4bcfb autosave ld/lexsup.c after save
c744e6c41f autosave ld/lexsup.c after save
76c6a6e074 autosave ld/lexsup.c after save
caf21622cb autosave ld/lexsup.c after save
f7d813e9f5 autosave ld/lexsup.c after save
a486e6417e start autosaving worktree
bfeee83394 fixup! libctf, ld: add --ctf-variables and omit variables from CTF by default

Manual: https://magit.vc/manual/magit/Wip-Modes.html

Debian discusses Discourse

Posted Apr 20, 2020 16:04 UTC (Mon) by marcH (subscriber, #57642) [Link]

> Unfortunately the author doesn't understand review-based [rewrite] workflows;

BTW github is not much better, it's preferred model is "fixup and optional squash": https://github.com/isaacs/github/issues/959#issuecomment-...

Debian discusses Discourse

Posted Apr 30, 2020 18:30 UTC (Thu) by seneca6 (guest, #63916) [Link] (5 responses)

> Unfortunately the author doesn't understand review-based workflows;

This sentence, and also the responses, seem needlessly aggressive. I don't use Fossil but I have great respect for its author.

Isn't Free Software supposed to be allowed to scratch the author's itch instead of solving all of the world's problems? Especially a niche system, which Fossil certainly is compared to Git, Mercurial, or maybe even SVN.

Debian discusses Discourse

Posted Apr 30, 2020 19:12 UTC (Thu) by marcH (subscriber, #57642) [Link] (3 responses)

> > Unfortunately the author doesn't understand review-based workflows;

> Isn't Free Software supposed to be allowed to scratch the author's itch instead of solving all of the world's problems? Especially a niche system, which Fossil certainly is compared to Git, Mercurial, or maybe even SVN.

Fossil's rebaseharm.md stance is absolutely not about a "niche" or just the "author's itch". Did you read it? Focusing on git as the main example, it claims that rewriting version control history is universally bad in any version control system, even rewriting one's own private history! What next, removal of the "undo" feature in editors?

> This sentence, and also the responses, seem needlessly aggressive.

Considering millions of git users do and enjoy rewriting history on a daily basis (especially during code reviews but not just), I find rebaseharm.md's claim pretty... "aggressive" and the responses here fairly civilized compared to the boldness of that claim.

Debian discusses Discourse

Posted May 1, 2020 8:26 UTC (Fri) by seneca6 (guest, #63916) [Link] (2 responses)

Fossil is a niche system, and the article in question starts with the line: "Fossil deliberately omits a "rebase" command because the original designer of Fossil (and original author of this article) considers rebase to be an anti-pattern to be avoided. This article attempts to explain that point of view." - this is a design decision for Fossil, why not call it "the author's itch"? He's not pushing code into Git to take away your rebase there.

> What next, removal of the "undo" feature in editors?

Given that the author once said in a podcast that he created an editor just for his own habits, it's possible :-) He also said that the editor would be rather useless for anyone else. Writing niche software is visibly nothing the author is afraid of. Our community used to encourage that. We're free to use it if we like, and not to use it if we don't like it, and still wish them well. Many others already are vocal enough and will never understand why one would want to use Replicant instead of Android, Linux instead of Mac OS, or emacs instead of VS Code. It's funny that this author of niche software happens to have written the most used database in the world.

> Considering millions of git users do and enjoy rewriting history on a daily basis (especially during code reviews but not just)

Well, if someone goes to the extent of creating a new version system, I very much hope it won't be just a clone of git's functionality with a different implementation. That would be just a waste of time.

We don't know when that article was originally written. But Fossil started in 2006, two years before GitHub! Rebase was very controversial back then. And I'd argue that only the GitHub/GitLab style of development made rebase so popular. By now, most Git users have adopted it and have learnt, sometimes with pain, where to use it and where not to use it. If others have kept their non-rebase workflow and are happy with it, why not.

Debian discusses Discourse

Posted May 1, 2020 8:33 UTC (Fri) by marcH (subscriber, #57642) [Link]

> And I'd argue that only the GitHub/GitLab style of development made rebase so popular.

Github absolutely not:
https://github.com/zephyrproject-rtos/zephyr/pull/14444#i...
https://github.com/isaacs/github/issues/959#issuecomment-...

Gitlab barely:
https://gitlab.com/gitlab-org/gitlab/issues/20339

Debian discusses Discourse

Posted May 4, 2020 11:30 UTC (Mon) by anselm (subscriber, #2796) [Link]

Writing niche software is visibly nothing the author is afraid of. Our community used to encourage that.

SQLite (written by the same person) started out as niche software and is now the most popular SQL implementation on the planet by a few orders of magnitude. A similar argument may be made for the Linux kernel.

Debian discusses Discourse

Posted Apr 30, 2020 22:46 UTC (Thu) by rschroev (subscriber, #4164) [Link]

If D. Richard Hipp, the author of the article and of Fossil (and of SQLite, for which I am very grateful and I respect him a lot) had explained why rebasing doesn't fit his workflow and why it doesn't match his view of version control, that would be no issue at all. A difference in opinion with a lot of people, sure, nothing wrong with that.

But the article uses a very different tone. It categorically states that nobody should use rebasing, ever. The title alone is a hint to that; in the conclusion the author makes it abundantly clear: "Rebasing is an anti-pattern. It is dishonest. It deliberately omits historical information. It causes problems for collaboration. And it has no offsetting benefits."

I think dunlapg's reaction to that is a bit excessive, but I can understand where he comes from. When so many people successfully use rebasing workflows, is it smart of Hipp to think he knows better than all of them and reject their workflow? He's undoubtedly an intelligent man, but so are many of the people who do use rebase.

Discourse Email Integrataion Short of Mailing List

Posted Apr 23, 2020 11:11 UTC (Thu) by hartmans (subscriber, #135969) [Link]

I want to make it clear that I'm interested in trying out Discourse, and that there are discussions we had last year that I would rather have had on Discourse. But the idea that if you turned off Discourse's web interface, it would be a reasonably comperable mailing list is simply not up to snuff. Among other things, you cannot:
  1. Reply off-list from the email interface; you don't get the sender's real email address.
  2. Cross post to multiple mailing lists. If you do, you will get split threads on each list and future replies will not cross-post properly.
  3. Send PGP-signed mail to the list and have your signatures preserved.
  4. Use normal email quoting.
These are not criticisms of Discourse: there are good reasons it works that way. But Discourse would make a really crappy mailing list. Its email integration is adequate that a dedicated email user can participate in a forum offline.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds