Hacker News new | ask | show | jobs
by oldandtired 3066 days ago
As a self taught programmer, my question to you is "Can you solve the problem space problem?" Do you understand the difference between problem space and solution space?

I know of many excellent programmers, yet they have problems solving problem space problems. They write great code, but the code is not solving a real world problem.

Many of the available programming languages (especially in the highly popular languages, like C, C++, Python, C#, etc) have too many "gotchas". Any language which has "undefined behaviour" or "implementation defined behaviour" makes itself a language for the "elites" and instead of being an adequate tool for solving problems, becomes instead a tool for elitism.

Programming languages should be a tool for specifying a solution to a problem that communicates to those who follow in the support roles (including the original author) as well as fully defining the behaviour that a senseless machine will follow.

The complexity of a solution should be predicated on the complexity of the problem and not on the "features" of the programming language involved. This is one of the reasons that I enjoy programming in Icon/Unicon, Failure is an option and allows simpler ways of saying things. The language is in no way perfect, but I find it so much better for solving the problem at hand than having to fight another language because of its "gotchas" that end up getting in the road of solving my actual problem.