<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Lance Ball]]></title><description><![CDATA[Occasional musings of a crotchety old developer]]></description><link>http://lanceball.com</link><generator>metalsmith-feed</generator><lastBuildDate>Sun, 15 Jul 2018 00:01:13 GMT</lastBuildDate><atom:link href="http://lanceball.com/rss.xml" rel="self" type="application/rss+xml"/><author><![CDATA[Lance Ball]]></author><pubDate>Sun, 15 Jul 2018 00:01:12 GMT</pubDate><copyright><![CDATA[Lance Ball 2018]]></copyright><language><![CDATA[en-us]]></language><category><![CDATA[programming]]></category><category><![CDATA[javascript]]></category><category><![CDATA[node.js]]></category><category><![CDATA[coding]]></category><item><title><![CDATA[Riviera Dev 2017]]></title><description><![CDATA[<p>I returned late Sunday night from a trip to the south of France, where I was privileged to speak about Microservices, OpenShift, and how to do it all on Node.js. The conference was RivieraDev/JUDCon: Riviera 2017 and took place in Sophia Antipolis, near Nice, Cannes, St. Tropez and other fabulous Mediterranean cities on the southeastern coast of France.]]></description><link>http://lanceball.com/words/2017/05/17/riviera-dev-2017</link><guid isPermaLink="true">http://lanceball.com/words/2017/05/17/riviera-dev-2017</guid><dc:creator><![CDATA[Lance Ball]]></dc:creator><pubDate>Wed, 17 May 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Protect Your Node.js REST Clients with Circuit Breakers]]></title><description><![CDATA[<p>One of the predominant patterns in today's Node.js applications
is the microservice, or µ-service. Applications are composed of a
suite of independently deployable services, usually running in
independent processes. These µ-services typically communicate with
each other using lightweight protocols such as REST over HTTP.</p>
<p>One of the side effects of this architecture, however, is that applications
need to be designed to handle failure. Any one of the service calls could
fail for any number of reasons at any time. Today, I'll explore one method
you can employ to gracefully handle service unavailability — the
Circuit Breaker pattern.</p>]]></description><link>http://lanceball.com/words/2017/01/05/protect-your-node-js-rest-clients-with-circuit-breakers</link><guid isPermaLink="true">http://lanceball.com/words/2017/01/05/protect-your-node-js-rest-clients-with-circuit-breakers</guid><dc:creator><![CDATA[Lance Ball]]></dc:creator><pubDate>Thu, 05 Jan 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Forget Data Encapsulation - Embrace Immutability]]></title><description><![CDATA[<p>A couple of weeks ago, I wrote a fairly <a href="/words/2016/10/14/data-hiding-in-es6/">long post</a> attempting to shed some light on a few things you can do in your JavaScript classes to enforce the concept of data encapsulation - or data "hiding". But as soon as I posted it, I got some flak from <a href="http://twitter.com/jcrossley3">a friend</a> who is a Clojure programmer. His first comment about the article was this.</p>
<blockquote>
<p>Mutability and data encapsulation are fundamentally at odds.</p>
</blockquote>
<p>Eventually, he walked that back - but only just a little bit. His point, though, was intriguing. I asked him to explain what he meant.</p>]]></description><link>http://lanceball.com/words/2016/11/28/forget-data-encapsulation-embrace-immutability</link><guid isPermaLink="true">http://lanceball.com/words/2016/11/28/forget-data-encapsulation-embrace-immutability</guid><dc:creator><![CDATA[Lance Ball]]></dc:creator><pubDate>Mon, 28 Nov 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Data Hiding in ES6]]></title><description><![CDATA[<p>For a lot of my early career, I was an OO developer. I genuflected regularly in
front of the altar of data encapsulation, object heirarchies and static typing.
And the syntax. Oh the syntax!</p>
<p>But I have changed, of course, and so much of the dogma and ceremony that
I participated in during those times has come to seem a lot less important
than it was 20 years ago. Languages, and developers evolve. But that doesn't
mean there aren't some really good lessons to learn.</p>
<p>Take, for instance, data encapsulation.</p>]]></description><link>http://lanceball.com/words/2016/10/14/data-hiding-in-es6</link><guid isPermaLink="true">http://lanceball.com/words/2016/10/14/data-hiding-in-es6</guid><dc:creator><![CDATA[Lance Ball]]></dc:creator><pubDate>Fri, 14 Oct 2016 00:00:00 GMT</pubDate></item></channel></rss>