{"action":"created","comment":{"url":"https://api.github.com/repos/Expensify/Style-Guide/pulls/comments/67346603","id":67346603,"diff_hunk":"@@ -2,20 +2,111 @@ Language agnostic Coding Standard\n =====================\n \n ## Table of Contents\n-\n-\n 1. [Acronyms](#acronyms)\n-   \n+1. [Abbreviations](#abbreviations)\n+1. [Simplicity](#simplicity)\n \n ## Acronyms\n-\n - When using acronyms, only upper case the first letter, treating it as a regular word.\n \n ```PHP\n-    public function setUdfs($udfs)\n-    {\n-        ...\n-    }\n+   public function setUdfs($udfs)\n+   {\n+     ...\n+   }\n+```\n+\n+## Abbreviations\n+- Don't use abbreviations if you can avoid it\n+- When referencing an ID, you can make \"ID\" all caps.\n+\n+```php\n+   public function setReportID($id)\n+   {\n+      ...\n+   }\n+```\n+\n+```js\n+   var policyID = 1234;\n+```\n+\n+## Simplicity\n+As an engineer, you should strive to keep things simple and relevant.\n+\n+> Don't engineer something in the hope it will be useful for someone someday. Engineer something so that it's useful for you today.\n+\n+- Build things that you know will need to be refactored when/if more functionality is desired in the future\n+- Don't add functionality that is not in use RIGHT NOW\n+- Don't engineer things that you think will have value later\n+- Don't abstract anything to be reusable unless it's being actively reused\n+- Don't use a class when a function will do","path":"general.md","position":43,"original_position":50,"commit_id":"28b6d6c805094e8185dd260652eab69b771c00b1","original_commit_id":"62cc8aa90a5e164b90feab1fdbf6239ceb15b306","user":{"login":"fnwbr","id":706419,"avatar_url":"https://avatars.githubusercontent.com/u/706419?v=3","gravatar_id":"","url":"https://api.github.com/users/fnwbr","html_url":"https://github.com/fnwbr","followers_url":"https://api.github.com/users/fnwbr/followers","following_url":"https://api.github.com/users/fnwbr/following{/other_user}","gists_url":"https://api.github.com/users/fnwbr/gists{/gist_id}","starred_url":"https://api.github.com/users/fnwbr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fnwbr/subscriptions","organizations_url":"https://api.github.com/users/fnwbr/orgs","repos_url":"https://api.github.com/users/fnwbr/repos","events_url":"https://api.github.com/users/fnwbr/events{/privacy}","received_events_url":"https://api.github.com/users/fnwbr/received_events","type":"User","site_admin":false},"body":"> you know exactly what every file is using\r\n\r\nSame with autoloading. Look at all the `use`s at the top and you kind of have your Node.js style `require`s.\r\n\r\n> and it's much easier to trace through the code when you don't use an IDE\r\n\r\n1. Use an IDE\r\n2. Thanks to PSR the full class path equals the path to the corresponding file, so even if you do not use an IDE you can easily trace the code\r\n\r\nIn general: Autoloading is no magic\r\n\r\n---\r\n\r\nBut to get back to the original question and now that you said\r\n\r\n> I don't see a problem with manually requiring a file\r\n\r\nAre you really proposing going back to creating a file somewhere, putting the global function in there and then `require()`ing that file where we need it?\r\n\r\nMaybe we are not on the same page at all, maybe a specific example would help?\r\n","created_at":"2016-06-16T13:47:28Z","updated_at":"2016-06-16T13:47:28Z","html_url":"https://github.com/Expensify/Style-Guide/pull/25#discussion_r67346603","pull_request_url":"https://api.github.com/repos/Expensify/Style-Guide/pulls/25","_links":{"self":{"href":"https://api.github.com/repos/Expensify/Style-Guide/pulls/comments/67346603"},"html":{"href":"https://github.com/Expensify/Style-Guide/pull/25#discussion_r67346603"},"pull_request":{"href":"https://api.github.com/repos/Expensify/Style-Guide/pulls/25"}}},"pull_request":{"url":"https://api.github.com/repos/Expensify/Style-Guide/pulls/25","id":73428195,"html_url":"https://github.com/Expensify/Style-Guide/pull/25","diff_url":"https://github.com/Expensify/Style-Guide/pull/25.diff","patch_url":"https://github.com/Expensify/Style-Guide/pull/25.patch","issue_url":"https://api.github.com/repos/Expensify/Style-Guide/issues/25","number":25,"state":"open","locked":false,"title":"Adding a section about simplicity","user":{"login":"tgolen","id":1228807,"avatar_url":"https://avatars.githubusercontent.com/u/1228807?v=3","gravatar_id":"","url":"https://api.github.com/users/tgolen","html_url":"https://github.com/tgolen","followers_url":"https://api.github.com/users/tgolen/followers","following_url":"https://api.github.com/users/tgolen/following{/other_user}","gists_url":"https://api.github.com/users/tgolen/gists{/gist_id}","starred_url":"https://api.github.com/users/tgolen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgolen/subscriptions","organizations_url":"https://api.github.com/users/tgolen/orgs","repos_url":"https://api.github.com/users/tgolen/repos","events_url":"https://api.github.com/users/tgolen/events{/privacy}","received_events_url":"https://api.github.com/users/tgolen/received_events","type":"User","site_admin":false},"body":"@cead22 @quinthar @mcnamamj Can you please review this?","created_at":"2016-06-10T20:04:10Z","updated_at":"2016-06-16T13:47:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":"d27059a704837be9a461fcfe0c9a125c2276a942","assignee":{"login":"cead22","id":165133,"avatar_url":"https://avatars.githubusercontent.com/u/165133?v=3","gravatar_id":"","url":"https://api.github.com/users/cead22","html_url":"https://github.com/cead22","followers_url":"https://api.github.com/users/cead22/followers","following_url":"https://api.github.com/users/cead22/following{/other_user}","gists_url":"https://api.github.com/users/cead22/gists{/gist_id}","starred_url":"https://api.github.com/users/cead22/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cead22/subscriptions","organizations_url":"https://api.github.com/users/cead22/orgs","repos_url":"https://api.github.com/users/cead22/repos","events_url":"https://api.github.com/users/cead22/events{/privacy}","received_events_url":"https://api.github.com/users/cead22/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/Expensify/Style-Guide/pulls/25/commits","review_comments_url":"https://api.github.com/repos/Expensify/Style-Guide/pulls/25/comments","review_comment_url":"https://api.github.com/repos/Expensify/Style-Guide/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Expensify/Style-Guide/issues/25/comments","statuses_url":"https://api.github.com/repos/Expensify/Style-Guide/statuses/28b6d6c805094e8185dd260652eab69b771c00b1","head":{"label":"Expensify:tgolen-simplicity","ref":"tgolen-simplicity","sha":"28b6d6c805094e8185dd260652eab69b771c00b1","user":{"login":"Expensify","id":476779,"avatar_url":"https://avatars.githubusercontent.com/u/476779?v=3","gravatar_id":"","url":"https://api.github.com/users/Expensify","html_url":"https://github.com/Expensify","followers_url":"https://api.github.com/users/Expensify/followers","following_url":"https://api.github.com/users/Expensify/following{/other_user}","gists_url":"https://api.github.com/users/Expensify/gists{/gist_id}","starred_url":"https://api.github.com/users/Expensify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Expensify/subscriptions","organizations_url":"https://api.github.com/users/Expensify/orgs","repos_url":"https://api.github.com/users/Expensify/repos","events_url":"https://api.github.com/users/Expensify/events{/privacy}","received_events_url":"https://api.github.com/users/Expensify/received_events","type":"Organization","site_admin":false},"repo":{"id":32104674,"name":"Style-Guide","full_name":"Expensify/Style-Guide","owner":{"login":"Expensify","id":476779,"avatar_url":"https://avatars.githubusercontent.com/u/476779?v=3","gravatar_id":"","url":"https://api.github.com/users/Expensify","html_url":"https://github.com/Expensify","followers_url":"https://api.github.com/users/Expensify/followers","following_url":"https://api.github.com/users/Expensify/following{/other_user}","gists_url":"https://api.github.com/users/Expensify/gists{/gist_id}","starred_url":"https://api.github.com/users/Expensify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Expensify/subscriptions","organizations_url":"https://api.github.com/users/Expensify/orgs","repos_url":"https://api.github.com/users/Expensify/repos","events_url":"https://api.github.com/users/Expensify/events{/privacy}","received_events_url":"https://api.github.com/users/Expensify/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Expensify/Style-Guide","description":"Official Style of Expensify.","fork":false,"url":"https://api.github.com/repos/Expensify/Style-Guide","forks_url":"https://api.github.com/repos/Expensify/Style-Guide/forks","keys_url":"https://api.github.com/repos/Expensify/Style-Guide/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Expensify/Style-Guide/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Expensify/Style-Guide/teams","hooks_url":"https://api.github.com/repos/Expensify/Style-Guide/hooks","issue_events_url":"https://api.github.com/repos/Expensify/Style-Guide/issues/events{/number}","events_url":"https://api.github.com/repos/Expensify/Style-Guide/events","assignees_url":"https://api.github.com/repos/Expensify/Style-Guide/assignees{/user}","branches_url":"https://api.github.com/repos/Expensify/Style-Guide/branches{/branch}","tags_url":"https://api.github.com/repos/Expensify/Style-Guide/tags","blobs_url":"https://api.github.com/repos/Expensify/Style-Guide/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Expensify/Style-Guide/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Expensify/Style-Guide/git/refs{/sha}","trees_url":"https://api.github.com/repos/Expensify/Style-Guide/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Expensify/Style-Guide/statuses/{sha}","languages_url":"https://api.github.com/repos/Expensify/Style-Guide/languages","stargazers_url":"https://api.github.com/repos/Expensify/Style-Guide/stargazers","contributors_url":"https://api.github.com/repos/Expensify/Style-Guide/contributors","subscribers_url":"https://api.github.com/repos/Expensify/Style-Guide/subscribers","subscription_url":"https://api.github.com/repos/Expensify/Style-Guide/subscription","commits_url":"https://api.github.com/repos/Expensify/Style-Guide/commits{/sha}","git_commits_url":"https://api.github.com/repos/Expensify/Style-Guide/git/commits{/sha}","comments_url":"https://api.github.com/repos/Expensify/Style-Guide/comments{/number}","issue_comment_url":"https://api.github.com/repos/Expensify/Style-Guide/issues/comments{/number}","contents_url":"https://api.github.com/repos/Expensify/Style-Guide/contents/{+path}","compare_url":"https://api.github.com/repos/Expensify/Style-Guide/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Expensify/Style-Guide/merges","archive_url":"https://api.github.com/repos/Expensify/Style-Guide/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Expensify/Style-Guide/downloads","issues_url":"https://api.github.com/repos/Expensify/Style-Guide/issues{/number}","pulls_url":"https://api.github.com/repos/Expensify/Style-Guide/pulls{/number}","milestones_url":"https://api.github.com/repos/Expensify/Style-Guide/milestones{/number}","notifications_url":"https://api.github.com/repos/Expensify/Style-Guide/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Expensify/Style-Guide/labels{/name}","releases_url":"https://api.github.com/repos/Expensify/Style-Guide/releases{/id}","deployments_url":"https://api.github.com/repos/Expensify/Style-Guide/deployments","created_at":"2015-03-12T21:50:56Z","updated_at":"2016-03-11T15:27:27Z","pushed_at":"2016-06-15T15:48:56Z","git_url":"git://github.com/Expensify/Style-Guide.git","ssh_url":"git@github.com:Expensify/Style-Guide.git","clone_url":"https://github.com/Expensify/Style-Guide.git","svn_url":"https://github.com/Expensify/Style-Guide","homepage":null,"size":63,"stargazers_count":3,"watchers_count":3,"language":null,"has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":2,"forks":0,"open_issues":2,"watchers":3,"default_branch":"master"}},"base":{"label":"Expensify:master","ref":"master","sha":"4ad90672ee78749374caeaa4fd7f11a2824b25b0","user":{"login":"Expensify","id":476779,"avatar_url":"https://avatars.githubusercontent.com/u/476779?v=3","gravatar_id":"","url":"https://api.github.com/users/Expensify","html_url":"https://github.com/Expensify","followers_url":"https://api.github.com/users/Expensify/followers","following_url":"https://api.github.com/users/Expensify/following{/other_user}","gists_url":"https://api.github.com/users/Expensify/gists{/gist_id}","starred_url":"https://api.github.com/users/Expensify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Expensify/subscriptions","organizations_url":"https://api.github.com/users/Expensify/orgs","repos_url":"https://api.github.com/users/Expensify/repos","events_url":"https://api.github.com/users/Expensify/events{/privacy}","received_events_url":"https://api.github.com/users/Expensify/received_events","type":"Organization","site_admin":false},"repo":{"id":32104674,"name":"Style-Guide","full_name":"Expensify/Style-Guide","owner":{"login":"Expensify","id":476779,"avatar_url":"https://avatars.githubusercontent.com/u/476779?v=3","gravatar_id":"","url":"https://api.github.com/users/Expensify","html_url":"https://github.com/Expensify","followers_url":"https://api.github.com/users/Expensify/followers","following_url":"https://api.github.com/users/Expensify/following{/other_user}","gists_url":"https://api.github.com/users/Expensify/gists{/gist_id}","starred_url":"https://api.github.com/users/Expensify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Expensify/subscriptions","organizations_url":"https://api.github.com/users/Expensify/orgs","repos_url":"https://api.github.com/users/Expensify/repos","events_url":"https://api.github.com/users/Expensify/events{/privacy}","received_events_url":"https://api.github.com/users/Expensify/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Expensify/Style-Guide","description":"Official Style of Expensify.","fork":false,"url":"https://api.github.com/repos/Expensify/Style-Guide","forks_url":"https://api.github.com/repos/Expensify/Style-Guide/forks","keys_url":"https://api.github.com/repos/Expensify/Style-Guide/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Expensify/Style-Guide/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Expensify/Style-Guide/teams","hooks_url":"https://api.github.com/repos/Expensify/Style-Guide/hooks","issue_events_url":"https://api.github.com/repos/Expensify/Style-Guide/issues/events{/number}","events_url":"https://api.github.com/repos/Expensify/Style-Guide/events","assignees_url":"https://api.github.com/repos/Expensify/Style-Guide/assignees{/user}","branches_url":"https://api.github.com/repos/Expensify/Style-Guide/branches{/branch}","tags_url":"https://api.github.com/repos/Expensify/Style-Guide/tags","blobs_url":"https://api.github.com/repos/Expensify/Style-Guide/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Expensify/Style-Guide/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Expensify/Style-Guide/git/refs{/sha}","trees_url":"https://api.github.com/repos/Expensify/Style-Guide/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Expensify/Style-Guide/statuses/{sha}","languages_url":"https://api.github.com/repos/Expensify/Style-Guide/languages","stargazers_url":"https://api.github.com/repos/Expensify/Style-Guide/stargazers","contributors_url":"https://api.github.com/repos/Expensify/Style-Guide/contributors","subscribers_url":"https://api.github.com/repos/Expensify/Style-Guide/subscribers","subscription_url":"https://api.github.com/repos/Expensify/Style-Guide/subscription","commits_url":"https://api.github.com/repos/Expensify/Style-Guide/commits{/sha}","git_commits_url":"https://api.github.com/repos/Expensify/Style-Guide/git/commits{/sha}","comments_url":"https://api.github.com/repos/Expensify/Style-Guide/comments{/number}","issue_comment_url":"https://api.github.com/repos/Expensify/Style-Guide/issues/comments{/number}","contents_url":"https://api.github.com/repos/Expensify/Style-Guide/contents/{+path}","compare_url":"https://api.github.com/repos/Expensify/Style-Guide/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Expensify/Style-Guide/merges","archive_url":"https://api.github.com/repos/Expensify/Style-Guide/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Expensify/Style-Guide/downloads","issues_url":"https://api.github.com/repos/Expensify/Style-Guide/issues{/number}","pulls_url":"https://api.github.com/repos/Expensify/Style-Guide/pulls{/number}","milestones_url":"https://api.github.com/repos/Expensify/Style-Guide/milestones{/number}","notifications_url":"https://api.github.com/repos/Expensify/Style-Guide/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Expensify/Style-Guide/labels{/name}","releases_url":"https://api.github.com/repos/Expensify/Style-Guide/releases{/id}","deployments_url":"https://api.github.com/repos/Expensify/Style-Guide/deployments","created_at":"2015-03-12T21:50:56Z","updated_at":"2016-03-11T15:27:27Z","pushed_at":"2016-06-15T15:48:56Z","git_url":"git://github.com/Expensify/Style-Guide.git","ssh_url":"git@github.com:Expensify/Style-Guide.git","clone_url":"https://github.com/Expensify/Style-Guide.git","svn_url":"https://github.com/Expensify/Style-Guide","homepage":null,"size":63,"stargazers_count":3,"watchers_count":3,"language":null,"has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":2,"forks":0,"open_issues":2,"watchers":3,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Expensify/Style-Guide/pulls/25"},"html":{"href":"https://github.com/Expensify/Style-Guide/pull/25"},"issue":{"href":"https://api.github.com/repos/Expensify/Style-Guide/issues/25"},"comments":{"href":"https://api.github.com/repos/Expensify/Style-Guide/issues/25/comments"},"review_comments":{"href":"https://api.github.com/repos/Expensify/Style-Guide/pulls/25/comments"},"review_comment":{"href":"https://api.github.com/repos/Expensify/Style-Guide/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Expensify/Style-Guide/pulls/25/commits"},"statuses":{"href":"https://api.github.com/repos/Expensify/Style-Guide/statuses/28b6d6c805094e8185dd260652eab69b771c00b1"}}}}
{"actor":{"display_login":"fnwbr"}}