{"action":"created","comment":{"url":"https://api.github.com/repos/meteor/guide/pulls/comments/45441064","id":45441064,"diff_hunk":"@@ -0,0 +1,370 @@\n+---\n+title: Collections and Models\n+---\n+\n+After reading this guide, you'll know:\n+\n+1. What the different flavors of Mongo Collection in Meteor are, and how to use them.\n+2. How to define a schema for a collection to control it's content.\n+3. What considerations you should take when defining your collection's schema\n+4. How to modify the content of a collection in a sensible way\n+5. How to change the schema of your collection in a careful way.\n+6. How to deal with relations between records in collections\n+\n+## Mongo Collections in Meteor\n+\n+At its core, a web application offers its users a view into, and a way to modify, a persistent set of data. Whether managing a list of todos, or ordering a car to pick you up, you are, at some level, fundamentally interacting with a permanent (if changing) data layer. \n+\n+In Meteor, that data layer is typically stored in the Mongo database engine. A set of data in Mongo is referred to as a \"collection\", and in Meteor, it's [collections](http://docs.meteor.com/#/full/mongo_collection) that forms the persistence layer.\n+\n+However, collections are a lot more than a way to store data. They also provide the core of the realtime, connected user experience that the best applications provide, and which Meteor makes easy to implement.\n+\n+In this article, we'll look closely at how collections work in various places in the framework, and how to get the most out of them.\n+\n+### Server-side collections\n+\n+When you create a collection on the server:\n+```js\n+Todos = new Mongo.Collection('Todos');\n+```\n+\n+You are creating a collection within Mongo itself, and a interface to that collection to be used on the server. It's a fairly straightforward layer on top of the underlying Node Mongo driver, but with a synchronous (fibers-based) API:\n+\n+```js\n+// This line won't complete until the insert is done\n+Todos.insert({_id: 'my-todo'});\n+// So this line will return something\n+const todo = Todos.findOne({_id: 'my-todo'});\n+// Look ma, no callbacks!\n+console.log(todo);\n+```\n+\n+### Client-side collections\n+\n+On the client, when you write the same line:\n+```js\n+Todos = new Mongo.Collection('Todos');\n+```\n+\n+It does something totally different!\n+\n+On the client, there is no direct connection to the Mongo database server, and in fact a sychronous API to it is not possible (nor probably what you want). Instead, on the client, a collection is a client side *cache* of the database, with a Mongo API. This is achieved thanks to the [Minimongo](https://www.meteor.com/mini-databases) library.\n+\n+Minimongo is an in-memory, all JS, Mongo implementation. What this means is that on the client, when you write:\n+```js\n+// This line is changing an in-memory datastructure\n+Todos.insert({_id: 'my-todo'});\n+// And this line is querying it\n+const todo = Todos.findOne({_id: 'my-todo'});\n+// So this happens right away!\n+console.log(todo);\n+```\n+\n+The way that you move data from the server (and Mongo-backed) collection into the client (in-memory) collection is the subject of the \"data loading\" article. But, generally speaking, you use a *subscription* to a *publication* to push data from the server to the client. Usually, you can assume that the client contains an up-to-date copy of some subset of the full Mongo collection.\n+\n+To write data back to the server, you use a *method*, the subject of the \"methods and forms\" article.\n+\n+### Local Collections\n+\n+There is a third way to use a collection in Meteor. On the client or server, if you create a collection but do *not* give it a name:\n+\n+```js\n+Scratch = new Mongo.Collection(null);\n+```\n+You create what's known as a *local collection*. This is a Minimongo collection that has no database connection (ordinarly a named collection would either be directly connected to the database on the server, or via a publication on the client). \n+\n+A local collection is simply a convienent way to use the full power of the Minimongo library for in-memory storage. For instance, you might use it instead of a simple array if you'll need to sophisticated queries over your set of data. Or you may want to take advatange of it's *reactivity* on the client to drive some UI in a way that feels natural in Meteor.\n+\n+## Defining Collections with a Schema\n+\n+Although Mongo is a schema-less database, which allows maximum flexibility in data structuring, it is generally good practice to use a schema to constraint the contents of your collection to conform to a known format. If you don't, then you tend to end up needing to write defensive code to check and confirm the structure of your data as it *comes out* of the database, instead of when it *goes into* the database. As in most things, you tend to *read things more often than you write them*, and so it's usually easier, and less buggy to use a schema.","path":"content/collections.md","position":null,"original_position":80,"commit_id":"f2ffdfef2151ca7fd09d39d4bb3e3e0cfce41b6e","original_commit_id":"e8f39cb494e7575e0a30b036e851eb46d02e811f","user":{"login":"stubailo","id":448783,"avatar_url":"https://avatars.githubusercontent.com/u/448783?v=3","gravatar_id":"","url":"https://api.github.com/users/stubailo","html_url":"https://github.com/stubailo","followers_url":"https://api.github.com/users/stubailo/followers","following_url":"https://api.github.com/users/stubailo/following{/other_user}","gists_url":"https://api.github.com/users/stubailo/gists{/gist_id}","starred_url":"https://api.github.com/users/stubailo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stubailo/subscriptions","organizations_url":"https://api.github.com/users/stubailo/orgs","repos_url":"https://api.github.com/users/stubailo/repos","events_url":"https://api.github.com/users/stubailo/events{/privacy}","received_events_url":"https://api.github.com/users/stubailo/received_events","type":"User","site_admin":false},"body":":+1:<a href='#crh-update-none'></a>","created_at":"2015-11-20T07:10:18Z","updated_at":"2015-11-20T07:10:18Z","html_url":"https://github.com/meteor/guide/pull/94#discussion_r45441064","pull_request_url":"https://api.github.com/repos/meteor/guide/pulls/94","_links":{"self":{"href":"https://api.github.com/repos/meteor/guide/pulls/comments/45441064"},"html":{"href":"https://github.com/meteor/guide/pull/94#discussion_r45441064"},"pull_request":{"href":"https://api.github.com/repos/meteor/guide/pulls/94"}}},"pull_request":{"url":"https://api.github.com/repos/meteor/guide/pulls/94","id":50768948,"html_url":"https://github.com/meteor/guide/pull/94","diff_url":"https://github.com/meteor/guide/pull/94.diff","patch_url":"https://github.com/meteor/guide/pull/94.patch","issue_url":"https://api.github.com/repos/meteor/guide/issues/94","number":94,"state":"open","locked":false,"title":"Starting collections chapter","user":{"login":"tmeasday","id":132554,"avatar_url":"https://avatars.githubusercontent.com/u/132554?v=3","gravatar_id":"","url":"https://api.github.com/users/tmeasday","html_url":"https://github.com/tmeasday","followers_url":"https://api.github.com/users/tmeasday/followers","following_url":"https://api.github.com/users/tmeasday/following{/other_user}","gists_url":"https://api.github.com/users/tmeasday/gists{/gist_id}","starred_url":"https://api.github.com/users/tmeasday/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tmeasday/subscriptions","organizations_url":"https://api.github.com/users/tmeasday/orgs","repos_url":"https://api.github.com/users/tmeasday/repos","events_url":"https://api.github.com/users/tmeasday/events{/privacy}","received_events_url":"https://api.github.com/users/tmeasday/received_events","type":"User","site_admin":false},"body":"Not sure if we want to do this via PR, but here goes anyway.\r\n\r\nThis is still in progress, obviously\r\n<a href='#crh-start'></a><a href='#crh-data-%7B%22processed%22%3A%20%5B%22https%3A//github.com/meteor/guide/pull/94%23issuecomment-156922085%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44890499%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23issuecomment-156923327%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23issuecomment-156972101%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44903892%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44962417%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44962741%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44962949%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44963150%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44963680%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45019604%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45023083%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45025622%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45025690%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45025740%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45025754%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45025761%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45025847%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45111831%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45112048%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45123272%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45151509%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23issuecomment-157601488%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45159551%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45251308%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45251419%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45251542%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45251839%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252000%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252235%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252413%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252589%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252616%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252740%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45278338%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45427000%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45427035%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45427072%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45427108%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45427135%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45427277%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45427920%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45428107%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45428120%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45428193%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45440908%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45440925%22%2C%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45441028%22%5D%2C%20%22comments%22%3A%20%7B%22General%20Comment%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23issuecomment-156922085%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Yeah%20I%20think%20PR%20is%20best%20for%20posting%20comments%20and%20whatnot.%22%2C%20%22created_at%22%3A%20%222015-11-16T05%3A42%3A30Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22Would%20you%20rather%20I%20put%20in%20feedback%20right%20now%2C%20or%20wait%20until%20it%27s%20%5C%22done%5C%22%3F%22%2C%20%22created_at%22%3A%20%222015-11-16T05%3A53%3A33Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22I%27m%20doing%20it%20a%20section%20at%20time%20so%20feel%20free%20to%20comment%20on%20the%20sections%20I%27ve%20done.%20OTOH%20it%20might%20be%20easier%20to%20do%20one%20pass.%22%2C%20%22created_at%22%3A%20%222015-11-16T09%3A46%3A17Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%2C%20%7B%22body%22%3A%20%22Not%20really%20sure%20how%20to%20end%20the%20chapter..%22%2C%20%22created_at%22%3A%20%222015-11-18T04%3A24%3A47Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22General%20Comment%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%20132%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252000%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22This%20is%20like%2C%20super%20not%20true%20at%20the%20moment%2C%20right%3F%20Code%20item%3F%22%2C%20%22created_at%22%3A%20%222015-11-18T19%3A59%3A53Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22Yup%2C%20still%20on%20the%20todo%20list%3A%20https%3A//github.com/meteor/guide/issues/52%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A50%3A23Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%2C%20%22Pull%201f4b7f567e0f890dc899069e02a47dd663299112%20content/collections.md%205%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44890499%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Do%20you%20think%20this%20is%20a%20good%20format%20for%20an%20introduction%3F%20I%20like%20it%2C%20but%20I%20heard%20not%20everyone%20is%20into%20it.%22%2C%20%22created_at%22%3A%20%222015-11-16T05%3A42%3A58Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22I%20was%20a%20fan%20of%20it.%20Perhaps%20we%20should%20ask%20some%20others%3F%22%2C%20%22created_at%22%3A%20%222015-11-16T09%3A46%3A29Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%22%2C%20%22created_at%22%3A%20%222015-11-17T19%3A58%3A30Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-190%22%7D%2C%20%22Pull%207d00eae72af0e8532e22a348149a9b2d052b6c35%20content/collections.md%20153%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44963150%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22I%20don%27t%20think%20we%20should%20introduce%20a%20new%20feature%20of%20simple-schema%20in%20the%20same%20paragraph%20as%20we%20tell%20you%20not%20to%20use%20subfields.%22%2C%20%22created_at%22%3A%20%222015-11-16T18%3A41%3A15Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22You%27re%20right%22%2C%20%22created_at%22%3A%20%222015-11-17T06%3A18%3A52Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%20%22%2C%20%22created_at%22%3A%20%222015-11-17T06%3A18%3A56Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-288%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%20339%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252589%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Yep%2C%20we%20should%20add%20it.%20File%20an%20issue%20on%20todos%3F%22%2C%20%22created_at%22%3A%20%222015-11-18T20%3A04%3A12Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22https%3A//github.com/meteor/todos/issues/47%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A35%3A55Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%20155%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252235%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22We%20might%20want%20to%20go%20over%20the%20concept%20of%20normalization%20vs%20denormalization%20here%20a%20little%22%2C%20%22created_at%22%3A%20%222015-11-18T20%3A01%3A35Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22I%20added%20something.%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A52%3A45Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%22%2C%20%22created_at%22%3A%20%222015-11-20T07%3A09%3A19Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%2C%20%22Pull%20f77017604ee3966f4bd22fd7fd2dcb75ba87fe66%20content/collections.md%20269%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45112048%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22This%20is%20specifically%20about%20running%20migrations%20_in%20production_.%20We%20should%20make%20sure%20people%20don%27t%20accidentally%20migrate%20their%20production%20database%20when%20they%20are%20developing%20%3A%5D%22%2C%20%22created_at%22%3A%20%222015-11-17T20%3A00%3A04Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22We%20should%20probably%20put%20a%20link%20to%20the%20migration%20API%20somewhere%20before%20this%20section%20as%20well.%22%2C%20%22created_at%22%3A%20%222015-11-17T21%3A25%3A11Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22I%20added%20something%20about%20development%20migrations.%5Cr%5Cn%5Cr%5CnRe%3A%20docs%20--%20the%20original%20mention%20of%20the%20package%20is%20a%20link.%20Do%20you%20think%20I%20should%20call%20it%20out%20more%20specifically%3F%22%2C%20%22created_at%22%3A%20%222015-11-18T02%3A09%3A15Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%2C%20%7B%22body%22%3A%20%22Yeah%2C%20I%20think%20there%20should%20be%20a%20big%20thing%20that%20says%20%5C%22We%27re%20only%20covering%20some%20usage%20tips%20here%2C%20see%20the%20rest%20of%20the%20docs%20for%20all%20of%20the%20options%20and%20API%5C%22%22%2C%20%22created_at%22%3A%20%222015-11-18T19%3A54%3A52Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%20%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A54%3A05Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-340%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%20198%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45159551%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Should%20this%20not%20be%20simply%20%60Lists%60%3F%22%2C%20%22created_at%22%3A%20%222015-11-18T04%3A47%3A07Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/319567%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/dburles%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%20360%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252740%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Should%20we%20just%20not%20have%20it%20in%20the%20initial%20guide%20release%3F%20I%20feel%20like%20we%27ve%20been%20procrastinating%20on%20this%20hardcore.%22%2C%20%22created_at%22%3A%20%222015-11-18T20%3A05%3A29Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22Well%20I%20put%20out%20the%20call%20on%20the%20forums%2C%20heard%20nothing.%20I%20can%20write%20it%20when%20I%20have%20a%20sec%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A36%3A53Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%2C%20%22Pull%207d00eae72af0e8532e22a348149a9b2d052b6c35%20content/collections.md%2031%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44962417%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Somewhere%20we%20should%20link%20to%20the%20docs%20about%20the%20collection%20API%22%2C%20%22created_at%22%3A%20%222015-11-16T18%3A35%3A42Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%22%2C%20%22created_at%22%3A%20%222015-11-17T06%3A15%3A53Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-288%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%2069%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45251419%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22%5C%22but%20pass%20null%20instead%20of%20a%20name%5C%22%22%2C%20%22created_at%22%3A%20%222015-11-18T19%3A55%3A40Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A37%3A31Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%2C%20%22Pull%207d00eae72af0e8532e22a348149a9b2d052b6c35%20content/collections.md%20135%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44962949%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22%5C%22what%20a%20user%20did%20wrong%5C%22%20-%3E%20What%20parts%20of%20the%20document%20don%27t%20match%20the%20schema%5Cr%5Cn%5Cr%5CnIMO%20saying%20that%20the%20%5C%22user%20did%20wrong%5C%22%20leads%20to%20bad%20UX.%22%2C%20%22created_at%22%3A%20%222015-11-16T18%3A39%3A54Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%20%22%2C%20%22created_at%22%3A%20%222015-11-17T06%3A18%3A36Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-288%22%7D%2C%20%22Pull%207d00eae72af0e8532e22a348149a9b2d052b6c35%20content/collections.md%20101%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44962741%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22This%20seems%20like%20a%20natural%20place%20to%20link%20to%20the%20docs%20for%20simple-schema%20to%20show%20what%20other%20restrictions%20are%20possible.%22%2C%20%22created_at%22%3A%20%222015-11-16T18%3A38%3A25Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%22%2C%20%22created_at%22%3A%20%222015-11-17T06%3A17%3A35Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-288%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%2072%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45251542%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22this%20code%20sample%20seems%20contrived%20-%20perhaps%20we%20can%20demo%20a%20simple%20situation%20where%20you%20might%20actually%20use%20this%3F%22%2C%20%22created_at%22%3A%20%222015-11-18T19%3A56%3A33Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22How%20about%20%60SelectedTodos%60%3F%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A37%3A52Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%2C%20%7B%22body%22%3A%20%22Sure%21%20That%27s%20a%20client-side%20state%20situation%20for%20sure.%22%2C%20%22created_at%22%3A%20%222015-11-20T07%3A06%3A35Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%20340%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252616%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22I%20like%20Java%2C%20so%20I%27d%20say%20%60getTodos%60...%20but%20who%20knows%22%2C%20%22created_at%22%3A%20%222015-11-18T20%3A04%3A24Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22%2B1%20for%20%60todos%28%29%60%22%2C%20%22created_at%22%3A%20%222015-11-18T23%3A35%3A41Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/319567%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/dburles%22%7D%7D%2C%20%7B%22body%22%3A%20%22So%20bikesheddy.%20I%20prefer%20%60todos%28%29%60%20but%20you%20are%20the%20naming%20guy%2C%20so%20let%27s%20do%20%60getTodos%28%29%60%3F%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A36%3A29Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%2C%20%22Pull%207d00eae72af0e8532e22a348149a9b2d052b6c35%20content/collections.md%20206%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r44963680%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Is%20it%20weird%20that%20this%20class%20method%20is%20referring%20to%20a%20specific%20instance%20of%20itself%3F%20I%20never%20noticed%20that%20before%20but%20on%20closer%20inspection%20it%27s%20a%20bit%20weird.%22%2C%20%22created_at%22%3A%20%222015-11-16T18%3A44%3A40Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22I%20think%20maybe%20it%20should%20call%20%60this.findOne%28%29%60%2C%20no%3F%22%2C%20%22created_at%22%3A%20%222015-11-17T03%3A47%3A20Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%2C%20%7B%22body%22%3A%20%22Yeah%2C%20that%20sounds%20better%20to%20me.%22%2C%20%22created_at%22%3A%20%222015-11-17T05%3A13%3A30Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%20%22%2C%20%22created_at%22%3A%20%222015-11-17T06%3A21%3A15Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-288%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%20193%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45252413%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Could%20we%20not%20use%20%60defaultValue%60%20for%20any%20case%20where%20you%20would%20override%20the%20%60insert%60%20method%3F%22%2C%20%22created_at%22%3A%20%222015-11-18T20%3A02%3A44Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22I%20thought%20the%20reason%20was%20that%20%60defaultValue%60%20can%27t%20be%20a%20function%3F%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A52%3A59Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%2C%20%22Pull%20e8f39cb494e7575e0a30b036e851eb46d02e811f%20content/collections.md%2080%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/meteor/guide/pull/94%23discussion_r45251839%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22I%27d%20maybe%20call%20out%20the%20terms%20%5C%22schema%20on%20write%5C%22%20vs.%20%5C%22schema%20on%20read%5C%22%20here%20-%20basically%2C%20your%20code%20is%20going%20to%20depend%20on%20a%20schema%20anyway%2C%20so%20you%20might%20as%20well%20make%20it%20explicit.%20However%2C%20there%20is%20still%20a%20benefit%20to%20the%20_database_%20not%20having%20a%20schema%2C%20which%20is%20that%20different%20formats%20can%20live%20side%20by%20side%2C%20and%20you%20don%27t%20need%20to%20run%20schema%20migrations.%22%2C%20%22created_at%22%3A%20%222015-11-18T19%3A58%3A42Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%2C%20%7B%22body%22%3A%20%22I%20updated%20this%20a%20little.%20I%20think%20perhaps%20we%20don%27t%20need%20to%20call%20out%20the%20benefits%20of%20things%20we%20don%27t%20recommend%3F%20I%20mean%2C%20if%20I%20was%20writing%20a%20blog%20post%20about%20schemas%20I%27d%20probably%20make%20that%20point%2C%20but%20I%20feel%20like%20it%20might%20distract%20from%20the%20issue%20at%20hand%20%28how%20we%20think%20you%20should%20do%20it%29%20to%20talk%20about%20the%20pros%20of%20doing%20things%20schemaless%20here..%22%2C%20%22created_at%22%3A%20%222015-11-20T01%3A40%3A07Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/132554%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/tmeasday%22%7D%7D%2C%20%7B%22body%22%3A%20%22I%20guess%20what%20I%27m%20saying%20is%20that%20Mongo%20%2B%20SimpleSchema%20can%20be%20better%20than%20SQL%20%28the%20schema%20built%20into%20the%20database%29.%20But%20maybe%20that%27s%20just%20trying%20to%20address%20a%20question%20that%20hasn%27t%20been%20asked%20yet.%22%2C%20%22created_at%22%3A%20%222015-11-20T07%3A05%3A57Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/448783%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/stubailo%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20content/collections.md%3AL1-371%22%7D%7D%7D'></a>\r\n<a href='https://www.codereviewhub.com/'><img src='http://www.codereviewhub.com/site/github-bar.png' height=40></a>\r\n- [ ] <a href='#crh-comment-General Comment'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#issuecomment-156922085'>General Comment</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Yeah I think PR is best for posting comments and whatnot.\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Would you rather I put in feedback right now, or wait until it's \"done\"?\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> I'm doing it a section at time so feel free to comment on the sections I've done. OTOH it might be easier to do one pass.\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> Not really sure how to end the chapter..\r\n- [ ] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 198'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45159551'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/dburles'><img border=0 src='https://avatars.githubusercontent.com/u/319567?v=3' height=16 width=16'></a> Should this not be simply `Lists`?\r\n- [x] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 72'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45251542'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> this code sample seems contrived - perhaps we can demo a simple situation where you might actually use this?\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> How about `SelectedTodos`?\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Sure! That's a client-side state situation for sure.\r\n- [x] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 80'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45251839'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> I'd maybe call out the terms \"schema on write\" vs. \"schema on read\" here - basically, your code is going to depend on a schema anyway, so you might as well make it explicit. However, there is still a benefit to the _database_ not having a schema, which is that different formats can live side by side, and you don't need to run schema migrations.\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> I updated this a little. I think perhaps we don't need to call out the benefits of things we don't recommend? I mean, if I was writing a blog post about schemas I'd probably make that point, but I feel like it might distract from the issue at hand (how we think you should do it) to talk about the pros of doing things schemaless here..\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> I guess what I'm saying is that Mongo + SimpleSchema can be better than SQL (the schema built into the database). But maybe that's just trying to address a question that hasn't been asked yet.\r\n- [ ] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 132'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45252000'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> This is like, super not true at the moment, right? Code item?\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> Yup, still on the todo list: https://github.com/meteor/guide/issues/52\r\n- [ ] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 193'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45252413'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Could we not use `defaultValue` for any case where you would override the `insert` method?\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> I thought the reason was that `defaultValue` can't be a function?\r\n- [ ] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 339'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45252589'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Yep, we should add it. File an issue on todos?\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> https://github.com/meteor/todos/issues/47\r\n- [ ] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 340'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45252616'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> I like Java, so I'd say `getTodos`... but who knows\r\n- <a href='https://github.com/dburles'><img border=0 src='https://avatars.githubusercontent.com/u/319567?v=3' height=16 width=16'></a> +1 for `todos()`\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> So bikesheddy. I prefer `todos()` but you are the naming guy, so let's do `getTodos()`?\r\n- [ ] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 360'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45252740'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Should we just not have it in the initial guide release? I feel like we've been procrastinating on this hardcore.\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> Well I put out the call on the forums, heard nothing. I can write it when I have a sec\r\n- [x] <a href='#crh-comment-Pull 1f4b7f567e0f890dc899069e02a47dd663299112 content/collections.md 5'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r44890499'>File: content/collections.md:L1-190</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Do you think this is a good format for an introduction? I like it, but I heard not everyone is into it.\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> I was a fan of it. Perhaps we should ask some others?\r\n- [x] <a href='#crh-comment-Pull 7d00eae72af0e8532e22a348149a9b2d052b6c35 content/collections.md 31'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r44962417'>File: content/collections.md:L1-288</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Somewhere we should link to the docs about the collection API\r\n- [x] <a href='#crh-comment-Pull 7d00eae72af0e8532e22a348149a9b2d052b6c35 content/collections.md 101'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r44962741'>File: content/collections.md:L1-288</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> This seems like a natural place to link to the docs for simple-schema to show what other restrictions are possible.\r\n- [x] <a href='#crh-comment-Pull 7d00eae72af0e8532e22a348149a9b2d052b6c35 content/collections.md 135'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r44962949'>File: content/collections.md:L1-288</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> \"what a user did wrong\" -> What parts of the document don't match the schema\r\nIMO saying that the \"user did wrong\" leads to bad UX.\r\n- [x] <a href='#crh-comment-Pull 7d00eae72af0e8532e22a348149a9b2d052b6c35 content/collections.md 153'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r44963150'>File: content/collections.md:L1-288</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> I don't think we should introduce a new feature of simple-schema in the same paragraph as we tell you not to use subfields.\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> You're right\r\n- [x] <a href='#crh-comment-Pull 7d00eae72af0e8532e22a348149a9b2d052b6c35 content/collections.md 206'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r44963680'>File: content/collections.md:L1-288</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Is it weird that this class method is referring to a specific instance of itself? I never noticed that before but on closer inspection it's a bit weird.\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> I think maybe it should call `this.findOne()`, no?\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Yeah, that sounds better to me.\r\n- [x] <a href='#crh-comment-Pull f77017604ee3966f4bd22fd7fd2dcb75ba87fe66 content/collections.md 269'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45112048'>File: content/collections.md:L1-340</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> This is specifically about running migrations _in production_. We should make sure people don't accidentally migrate their production database when they are developing :]\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> We should probably put a link to the migration API somewhere before this section as well.\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> I added something about development migrations.\r\nRe: docs -- the original mention of the package is a link. Do you think I should call it out more specifically?\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> Yeah, I think there should be a big thing that says \"We're only covering some usage tips here, see the rest of the docs for all of the options and API\"\r\n- [x] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 69'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45251419'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> \"but pass null instead of a name\"\r\n- [x] <a href='#crh-comment-Pull e8f39cb494e7575e0a30b036e851eb46d02e811f content/collections.md 155'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/meteor/guide/pull/94#discussion_r45252235'>File: content/collections.md:L1-371</a></b>\r\n- <a href='https://github.com/stubailo'><img border=0 src='https://avatars.githubusercontent.com/u/448783?v=3' height=16 width=16'></a> We might want to go over the concept of normalization vs denormalization here a little\r\n- <a href='https://github.com/tmeasday'><img border=0 src='https://avatars.githubusercontent.com/u/132554?v=3' height=16 width=16'></a> I added something.\r\n\r\n\r\n<a href='https://www.codereviewhub.com/meteor/guide/pull/94?mark_as_completed=1'><img src='http://www.codereviewhub.com/site/github-mark-as-completed.png' height=26></a>&nbsp;<a href='https://www.codereviewhub.com/meteor/guide/pull/94?approve=1'><img src='http://www.codereviewhub.com/site/github-approve.png' height=26></a>&nbsp;<a href='https://github.com/meteor/guide/pull/94'><img src='http://www.codereviewhub.com/site/github-refresh.png' height=26></a>\r\n<a href='#crh-end'></a>","created_at":"2015-11-16T03:52:40Z","updated_at":"2015-11-20T07:10:18Z","closed_at":null,"merged_at":null,"merge_commit_sha":"6b6bd3f51509246dcef5e685dab5fcf68296e099","assignee":{"login":"stubailo","id":448783,"avatar_url":"https://avatars.githubusercontent.com/u/448783?v=3","gravatar_id":"","url":"https://api.github.com/users/stubailo","html_url":"https://github.com/stubailo","followers_url":"https://api.github.com/users/stubailo/followers","following_url":"https://api.github.com/users/stubailo/following{/other_user}","gists_url":"https://api.github.com/users/stubailo/gists{/gist_id}","starred_url":"https://api.github.com/users/stubailo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stubailo/subscriptions","organizations_url":"https://api.github.com/users/stubailo/orgs","repos_url":"https://api.github.com/users/stubailo/repos","events_url":"https://api.github.com/users/stubailo/events{/privacy}","received_events_url":"https://api.github.com/users/stubailo/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/meteor/guide/pulls/94/commits","review_comments_url":"https://api.github.com/repos/meteor/guide/pulls/94/comments","review_comment_url":"https://api.github.com/repos/meteor/guide/pulls/comments{/number}","comments_url":"https://api.github.com/repos/meteor/guide/issues/94/comments","statuses_url":"https://api.github.com/repos/meteor/guide/statuses/f2ffdfef2151ca7fd09d39d4bb3e3e0cfce41b6e","head":{"label":"meteor:collections-content","ref":"collections-content","sha":"f2ffdfef2151ca7fd09d39d4bb3e3e0cfce41b6e","user":{"login":"meteor","id":789528,"avatar_url":"https://avatars.githubusercontent.com/u/789528?v=3","gravatar_id":"","url":"https://api.github.com/users/meteor","html_url":"https://github.com/meteor","followers_url":"https://api.github.com/users/meteor/followers","following_url":"https://api.github.com/users/meteor/following{/other_user}","gists_url":"https://api.github.com/users/meteor/gists{/gist_id}","starred_url":"https://api.github.com/users/meteor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/meteor/subscriptions","organizations_url":"https://api.github.com/users/meteor/orgs","repos_url":"https://api.github.com/users/meteor/repos","events_url":"https://api.github.com/users/meteor/events{/privacy}","received_events_url":"https://api.github.com/users/meteor/received_events","type":"Organization","site_admin":false},"repo":{"id":43717321,"name":"guide","full_name":"meteor/guide","owner":{"login":"meteor","id":789528,"avatar_url":"https://avatars.githubusercontent.com/u/789528?v=3","gravatar_id":"","url":"https://api.github.com/users/meteor","html_url":"https://github.com/meteor","followers_url":"https://api.github.com/users/meteor/followers","following_url":"https://api.github.com/users/meteor/following{/other_user}","gists_url":"https://api.github.com/users/meteor/gists{/gist_id}","starred_url":"https://api.github.com/users/meteor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/meteor/subscriptions","organizations_url":"https://api.github.com/users/meteor/orgs","repos_url":"https://api.github.com/users/meteor/repos","events_url":"https://api.github.com/users/meteor/events{/privacy}","received_events_url":"https://api.github.com/users/meteor/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/meteor/guide","description":"How do I use Meteor?","fork":false,"url":"https://api.github.com/repos/meteor/guide","forks_url":"https://api.github.com/repos/meteor/guide/forks","keys_url":"https://api.github.com/repos/meteor/guide/keys{/key_id}","collaborators_url":"https://api.github.com/repos/meteor/guide/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/meteor/guide/teams","hooks_url":"https://api.github.com/repos/meteor/guide/hooks","issue_events_url":"https://api.github.com/repos/meteor/guide/issues/events{/number}","events_url":"https://api.github.com/repos/meteor/guide/events","assignees_url":"https://api.github.com/repos/meteor/guide/assignees{/user}","branches_url":"https://api.github.com/repos/meteor/guide/branches{/branch}","tags_url":"https://api.github.com/repos/meteor/guide/tags","blobs_url":"https://api.github.com/repos/meteor/guide/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/meteor/guide/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/meteor/guide/git/refs{/sha}","trees_url":"https://api.github.com/repos/meteor/guide/git/trees{/sha}","statuses_url":"https://api.github.com/repos/meteor/guide/statuses/{sha}","languages_url":"https://api.github.com/repos/meteor/guide/languages","stargazers_url":"https://api.github.com/repos/meteor/guide/stargazers","contributors_url":"https://api.github.com/repos/meteor/guide/contributors","subscribers_url":"https://api.github.com/repos/meteor/guide/subscribers","subscription_url":"https://api.github.com/repos/meteor/guide/subscription","commits_url":"https://api.github.com/repos/meteor/guide/commits{/sha}","git_commits_url":"https://api.github.com/repos/meteor/guide/git/commits{/sha}","comments_url":"https://api.github.com/repos/meteor/guide/comments{/number}","issue_comment_url":"https://api.github.com/repos/meteor/guide/issues/comments{/number}","contents_url":"https://api.github.com/repos/meteor/guide/contents/{+path}","compare_url":"https://api.github.com/repos/meteor/guide/compare/{base}...{head}","merges_url":"https://api.github.com/repos/meteor/guide/merges","archive_url":"https://api.github.com/repos/meteor/guide/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/meteor/guide/downloads","issues_url":"https://api.github.com/repos/meteor/guide/issues{/number}","pulls_url":"https://api.github.com/repos/meteor/guide/pulls{/number}","milestones_url":"https://api.github.com/repos/meteor/guide/milestones{/number}","notifications_url":"https://api.github.com/repos/meteor/guide/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/meteor/guide/labels{/name}","releases_url":"https://api.github.com/repos/meteor/guide/releases{/id}","created_at":"2015-10-05T22:26:02Z","updated_at":"2015-11-19T07:25:18Z","pushed_at":"2015-11-20T06:59:58Z","git_url":"git://github.com/meteor/guide.git","ssh_url":"git@github.com:meteor/guide.git","clone_url":"https://github.com/meteor/guide.git","svn_url":"https://github.com/meteor/guide","homepage":"","size":3693,"stargazers_count":345,"watchers_count":345,"language":"CSS","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":24,"mirror_url":null,"open_issues_count":61,"forks":24,"open_issues":61,"watchers":345,"default_branch":"master"}},"base":{"label":"meteor:master","ref":"master","sha":"582fc853c71aa3df364aec1bca29a9c707dab56e","user":{"login":"meteor","id":789528,"avatar_url":"https://avatars.githubusercontent.com/u/789528?v=3","gravatar_id":"","url":"https://api.github.com/users/meteor","html_url":"https://github.com/meteor","followers_url":"https://api.github.com/users/meteor/followers","following_url":"https://api.github.com/users/meteor/following{/other_user}","gists_url":"https://api.github.com/users/meteor/gists{/gist_id}","starred_url":"https://api.github.com/users/meteor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/meteor/subscriptions","organizations_url":"https://api.github.com/users/meteor/orgs","repos_url":"https://api.github.com/users/meteor/repos","events_url":"https://api.github.com/users/meteor/events{/privacy}","received_events_url":"https://api.github.com/users/meteor/received_events","type":"Organization","site_admin":false},"repo":{"id":43717321,"name":"guide","full_name":"meteor/guide","owner":{"login":"meteor","id":789528,"avatar_url":"https://avatars.githubusercontent.com/u/789528?v=3","gravatar_id":"","url":"https://api.github.com/users/meteor","html_url":"https://github.com/meteor","followers_url":"https://api.github.com/users/meteor/followers","following_url":"https://api.github.com/users/meteor/following{/other_user}","gists_url":"https://api.github.com/users/meteor/gists{/gist_id}","starred_url":"https://api.github.com/users/meteor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/meteor/subscriptions","organizations_url":"https://api.github.com/users/meteor/orgs","repos_url":"https://api.github.com/users/meteor/repos","events_url":"https://api.github.com/users/meteor/events{/privacy}","received_events_url":"https://api.github.com/users/meteor/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/meteor/guide","description":"How do I use Meteor?","fork":false,"url":"https://api.github.com/repos/meteor/guide","forks_url":"https://api.github.com/repos/meteor/guide/forks","keys_url":"https://api.github.com/repos/meteor/guide/keys{/key_id}","collaborators_url":"https://api.github.com/repos/meteor/guide/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/meteor/guide/teams","hooks_url":"https://api.github.com/repos/meteor/guide/hooks","issue_events_url":"https://api.github.com/repos/meteor/guide/issues/events{/number}","events_url":"https://api.github.com/repos/meteor/guide/events","assignees_url":"https://api.github.com/repos/meteor/guide/assignees{/user}","branches_url":"https://api.github.com/repos/meteor/guide/branches{/branch}","tags_url":"https://api.github.com/repos/meteor/guide/tags","blobs_url":"https://api.github.com/repos/meteor/guide/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/meteor/guide/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/meteor/guide/git/refs{/sha}","trees_url":"https://api.github.com/repos/meteor/guide/git/trees{/sha}","statuses_url":"https://api.github.com/repos/meteor/guide/statuses/{sha}","languages_url":"https://api.github.com/repos/meteor/guide/languages","stargazers_url":"https://api.github.com/repos/meteor/guide/stargazers","contributors_url":"https://api.github.com/repos/meteor/guide/contributors","subscribers_url":"https://api.github.com/repos/meteor/guide/subscribers","subscription_url":"https://api.github.com/repos/meteor/guide/subscription","commits_url":"https://api.github.com/repos/meteor/guide/commits{/sha}","git_commits_url":"https://api.github.com/repos/meteor/guide/git/commits{/sha}","comments_url":"https://api.github.com/repos/meteor/guide/comments{/number}","issue_comment_url":"https://api.github.com/repos/meteor/guide/issues/comments{/number}","contents_url":"https://api.github.com/repos/meteor/guide/contents/{+path}","compare_url":"https://api.github.com/repos/meteor/guide/compare/{base}...{head}","merges_url":"https://api.github.com/repos/meteor/guide/merges","archive_url":"https://api.github.com/repos/meteor/guide/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/meteor/guide/downloads","issues_url":"https://api.github.com/repos/meteor/guide/issues{/number}","pulls_url":"https://api.github.com/repos/meteor/guide/pulls{/number}","milestones_url":"https://api.github.com/repos/meteor/guide/milestones{/number}","notifications_url":"https://api.github.com/repos/meteor/guide/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/meteor/guide/labels{/name}","releases_url":"https://api.github.com/repos/meteor/guide/releases{/id}","created_at":"2015-10-05T22:26:02Z","updated_at":"2015-11-19T07:25:18Z","pushed_at":"2015-11-20T06:59:58Z","git_url":"git://github.com/meteor/guide.git","ssh_url":"git@github.com:meteor/guide.git","clone_url":"https://github.com/meteor/guide.git","svn_url":"https://github.com/meteor/guide","homepage":"","size":3693,"stargazers_count":345,"watchers_count":345,"language":"CSS","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":24,"mirror_url":null,"open_issues_count":61,"forks":24,"open_issues":61,"watchers":345,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/meteor/guide/pulls/94"},"html":{"href":"https://github.com/meteor/guide/pull/94"},"issue":{"href":"https://api.github.com/repos/meteor/guide/issues/94"},"comments":{"href":"https://api.github.com/repos/meteor/guide/issues/94/comments"},"review_comments":{"href":"https://api.github.com/repos/meteor/guide/pulls/94/comments"},"review_comment":{"href":"https://api.github.com/repos/meteor/guide/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/meteor/guide/pulls/94/commits"},"statuses":{"href":"https://api.github.com/repos/meteor/guide/statuses/f2ffdfef2151ca7fd09d39d4bb3e3e0cfce41b6e"}}}}