Live data from Hacker News

The End of Coding

alexn.id.au

61–70 of 106 posts

Re: The End of Coding

#61
post #5

Earlier quoted context omitted.

There are many ways to mitigate these issues. The one I like to believe will be the most used would be a entire new way of using computers. Just like Google uses complex algorithms in order to try to give you better search results, I see no reason why Excel can't try to "learn" your usage. I'm quite saddened that it's 2013 and few applications try to learn more about the user's usage patterns.

I guess the difference is that what google does is already somewhat fuzzy, when you search for something you're not necessarily even sure what you want the search engine to return. We also don't expect the results to necessarily be perfect which is why the search engine returns more than one result. On the other hand when you're trying to do some specific task you already know in most cases exactly what you want to h…

I've heard this idea encapsulated in a neat phrase: 'Control interfaces should not be intelligent'. I think I first read that after Wolfram Alpha was launched.

Re: The End of Coding

#62
We don't program the computer as much as we program ourselves.

We may be able to build tools that reduce the burden but making a computer debug itself without either re-stating the expected outcomes and/or understanding the "intent" of the running code seems pretty much out of reach by definition.

Re: The End of Coding

#63
post #10

I 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…

Yup, it's kind of tedious seeing these types of article / blog post. As anyone that works as a programmer knows, it's not the grammar of programming that is hard. It's understanding the hardware and what it can do that is hard. It's encoding nebulous and sometimes conflicting business requirements into something a computer can understand that is hard. It's taking into account all of the different error states that a…

I agree with all the things you say are hard: understanding computation, encoding complex requirements, handling edge cases; but typing code into an editor and then re-running your application doesn't provide much support for making them easier. Better tools could help programmers and non-programmers alike work with that complexity much more effectively.

Re: The End of Coding

#64
post #46

Programming is the new literacy. It isn't going away, it's 5 years out from being a mandatory high school or middle school topic.

Nah. People have been saying that since the 60s, and it will never happen.

Honestly, I think it's a bad idea. Programming skills turn over too quickly. If people in my age bracket had learned computer programming in middle school or high school, they would have been dragged through one sort of BASIC or another and then promptly forgotten about it. Which is probably better than them remembering it and being frustrated that nothing would let them use those skills.

If they were to learn something technical, I'd much rather it be a simple robotics class. A little bit of programming, a little bit of electronics, a little bit of Mech E, and a lot of problem-solving, self-teaching, and making of things that work. Those are skills that last, as does the attitude that they can figure things out if they want.

Re: The End of Coding

#65
post #10

I 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…

Right. By the time this problem is truly solved with software sophisticated enough to eliminate the need for programmers, most people will be fairly useless in any endeavor.

Re: The End of Coding

#66
post #10

I 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…

It is funny to me that people extrapolate "code" as just our best way of representing computational instructions we want done that we can express in natural language. I agree with you that sometimes this isn't true. Sometimes I read code and I can't express what it does in English. I could roughly describe what it does, but I can't communicate all of its subtlety. The limitations of "no code" isn't the theoretical limits of AI it's human!

Re: The End of Coding

#67
post #35
post #10

I 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…

But we have some such better tools! E.g. Chrome's developer tools let you edit CSS properties and the document structure live, seeing results instantly. It's fantastically more efficient that coding and refreshing the page. Tools that better match the problem domain matter so much precisely because of the domain complexities like overflowing and arbitrary data.

It's a small step. I can easily imagine bigger ones.

Re: The End of Coding

#68

The question that these sorts of articles always raise is ultimately , should we treat computation as something like mechanical expertise which is important but can be easily outsourced or is it more like literacy which is critical to just about every profession and is often used as a proxy for intelligence? It strikes me that the real difficulty is drawing a line between which tasks should be left to technical profe…

That's a good question. I don't have a personal answer yet, though I do like your mechanic example.

But to your last point: I chose the word "coding" so as to refer specifically to the linear textual formal representation we use today. People will keep designing complex logical systems - indeed, I hope more people will become more capable of doing so, and I think better tools will help.

Re: The End of Coding

#69
post #66
post #10

I 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…

It is funny to me that people extrapolate "code" as just our best way of representing computational instructions we want done that we can express in natural language. I agree with you that sometimes this isn't true. Sometimes I read code and I can't express what it does in English. I could roughly describe what it does, but I can't communicate all of its subtlety. The limitations of "no code" isn't the theoretical li…

Poorly-written code (especially if the reader doesn't have a good grasp of the coding language) can be very confusing, but it will still almost never be ambiguous.

If you try taking some well-written code and converting it to natural language with utterly no ambiguity, you'll quickly find that:

- the natural language version is far, far longer and harder to read - it takes a lot of work to remove all ambiguities, and you will find yourself wanting to put a dictionary with strict rules and extensions -- totally unlike a REAL dictionary.

=> Word "allow" will always mean generally the 1st (verb) definition in Mirriam-Webster online, and will further imply that if the subsequent test (see below for definition) succeeds (definition below), then execution (see below) will continue; if the test fails (see below) then standard error (see below) handling procedure (see below) will be followed, in which...

It's ridiculous, isn't it?

You'd be inventing a new (but probably horrible) coding language, not using natural language at all any more.

The thing about natural language code -- it does exist, sort of. Think about the checklists that airline pilots run through before takeoff, for a good example.

That's sort of natural language process execution... but it's the same every time, the context is known (it's being executed by an airline pilot sitting in the cockpit of a specific airplane), the pilot is trained such that s/he has practiced running the checklist many, many times before doing it "for real". And: it's a friggin' checklist. Is logic in there whatsoever, beyond "if this is true, continue; if not, abort"?

The limitations on it are incredible, and we still have human beings executing that "code"; they are not automated. The answer to one of the questions might unexpectedly be "sort of", or "yes, value in the safe range, but why is it steadily dropping?"

Re: The End of Coding

#70
We still have a lot of work to do in tooling to make things simpler. Take for example Xcode. Xcode is harder to use than the old Interface Builder / Project Manager combo. We continue to add complexity that works for experts, but is a pain to onboard people. It is amazing how many people got HyperCard, but would not be able to touch Xcode.
Post reply on HN