8) Strong Memory
Innovation and improvisation are extremely important to coding. In many cases you’ll find yourself completely baffled, or faced with a problem, project or situation you think you know nothing about. Sometimes you’ll be right. Often, if you think hard enough through your experiences, you’ll realize something you’ve already encountered may prove useful again. It might be from direct coding experience, or it might be an abstract, unrelated memory that somehow seems pertinent, or just through recalling it makes you think of something useful for the moment at hand. While working with the same languages, you’ll internalize syntax, and it will feel less like using memory and more second nature to recall important commands.
When it comes to long term memory, you’ll be aided by infinite manuals, websites and tools that will help you recall important information. As you develop your abilities (and want to complete projects faster), memorizing more information will be useful, but it’s not something to worry about immediately. However, when it comes to short term memory, you’ll want to do whatever you can to cultivate and improve your natural faculties. Coders need to be aware of many different pieces of information at once, and know how they’ll all react to each other. Being aware and able to visualize design, data flow, algorithms, data structures, and how they effect each other will separate you from the average coder. At first it can feel like juggling herring with ravenous dolphins jumping all around you, but it gets easier. This is where memory and flow coincide. The more you can lose yourself in the project, the less it will seem like a struggle to remember different aspects of the work. Meditation techniques and memory exercises can help with this as well.