Skip to content

Instantly share code, notes, and snippets.

View sylvesteraswin's full-sized avatar

Sylvester Aswin sylvesteraswin

  • Microsoft
  • Berlin
View GitHub Profile
@sylvesteraswin
sylvesteraswin / on-jsx.markdown
Created December 30, 2016 22:24 — forked from chantastic/on-jsx.markdown
JSX, a year in

Hi Nicholas,

I saw you tweet about JSX yesterday. It seemed like the discussion devolved pretty quickly but I wanted to share our experience over the last year. I understand your concerns. I've made similar remarks about JSX. When we started using it Planning Center, I lead the charge to write React without it. I don't imagine I'd have much to say that you haven't considered but, if it's helpful, here's a pattern that changed my opinion:

The idea that "React is the V in MVC" is disingenuous. It's a good pitch but, for many of us, it feels like in invitation to repeat our history of coupled views. In practice, React is the V and the C. Dan Abramov describes the division as Smart and Dumb Components. At our office, we call them stateless and container components (view-controllers if we're Flux). The idea is pretty simple: components can'

@sylvesteraswin
sylvesteraswin / infinite.js
Created January 6, 2017 19:41 — forked from threepointone/infinite.js
infinite scrolling pattern with react fiber (featuring intersection observers)
// inifinite scrolling of content without extra wrappers
const { render, findDOMNode } = ReactDOMFiber
class App extends React.Component {
render() {
// wrap the root element with an Intersection Observer, exposing .observe for children
return <Intersection>
<div style={{ height: 200, overflow: 'auto' }}>
<Page offset={0} count={10} />
</div>

Keybase proof

I hereby claim:

  • I am sylvesteraswin on github.
  • I am sylvesteraswin (https://keybase.io/sylvesteraswin) on keybase.
  • I have a public key ASBXmuYeFRUn70Jr5bAHumW7vtsAOafM7VoJcGzFiAVQVAo

To claim this, I am signing this object: