Re: Design vs Evolution

There's a discussion currently between ModdedBear and Ploum.

Ploum: RE: Design vs Evolution

ModdedBear: Design vs Evolution

The jumping off point is a post on LKML where Linus Torvalds argues that the Linux kernel has never really been designed, but that it has evolved over time. But that's not what the discussion here is about.

ModdedBear says:

This message I believe also reflects the unique time in which Linux started being developed. It was a time when developers could more easily collaborate and share their work and ideas over the internet. I wonder how significant of a factor that was in Linux's evolution.

Ploum is taken aback by this:

How on earth can someone consider that it was easier to communicate at a time where there was no git, no wiki, no bug trackers, no chat, no video conferencing. A time where connecting a computer to the Internet was a total adventure in itself, let alone paying for the computer.
I sincerely cannot understand how someone can imagine that it was easier to communicate on the Internet 30 years ago.

Thesis, antithesis. Here's the synthesis (IMO):

I think that it's harder on today's Internet to find communities in which you can participate constructively than it was 30 years ago, largely because of two things. The first is the absolute scale of the net: there's so much going on, there's no way to keep up with everything happening in a general area of interest. The second is the siloing of the Internet into proprietary platforms. You might belong to several of those platforms, but you're unlikely to belong to them all, and some of them are so large, they have the scale problem in and of themselves.

For example, 30 years ago, if you had a new Unix-like operating system kernel for 386 that you were working on, you'd write a post about it on comp.os.unix and/or comp.os.minix. There was nowhere else both public and global to post about it, but at the same time there didn't need to be. Now, you would need a GitHub page for project information and issue trackers, and you'd need a Twitter account for the project to spread information about it, and probably a Discord (yes, note, I'm specifying the worst proprietary providers in each category). But still, it's unlikely anyone will hear about or take interest in your project unless it gets upvoted to the front page on "Hacker" "News" on a slow workday, because no one can follow all the new GitHub pages, and Twitter is a firehose of sewage, and Discord is transitory and relevant communities may be invite-only, etc. The only place lots of people will look is run by a venture capital firm as an advertising expense.

Once you build a community, I think it's easier than 30 years ago, because of decentralized version control if nothing else. You can certainly still use mailing lists and patches, just like before, and SourceHut is perhaps showing the benefit of combining those older practices with a DVCS. It actually *is* easier for people who are in contact with each other to collaborate and share ideas. But it's harder to find the right people and projects, in my opinion. I think most projects that could be valuable don't reach the point of having a viable community.

Edit:

ModdedBear says that's not what they meant at all:

What I meant to say in my original post is that Linux was coming about during a time when developers could more easily collaborate than they could in the years prior. It did sound like I was comparing today's advancements in communication with 30 year old tech, which wasn't my intention and I agree would be a pretty baffling stance to take.

But I still think there's something there worth looking at.