On Platitudes

Ian Rogers wrote “I hope we can agree that ad hominem attacks in discussion are undesirable, but I’ll suggest that platitudes can sometimes be the other side of the same coin, it’s rebuke being delivered in a wrapper of inoffensiveness. “A remark or statement, especially one with a moral content, that has been used too often to be…”

By Rept0n1x (Own work) [GFDL (http://www.gnu.org/copyleft/fdl.html) or CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons

5 Whys considered harmful

Ian Rogers wrote “Adverse events happen – a website breaks down, a project doesn’t get delivered on time – and a  proposed technique to find ‘the root cause’ is to ask the “5 Whys”. Attributed to Sakichi Toyoda in the 1930’s and adopted by Toyota and other formal techniques it’s basically the technique of listing a fault and then asking…”

Just Enough Design

Ian Rogers wrote “On the one hand it’s become a bit of a cliché to say that Waterfall doesn’t work (in fact ‘waterfall’ may never have existed), but we know that rigid projects don’t deliver—when the level of resources is the only contingency in a project then budget overrun and missed deadlines (or lowered quality) become almost inevitable.…”

© Nevit Dilmen [CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0) or GFDL (http://www.gnu.org/copyleft/fdl.html)], via Wikimedia Commons

GraphQL is really TreeQL and that’s OK

Ian Rogers wrote “Let’s have a look at GraphQL. It came out of Facebook as a replacement for REST style requests for querying data. It was initially developed from 2012 and made open source in 2015. As Facebook’s main database is the “social graph” it was naturally named GraphQL but, as we’ll see, that’s not a completely accurate…”

Theatrum Orbis Terrarum, from Wikipedia

Given When Then

Ian Rogers wrote “There are, of course, a large number of techniques described as being The Way To Do Software Engineering. I’m sure I’ve not come across them all but the ones I know about and use currently include at least: Impact mapping, Pert charts, Gantt charts, Personas, Wardley mapping, Agile, DSDM, MoSCoW, SMART, INVEST and BDD (I’ve…”

Thanks to zmescience.com for photo

Programming is not a Performance

Ian Rogers wrote “Programming is more like writing a novel then executing a performance. No I don’t mean the likes of If Hemingway Wrote JavaScript  – I mean, apart from ridiculous job interviews involving a whiteboard and pen  (NB. LShift never does that) coding is very unlikely to be a performance in an instant of time. Usually when…”

Why bother testing?

Ian Rogers wrote “It’d be nice to be able to make a definitive case for the benefits of software tests, but I can’t due to this one question: Is it possible to prove the correctness of a program using tests? The answer is unfortunately “no of course not” and I’ll show why below. But all is not lost…”

By Engineers11 (Own work) [CC BY-SA 3.0 (http://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons

Scripting vs. Engineering

Ian Rogers wrote “I’ve come to the conclusion that the terms like “programming”, “coding” etc. have become horribly ambiguous which has enabled: organisations to offer courses on html/css editing as “coding” people to make claims like “nodejs is more productive than java” (which is a nonsense statement either way) various arguments along the lines of “is X a…”

By Birmingham Museums Trust (Birmingham Museums Trust) [CC BY-SA 4.0 (http://creativecommons.org/licenses/by-sa/4.0)], via Wikimedia Commons

Can you do it?

Ian Rogers wrote “You’re somewhere in the middle of an Agile project. As usual, once you’ve actually started development, the true nature and scope of the project is becoming clear and the client asks ‘Can you do <some “clarified” feature>?’. This, of course, is a trap of linguistics. As programmers we can do anything so confidently say yes,…”

In defence of Integration tests

Ian Rogers wrote “There's a notion that 'Integration tests are somehow rubbish and we should replace them with contract tests' that I wish to reject.”

By Killerlimpet (Own work) [Public domain], via Wikimedia Commons

What is Simple?

Ian Rogers wrote “Consider these quotes: “Any sufficiently complicated program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp” – Greenspuns Tenth Rule Of Programming “Once you add group by, filter, & join, you can no longer claim to have invented a new query language, only a new dialect of SQL. With worse syntax…”