Skip to content

Commit

Permalink
Updates, 2016-10-08
Browse files Browse the repository at this point in the history
  • Loading branch information
markerikson committed Oct 9, 2016
1 parent b9bd4c1 commit 572eeef
Show file tree
Hide file tree
Showing 17 changed files with 285 additions and 65 deletions.
25 changes: 24 additions & 1 deletion basic-concepts.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,27 @@
- **Modern Javascript Development**
https://mgadams.com/modern-javascript-development-part-1-d271f3790c1c
An overview of how browsers, Javascript, and Javascript frameworks have evolved into today's landscape of tools and technologies

- **Making Sense of Front-End Build Tools**
https://medium.freecodecamp.com/making-sense-of-front-end-build-tools-3a1b3a87043b
An approach to understanding the variety of build tools by categorizing them as "installing" vs "doing"


- **The State of Javascript in 2016: Survey Results**
http://stateofjs.com/
Results from a survey of over 9000 developers, covering use of Javascript tools, technologies, and concepts.

- **The (R)Evolution of Web Development**
http://blog.isquaredsoftware.com/presentations/2016-10-revolution-of-web-dev/
A slideshow giving an overview of web dev history and modern web dev tools, technologies, and trends.

- **The State of Javascript**
https://youtu.be/5NIL3Epadj0
A talk by Jack Franklin, summarizing the state of modern web development.

- **Modern JS Stack Training**
https://github.com/verekia/modern-js-stack-training
A repo that walks through concepts involved in a typical JS app, and how to set up each piece

#### React Learning Guidelines

- **React How-To**
Expand All @@ -52,3 +71,7 @@
- **How to Learn Web Frameworks**
https://medium.com/shopify-ux/how-to-learn-web-frameworks-9d447cb71e68
Some great advice on how to approach learning web development and frameworks, especially if you're a junior developer.

- **How to keep up: "First do it, then do it right, then do it better"**
https://medium.com/@addyosmani/totally-get-your-frustration-ea11adf237e3
Advice from Addy Osmani on how to cope with learning new JS technologies
4 changes: 4 additions & 0 deletions community-resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,10 @@
https://twitter.com/oguzbilgic/lists/react-influencers/members
Some Twitter lists that focus on React-related people

- **"41 Javascript Experts to Follow on Twitter"**
http://techbeacon.com/javascript-leaders-you-should-follow-twitter
A varied list of JS-related people. Not specifically React-related, but a useful list.


#### Podcasts

Expand Down
8 changes: 8 additions & 0 deletions es6-features.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,10 @@
https://github.com/metagrover/ES6-for-humans
A kickstarter guide to writing ES6.

- **Start Using ES6 Today**
http://wesbos.github.io/ES6-Talk/
A set of slides describing the features in ES6


#### In-Depth Details

Expand Down Expand Up @@ -79,6 +83,10 @@
https://www.eventbrite.com/engineering/learning-es6-iterators-iterables/
Covers the new iteration-related features in ES6

- **The Most In-Depth Yet Understandable ES6 Destructuring Tutorial**
http://untangled.io/in-depth-es6-destructuring-with-assembled-avengers/
A thorough set of examples for ES6's destructuring feature


#### Techniques

Expand Down
10 changes: 9 additions & 1 deletion functional-programming.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,4 +102,12 @@

- **Functional-Light JS**
https://github.com/getify/Functional-Light-JS
This book explores the core principles of functional programming (FP) that can be applied to JavaScript. But what makes this book different is that we approach these principles without drowning in all the heavy terminology. We look at a subset of FP foundational concepts that I call "Functional-Light Programming" (FLP) and apply it to JavaScript.
This book explores the core principles of functional programming (FP) that can be applied to JavaScript. But what makes this book different is that we approach these principles without drowning in all the heavy terminology. We look at a subset of FP foundational concepts that I call "Functional-Light Programming" (FLP) and apply it to JavaScript.

- **The Case for Lenses in Pragmatic Business Applications**
http://www.brandonkeown.com/2016/10/lenses-for-fun-and-profit.html
Demonstrates the use of Ramda's "lens" concept for encapsulating data access

- **Don't Be Scared of Functional Programming**
https://www.smashingmagazine.com/2014/07/dont-be-scared-of-functional-programming/
Several examples of functional programming principles, both in plain JS and with Underscore.js
2 changes: 1 addition & 1 deletion immutable-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
Describes the major benefits of using immutable data in React, with a demo

