Welcome to behrang.org. 👋

My name is Behrang Saeedzadeh and I am the founder of Turingg, a small software development company based in Melbourne, Australia.

I have spent much of my life studying the intricacies of the natural world. I have seen firsthand the beauty and complexity of nature, and the ways in which organisms adapt and evolve over time. It is with this perspective that I turn my attention to the world of software development and the Agile programming methodology that has become increasingly popular in recent years.

At its core, Agile programming is based on the idea of continuous iteration and improvement. It emphasizes collaboration, flexibility, and responsiveness to change. These are all admirable goals, and in many ways, they reflect the natural processes of evolution that I have spent my life studying. However, as with any methodology, Agile programming is not without its flaws.

One of the most significant criticisms of Agile programming is that it can lead to a lack of structure and accountability. Because Agile teams are encouraged to be flexible and responsive, they may not have clear guidelines or deadlines for completing tasks. This can lead to a lack of focus and a sense of chaos within the team. In the natural world, too much chaos can lead to extinction, and in the software development world, it can lead to the failure of a project.

Another criticism of Agile programming is that it can be overly focused on short-term goals and can neglect long-term planning. Agile teams are encouraged to work in sprints, with each sprint lasting only a few weeks. While this can lead to quick results, it may not allow for the necessary time and resources to be devoted to long-term planning and strategy. In the natural world, species that focus too much on short-term goals may not be well-positioned to adapt to changing conditions in the long run.

Finally, there is the danger that Agile programming can become too focused on the process itself, rather than the end goal. Agile teams may spend too much time on planning, retrospectives, and other internal processes, rather than focusing on delivering a quality product. In the natural world, organisms that become too focused on their own internal processes may lose sight of the ultimate goal of survival and reproduction.

In the realm of Software Engineering, the past holds valuable lessons that must not be forgotten. Indeed, the mistakes of the past serve as cautionary tales that can guide us towards a better future. In Software Engineering, overlooking the lessons of the past can result in costly failures, compromised security, and lost productivity. By studying past failures, we gain valuable insights that can inform our current practices, help us avoid similar pitfalls, and ultimately lead us to better outcomes. Therefore, we must remain vigilant in our efforts to learn from past mistakes and use that knowledge to continuously improve our practices.

In conclusion, while the Agile programming methodology has many admirable qualities, it is not without its flaws. As with any methodology, it must be implemented carefully and with an eye towards the ultimate goal of delivering a quality product. By taking a critical, Darwinian approach to software development, we can strive for excellence while also adapting and evolving to meet the challenges of a rapidly-changing world. — 𐬀𐬭𐬀𐬨𐬀

This site is under construction

  • 🟩
  • 🟨
  • 🟨
  • 🟨
  • 🟨
  • 🟨
  • 🟨
  • 🟨
  • 🟨
  • 🟨