{"action":"created","issue":{"url":"https://api.github.com/repos/FreeCodeCamp/CurriculumExpansion/issues/16","repository_url":"https://api.github.com/repos/FreeCodeCamp/CurriculumExpansion","labels_url":"https://api.github.com/repos/FreeCodeCamp/CurriculumExpansion/issues/16/labels{/name}","comments_url":"https://api.github.com/repos/FreeCodeCamp/CurriculumExpansion/issues/16/comments","events_url":"https://api.github.com/repos/FreeCodeCamp/CurriculumExpansion/issues/16/events","html_url":"https://github.com/FreeCodeCamp/CurriculumExpansion/issues/16","id":163622593,"number":16,"title":"Functional Programming Challenges","user":{"login":"QuincyLarson","id":985197,"avatar_url":"https://avatars.githubusercontent.com/u/985197?v=3","gravatar_id":"","url":"https://api.github.com/users/QuincyLarson","html_url":"https://github.com/QuincyLarson","followers_url":"https://api.github.com/users/QuincyLarson/followers","following_url":"https://api.github.com/users/QuincyLarson/following{/other_user}","gists_url":"https://api.github.com/users/QuincyLarson/gists{/gist_id}","starred_url":"https://api.github.com/users/QuincyLarson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/QuincyLarson/subscriptions","organizations_url":"https://api.github.com/users/QuincyLarson/orgs","repos_url":"https://api.github.com/users/QuincyLarson/repos","events_url":"https://api.github.com/users/QuincyLarson/events{/privacy}","received_events_url":"https://api.github.com/users/QuincyLarson/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"abhisekp","id":1029200,"avatar_url":"https://avatars.githubusercontent.com/u/1029200?v=3","gravatar_id":"","url":"https://api.github.com/users/abhisekp","html_url":"https://github.com/abhisekp","followers_url":"https://api.github.com/users/abhisekp/followers","following_url":"https://api.github.com/users/abhisekp/following{/other_user}","gists_url":"https://api.github.com/users/abhisekp/gists{/gist_id}","starred_url":"https://api.github.com/users/abhisekp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abhisekp/subscriptions","organizations_url":"https://api.github.com/users/abhisekp/orgs","repos_url":"https://api.github.com/users/abhisekp/repos","events_url":"https://api.github.com/users/abhisekp/events{/privacy}","received_events_url":"https://api.github.com/users/abhisekp/received_events","type":"User","site_admin":false},"assignees":[{"login":"abhisekp","id":1029200,"avatar_url":"https://avatars.githubusercontent.com/u/1029200?v=3","gravatar_id":"","url":"https://api.github.com/users/abhisekp","html_url":"https://github.com/abhisekp","followers_url":"https://api.github.com/users/abhisekp/followers","following_url":"https://api.github.com/users/abhisekp/following{/other_user}","gists_url":"https://api.github.com/users/abhisekp/gists{/gist_id}","starred_url":"https://api.github.com/users/abhisekp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abhisekp/subscriptions","organizations_url":"https://api.github.com/users/abhisekp/orgs","repos_url":"https://api.github.com/users/abhisekp/repos","events_url":"https://api.github.com/users/abhisekp/events{/privacy}","received_events_url":"https://api.github.com/users/abhisekp/received_events","type":"User","site_admin":false},{"login":"alayek","id":5607371,"avatar_url":"https://avatars.githubusercontent.com/u/5607371?v=3","gravatar_id":"","url":"https://api.github.com/users/alayek","html_url":"https://github.com/alayek","followers_url":"https://api.github.com/users/alayek/followers","following_url":"https://api.github.com/users/alayek/following{/other_user}","gists_url":"https://api.github.com/users/alayek/gists{/gist_id}","starred_url":"https://api.github.com/users/alayek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alayek/subscriptions","organizations_url":"https://api.github.com/users/alayek/orgs","repos_url":"https://api.github.com/users/alayek/repos","events_url":"https://api.github.com/users/alayek/events{/privacy}","received_events_url":"https://api.github.com/users/alayek/received_events","type":"User","site_admin":false}],"milestone":null,"comments":48,"created_at":"2016-07-04T08:00:02Z","updated_at":"2016-09-05T18:22:00Z","closed_at":null,"body":"@alayek is in charge of coordinating the expansion of these challenges, but he needs your help.\r\n\r\nFor each challenge, please reply to this GitHub issue with:\r\n1. Challenge description text\r\n2. Test suite (using the assert method)\r\n3. The seed code, which is pre-populated in the editor at the beginning of the challenge\r\n4. A working solution that makes all tests pass\r\n\r\nHere are the challenges we have currently planned (these can be further expanded):\r\n\r\n- [X] Imperative hazards :zap: \r\n    - [X] Some showcasing of imperative bugs => [Imperative Hazards](#issuecomment-234733158)\r\n- [X] Declarative beauty :dancer:\r\n    - [X] Intro to non-mutating discipline => [It's not the same](#issuecomment-234734742)\r\n    - [X] Declare your dependencies => [Show me what you got](#issuecomment-234735339)\r\n    - [X] Some pure Array manipulation => [Brave new world](#issuecomment-234737468)\r\n- [X] Mapping :busts_in_silhouette:\r\n    - [X] Introduction to `Array.prototype.map()` => [Less Talk, More Action: Map](#issuecomment-234740083)\r\n    - [X] Closer look at `map()` => [I Wanna Map It Map It](#issuecomment-234799131)\r\n- [x] Functional filtering :fuelpump:\r\n- [x] Slicing :hocho:\r\n    - [x] Introduce `Array.prototype.slice()`\r\n    - [x] Rewrite code which has `splice()` over `slice()`\r\n- [x] Con-catting :revolving_hearts:\r\n    - [x] Introduce `Array.prototype.concat()`\r\n    - [x] Replace `push()` with `concat()`\r\n- [x] Reducing to ashes :fire:\r\n    - [x] Introduce `Array.prototype.reduce()`\r\n    - [x] Teach them how to think of problem solution using `reduce()`\r\n    - [x] Implement `map()`, `filter()` etc. with `reduce()`\r\n- [x] Sort Arrays with `Array.prototype.sort()`\r\n    - [x] Have the camper write a non-mutating version of `sort()`\r\n- [x] String problems in the form of Array processing\r\n    - [x] Split Strings with .split\r\n    - [x] Join Strings with .join \r\n    - [x] Some sample String processing problem where previously learned lessons are used.\r\n- [x] Check Positive :heavy_plus_sign: \r\n    - [x] Strictly Positive :muscle: \r\n    - [x] Lenient Positive :cake: \r\n- [ ] Intro to partial and currying :neckbeard:\r\n- [ ] Function composition :cyclone:\r\n- [ ] Refactor imperative code-base to a functional one\r\n\r\n... and a lot of challenges that practice and recombine these functions. Currently, many of these can be solved by copying and pasting from the description. We should make sure that's not possible."},"comment":{"url":"https://api.github.com/repos/FreeCodeCamp/CurriculumExpansion/issues/comments/244795642","html_url":"https://github.com/FreeCodeCamp/CurriculumExpansion/issues/16#issuecomment-244795642","issue_url":"https://api.github.com/repos/FreeCodeCamp/CurriculumExpansion/issues/16","id":244795642,"user":{"login":"UsamaHameed","id":11444352,"avatar_url":"https://avatars.githubusercontent.com/u/11444352?v=3","gravatar_id":"","url":"https://api.github.com/users/UsamaHameed","html_url":"https://github.com/UsamaHameed","followers_url":"https://api.github.com/users/UsamaHameed/followers","following_url":"https://api.github.com/users/UsamaHameed/following{/other_user}","gists_url":"https://api.github.com/users/UsamaHameed/gists{/gist_id}","starred_url":"https://api.github.com/users/UsamaHameed/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/UsamaHameed/subscriptions","organizations_url":"https://api.github.com/users/UsamaHameed/orgs","repos_url":"https://api.github.com/users/UsamaHameed/repos","events_url":"https://api.github.com/users/UsamaHameed/events{/privacy}","received_events_url":"https://api.github.com/users/UsamaHameed/received_events","type":"User","site_admin":false},"created_at":"2016-09-05T18:22:00Z","updated_at":"2016-09-05T18:22:00Z","body":"I can do the following:\r\n- [ ] Intro to partial and currying :neckbeard:\r\n- [ ] Function composition :cyclone:"}}
{"actor":{"display_login":"UsamaHameed"}}