{"action":"created","issue":{"url":"https://api.github.com/repos/react-europe/cfp-2015/issues/13","labels_url":"https://api.github.com/repos/react-europe/cfp-2015/issues/13/labels{/name}","comments_url":"https://api.github.com/repos/react-europe/cfp-2015/issues/13/comments","events_url":"https://api.github.com/repos/react-europe/cfp-2015/issues/13/events","html_url":"https://github.com/react-europe/cfp-2015/pull/13","id":54662571,"number":13,"title":"Maintainability: To Mixin or not to Mixin","user":{"login":"rickbeerendonk","id":479223,"avatar_url":"https://avatars.githubusercontent.com/u/479223?v=3","gravatar_id":"","url":"https://api.github.com/users/rickbeerendonk","html_url":"https://github.com/rickbeerendonk","followers_url":"https://api.github.com/users/rickbeerendonk/followers","following_url":"https://api.github.com/users/rickbeerendonk/following{/other_user}","gists_url":"https://api.github.com/users/rickbeerendonk/gists{/gist_id}","starred_url":"https://api.github.com/users/rickbeerendonk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rickbeerendonk/subscriptions","organizations_url":"https://api.github.com/users/rickbeerendonk/orgs","repos_url":"https://api.github.com/users/rickbeerendonk/repos","events_url":"https://api.github.com/users/rickbeerendonk/events{/privacy}","received_events_url":"https://api.github.com/users/rickbeerendonk/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-01-17T14:01:35Z","updated_at":"2015-02-15T20:42:55Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/react-europe/cfp-2015/pulls/13","html_url":"https://github.com/react-europe/cfp-2015/pull/13","diff_url":"https://github.com/react-europe/cfp-2015/pull/13.diff","patch_url":"https://github.com/react-europe/cfp-2015/pull/13.patch"},"body":"With the increasing size of our JavaScript applications, maintainability becomes a significant factor. For this reason React's functional approach is becoming popular.\r\n\r\nDo not repeat yourself (DRY) is a software development best practise to improve maintainability. We can use inheritance, composition, mixins or other techniques to achieve this. In the original React class system mixins were very popular. With the introduction of ES6 classes in React v0.13, mixins are no longer possible.\r\n\r\nThis talk explains the different DRY approaches, the pros and cons and their application in React. For example, we'll see how (multiple) mixins and React classes are combined. By diving into React's source, we can see what's possible and what's not. Composition with ES6 classes will also be extensively explored and demoed, whenever possible with the new compositional API.\r\n\r\nThis session aims to help you write maintainable React apps.\r\n"},"comment":{"url":"https://api.github.com/repos/react-europe/cfp-2015/issues/comments/74435867","html_url":"https://github.com/react-europe/cfp-2015/pull/13#issuecomment-74435867","issue_url":"https://api.github.com/repos/react-europe/cfp-2015/issues/13","id":74435867,"user":{"login":"emmenko","id":1110551,"avatar_url":"https://avatars.githubusercontent.com/u/1110551?v=3","gravatar_id":"","url":"https://api.github.com/users/emmenko","html_url":"https://github.com/emmenko","followers_url":"https://api.github.com/users/emmenko/followers","following_url":"https://api.github.com/users/emmenko/following{/other_user}","gists_url":"https://api.github.com/users/emmenko/gists{/gist_id}","starred_url":"https://api.github.com/users/emmenko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/emmenko/subscriptions","organizations_url":"https://api.github.com/users/emmenko/orgs","repos_url":"https://api.github.com/users/emmenko/repos","events_url":"https://api.github.com/users/emmenko/events{/privacy}","received_events_url":"https://api.github.com/users/emmenko/received_events","type":"User","site_admin":false},"created_at":"2015-02-15T20:42:55Z","updated_at":"2015-02-15T20:42:55Z","body":":+1: "}}