Spaghetti code. Poltergeister. Lava flows. The epitome of anti-patterns that make up bad code. Nested. Confusing. Structureless. Many software projects fail because of software source code that has confused structures.

So how do you develop properly?

First of all, simple rules help. Good comments. Unique names. Language standards. But that alone is not enough. In order to build robust applications, the use of design patterns is important. They are the foundation of good software design because they are reusable. Creative patterns. Structural patterns. Behavior patterns. Gang of Four Design Patterns are the first choice for development standards. And once the code basis is right, the principle of iterative development can really take hold. Because without rules and patterns, iterations will come to nothing. If the whole thing arises from repetitions of its components, however, complexity forms as if by itself. Code Simplicity.