Ahmad Nassri

142 points
User profile image.
Toronto

Ahmad is an advocate of all things open source and a developer tooling enthusiast. Currently leading the talented engineering team at Mashape in building world-class API tools and Marketplace. In his spare time, Ahmad blogs on Technology & Leadership, mentors early stage startups, and builds open source projects used by thousands of developers world wide.

Authored Comments

One quick note, this comment thread is amazing, and I want to continue this discussion going, as I want to learn from all of you more on what works and what doesn't.

for a more longer form discussion, I invite you to discuss with the bigger community around the Open Development Method on Github (long form & public) & Gitter (public & realtime): https://opendevelopmentmethod.org/#resources

Hey guys, thank you all for the responses, questions, and even disagreements! :)

It's great to see a community that is passionate about the quality of work want to improve it. this is important to remember, as there is no such thing as a perfect system. if you disagree, then you've already limited yourself to any possibility of improving the system of your preference.

with that said, there is an important point to clarify here, and I'm quite surprised the Scrum / Agile experts and consultants have not pointed this out yet:

Agile and Scrum are related but distinct. Agile describes a set of guiding principles for building software through iterative development. Agile principles are best described in the Agile Manifesto and typically referenced as the Agile Methodology.

Scrum is a specific set of rules to follow specifically for Project Management, that happens to follow the Agile Manifesto.

Agile is a Methodology, Scrum is a process.

I happen to agree with the Agile Methodology Manifesto (http://www.agilemanifesto.org/) and I even agree with many, but not all of the *Principles* behind the Manifesto (another distinction to keep in mind)

Scrum on the other hands, while rooted in Agile methodology seems to focus more on the process, the tasks, the terminology and team member roles, and thus -in my opinion- looses legitimacy.

beyond Agile/Scrum, and more to the point, the world of software development has changed, many times over, since the inception of the Agile Methodology and Scrum, not only is the technology it self more diverse and inter-connected than ever before, the way which people work has also evolved, including when, where and how.

A scenario of the days of Scrum, where the definition of a product meant a single piece of working software operating on a single environment is no longer accurate, nor acceptable.

We live in a world where Products need to span Microservices, Mobile Platforms, and Multi-Screen and No-Screen devices. the skills and tools of Software Developers, Product Designers, and Architects no longer fit this multi-dimensional world, and there for teams get bigger, more diverse, and split responsibilities to a place where Scrum comes out short.

My message is simple, lets look outside the box, take a lesson from the Open Source world, which has thrived without constraints of processes, rules, and Project Management methods and see what can be applied to our day-to-day process (Scrum or otherwise) and make improvements, and adjustments so that we can deliver better products.

The reason I stated a "Methodology" as oppose to a prescribed "Process" is to allow the community to discuss, critique and improve on the Principles and Tenets provided so the next logical step evolves into a discussion about what Process to apply, or how to improve / change our existing processes and create the next version.

It seems rather self-contradictory of the Scrum community to refuse to discuss Scrum 2.0, after all the Agile Manifesto is all about continuous delivery, feedback and improvements. why not apply the same principles to Scrum itself?