Member-only story

Things I believe about software engineering

hliyan
5 min readAug 17, 2019
A Colossus Mark 2 computer, 1943. The National Archives (UK)

While recently attempting to put together an engineering process, and do so in a manner that engineers will follow it willingly and with comprehension (rather than grudgingly, or worse yet, mechanically), I was reminded of the peculiar way in which the famous Agile Manifesto was structured: four values, twelve principles aimed at achieving those values, and a conspicuous absence of anything resembling a prescribed process. So inspired, I set out to develop a set of values and principles that I felt was appropriate for the project at hand, and as a by-product, wrote this:

What is the most important thing?

“The most important property of a program is whether it accomplishes the intention of its user.” ― C.A.R. Hoare

Technology is not an end in itself, but rather a means to an end. The end is that which your software (or even your hardware, your machine or your building) hopes to accomplish for its user. The user depends on you, and you in turn depend on the user, because in the final analysis it is the user who pays your salary. Putting technology before the user is no more sensible than putting medicine before the patient.

What is engineering?

“First solve the problem. Then, write the code.” ― Waseem Latif

--

--

hliyan
hliyan

Written by hliyan

Designing and developing software for 20 years. Ex London Stock Exchange Group, Ex Sysco. Currently leading engineering at :Different. Views personal.

No responses yet