- **React: A (very brief) talk about immutability**
https://medium.com/pro-react/a-brief-talk-about-immutability-and-react-s-helpers-70919ab8ae7c
https://medium.com/pro-react/a-brief-talk-about-immutability-and-react-s-helpers-70919ab8ae7c
Talks about the issues with mutation, and some ways to update immutably


Expand Down
28 changes: 26 additions & 2 deletions javascript-resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@ While this list is primarily focused on learning React and Redux, and generally
- **Roadmap for Learning the Javascript Language**
http://bytearcher.com/articles/roadmap-for-learning-javascript-language/
A suggested approach for how to learn Javascript.

- **What Do I Need to Know to Ace a JavaScript Interview?**
https://github.com/adam-s/js-interview-review
Collected resources for studying Javascript and preparing for an interview





#### Tutorials and Books
Expand All @@ -44,10 +51,21 @@ While this list is primarily focused on learning React and Redux, and generally
https://github.com/getify/You-Dont-Know-JS
An online book series intended to teach all aspects of Javascript, including the "tougher" parts.

- **Speaking Javascript**
http://speakingjs.com/es5/index.html
A free online book on Javascript from Dr. Axel Rauschmayer.

- **23 Free Javascript Books**
https://hackerlists.com/free-javascript-books/
A list of many Javascript books available for free online.

- **Rithm School Free Javascript Course**
https://www.rithmschool.com/courses

- **Practical Javascript**
http://watchandcode.com/p/practical-javascript
A free online course to learn Javascript fundamentals.


#### Interactive Exercises

Expand Down Expand Up @@ -78,9 +96,15 @@ While this list is primarily focused on learning React and Redux, and generally
A two-part article on the ins and outs of `this`.

- **Let's Settle `this`, Part One**
https://medium.com/@nashvail/lets-settle-this-part-one-ef36471c7d97
https://medium.com/@nashvail/lets-settle-this-part-one-ef36471c7d97
Another look at `this`, with a number of examples and explanations



#### Paid Courses and Books
#### Paid Courses and Books

- **Javascript: Understanding the Weird Parts**
https://www.udemy.com/understand-javascript/?couponCode=YOUTUBE19
https://www.youtube.com/watch?v=Bv_5Zv5c-Ts
http://joanmira.com/javascript-understanding-the-weird-parts/
A widely recommended course on Javascript by Tony Alicea. The first 3.5-hour video is free on Youtube, with a discount link for the course. The last link is notes from the course.
12 changes: 11 additions & 1 deletion pros-cons-discussion.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
Looks at 6 ways different frameworks make things "easy": concepts, reading/writing code, architecting / maintaining / debugging apps.

- **How React Helped Us Scale a Large Web App**
https://medium.com/opengov-developers/how-react-helped-us-scale-a-large-web-app-d89f96c4790a
https://medium.com/opengov-developers/how-react-helped-us-scale-a-large-web-app-d89f96c4790a
A look at how React has been used to scale the OpenGov app architecture in terms of both users and developers.


Expand Down Expand Up @@ -136,8 +136,17 @@ similar structures in ClojureScript.
https://news.ycombinator.com/item?id=11778663
Around 250 comments on React, dependency management, tutorial writing, and library churn.

- **"Why Learning Angular 2 was Excruciating"**
https://news.ycombinator.com/item?id=12534296
https://news.ycombinator.com/item?id=12536634
Another very long thread about the JS ecosystem and versioning. The linked comment describes how React, Redux, and Webpack have brought predictability to a particular application.

#### React's PATENTS License

- **Facebook Open Source License FAQ**
https://code.facebook.com/pages/850928938376556
Official answers to questions about the meanings of license phrasing

- **Dan Abramov Twitter threads addressing patent concerns**
https://twitter.com/dan_abramov/status/754992075087745024
https://twitter.com/dan_abramov/status/766210972776337408
Expand All @@ -156,5 +165,6 @@ similar structures in ClojureScript.
https://news.ycombinator.com/item?id=12108526
https://vimeo.com/170598656#comment_14699807
https://github.com/facebook/react/issues/7293
https://news.ycombinator.com/item?id=12597488
More discussion threads regarding the PATENTS license

