DEV Community

Discussion on: Language and complexity

Collapse
 
gtanyware profile image
Graham Trott

Yes, it seems intuitively true that the closer we get to English the better we are able to communicate with each other. Computer languages like C, Java and Python (with or without frameworks) are great for expressing highly algorithmic structures but they are too complex to permit anyone but a programmer to fully understand what is going on, and that's where mistakes get made. Users of SQL understand well the benefits of being to able not just to talk but also to show, as you describe.

My belief is we should pay more attention to 'containerization', where functionality is kept in components with well designed interfaces, and with a top-level controller that operates in something as close as possible to English.

My favorite analogy is of a roomful of people, all experts in different subjects. If I want to know something about waterproof fabrics I ask the materials expert; if it's a financial question I ask an accountant and if I have a sore toe I consult a chiropodist. Everything happens as 'messages' sent from one 'component' to another. Too many systems are built as if all the experts had their brains physically wired together, so when one moves the whole lot have to move. Sometimes the strain is too much, connections break and the system fails.