Hacker News new | past | comments | ask | show | jobs | submit login

I agree with you. Programming languages are dramatically simpler than human languages. Anyone can learn the syntax and grammar for a programming language in a few months (at the very worst). Not only that, but they reduce the amount of expression possible so that you have to be very precise in your descriptions. While beginners find this difficult to deal with, it's actually a massive help because there are only a few ways to express something and the compiler/interpreter often tells you when you get it wrong. Again, compare that to a human language where you have a huge amount of expression available to you and it is often nearly impossible to realise if you are being precise enough to describe the problem/solution well. A good way to demonstrate this is simply to try to write a computer program in your native human language, without restricting yourself to pseudo code. It's pretty easy to leave out important details and to end up with a huge mess of incomprehensible garbage.

There are many people who think that a visual language or some other abstraction will simplify the problem of coding. I really don't think so. While things like diagrams are great for helping people comprehend something, they are absolutely terrible for expressing something. Just look at how difficult it is to draw really good diagrams. Consider the fact that we have had cook books for hundreds of years, but almost none of them are described solely with diagrams. Words are how humans prefer to communicate.

I think we often fall into the same trap with programming languages or frameworks. We say, "Look how easy it is to do this trivial thing. It's 100 times easier to do trivial things with this framework than without it". We are completely blind to the fact that the framework makes it 100 times harder to do ordinary things and 1000 times harder to do complex things.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: