> If you’re a programmer and this offends you, consider how much more value you could create if you didn’t spend half your time as a glorified PSD->HTML translator. As the author states, the idea of abstracting away the complexity of creating user interfaces isn't new, but I think it's wrong to think we could one day create tools that lets you do that without having to write code and still keep all the flexibility of…
The End of Coding
41–50 of 106 posts
Re: The End of Coding
#42Alex North writes: "For a long time, GUI builders were crap. GUI builders are still crap: they often provide a poor representation of what the rendered interface will look like, are not powerful enough for developers to achieve exactly what they want, and are too complicated and laden with programming concepts for non-programmers to use them." Beginning about 1995, Borland's Delphi (now CodeGear / Embarcadero) seemed…
Re: The End of Coding
#43I wrote about this when Visual Studio LightSwitch promised "CODING OPTIONAL" (verbatim, from the installation splash screen):
http://cvmountain.com/2011/10/programming-without-coding/
An excerpt from my 2011 post -
The dream endures, but why?
One reason could be a lack of trust.
Successful software needs constant maintenance. As a software product becomes harder and more costly to maintain (as most do) the boss who doesn't quite trust his team will be tempted to look for alternatives that appear more trustworthy.
This basic lack of trust becomes a self-fulfilling prophecy as communication breaks down and the team and the boss begin to work in opposition. The boss is now a prime target for being sold the idea that software development can be very nearly automated. It’s not a logical process, it’s an emotional one.
In other cases the boss simply lacks the necessary understanding. They might think that programming is actually an unskilled or semi-skilled profession, where the programmer simply memorises a quirky list of words and symbols and then types them in according to a specification written by someone in marketing.
All this raises the question of what it means to program a computer.
Re: The End of Coding
#44Re: The End of Coding
#45Alex North writes: "For a long time, GUI builders were crap. GUI builders are still crap: they often provide a poor representation of what the rendered interface will look like, are not powerful enough for developers to achieve exactly what they want, and are too complicated and laden with programming concepts for non-programmers to use them." Beginning about 1995, Borland's Delphi (now CodeGear / Embarcadero) seemed…
About "GUI builders were crap. GUI builders are still crap": that's just BS. Not usable by non-programmers? Of course. But that hand-wavy dismissal is terribly lazy. Identifying what's exactly wrong and specially how to improve is the difficult part.
Re: The End of Coding
#46Re: The End of Coding
#47On the other hand, maybe the answer is learning logic ... nay, code.
[1] The one currently on my mind is the web publisher part of Microsoft Access from about 2000. Certainly not today's state-of-the-art, but representative of the typical tool.
Re: The End of Coding
#48But something like, 'give me the set of all things that....'
(let ((set1 (remove-if #'(lambda (x) (not (things that....))) from-lst))) 'BODY)
How'd you do that in Excel? Probably something like SUMIF - (I don't really use Excel much so I don't know if there's something that returns a list of things matching a predicate.)
Yes, doubtless that can be expressed more concisely than the code. Heck you could wrap that up and just call it fetchset and have it go.
(set1 (fetchset (things-that) from-lst))
But there you're putting more load on the person learning the arcana of certain macros or functions - and it's honestly not that much more concise in terms of headspace, you still have to think about sets for it to make any sense at all. It's not clear how that would translate into a visual interface of any significant power or how doing so would simplify the concepts that one would have to learn.
You know? Will programming get more efficient? Count on it. Will we automate tasks that are just following a pattern? Yeah. But will we stop coding?
Well, if you think about coding as being typing, then maybe we will. I don't think that visual interfaces are efficient enough to let you stick together all the concepts you need in a reasonable space of time without actually typing - but it's possible.
But will we stop thinking computationally? (Which is the real essence of coding I feel.) I don't think so. It seems to me that you have to know what you want a computer to do, or you have to have the computer guess at it. And the problem with guessing at it, other than the computer being wrong, is that if you're not a precise thinker; if don't know fairly precisely what you want to do; then you can't even mean certain things. Assuming quicksort hasn't been invented yet, how do you tell the computer that you want quicksort if it's guessing, what cues does the computer take from a general expression that you want a faster kind of sort?
Now whether that will reduce coding to mathematics I don't know. I'd tend to think not, if for no better reason than that programming includes a kind of coevolutionary mastery that can be a more fitting route for some people into thinking about things like transformations and sets and so on. I'm deeply indebted to programming for helping me think about maths in a way other than my teacher just reading black-box formula at the class.
Re: The End of Coding
#49I feel like I've been reading this article every year, with some variation but the same yet-unrealized potential every time. I'm not an expert in "human" coding or AI, but I get the same vibe from both of them -- until you try it yourself, it seems pretty reasonable that someone will solve this problem fairly soon. And it has seemed that way for many years now. Simple CRUD apps can already be built with simple, frien…
Exactly. I remember, once a friend wanted to create a tool for designers to use for creating HTML+CSS visually, without having to know actual CSS properties and such. Then I explained, the hard part of laying out webpages is not the basic layout -- it's how layout reflows when text overflows, when the browser window is too narrow, when image sizes change, what things maintain alignment and what things don't -- and th…
Re: The End of Coding
#50I feel like I've been reading this article every year, with some variation but the same yet-unrealized potential every time. I'm not an expert in "human" coding or AI, but I get the same vibe from both of them -- until you try it yourself, it seems pretty reasonable that someone will solve this problem fairly soon. And it has seemed that way for many years now. Simple CRUD apps can already be built with simple, frien…
Fred Brooks, author of The Mythical Man-Month, dismissed the idea in his 1986 paper No Silver Bullet:
"... building software will always be hard. There is no silver bullet."