Will software that writes code alter tech’s script?
ft.com
ft.com
I view that as a failure of abstraction and composition, not as a failure of automation. If it's tedious to hook up window controls to underlying data, or to handle properly a form validation loop in a controller for the millionth time, we should be asking why the abstraction layer we are using requires that tedium instead of being more succinct?
Often the abstraction is complex because of the degrees of freedom it has. Automation on the other hand reduces the degrees of freedom. This is great if you are the one who is reducing and making the choices, but if you are letting someone else make all the choices about what is possible... It's like the difference between driving and being chauffeured.
Even if this system were like the mathematician: "show me all possible worlds satisfying X" it would require either a huge search space to pick the desired answer or present only a handful of preselected choices. Search refinement is more interesting, sounds like a great deal of complexity to avoid (less?) complexity of actually doing the work-- especially in meanial cases-- i.e. I don't want to sift through 1000 variations of form validation to "find" the magic one that completely meets my business needs.
> The thing that takes time is humans understanding what they want. Programmers are like therapists who help them crystalize their thoughts to the point where they are at least vaguely consistent. The program is just a representation of that idea.
Coding automation too will help to make better software.
What programmers have done is to translate human ideas into machine understandable symbols, or graphic layout. Not he latter is probably far more difficult than the former which itself can be as hard as NLP and essentially the goal of the almost entire computer language evolution, to improve the effectiveness of translations human ideas to computer understandable symbols.
It doesn't matter how smart the computer gets, a smart programmer with the computer is always going to be more useful than the computer on its own.
In reality it's very difficult to describe visual things in words.
Also, how does a fierce shark look different to a shark?
1) The "fierce" plugin is installed and immediately run. It is targeted on the shark sprite.
2) "Fierce" is an evolutionary algorithm. It will create several hundred generations of a shark, mutating the shark sprite in some small way. The shark's fitness is based on how 'scary' the shark is, and the 'scariness' of the shark is calculated based on a dataset compiled by children that rated how scary colored pictures were from a scale of 1 to 10. The evolutionary algorithm's goal is to maximize the fitness of the shark.
3) The final shark (with the highest fitness) is outputted to the user. It will look very similar to a normal shark, with some minor variations in color to increase the scariness of the shark.
What these people are doing is not impossible. However, the potential for so-called "leaky abstractions"[0] messing up the development process is very high. Programmers will likely be necessary, if only to ensure the abstractions are functioning well enough for non-programmers to use.
[0]http://www.joelonsoftware.com/articles/LeakyAbstractions.htm...
Ridiculous. COBOL. AppleScript. Lego Mindstorms. Also:
Is it difficult to develop a programming language which is closely related to human language? (http://programmers.stackexchange.com/questions/267489/is-it-...)
Or, in one of the clearest and most succinct pieces Dijkstra ever wrote:
On the foolishness of "natural language programming".
https://www.cs.utexas.edu/users/EWD/transcriptions/EWD06xx/E...
It's not AI, it's Super Intelligent.
> It's ok to ask how to read an article or to help other users by sharing a workaround.
So, can anyone share the workaround for this one? In a desktop browser, I get a paywall; 'x'ing out of it, I'm redirected to the front page; and blocking the paywall's html element reveals that the article behind it is empty.