17 changes: 17 additions & 0 deletions react-performance.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,23 @@ My [Redux Ecosystem Links](https://github.com/markerikson/redux-ecosystem-links)
https://twitter.com/dan_abramov/status/760199672824815616
Dan advises not to worry about binding methods in render functions unless profiling shows it's a real perf problem for you

- **Real-World React Debugging**
https://www.youtube.com/watch?v=0MGTONvtlrI
http://jaredforsyth.com/real-world-react-debugging/#/
A talk on strategies for debugging React apps, with slides.

- **Don't Use Bind when Passing Props**
https://daveceddia.com/avoid-bind-when-passing-props/
https://www.reddit.com/r/reactjs/comments/4ri9x8/dont_use_bind_when_passing_props/
Advice on approaches to function binding, with further discussion.

- **Progressive Web Apps with React**
https://medium.com/@addyosmani/progressive-web-apps-with-react-js-part-i-introduction-50679aef2b12
https://medium.com/@addyosmani/progressive-web-apps-with-react-js-part-2-page-load-performance-33b932d97cf2
https://medium.com/@addyosmani/progressive-web-apps-with-react-js-part-3-offline-support-and-network-resilience-c84db889162c
A multi-part series by Addy Osmani on building performant Progressive Web Apps, including page loading, code splitting, and offline handling.


#### Immutable Data

- **Building Efficient UI with React and Redux**
Expand Down
29 changes: 23 additions & 6 deletions react-redux-architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@
Describes the container component pattern and how to use it to split up responsibilities between fetching and displaying data.

- **Finding `state`'s place with React and Redux**
https://medium.com/@adamrackis/finding-state-s-place-with-react-and-redux-e9a586630172
https://medium.com/@adamrackis/finding-state-s-place-with-react-and-redux-e9a586630172
A look at when and how using React component state may be useful, even when using Redux for primary app state

- **Dataflow through React**
Expand Down Expand Up @@ -160,7 +160,7 @@

- **Redux'ing without Redux**
https://medium.com/@m.mollaverdi/reduxing-without-redux-75dbd5c05336
Thoughts on how some of Redux’s goodness can perhaps be utilised without actually using Redux.
Thoughts on how some of Redux's goodness can perhaps be utilised without actually using Redux.

- **Exploring React's State Propagation**
https://www.sitepoint.com/exploring-reacts-state-propagation/
Expand All @@ -174,6 +174,10 @@
https://github.com/jamesknelson/m-and-c-in-mvc-talk
Slides for James K. Nelson's talk at ReactNext, talking about the multiple categories of state and how controller components can manage them.

- **React, Higher Order Components, and Legacy Applications**
http://browniefed.com/blog/react/
Examples of how to integrate React into an existing application using HoCs

#### React and AJAX

- **React AJAX Best Practices**
Expand Down Expand Up @@ -274,6 +278,10 @@
http://react.tips/checkboxes-in-react/
Tutorials on managing various inputs in forms with React

- **Elegant Form Validation in React**
https://spin.atomicobject.com/2016/10/05/form-validation-react/
Examples of adding validation to a form


#### Project File Structure

Expand Down Expand Up @@ -316,14 +324,14 @@
- **Redux Structure: a Way to Success**
https://datarockets.com/blog/redux-structure
Thoughts on a "modules and components"-based approach to file structure,

- **My journey toward a maintainable project structure for React/Redux**
https://hackernoon.com/my-journey-toward-a-maintainable-project-structure-for-react-redux-b05dfd999b5
Describes an evolution of approaches for project structure


#### Redux Architecture


- **Reddit: "Redux - Reducer composition without slicing state?"**
https://www.reddit.com/r/javascript/comments/42ey9e/redux_reducer_composition_without_slicing_state/
Some very informative discussion on how to organize reducers and actions.

- **Wordpress Calypso: Our Approach to Data**
https://github.com/Automattic/wp-calypso/blob/master/docs/our-approach-to-data.md
Expand Down Expand Up @@ -352,3 +360,12 @@
- **Code Sharing Between React Native and React Web Apps**
https://medium.com/the-many/code-sharing-between-react-native-and-react-web-apps-b1e1de22fc53
Describes ways to architect Redux actions and reducers in the context of a product that shares code between React Native and React Web clients

- **You Might Not Need Redux**
https://medium.com/@dan_abramov/you-might-not-need-redux-be46360cf367
Dan Abramov discusses the tradeoffs involved in using Redux.

- **Avoiding Accidental Complexity When Structuring Your App State**
https://hackernoon.com/avoiding-accidental-complexity-when-structuring-your-app-state-6e6d22ad5e2a
An excellent set of guidelines for organizing your Redux store structure.

26 changes: 25 additions & 1 deletion react-redux-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,31 @@
https://gist.github.com/joshdover/235714771d94509a83609b16d232014a
https://news.ycombinator.com/item?id=12087437
Several useful patterns for testing React components, with discussion on HN.


- **A Step-by-Step TDD Approach on Testing React Components using Enzyme**
http://thereignn.ghost.io/a-step-by-step-tdd-approach-on-testing-react-components-using-enzyme/
An excellent article covering TDD, React, and Enzyme.

- **How to Test React Components Using Jest**
https://www.sitepoint.com/test-react-components-jest/
An in-depth look at how to set up and use Jest for testing

- **Testing with Jest Snapshots: First Impressions**
http://benmccormick.org/2016/09/19/testing-with-jest-snapshots-first-impressions/
Description of the pros and cons of using Jest's new Snapshot Testing feature

- **Jest Testing Resources**
https://facebook.github.io/jest/blog/2016/07/27/jest-14.html
https://facebook.github.io/jest/blog/2016/10/03/jest-16.html
Announcements of updates to the Facebook Jest testing tool, with links to further articles and information.

- **Migrating Ava to Jest**
http://browniefed.com/blog/migrating-ava-to-jest/
Some quick tips on switching your testing config to use Jest

- **React UI Testing with Storybook**
https://getstorybook.io/docs/testing/react-ui-testing
Looks at using the React Storybook component editor to do UI testing

#### General Testing, Tools, and Setup

Expand Down
14 changes: 13 additions & 1 deletion react-styling.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,14 @@
http://andrewhfarmer.com/how-to-style-react/
An excellent overview of the four major ways to deal with styles in React, and what the various tools are. Includes a decision tree to help you decide what to use.

- **CSS in JS**
http://blog.vjeux.com/2014/javascript/react-css-in-js-nationjs.html
Christopher Chedeau's classic talk that inspired the "CSS in JS" revolution

- **Component Based Style Reuse**
https://www.youtube.com/watch?v=_70Yp8KPXH8
Pete Hunt talks about various approaches to defining styles for components in plain CSS and in React

- **CSS Modules by Example**
http://andrewhfarmer.com/css-modules-by-example/
A set of 7 examples demonstrating ways to use CSS modules.
Expand All @@ -26,4 +34,8 @@

- **Functional CSS - The Good, The Bad, and Some Protips for React.js Users**
https://github.com/chibicode/react-functional-css-protips
An essay describing the "functional CSS" approach, pros and cons of using it, and tips for using that approach with React.
An essay describing the "functional CSS" approach, pros and cons of using it, and tips for using that approach with React.

- **Thoughts on Inline Styles**
https://medium.com/@andrewingram/my-thoughts-on-inline-styles-da94682b5e35
A look at reasons why people might or might not use inline style approaches, and some opinions and suggestions on when to use different approaches.
16 changes: 16 additions & 0 deletions react-tutorials.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,10 @@
- **React Workshop**
https://github.com/jesstelford/react-workshop
A self-directed set of workshop lessons that teach React basics.

- **React Cheat Sheet**
http://reactcheatsheet.com/
A filterable list of React's APIs and concepts


#### Project-Based Tutorials
Expand Down Expand Up @@ -217,6 +221,18 @@
https://www.youtube.com/watch?v=dRo_egw7tBc
A Javascript Air episode focused on how React's Events system works, with React team members Dan Abramov and Ben Alpert

- **Building React from Scratch**
https://www.youtube.com/watch?v=_MAD4Oly9yg
Paul O'Shannessy walks through building a mini React implementation

- **Building Your Own React Clone in Five Easy Steps**
http://blog.javascripting.com/2016/10/05/building-your-own-react-clone-in-five-easy-steps/
Builds a mini-React implementation to illustrate the basic principles

- **Our First 50,000 Stars**
https://facebook.github.io/react/blog/2016/09/28/our-first-50000-stars.html
A post celebrating React's progress, including a history of how React's concepts came together over time

#### Paid Courses and Books

Also see the course sites listed in the [Community Resources](community-resources.md#online-course-sites) page.
Expand Down
Loading

0 comments on commit 572eeef

Please sign in to comment.