Giter Site home page Giter Site logo

Comments (6)

smikitky avatar smikitky commented on April 28, 2024 2

I would like to remind you that most languages that do not belong to the Indo-European language family don't have the concept of uppercase/lowercase to begin with. Many languages in the world are unicase.

I agree with introducing visual distinctions between terms like "state" and "State" or "(side) effect" and "Effect", since these have actually confused developers for many years. However, I hope you will proceed with caution when continuously recycling existing common nouns and introducing new capitalized React concepts, such as "Action" or "Offscreen".

In many languages, including my own, it's often challenging to come up with separate translations for "action" and "Action" without causing confusion among readers. Sometimes we just give up on the translation altogether and denote React-specific concepts as Action, in English, but this is not ideal.

from reactjs.org.

dlitsman avatar dlitsman commented on April 28, 2024 1

Curious if Props should also be capitalized similar to State/Context?

Also, updated my pull requests to remove blog/* changes

from reactjs.org.

kassens avatar kassens commented on April 28, 2024

@smikitky this must be seen as a style guide for English where these rules are often used. It also doesn't even apply in German which I know because all nouns like Action would always be capitalized.
Other translations should develop their own style guide. It's good to think about the style and do It consistently for one language so it's matching the norm of that language and "Action" for example (if translated) would have 1 translation for the language.

from reactjs.org.

smikitky avatar smikitky commented on April 28, 2024

Before doing this, I suggest contacting the maintainers of the active languages and obtaining their agreement. This is mostly a simple "Find & Replace" task for English authors, but for the maintainers of other languages, this would mean manually resolving literally thousands of Git conflicts across dozens of files. (An automated script won't help unless you've made a language fork 100% up-to-date with the main repo.) If this happens without prior notice, I wouldn't be surprised if the maintainers of one or two languages will give up on their contribution because of this. This would also cause conflicts in a large portion of the existing pull requests on the English repo.

By the way, do you know of any other project that capitalizes all unique keywords like this? Why do we need to make such a drastic change now? I understand "side effect" and "Effect" was a reasonable compromise, but I doubt other terms like "props", "key", "ref", "hook" and "context" have caused noticeable confusion. If the intent behind this change is to introduce more pairs like "action" and "Action" in the future, then perhaps it's this naming approach itself that needs reconsideration.

from reactjs.org.

rickhanlonii avatar rickhanlonii commented on April 28, 2024

@smikitky translations can reject the upstream changes that updates the capitalization, the words are the same so the current word can stay in place without a breaking change. Then, if languages want to denote "concepts" separately like we're doing here, then they can handle that async.

One thing we can do to make the task easier is merge all of the changes into a feature branch, and land all the renames in a single commit. Then there's just one commit to ignore conflicts in.

from reactjs.org.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.