Posts

Showing posts with the label Semantics

Continuous Testing — Some Semantics

Image
If you’re doing any form of  Continuous Testing  (or heck, even just automating your tests), you’ve probably already run into the  Semantics Gap , where what  you  mean by XXX isn’t what  others  mean by it. This can be quite the killer, in ways both subtle and gross. I recall a post-mortem in the past that boiled down to the QA and Release teams having different assumptions about what “ The Smoke-tests passed ” meant. The resulting chaos — both between the teams, and for the customer — was  epic , and something that still makes me shudder reflexively when I look back at it  . And that, my friends, is just about when I put together the following terminology. Mind you, far be it for me to tell you to adopt this terminology. Heck, you may very well vehemently disagree with it — and that’s ok. The thing is, whatever terminology you use needs to be agreed upon by everybody! (And, you’ve probably got all the same stuff below, just broken ...

Moar Semantics - MicroServices Edition

Image
Software development is hard enough as it is —  • there is always a “ flavor of the month ” language, • everybody has   their   favorite flavor, • there is always the inevitable #CowboyDeveloper who Knows The Correct Flavor, …oh, it’s crazier than a sack full of clams. And that’s before you even get to the semantics, where   everybody has their own definition of what “flavor ”   means! The thing is, semantics are important, they allow us to share the meaning behind words, the   understanding   if you will. And towards this, herewith a glossary of some of the more common terms you see used out there in the world of (not necessarily) MicroServices. (•) • Ambassador  — Modules that offload common connectivity tasks such as monitoring, logging, routing, and security (such as TLS) agnostically. Think of these as   out-of-process   proxies that are co-located with the clients. • Anti-corruption Layer  — A layer between two different components...

Syntax - Why so CareMad?

Image
Mahesh Paolini-Subramanya - Syntax Matters - What Programmers can learn from the World of Linguistics from Erlang Solutions on Vimeo . Syntax tends to get people remarkably upset in the programing world ( semicolons anyone? ), with virtually any introductory talk on Erlang (Haskell, Clojure, whatever) invariably containing a self-deprecatory quote about its Syntax.  The thing people tend to forget is that this isn't new!   Syntax has been upsetting hominids since the first australopithecus said " Urghk " instead of " Oook ", and got righteously thumped for it, and has continued to the present day (check out " French is better than " on Teh Googles ).   Whats worse, people tend to mistake Syntax for Semantics , resulting in both chaos (and torture. Seriously). I gave a rant talk on this topic at CodeMesh  a wee bit back. The video is above, and the slides below. Syntax - Why so CareMad? from Mahesh Paolini-Subramanya Remember...