Here are some thoughts on desirable behavioural patterns for developers.
At first I was thinking about writing about anti-patterns in behaviour or anti-behaviours. That would be instant irony. Anyways, seeing this clever tweet made me think and the term for this would be Leading Behaviours. An idea here is to coin the terms Leading Patterns and Leading Behaviours. Using the word ‘leading’ signals that they may not be leading forever which I believe is true for both terms. Juxtaposed to “best” - there can only be one best and one does not expect best to change. Not as frequent anyways.
Desirable consequences of Leading Behaviours would be to inspire others, energize others and in general be supportive. It should only in a way that promotes other developers to adopt Leading Behaviours. This proverb is one example of how one could practice leading behaviours.
In a balanced approach to solving problems fear will play a small role. Especially true in problem domains new to the individual. This enables developers to try out practices and tools. This is essential when striving to work at as high an abstraction level as possible. It will also be a great help to make pragmatic and earthbound decisions. It will make it easier to concentrate on doing the most important things rather than some peripheral issue. Time is spent on what is most important to a larger degree.
Detached decision making
Anything an individual invests much time and energy into will have a profound effect on that person. Staying emotionally detached allows the developer to stay rational. It will make it easier to avoid logical fallacies when reasoning. It is highly beneficial to know these by heart. This enables one to avoid wasting time an navigate successfully in many different contexts. Aptness to take into account all relevant factors is important. Likewize is realizing that it is very common with trade offs when making choices. A mind very open to new information allows rapid stance changes as any significant new information is presented. Previous experiences and only a real help when there is no other path of reasoning available. This is more and more true in a world where change is one of the ever fewer constants. More important to make novel deductions from the current set if variables.
Various emotions and feelings are the impetus behind our actions. Perhaps the most potent character trait of them all is passion for our field of work. This makes developers spend that extra time and energy. This enables them to delve deeper and excel at whatever is needed to grow mentally to be able to grasp the most enigmatic concepts. Being dissatisfied and looking for ways to improve written and code not yet written is the hallmark of a developer that will learn massive amounts during a career. A sign of maturity is where there is a complete objectiveness when evaluating code. Self awareness is priceless here.