Earlier quoted context omitted.
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…
The End of Coding
91–100 of 106 posts
Re: The End of Coding
#92Earlier quoted context omitted.
The belief that better tools will obsolete the need for all that coding effort is probably as old as computer programming itself. 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." http://en.wikipedia.org/wiki/No_silver_bullet
It's certainly at lest 30 years old. Before my voice changed I went to my first computer conference. People were selling tools there that would let business types do "programming" via just writing what they want in English. For minicomputers. Of course, they had to write in a minimal, highly structured pseudo-English. And the problem domain was highly restricted. So it was basically programming, except less effective…
Re: The End of Coding
#93I 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…
The lawyers do understand, and did it on purpose. Programmers just think similarly enough to lawyers that they can sometimes find things that were meant to be hidden from the general public (and from the junior lawyers who work for the competition). :)
Re: The End of Coding
#94Re: The End of Coding
#95Why then so many people find it strange that to write a program you must.. program.
Re: The End of Coding
#96I 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…
Re: The End of Coding
#97I 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…
Re: The End of Coding
#98Earlier quoted context omitted.
It's certainly at lest 30 years old. Before my voice changed I went to my first computer conference. People were selling tools there that would let business types do "programming" via just writing what they want in English. For minicomputers. Of course, they had to write in a minimal, highly structured pseudo-English. And the problem domain was highly restricted. So it was basically programming, except less effective…
It's probably good to try every so often, anyway, even though it's impossible. :-)
Re: The End of Coding
#99I was about to respond to his claims by pointing out that spreadsheets are a gateway drug for coding and that everyone who tries to do things without coding ends up coding. Code is remarkably universal. The article claims spreadsheets are an example of a post-coding tool, but they, and his other examples, really aren't. Notably, "visual programming" has been a failure. I expect the end of coding to be presaged by thi…
I agree that spreadsheets count as programming, since formulas are code. But spreadsheets also add a memory model (cell references) and a UI (rows and columns), and these three things are all smushed together, or rather overlap perfectly, while in general-purpose programming they are independent and there is no such overlap. That's perhaps what makes spreadsheets simpler and more accessible.
Re: The End of Coding
#100Earlier quoted context omitted.
A race condition is a set of (possibly very many) very well defined states - or at least defined as well as everything else in the program. Someone should discover some algebra for working with concurrent processes and the race conditions would go away! (the second sentence is a joke.)
A simple data race in C11/C++11 is undefined behavior, it doesn't have to result in any well-defined state that you might get by interleaving the execution of threads. I think this has been on HN already: http://www.hpl.hp.com/personal/Hans_Boehm/c++mm/why_undef.ht... Essentially it has to be that way, or on some architectures every access to a potentially shared variable would have to be wrapped in fences by the com…