{"@attributes":{"version":"2.0"},"channel":{"title":"Ryan A. Koval - Blog RSS Feed","link":"https:\/\/ryankoval.com\/blog","description":"Writing and notes from Ryan A. Koval on software engineering, JavaScript, Scala, and infrastructure.","language":"en-us","lastBuildDate":"Sat, 18 Nov 2017 12:00:00 GMT","generator":"Ryan A. Koval","item":[{"title":"Recovering Tectonic Using an Externally Provisioned etcd on AWS","link":"https:\/\/ryankoval.com\/blog\/recovering-tectonic-using-an-externally-provisioned-etc-on-aws","guid":"https:\/\/ryankoval.com\/blog\/recovering-tectonic-using-an-externally-provisioned-etc-on-aws","pubDate":"Sat, 18 Nov 2017 12:00:00 GMT","description":"Braindump of the recovery process I had to do to recover our Tectonic Kubernetes cluster from a manual configuration change that broke the control plane.","category":["kubernetes","tectonic","coreos"]},{"title":"Avoiding Option Altogether","link":"https:\/\/ryankoval.com\/blog\/avoiding-option-altogether","guid":"https:\/\/ryankoval.com\/blog\/avoiding-option-altogether","pubDate":"Fri, 05 Dec 2014 12:00:00 GMT","description":"Avoiding null-able values when you can guarantee that a value will never be null\/None.","category":["scala","functional-programming","monads"]},{"title":"Debugging JavaScript in Chrome and Firefox","link":"https:\/\/ryankoval.com\/blog\/debugging-javascript-in-chrome-and-firefox","guid":"https:\/\/ryankoval.com\/blog\/debugging-javascript-in-chrome-and-firefox","pubDate":"Sat, 23 Feb 2013 12:00:00 GMT","description":"Simple tools you can use to make your life as a JavaScript developer much easier \u2014 with live, interactive demos.","category":"javascript"}]}}