Hacker Timesnew | past | comments | ask | show | jobs | submit | _never_k's commentslogin

Github inherited it from git, which inherited it from bitkeeper, the DVCS that Linux originally used and the one that inspired git. Bitkeeper used a master/slave architecture that git dropped.

https://github.com/bitkeeper-scm/bitkeeper/blob/master/doc/H...


The dev that set git to using master says otherwise..

https://twitter.com/xpasky/status/1272280760280637441


Repositories, not branches. It's just hearsay that the name of the master branch is based on bitkeeper.


Serious question: you're not the only person in this thread who feels this, and I genuinely don't understand it.

Why is this so upsetting?


...because this is slacktivism lite. Rather than addressing actual issues facing african-americans today, we're engaging in silly naming changes that will have zero impact on 99.9% (optimistically) them

...because I don't want to be paying the externalities (workflow changes, having to keep up with the new "correct" naming) caused by a game of "who can be the most woke" between a vocal minority of progressives


Your first bullet is an argument against this change as being suboptimal. That there's a more optimally utilitarian use of the resources, which I get. The thing I don't get about this argument is that nothing Github (or any of us except for some weirdos) does is optimally utilitarian. They have a cartoon mascot! They don't _need_ that. You're not upset that they pay someone to draw Octocat, why be upset about this?

Your second bullet is an argument against this change from the position that it's an unasked for burden. In general, I get that. In the specific context of software engineering, it's a little more surprising. Tools, APIs, interfaces, terminology, etc... are in constant flux. Software has to be actively maintained to be kept functional. Software engineers have to always be learning in order to keep current. A vendor changing something like this is par for the course, right? Why such an extreme reaction?


It's a combination of the two factors. If a group of people want to one up each other by refactoring their side projects to be as woke as possible, that's fine by me. But if they're doing it and causing breakages and/or forcing everyone else to adapt, that's where I draw the line.

>A vendor changing something like this is par for the course, right? Why such an extreme reaction?

I'd be similarly pissed off if an upstream API provider suddenly decided to change all their identifier names for stylistic purposes. eg. the CTO woke up one day and decided that all of their API endpoints should be changed from camel case to snake case.


Props to you for committing to your austerity, but we're not all monks in cells.


Austerity? Monks in cells? Really, none of that makes any sense?

Hell, switching your Amazon account to one of those smile accounts will do more good than signalling.


>Austerity? Monks in cells?

You're complaining about indulgence! You're saying that this change won't help people as much as something else. This is a fair criticism. Changing some technical term is probably not a optimally utilitarian use of resources.

However, while you may be trying to live an optimally utilitarian life, the rest of us aren't. I can only speak for myself of course, but evaluating all my life's actions on only that axis is too strict for me.

But, like I said, if you want to do that: props.


No, I'm saying that it won't help people at all. Its an indulgence to make the person doing feel like they are doing something. It will not materially improve lives.

It would be fine if it just made them feel good, but it substitutes for efforts that would help. Its a personal indulgence taking energy from a system when more is needed. It also is a distraction from actual issues. Nothing is often better than something.

> However, while you may be trying to live an optimally utilitarian life, the rest of us aren't. I can only speak for myself of course, but evaluating all my life's actions on only that axis is too strict for me.

Yeah, this is wordplay that has nothing to do with me.


You keep complaining about indulging! What's wrong with indulging in something every once in while?


If your indulging hurts others, then it is something worth complaining about.


I don't exactly understand how you're hurt by this, but fair enough.

Utilitarianism is a philosophical framework. It's not for me, but based on your comments you might be into it:

https://en.wikipedia.org/wiki/Utilitarianism


I am not.


I see no supporting argument for “replacing master with main at GitHub hurts others”; is it somewhere in this thread and I wasn’t able to see it unassisted? If not, we would benefit from you typing it up.


go to the top of this thread chain


I reviewed your initial post https://qht.co/item?id=23500764 and I was unable to parse out of your objections why you think that this change hurts others. Could you summarize?


