The discourse between supporters of traditional methods and proponents of innovation has been a fundamental aspect of Western civilisation since its inception. The dichotomy between advocates of classical techniques and those who give precedence to empirical data is a recurrent motif in all human enterprises.
Despite having a reputation for a practical outlook, the corporate industry is not immune to this paradoxical deliberation. Disagreements arise amongst software developers, executives, and data analysts between proponents of specific methodologies and those who prefer a diverse approach.
Understanding the Dispute
I will designate the most idealistic and practical stances in this discourse as such. These notions lack any underlying philosophy and are adopted merely because of their straightforwardness.
The term “purists” alludes to those who are conservative in their thinking or possess a well-defined perspective, where their practices and convictions are congruent with their ideals. For instance, a programmer who is unwavering in their stance and unequivocally advocates for either the Agile or the Waterfall development methodology.
Pragmatists espouse a receptive attitude towards ideas and viewpoints. They give priority to the outcome over the process and are guided by the philosophy of “whatever is effective”.
It is more appropriate to perceive this polarity as a range rather than two conflicting factions. Most of us have a mixture of both idealism and pragmatic tendencies in our dispositions.
While some of us find the set framework of established procedures advantageous, others feel more efficient when provided with the liberty to experiment with novel ideas and methods. Typically, we can negotiate and find a middle ground, irrespective of the circumstances. However, there may be occasions when this is not feasible, and we may encounter obstacles.
The Merits of Methodologies
During the workshops he conducts, my associate frequently incorporates a comical tale. When he finished his college education, his initial occupation as a software engineer was at a corporation that proclaimed complete commitment to object-oriented programming.
Whilst working on his colleague’s debut assignment, the team faced a difficulty arising from the intricate nature of the problem they were endeavouring to resolve. However, they were unable to find an object-oriented solution that was effective. My friend recommended a couple of alternatives, which included an element of imperative programming, but these proposals were dismissed due to their inconsistency with the organisation’s ethos.
This is not a mere anecdote, but an actual incident that transpires more frequently than anticipated. It is not mandatory for it to relate to any particular programming paradigm. The corporation was just as unwavering in its devotion to its software development methodology as the supporters of Agile or Waterfall approaches.
There could be several factors that contributed to this result. Occasionally, companies may have dedicated significant time and capital to refining a specific approach, leading them to utilise it for all projects, even if it was not ideally suited for the task (this phenomenon is known as the “sunk cost fallacy”).
It is a widely accepted fact that humans are predisposed towards habits and routines, and these notions underlie all societies, from vast civilisations to small households and enterprises. Rather than adopting a negative perspective, I choose to focus on a more optimistic explanation.
Established traditions and practices are integral components of an organisation’s character. Methodologies and approaches may be regarded as a means of jargon that enables team members to communicate efficiently with one another. Expedient communication channels can aid in ensuring that each person comprehends the other’s perspective.
If we deviate from this outlook, it can become arduous to convey our ideas, effectively persuade others to our point of view, and avoid disrupting established procedures or alienating ourselves from the group.
For businesses, adopting Six Sigma as a process improvement methodology is crucial; however, if management opposes change in a particular aspect, it is imperative to confront the matter.
As a consultant responsible for certifying the efficacy of each department, evaluating the effectiveness of this particular division may prove to be more difficult due to its distinctive approach.
While my associate’s opinion may be accurate, it is plausible that another team may eventually take charge of the project and uncover a crucial section of code within the typically object-oriented software, which could pose a challenge for them to understand its intended function.
Innovative ideas may encounter opposition due to the possible disruption they can cause, especially if the suggested concept clashes with the group’s values or established norms.
Viewed from the Perspective of a Pragmatic Inventor
Consider the complete antithesis: a software developer who adopts a pragmatic approach while building a product, basing their decisions on whether it functions, as opposed to any abstract ideals. I must admit, this would be quite remarkable.
When generating code, particularly for others, it is important to keep in mind the inherent fragility of life. For this reason, it is vital that our work is lucid and unambiguous, with a logical structure to ensure easy comprehension.
Yet again, this is an extreme scenario. Although pragmatists may not intentionally promote disorder, they emphasise practicality over conforming to meticulously outlined laws and conventions.
By adopting hybrid methodologies that amalgamate the rigour of the waterfall model with the swift delivery and user interaction of agile practices, developers are showcasing a pragmatic development approach.
Pragmatism often correlates with experience. Seasoned developers are typically more receptive to innovative concepts and less inclined to rely solely on tried-and-tested methodologies.
Numerous proficient Clojure developers have adopted a functional programming approach after transitioning from an object-oriented development background.
As Khun highlights in his book on scientific revolutions, it is not unusual for a paradigm to become insufficient. At such times, experts must acknowledge that a new approach is necessary to tackle the issue at hand.
Assuming that having a structure acts as a groundwork, it can be surmised that innovation enables us to reach its full potential. On the other hand, conventional approaches cultivate stalemate, which is hardly desirable. Our evolution will be severely curtailed if we continue to rely solely on established methods.
In an increasingly competitive market, this is the least desirable outcome.
Opposing Pairings with Each Other
Carl Gustav Jung, a distinguished psychoanalyst, recognised how disparate energies when balanced can mutually support each other.
It is clear that Pragmatism and Purism are not diametrically opposed but can rather complement each other. Maintaining a consistent approach is crucial for laying a robust foundation but venturing beyond our comfort zones and attempting new challenges is equally important to truly test our abilities.
In my view, fostering an atmosphere that encourages both these qualities is key to building a steadfast, adaptable organisation that retains its fundamental principles.