Ronald Borman (6) [Avatar] Offline
#1
I recently started reading this MEAP and (although it's still rough) I like it so far. The use of React without JSX in chapter 1 is good because it's shows the pain points that JSX addresses.

Regarding chapter 1 I have two comments.

Page 2 states that "React emerged from Instagram". I don't think that's true. React was an internal Facebook project, and used in several Facebook.com components like Ads. After Instagram was acquired and their web site had to be overhauled, React was chosen. See the talk by Tom Occhino and Jordan Walke (around 0:23:30): https://m.youtube.com/watch?v=XxVg_s8xAms.

Also on page 2, it is said that the Atom editor uses React. Unfortunately, that is no longer the case. See https://github.com/atom/atom/pull/5624.
seigel (4) [Avatar] Offline
#2
Small, but the description of how a HTTP request happens is a bit off, the language is a bit rough in the first point and in the second point, the full request url is not sent to the DNS server but the browser looks up the address for the domain part of the request/url and gets the IP address and then makes the request to the server.
seigel (4) [Avatar] Offline
#3
Page 3:
"You would click a link or a button and wait forever." One could argue that pages in the 90's loaded faster because of the smaller JavaScript payload, and tracking pixel requests that pages have today. Might want to rephrase / restructure this argument a bit.
16591 (1) [Avatar] Offline
#4
Small details: this line

arr2 = arr.map(function(v, i){ return v*2 })

Could be cleaner as:

arr2 = arr.map(function(v){ return v*2 })
Jim Haungs (9) [Avatar] Offline
#5
1.1.1 Declarative Style.

The two main styles the author is attempting to contrast are imperative and declarative. Generally speaking, these two styles are direct opposites, and while a single language can mix them, e.g., type declarations vs loop statements, once a language includes imperative constructs, it is no longer a declarative language.

Assignment statements, conditionals, loops, and function calls, all are imperative language constructs describing control flow; they explicitly tell the computer how to compute its result.

In contrast, languages like SQL, HTML, or CSS are purely declarative, and are not Turing-complete; they describe the result you want, without any hint of how the computer is to go about computing that result. That is the meaning of declarative.

What the author is describing as a feature of function calls (like map) is a functional style, not a declarative one. Map is still a function call, so it's imperative, not declarative. Its main advantage is not directly coding the loops and conditionals, but it still implements them imperatively.

I'm concerned that people with no theoretical computer science background will read this section, and get a completely wrong idea about the important differences among these computation styles.

https://en.wikipedia.org/wiki/Declarative_programming
Azat Mardan (41) [Avatar] Offline
#6
Ronald Borman wrote:I recently started reading this MEAP and (although it's still rough) I like it so far. The use of React without JSX in chapter 1 is good because it's shows the pain points that JSX addresses.

Regarding chapter 1 I have two comments.

Page 2 states that "React emerged from Instagram". I don't think that's true. React was an internal Facebook project, and used in several Facebook.com components like Ads. After Instagram was acquired and their web site had to be overhauled, React was chosen. See the talk by Tom Occhino and Jordan Walke (around 0:23:30): https://m.youtube.com/watch?v=XxVg_s8xAms.

Also on page 2, it is said that the Atom editor uses React. Unfortunately, that is no longer the case. See https://github.com/atom/atom/pull/5624.


The link to GH is not showing anything... I search but didn't find anything on Atom not using React. Can you provide a new link please?

---

Azat, author of React Quickly
capouch (10) [Avatar] Offline
#7
Ronald Borman (6) [Avatar] Offline
#8
Azat Mardan wrote:
Ronald Borman wrote:I recently started reading this MEAP and (although it's still rough) I like it so far. The use of React without JSX in chapter 1 is good because it's shows the pain points that JSX addresses.

Regarding chapter 1 I have two comments.

Page 2 states that "React emerged from Instagram". I don't think that's true. React was an internal Facebook project, and used in several Facebook.com components like Ads. After Instagram was acquired and their web site had to be overhauled, React was chosen. See the talk by Tom Occhino and Jordan Walke (around 0:23:30): https://m.youtube.com/watch?v=XxVg_s8xAms.

Also on page 2, it is said that the Atom editor uses React. Unfortunately, that is no longer the case. See https://github.com/atom/atom/pull/5624.


The link to GH is not showing anything... I search but didn't find anything on Atom not using React. Can you provide a new link please?

---

Azat, author of React Quickly


Like capouch said, it's the right link but you probably used it with the dot at the end. Try copying the link without the dot.

Based on that pull request, it looks like Atom is no longer using React internally. There are a couple of discussions on reddit and ycombinator, but that's it.

Regards, Ronald.
Azat Mardan (41) [Avatar] Offline
#9
Thank you