Ok, here is my objection. I'm saying that it won't help people at all. It is an indulgence to make Microsoft feel like they are doing something positive when it will not materially improve lives.

It would be fine if it just made them feel good as people's mental health is an important thing that too many ignore. But, this will suck attention away from people who are actually doing things that will help people. The world has only so much time to pay attention, and that time is valuable. Microsoft is just adding to the noise.

They are bringing homemade cupcakes to a food bank and making the national news.


Inconsistent naming standards hurts everyone. Now some repositories will have master branches while others will have them named something else, it makes things harder to work with. If every developer spends just a minute wondering where the main branch is before realizing the new naming standards, that is still a lifetimes worth of time lost due to this change.


The terminology of master/slave architecture is a direct reference to the working relationships between people on an antebellum plantation. Names should help you understand what things do, and those names do. We also have node that elect leaders, nodes that get fenced, nodes with parents and children, etc...

The terminology of our software architecture, and of our software in general, mirrors that of the real world relationships that they model, reference, or are inspired by. That's a good thing. It helps us understand these systems. It's also true that if this terminology references something we don't like in the real world, we're free to change it. After all, master/slave architecture isn't a perfect modeling of a plantation, it's substantially abstract from that. There are many other relationships in the real world which could be used to describe this architecture.

Terminology is effective when it's stable, so we should be conservative about changing it, but that doesn't mean we should never change it.


Master in git doesn’t (as far as I understand) refer to master/slave architecture though. It’s a “master” as in as in the version from which copies are derived.



>I think for the political arena it would do us good to try to emulate the US House of Representatives where representatives are given equal time to address the floor.

This is a weird example. Representatives don't listen to each other. The speeches are for their constituents.

>Featured Comments are chosen by a team at NYT, presumably from ideologically diverse perspectives, and they choose comments that are insightful and rich in information without toxicity.

Agreed, the solution to the problems caused by getting rid of gatekeepers is to bring back gatekeepers. How do you do it with something like twitter though, where there were no gatekeepers to begin with?


>Once you start fact checking where does it end?

With all the facts being checked?


I imagine he's suggesting that it will end with all the opinions being checked.


Nothing wrong with that, particularly if those opinions are communicated in a way that makes them look like statements of fact.

Someone being able to say "I think your opinion is wrong" is no less a freedom of speech matter than someone being able to state an opinion in the first place. Freedom of speech does not, or at least it should not, give special privilege or protection to the first person who speaks.


This is a tough position for Twitter because they now have to fact check practically all of his tweets. Any tweet not checked will be seen either as tacit endorsement by Trump's political opponents or 'undeniable truth' by some portion of their users regardless of validity.


The line between fact and opinion can become very blurry. Whatever you do there will be a lot of issues that can’t be fact checked.


>I think one element of writing ASM by hand is the programmer subliminally changes the algorithm to be 'simpler' to write.

It's not subliminal. It's packing a backpack that someone else has to carry, vs packing a backpack that _you're_ going to carry.


I think of the BLAS algos as being very Fortran friendly, and the Fortran references never _out_perform the C implementations. (The asm implementations are of course the best.)

Be curious to know what you're thinking of here.


I've no personal experience, but people historically point to pointer aliasing as the primary thing that speeds up Fortran code vs C.

https://en.wikipedia.org/wiki/Pointer_aliasing


No personal experience either but discussing with people invested in high perf C, they said that `restrict` was enough to avoid aliasing issues.


This is real, but also not new (as you can tell from the name check on Flash, Silverlight and IE). They used to be called "supercookies", but that term has come to mean something else in the last few years.


Before rust, I would incrementally evolve an incomplete design into a complete design (building a tree by building leaves, branches, and a trunk and then assembling them.) In rust, my early incremental versions would have lifetime issues that I used to not worry about until later. Now I start with a very small complete version that I make bigger (building a tree by increasing the size of a sapling.)

I do everything this way now (JS, python, etc...)


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: