{"action":"created","comment":{"url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/comments/197618144","pull_request_review_id":131401099,"id":197618144,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDE5NzYxODE0NA==","diff_hunk":"@@ -69,43 +88,80 @@ \\subsection{Memory}\n  {ets,305920}]\n \\end{VerbatimEshell}\n \n-This requires some explaining.\n+%This requires some explaining.\n+これは説明が必要ですね。\n \n-First of all, all the values returned are in bytes, and they represent memory \\emph{allocated} (memory actively used by the Erlang VM, not the memory set aside by the operating system for the Erlang VM). It will sooner or later look much smaller than what the operating system reports.\n+%First of all, all the values returned are in bytes, and they represent memory \\emph{allocated} (memory actively used by the Erlang VM, not the memory set aside by the operating system for the Erlang VM).\n+まず第一に、すべての返り値はbyte単位の値となっていて、メモリの\\emph{割り当てられた}量(Erlang VMが実際に使用しているメモリ量のことで、OSがErlang VMのために確保した量ではありません)を表します。\n+%It will sooner or later look much smaller than what the operating system reports.\n+遅かれ早かれ、OSが示す値よりはるかに少ない値だとわかるはずです。\n \n-The \\expression{total} field contains the sum of the memory used for \\expression{processes} and \\expression{system} (which is incomplete, unless the VM is instrumented!). \\expression{processes} is the memory used by Erlang processes, their stacks and heaps. \\expression{system} is the rest: memory used by ETS tables, atoms in the VM, refc binaries\\footnote{See Section \\ref{sec:binaries}}, and some of the hidden data I mentioned was missing.\n+%The \\expression{total} field contains the sum of the memory used for \\expression{processes} and \\expression{system} (which is incomplete, unless the VM is instrumented!).\n+\\expression{total}の項には、\\expression{processes} と \\expression{system} で利用してるメモリ量の和が入ります(VMを備えない限り、完璧な和にはなりません！)。\n+%\\expression{processes} is the memory used by Erlang processes, their stacks and heaps.\n+\\expression{processes}の項は、Erlangプロセスと、スタックやヒープとして使用されるメモリ量です。 % TODO: their = processesだと思うんですがあまり訳に反映されてないような\n+i%\\expression{system} is the rest: memory used by ETS tables, atoms in the VM, refc binaries\\footnote{See Section \\ref{sec:binaries}}, and some of the hidden data I mentioned was missing.\n+\\expression{system}の項は残りです。つまり、ETSテーブルや、VMの中で使われるアトムや、refcバイナリ\\footnote{リファレンスカウントされたバイナリ(reference-counted binary)。プロセスヒープ外に保持した実データと、プロセスヒープ内の参照数をカウントするオブジェクトから構成されるバイナリのこと。\\ref{sec:binaries}節参照}、失われた隠しデータなどです。%TODO: hidden data I mentioned was missingがしっくりこない。\n \n-If you want the total amount of memory owned by the virtual machine, as in the amount that will trip system limits (\\app{ulimit}), this value is more difficult to get from within the VM. If you want the data without calling \\app{top} or \\app{htop}, you have to dig down into the VM's memory allocators to find things out.\\footnote{See Section \\ref{subsec:erlang-memory-model}}\n+%If you want the total amount of memory owned by the virtual machine, as in the amount that will trip system limits (\\app{ulimit}), this value is more difficult to get from within the VM.\n+仮想マシンが保有する総メモリ量を知りたければ、システム限界(\\app{ulimit})を突破する量と同じで、VM内部から取得するのはより困難です。 %TODO: as in the amount that will trip system limits, が謎\n+%If you want the data without calling \\app{top} or \\app{htop}, you have to dig down into the VM's memory allocators to find things out.\\footnote{See Section \\ref{subsec:erlang-memory-model}}\n+もし\\app{top}や\\app{htop}を使うことなしにこのデータが欲しければ、あなたはVMのメモリアロケータを深堀して見つけ出すしかありません\\footnote{詳しくは\\ref{subsec:erlang-memory-model}節を見てください}。\n \n-Fortunately, recon has the function \\function{recon\\_alloc:memory/1} to figure it out, where the argument is:\n+%Fortunately, recon has the function \\function{recon\\_alloc:memory/1} to figure it out, where the argument is:\n+運が良いことに、この値を取るために reconは関数 \\function{recon\\_alloc:memory/1} を用意しています。\n+引数には以下のようなものがあります。\n \n \\begin{itemize*}\n-\t\\item \\expression{used} reports the memory that is actively used for allocated Erlang data;\n-   \t\\item \\expression{allocated} reports the memory that is reserved by the VM. It includes the memory used, but also the memory yet-to-be-used but still given by the OS. This is the amount you want if you're dealing with \\app{ulimit} and OS-reported values.\n-\t\\item \\expression{unused} reports the amount of memory reserved by the VM that is not being allocated. Equivalent to \\expression{allocated - used}.\n-\t\\item \\expression{usage} returns a percentage (0.0 .. 1.0) of used over allocated memory ratios.\n+%\t\\item \\expression{used} reports the memory that is actively used for allocated Erlang data;\n+\t\\item \\expression{used}。 使用中のErlangデータが割り当てられているメモリの総量\n+%   \t\\item \\expression{allocated} reports the memory that is reserved by the VM. It includes the memory used, but also the memory yet-to-be-used but still given by the OS. This is the amount you want if you're dealing with \\app{ulimit} and OS-reported values.\n+    \\item \\expression{allocated}。 VMにより予約されているメモリ量。使用中のメモリ量だけでなく、OSから与えられた未使用な領域も含む。あなたが\\app{ulimit}やOSの示す値を取り扱うなら、この値がほしい値でしょう。\n+\t%\\item \\expression{unused} reports the amount of memory reserved by the VM that is not being allocated. Equivalent to \\expression{allocated - used}.\n+\t\\item \\expression{unused}。VMにより予約されているがまだ割り当てられていない容量。\\expression{allocated - used}と等価です。\n+\t%\\item \\expression{usage} returns a percentage (0.0 .. 1.0) of used over allocated memory ratios.\n+  \\item \\expression{usage}。割当てられたメモリ量に対する使用中のメモリ量の割合(0.0から1.0)。\n \\end{itemize*}\n \n-There are additional options available, but you'll likely only need them when investigating memory leaks in chapter \\ref{chap:memory-leaks}\n+%There are additional options available, but you'll likely only need them when investigating memory leaks in chapter \\ref{chap:memory-leaks}\n+利用可能なオプションは他にもありますが、\\ref{chap:memory-leaks}の章でメモリリークの調査を行うにはこのくらいで十分でしょう。\n \n+%\\subsection{CPU}\n \\subsection{CPU}\n \\label{subsec:global-cpu}\n \n-Unfortunately for Erlang developers, CPU is very hard to profile. There are a few reasons for this:\n+%Unfortunately for Erlang developers, CPU is very hard to profile. There are a few reasons for this:\n+Erlang 開発者にとって残念なことに、CPUの統計データを取ることは非常に困難です。\n+それには少し理由があります。\n \n \\begin{itemize*}\n-\t\\item The VM does a lot of work unrelated to processes when it comes to scheduling — high scheduling work and high amounts of work done by the Erlang processes are hard to characterize.\n-\t\\item The VM internally uses a model based on \\emph{reductions}, which represent an arbitrary number of work actions. Every function call, including BIFs, will increment a process reduction counter. After a given number of reductions, the process gets descheduled.\n-\t\\item To avoid going to sleep when work is low, the threads that control the Erlang schedulers will do busy looping. This ensures the lowest latency possible for sudden load spikes. The VM flag \\command{+sbwt none|very\\_short|short|medium|long|very\\_long} can be used to change this value.\n+\t%\\item The VM does a lot of work unrelated to processes when it comes to scheduling — high scheduling work and high amounts of work done by the Erlang processes are hard to characterize.\n+  \\item VMはスケジューリングの際にプロセスとは無関係のタスクをたくさん行っています。高度なスケジューリングタスクとErlangプロセスによる大量のタスクは、特徴付けすることが難しいのです。 %TODO: high scheduling workって高度なスケジューリングタスク、的な意味で良いんだろうか？\n+\t%\\item The VM internally uses a model based on \\emph{reductions}, which represent an arbitrary number of work actions. Every function call, including BIFs, will increment a process reduction counter. After a given number of reductions, the process gets descheduled.\n+  \\item VMは内部で \\emph{リダクション} に基づくモデルを使っています。このモデルは任意の数のタスクで表せます。すべての(BIFを含む)関数呼び出しでプロセスリダクション数がインクリメントされ、所与のリダクション数に到達すると、プロセスが未スケジュール状態にもどります。 %TODO: descheduled、日本語にするの結構難しいですね。より良い言い方募集中\n+\t%\\item To avoid going to sleep when work is low, the threads that control the Erlang schedulers will do busy looping. This ensures the lowest latency possible for sudden load spikes. The VM flag \\command{+sbwt none|very\\_short|short|medium|long|very\\_long} can be used to change this value.\n+  \\item 負荷の低いタスクがすぐスリープ状態にならないように、Erlangスケジューラの扱うスレッドはしばらくビジーウェイト状態になります。これは、突然負荷が上がるケースでも遅延が大きくなり過ぎないための配慮です。この値を変更するには、VMフラグ (\\command{+sbwt none|very\\_short|short|medium|long|very\\_long}) が使えます。 %TODO: busy looping = 何もしないloopをするビジーウェイトのことだと思うんですが、あまり良い訳は思いついておらず。\n \\end{itemize*}\n \n-These factors combine to make it fairly hard to find a good absolute measure of how busy your CPU is actually running Erlang code. It will be common for Erlang nodes in production to do a moderate amount of work and use a lot of CPU, but to actually fit a lot of work in the remaining place when the workload gets higher.\n+%These factors combine to make it fairly hard to find a good absolute measure of how busy your CPU is actually running Erlang code.\n+これらの要素が組み合わさっているため、実行中のErlangコードによるCPU使用量をしっかりと測る方法を見つけるのは大変です。\n+%It will be common for Erlang nodes in production to do a moderate amount of work and use a lot of CPU, but to actually fit a lot of work in the remaining place when the workload gets higher.\n+Erlangノードは実運用において、ほどほどのタスクもでCPUを大量に使用するように見えますが、負荷が上がっても、大量のタスクを残りのCPUリソースでまかなえることことが良くあります。 %% TODO:割と雰囲気で訳してしまっていますがあってますかね…\n \n-The most accurate representation for this data is the scheduler wall time. It's an optional metric that needs to be turned on by hand on a node, and polled at regular intervals. It will reveal the time percentage a scheduler has been running processes and normal Erlang code, NIFs, BIFs, garbage collection, and so on, versus the amount of time it has spent idling or trying to schedule processes.\n+%The most accurate representation for this data is the scheduler wall time.\n+このデータを最も適切に表現するのは、スケジューラの総経過時間です。 %TODO: データだと唐突なので適切な言葉に変えたいきがするが何がいいだろう…\n+%It's an optional metric that needs to be turned on by hand on a node, and polled at regular intervals.\n+これは標準では無効のメトリクスで、ノードごとに手動で有効に設定すれば、一定間隔で取得されるようになります。","path":"105-runtime-metrics-ja.tex","position":145,"original_position":145,"commit_id":"fadb0d8e12bb6519eb5a50d590ba73a97bf27f1d","original_commit_id":"fadb0d8e12bb6519eb5a50d590ba73a97bf27f1d","user":{"login":"shino","id":10225,"node_id":"MDQ6VXNlcjEwMjI1","avatar_url":"https://avatars3.githubusercontent.com/u/10225?v=4","gravatar_id":"","url":"https://api.github.com/users/shino","html_url":"https://github.com/shino","followers_url":"https://api.github.com/users/shino/followers","following_url":"https://api.github.com/users/shino/following{/other_user}","gists_url":"https://api.github.com/users/shino/gists{/gist_id}","starred_url":"https://api.github.com/users/shino/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shino/subscriptions","organizations_url":"https://api.github.com/users/shino/orgs","repos_url":"https://api.github.com/users/shino/repos","events_url":"https://api.github.com/users/shino/events{/privacy}","received_events_url":"https://api.github.com/users/shino/received_events","type":"User","site_admin":false},"body":"polled は needs to be からかかってきてます。","created_at":"2018-06-23T17:30:50Z","updated_at":"2018-06-23T17:30:50Z","html_url":"https://github.com/ymotongpoo/erlang-in-anger/pull/35#discussion_r197618144","pull_request_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/35","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/comments/197618144"},"html":{"href":"https://github.com/ymotongpoo/erlang-in-anger/pull/35#discussion_r197618144"},"pull_request":{"href":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/35"}}},"pull_request":{"url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/35","id":196885270,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk2ODg1Mjcw","html_url":"https://github.com/ymotongpoo/erlang-in-anger/pull/35","diff_url":"https://github.com/ymotongpoo/erlang-in-anger/pull/35.diff","patch_url":"https://github.com/ymotongpoo/erlang-in-anger/pull/35.patch","issue_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues/35","number":35,"state":"open","locked":false,"title":"105: Global View 翻訳","user":{"login":"yaoshimax","id":2102714,"node_id":"MDQ6VXNlcjIxMDI3MTQ=","avatar_url":"https://avatars2.githubusercontent.com/u/2102714?v=4","gravatar_id":"","url":"https://api.github.com/users/yaoshimax","html_url":"https://github.com/yaoshimax","followers_url":"https://api.github.com/users/yaoshimax/followers","following_url":"https://api.github.com/users/yaoshimax/following{/other_user}","gists_url":"https://api.github.com/users/yaoshimax/gists{/gist_id}","starred_url":"https://api.github.com/users/yaoshimax/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yaoshimax/subscriptions","organizations_url":"https://api.github.com/users/yaoshimax/orgs","repos_url":"https://api.github.com/users/yaoshimax/repos","events_url":"https://api.github.com/users/yaoshimax/events{/privacy}","received_events_url":"https://api.github.com/users/yaoshimax/received_events","type":"User","site_admin":false},"body":"## 翻訳スコープ\r\n- 5章1節「Global View」\r\n\r\n## マージ目安\r\n誰か一人からLGTMを貰うこと\r\n（今回は割と分量が多いので、時間によるMergeはしないで置こうかなと）","created_at":"2018-06-23T06:29:35Z","updated_at":"2018-06-23T17:30:50Z","closed_at":null,"merged_at":null,"merge_commit_sha":"59cb53f950e5d9ef6f189320faddeaaa37874a04","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/35/commits","review_comments_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/35/comments","review_comment_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues/35/comments","statuses_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/statuses/fadb0d8e12bb6519eb5a50d590ba73a97bf27f1d","head":{"label":"ymotongpoo:feature/105-global-view","ref":"feature/105-global-view","sha":"fadb0d8e12bb6519eb5a50d590ba73a97bf27f1d","user":{"login":"ymotongpoo","id":145104,"node_id":"MDQ6VXNlcjE0NTEwNA==","avatar_url":"https://avatars1.githubusercontent.com/u/145104?v=4","gravatar_id":"","url":"https://api.github.com/users/ymotongpoo","html_url":"https://github.com/ymotongpoo","followers_url":"https://api.github.com/users/ymotongpoo/followers","following_url":"https://api.github.com/users/ymotongpoo/following{/other_user}","gists_url":"https://api.github.com/users/ymotongpoo/gists{/gist_id}","starred_url":"https://api.github.com/users/ymotongpoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ymotongpoo/subscriptions","organizations_url":"https://api.github.com/users/ymotongpoo/orgs","repos_url":"https://api.github.com/users/ymotongpoo/repos","events_url":"https://api.github.com/users/ymotongpoo/events{/privacy}","received_events_url":"https://api.github.com/users/ymotongpoo/received_events","type":"User","site_admin":false},"repo":{"id":137550553,"node_id":"MDEwOlJlcG9zaXRvcnkxMzc1NTA1NTM=","name":"erlang-in-anger","full_name":"ymotongpoo/erlang-in-anger","owner":{"login":"ymotongpoo","id":145104,"node_id":"MDQ6VXNlcjE0NTEwNA==","avatar_url":"https://avatars1.githubusercontent.com/u/145104?v=4","gravatar_id":"","url":"https://api.github.com/users/ymotongpoo","html_url":"https://github.com/ymotongpoo","followers_url":"https://api.github.com/users/ymotongpoo/followers","following_url":"https://api.github.com/users/ymotongpoo/following{/other_user}","gists_url":"https://api.github.com/users/ymotongpoo/gists{/gist_id}","starred_url":"https://api.github.com/users/ymotongpoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ymotongpoo/subscriptions","organizations_url":"https://api.github.com/users/ymotongpoo/orgs","repos_url":"https://api.github.com/users/ymotongpoo/repos","events_url":"https://api.github.com/users/ymotongpoo/events{/privacy}","received_events_url":"https://api.github.com/users/ymotongpoo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ymotongpoo/erlang-in-anger","description":"A little guide about how to be the Erlang medic in a time of war. It is first and foremost a collection of tips and tricks to help understand where failures come from, and a dictionary of different code snippets and practices that helped developers debug production systems that were built in Erlang.","fork":true,"url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger","forks_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/forks","keys_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/teams","hooks_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/hooks","issue_events_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues/events{/number}","events_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/events","assignees_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/assignees{/user}","branches_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/branches{/branch}","tags_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/tags","blobs_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/refs{/sha}","trees_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/statuses/{sha}","languages_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/languages","stargazers_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/stargazers","contributors_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/contributors","subscribers_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/subscribers","subscription_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/subscription","commits_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/commits{/sha}","git_commits_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/commits{/sha}","comments_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/comments{/number}","issue_comment_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues/comments{/number}","contents_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/contents/{+path}","compare_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/merges","archive_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/downloads","issues_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues{/number}","pulls_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls{/number}","milestones_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/milestones{/number}","notifications_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/labels{/name}","releases_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/releases{/id}","deployments_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/deployments","created_at":"2018-06-16T03:40:30Z","updated_at":"2018-06-23T14:56:15Z","pushed_at":"2018-06-23T16:50:10Z","git_url":"git://github.com/ymotongpoo/erlang-in-anger.git","ssh_url":"git@github.com:ymotongpoo/erlang-in-anger.git","clone_url":"https://github.com/ymotongpoo/erlang-in-anger.git","svn_url":"https://github.com/ymotongpoo/erlang-in-anger","homepage":null,"size":15463,"stargazers_count":12,"watchers_count":12,"language":"TeX","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":7,"mirror_url":null,"archived":false,"open_issues_count":7,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":7,"open_issues":7,"watchers":12,"default_branch":"japanese"}},"base":{"label":"ymotongpoo:japanese","ref":"japanese","sha":"51e6109eac976b0f5cefe1b96b21757761f9530d","user":{"login":"ymotongpoo","id":145104,"node_id":"MDQ6VXNlcjE0NTEwNA==","avatar_url":"https://avatars1.githubusercontent.com/u/145104?v=4","gravatar_id":"","url":"https://api.github.com/users/ymotongpoo","html_url":"https://github.com/ymotongpoo","followers_url":"https://api.github.com/users/ymotongpoo/followers","following_url":"https://api.github.com/users/ymotongpoo/following{/other_user}","gists_url":"https://api.github.com/users/ymotongpoo/gists{/gist_id}","starred_url":"https://api.github.com/users/ymotongpoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ymotongpoo/subscriptions","organizations_url":"https://api.github.com/users/ymotongpoo/orgs","repos_url":"https://api.github.com/users/ymotongpoo/repos","events_url":"https://api.github.com/users/ymotongpoo/events{/privacy}","received_events_url":"https://api.github.com/users/ymotongpoo/received_events","type":"User","site_admin":false},"repo":{"id":137550553,"node_id":"MDEwOlJlcG9zaXRvcnkxMzc1NTA1NTM=","name":"erlang-in-anger","full_name":"ymotongpoo/erlang-in-anger","owner":{"login":"ymotongpoo","id":145104,"node_id":"MDQ6VXNlcjE0NTEwNA==","avatar_url":"https://avatars1.githubusercontent.com/u/145104?v=4","gravatar_id":"","url":"https://api.github.com/users/ymotongpoo","html_url":"https://github.com/ymotongpoo","followers_url":"https://api.github.com/users/ymotongpoo/followers","following_url":"https://api.github.com/users/ymotongpoo/following{/other_user}","gists_url":"https://api.github.com/users/ymotongpoo/gists{/gist_id}","starred_url":"https://api.github.com/users/ymotongpoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ymotongpoo/subscriptions","organizations_url":"https://api.github.com/users/ymotongpoo/orgs","repos_url":"https://api.github.com/users/ymotongpoo/repos","events_url":"https://api.github.com/users/ymotongpoo/events{/privacy}","received_events_url":"https://api.github.com/users/ymotongpoo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ymotongpoo/erlang-in-anger","description":"A little guide about how to be the Erlang medic in a time of war. It is first and foremost a collection of tips and tricks to help understand where failures come from, and a dictionary of different code snippets and practices that helped developers debug production systems that were built in Erlang.","fork":true,"url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger","forks_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/forks","keys_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/teams","hooks_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/hooks","issue_events_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues/events{/number}","events_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/events","assignees_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/assignees{/user}","branches_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/branches{/branch}","tags_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/tags","blobs_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/refs{/sha}","trees_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/statuses/{sha}","languages_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/languages","stargazers_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/stargazers","contributors_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/contributors","subscribers_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/subscribers","subscription_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/subscription","commits_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/commits{/sha}","git_commits_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/git/commits{/sha}","comments_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/comments{/number}","issue_comment_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues/comments{/number}","contents_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/contents/{+path}","compare_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/merges","archive_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/downloads","issues_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues{/number}","pulls_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls{/number}","milestones_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/milestones{/number}","notifications_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/labels{/name}","releases_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/releases{/id}","deployments_url":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/deployments","created_at":"2018-06-16T03:40:30Z","updated_at":"2018-06-23T14:56:15Z","pushed_at":"2018-06-23T16:50:10Z","git_url":"git://github.com/ymotongpoo/erlang-in-anger.git","ssh_url":"git@github.com:ymotongpoo/erlang-in-anger.git","clone_url":"https://github.com/ymotongpoo/erlang-in-anger.git","svn_url":"https://github.com/ymotongpoo/erlang-in-anger","homepage":null,"size":15463,"stargazers_count":12,"watchers_count":12,"language":"TeX","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":7,"mirror_url":null,"archived":false,"open_issues_count":7,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":7,"open_issues":7,"watchers":12,"default_branch":"japanese"}},"_links":{"self":{"href":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/35"},"html":{"href":"https://github.com/ymotongpoo/erlang-in-anger/pull/35"},"issue":{"href":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues/35"},"comments":{"href":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/issues/35/comments"},"review_comments":{"href":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/35/comments"},"review_comment":{"href":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/pulls/35/commits"},"statuses":{"href":"https://api.github.com/repos/ymotongpoo/erlang-in-anger/statuses/fadb0d8e12bb6519eb5a50d590ba73a97bf27f1d"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"shino"}}