lowercase should be lowercase... - Programming tools, errors and AIAD
Programming is hard!
The classic imperative programming model, where the computer performs the exact instructions as given by the programmer, places a huge burden on the shoulders of the all-too-fallible human coder. The problem is one of managing complexity, and one of communication to and from the computer and the human being. The human works by attempting to create an internal mental model that is as accurate and complete as possible, of what is actually going on inside the computer. So, some coders are far more productive than others, making less mistakes and able to make more accurate and complexity-managed software.
However, with today's complex and multi-vendor hardware, even the simplest smartphone or laptop is never fully understood by one single human coder. Worse, the human coder is relying upon a wobbly stack of existing code created by previously similarly limited human coders. In some respects, it is amazing that any software works most of the time!
Here is an example: an apparently simple linting rule, that checks for variable naming conventions in a SCSS web page styling file:
When a lowercase variable with hyphens, is apparently not so...
Something has gone amiss - possibly the error message has become mixed up with the code that performs the validation (so, the wrong message is displayed). Or possibly something much worse - for example a fault in the installation process that installed the validation code on the user's machine.
An interesting possibility is the future growth of AI generated code, and of AIAD (AI Assisted Development), where the machine that up to now placed such a burden upon puny human shoulders, can now attempt to assist the human coder produce higher quality work.
Comments
Post a Comment