> Trying to raise a software engineering discipline to the standard of the real engineers would leave you with an employee too expensive to do what his professional ethics wouldn't allow him to.
Nah. The vast majority of software projects are of the lower echelon variety e.g., the slapdash shopping cart web apps. Considering JavaScript is still the language of choice in that realm, engineering rigors can’t exactly be of any real consideration.
No, it’s not the expense keeping real engineering away, it’s the culture.
There are good reasons. When you begin writing IDE support you will discover that:
1. Without annotations you’ll be forced to index all static methods based on the first argument, globally.
2. Method call code completion will be ridiculous. How many static methods have String, File, List, Object(!) etc. as the first parameter? I don’t think anybody wants their code completion to be invaded like that.
The annotations provide intention. Essentially, adding an extension method is not something to be taken lightly, it requires careful consideration, weighing context, frequency, etc.
My sentiments exactly. The “API designers should control their APIs” one is my favorite and one of the more ridiculous things I’ve heard him say, which is saying something. It’s beyond humor, though, that all of his reasons are fallacies.
The West has been importing its population for decades, full gas since 1965. Not only is this strategy failing, it is a significant contributor to the West’s current decline. The core problem is more centered on the dynamics of the 20th century that led to mass immigration.
It’s all about the bottom line. Touch screens consolidate a ton of otherwise expensive switch gear. Going back to physical knobs and buttons means going back to paying for engineering, assembling, testing, etc.
A general purpose language as the basis for a build tool always felt like a sledgehammer/nail situation to me. Personally, I prefer less concise, less flexible build config tooling.
Here we are in the current year and we still i/o source as raw form text. Personally, I’ve always hoped for standardized AST formats with comprehensive tooling, including source control. Many more problems vanish than are created with source as AST. For instance, this discussion.
I recall learning Prolog for a CS class back in the late 80s to model problems using its backtracking (chaining) algorithm with facts. Sometime later Rete-based rules languages became popular, but I always thought Prolog’s language approach was more suitable.
Nah. The vast majority of software projects are of the lower echelon variety e.g., the slapdash shopping cart web apps. Considering JavaScript is still the language of choice in that realm, engineering rigors can’t exactly be of any real consideration.
No, it’s not the expense keeping real engineering away, it’s the culture.