|
|
| | Ask HN: Why do we still need to “program/write code” ? | | 2 points by dmode on May 23, 2017 | hide | past | favorite | 5 comments | | Of all the things programming has disrupted, the least impacted has to be the task of programming itself. I recently learned Swift after taking a break from coding for over a decade. And it took me just over a month to learn, because it is so similar to Java, which I had learned over 20 years back. I am still perplexed that so little has changed. Why do still have curly braces, and strange annotations to accomplish simple tasks ? Why do we still need to call strange methods like "letTouchesBegin" to achieve simple transactions ? Why do I need to implement Node.js + Mongo + Express + React + Postgres + Backbone + blah blah to send a message to another person ? In my mind, in the 21st century programming should have been essentially abstracted and behind the scenes, only a few experts need to know it and tweak it. For vast majority of us, we should be able to say to a bot like interface "create a payment app that sends payments between two friends" and that interface should be able to do the things that are needed behind the scenes. We should be able to create our business logic for our applications, not through complicated SQL statements and backend codes, but by simply training a model on expected behavior through examples or discrete visual rules. Why hasn't that been accomplished it ? And is there someone working on actively disrupting programming itself ? |
|

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
|
It is understanding that there is a problem which is solvable, understanding the shape of that problem well enough to arrive at a way to solve it, working out that solution, and then expressing it clearly to another entity, whether human or computer.
None of these things are special to programming; they are all specialized skilled work that is still hard in fields that do not involve computers.
Mathematicians create and communicate theorems. Legislators create and communicate law. Engineers create and communicate designs for mechanisms. Chefs create and communicate recipes.
All but the most trivial fields involving one person talking to another rely on a large body of knowledge shared by the participants, and use domain specific language in order to communicate ideas clearly and unambiguously. It is not absolutely required, but it saves an incredible amount of time, misunderstanding and wasted effort. When discussing matters of any complexity, clear communication is vital.
There is certainly room for the jargon and workflow to improve; for us to come up with languages that are more expressive in their domain, and for processes that are more intuitive - whether by being closer to what communicating your ideas to another skilled human would be like, or some other way.
But the actually hard work can no more go away than in any other human endeavour.