Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

s/isomorphic/universal/g #4041

Closed
wants to merge 1 commit into from

Conversation

Projects
None yet
@mjackson
Copy link
Contributor

commented Jun 5, 2015

I'd like to propose that instead of using the term "isomorphic" to denote code that runs in servers, browsers, and mobile devices we use the word "universal". Just looking at the definitions of these two terms, seems like the latter fits much better.

screen shot 2015-06-05 at 11 09 52 am

screen shot 2015-06-05 at 11 10 36 am

I'd love to hear everyone's thoughts on this.

@facebook-github-bot

This comment has been minimized.

Copy link

commented Jun 5, 2015

Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. In order for us to review and merge your code, please sign up at https://code.facebook.com/cla - and if you have received this in error or have any questions, please drop us a line at cla@fb.com. Thanks!

@blainekasten

This comment has been minimized.

Copy link
Contributor

commented Jun 5, 2015

Well, server and browsers running javascript are similar, but not the same. So Isomorphic seems to make sense.

Also, this is a pretty much community standard way of speaking about running the same code on browser and server, why fight it and cause further confusion?

@facebook-github-bot

This comment has been minimized.

Copy link

commented Jun 5, 2015

Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks!

@ryanflorence

This comment has been minimized.

Copy link
Contributor

commented Jun 5, 2015

this is a pretty much community standard way of speaking

While my experience is, of course, anecdotal, as we're out conducting training on React.js with hundreds of developers, the term is not standard outside of the group of people saying it right now.

When we get a funny look from somebody, and then say "sorry, a better name would be universal javascript" they go "ohh, like it runs everywhere".

@gaearon

This comment has been minimized.

Copy link
Member

commented Jun 5, 2015

I like Universal. Kinda like iPad/iPhone apps Universal. 👍

(Edit: not being sarcastic. Isomorphic is a weird word.)

@BerkeleyTrue

This comment has been minimized.

Copy link

commented Jun 6, 2015

Yes! Universal JavaScript!

@nickhudkins

This comment has been minimized.

Copy link

commented Jun 8, 2015

👍 because we don't mean
image

@Charca

This comment has been minimized.

Copy link
Contributor

commented Jun 8, 2015

Great article on Medium, Michael. As a teacher, I know the pains of having to explain the crazy terms coined by the community in plain english (or spanish, in my case), and I always strive to make it easier for my students by using clear, simple language, and analogies that can be understood by anyone.

However, I think that changing terminology that is pretty much established in the community is not a very good idea. Imagine changing Responsive Web Design to Universal Web Design because it's easier for newcomers to understand the concept behind it. It would only confuse people who are already familiar with the term, thinking that is some sort of variation of the original concept. I can see people asking "what do you mean by Universal JavaScript? Is it like Isomorphic?".

Again, I completely understand your point and I'm 100% agree that we should keep it as simpler as possible; I'm only afraid that a change like this at this point in time, would do more harm than good.

@mcdonnelldean

This comment has been minimized.

Copy link

commented Jun 9, 2015

Love it, I think it's a great simplification of the intent of what is trying to be conveyed which is essentially Javascript almost everywhere.

@sophiebits

This comment has been minimized.

Copy link
Collaborator

commented Jun 12, 2015

Thanks for the idea. We just talked about this in our meeting and decided that we'll leave the name as-is in our repo, but we don't plan to use either term in the public APIs or our documentation so hopefully this doesn't make much difference.

@sophiebits sophiebits closed this Jun 12, 2015

@luisfarzati

This comment has been minimized.

Copy link

commented Jun 20, 2015

+1 to this.

@gnapse

This comment has been minimized.

Copy link

commented Jun 25, 2015

+1 for this here too. I think it's not too late. And "isomorphic" is not only weird, it does not really convey the meaning by itself. I almost always end up having to explain what it means in the context of javascript, just as I had to look it up when I first stumbled upon it.

@sophiebits

This comment has been minimized.

Copy link
Collaborator

commented Jun 25, 2015

I'll repeat myself:

We don't plan to use either term in the public APIs or our documentation.

@fckt

This comment has been minimized.

Copy link
Contributor

commented Aug 4, 2015

Isomorphic code reads as "code which could run on client env. or server env. or both". It's great because it makes it possible to choose where we want to execute it for different cases/reasons. Such reasons as performance or security or connection stability etc..
@gaearon "Universal app" is not quite about the same thing. Apple says the app is compiled for Iphone and Ipad not more. It doesn't include that we can run the same code with the same session data both on client and the server (even during single request).
Also I think the term "Isomorphic Javascript" is not informative, we're saying "Isomorphic app".
And "Universal Javascript" makes me feel so Tautology

@manonthemat

This comment has been minimized.

Copy link

commented Dec 8, 2015

@nickhudkins you don't mean isometric?

@mirague

This comment has been minimized.

Copy link

commented Apr 17, 2016

👍 on Universal Javascript!

@renolc

This comment has been minimized.

Copy link

commented Oct 12, 2016

Universal seems too vague. I was lead to this issue after digging around the http://www.electrode.io/ site, specifically because they kept saying "universal" but I had no idea what they meant by that. Given how close the name is to the Electron project, I originally thought they meant "universal" in the sense that it would produce binaries for "all the desktop platforms." I was, honestly, a bit disappointed when I finally figured out they just meant isomorphic.

Things universal could imply (and have implied in the past):

  • works on all desktop platforms
  • works on all mobile platforms
  • works on all variants of a specific mobile platform
  • works internationally
  • (and now you want to introduce) works on client and server

Since we can't really differentiate between which of these definitions of "universal" is meant at any given time, it seems like a poor choice in description. Even if the actual definition of "isomorphic" doesn't fit where it is commonly used, it is a unique enough term so as not to get confused with something else.

@lacker

This comment has been minimized.

Copy link
Contributor

commented Oct 12, 2016

Another problem with "universal" is that on iOS, "universal app" already has a meaning. It is an app designed to be used both at iPad and iPhone sizes. https://www.appcoda.com/ios-univeral-app-tutorial/

@cia48621793

This comment has been minimized.

Copy link

commented Jan 14, 2017

Universal, literally, means everywhere.
That means, one code base should be working on web client and server, IOT devices, desktops, tablets and mobiles, I.e. React DOM, React Native/Cordova, Electron, Node, ESP8266, Raspberry Pi, Arduino, etc.
So I think the term ' universal' could be replaced by something more specific, it just, man, looked like a great, lofty idea, but it can also induce to difficulties in maintenance, compatibility issues and such.
Maybe we should go for 'Universal webapp' or 'Universal mobile app'?

@juanecabellob

This comment has been minimized.

Copy link

commented Sep 14, 2017

+1 on Universal Javascript

@jaylinwang

This comment has been minimized.

Copy link

commented Nov 2, 2018

+1 on Universal Javascript

@UnnitMetaliya

This comment has been minimized.

Copy link

commented Dec 21, 2018

Based on your in-depth research on Medium, I'd agree with Universal JavaScript for sure.

@jamesfulford

This comment has been minimized.

Copy link

commented Dec 31, 2018

It seems like a good idea, but I think a fair argument can be made for the vagueness of the term 'Universal'. Keep it as 'Isomorphic', and when we teach it, explain that 'Universal' kinda works, but includes more platforms than expected.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.