Want to get angry comments on Youtube? Try saying that Agile is not a Methodology.
----------- Posting videos on YouTube is a great way to
get destructive criticism.
Not a real thing? Ok so what do you call the opposite of constructive criticism. See? Destructive
criticism it is.
Now I have gotten a lot of great comments on these videos with questions, suggestions
for improvements, etc. but it is usually the negative ones that really stick out.
"Listening to you talk makes me want to kill myself."
I hope that isn't a common occurrence, I speak at a lot of conferences and so far there have
been no fatalities, but if you feel that way, please unsubscribe right now, and ... call
a suicide hotline or something.
ts a stupid terminology...
No that is what they said, see? "tis a stupid terminology" Yes...like tis but a scratch.
I don't know why. Maybe too much monty python or something.
ts a stupid terminology that means nothing !!!
It is a retarded concept with no practical application.
it is like asking what is air !﻿
Hm. So understanding Agile is just as stupid as those pesky impractical scientists who
figured out what is in the air we need to breath to say alive and not die?
agile - is another I...I'm not going to read that word outloud... another BLANK "methodology"
to suck money out of you.
Then why are you spending your time watching Agile videos I posted for people to view for
FREE on the Internet? And more importantly why do you think that Agile is a methodology?
This actually brings me to the point I get the most disagreement about on my videos.
When I say that Agile is not a methodology, people get all kinds of bent out of shape.
Dude, it is a methodology. The "set of principles" thing just wraps all the Agile into a spiritual
cult atmosphere...
Seriously? When someone says, "It is more efficient to have the people who create software
working directly with the people who will use it" it makes you think they are the next
Jim Jones or David Koresh? I'm not really sure how to respond to that.
But I do know how to respond to the idea that Agile is a methodology.
A methodology is a prescribed way of doing a particular type of work. It is a list of
"methods" for doing something. A methodology tells you how to do your work as a series
of steps.
For example, a methodology for learning to play the piano would include a series of exercises
and songs that the student will study and master as part of that particular methodology
of piano study.
If you want to be firewalker there are specific methods for doing that. If you want to be
a snake charmer, there are specific methods for doing that.
Agile isn't anything like those things. Agile is a set of values and principles that teams
can use to *decide* what methods will best bring about success for their particular situation.
Agile says that the best way to communicate is face-to-face, but it doesn't prescribe
a method for how your team should do that. Maybe one team decides to put everyone in
the same room. Maybe another gets everyone together for face-to-face meetings whenever
there is something to discuss. Maybe another team decides everyone should pull out a picture
of the person they are talking to whenever they have a phone conversation and stare at
it for the duration of the phone call.
The way that teams follow the principle of face-to-face communication may vary widely
even thought each team is trying to follow the same principle. Their solution should
be what is best for their particular team.
"Hello Joe. Good to see you. You are looking well today. Looks like you've gotten some
sun."
Imagine you go to snake charming school and they say that to be a master snake charmer
you need to follow the snake charmer values and the most important value is that you value
not dying from snake venom. Would you argue about their methodology? Of course not. They
haven't taught you a methodology. They have only given you a value system whereby you
should be able to discern between good and bad methodologies in doing snake charming
... things.
So if someone presents a methodology that says, reach toward a Cobra and just ignore
the pain from being bitten, your highly honed snake charmer value system should quickly
recognize that it conflicts with the snake charmer value ... of not dying.
Calling Agile a methodology is like seeing a sign at your local library that says, "We
value reading" and "Reading to kids is good for them" then talking about the library's
"methodology" for reading. What methodology? The library just said that reading is valuable.
You can agree or disagree with the statement of what the library feels is valuable, but
you can't agree or disagree with their methodology of reading because there is no methodology
with which to disagree.
Maybe a better example would be having people up in arms about the library's "methodology"
because they heard about someone who tried to teach a 5 year old to read using an original
Latin copy of Newton's book on the laws of motion. The library didn't say to try to teach
your 5 year old to read in Latin! They just said that reading was important. Now maybe
you do or don't agree that reading is important, but it is ridiculous to say that you disagree
with the library's statement about the value of reading just because you can find someone
somewhere following a methodology you disagree with who just so happens to also say they
value reading.
"Well not calling it a methodology is just your linguistical preference"
No. It's not unless you consider using words correctly to be a linguistical preference.
If someone gives a bank teller a note that says, "This is a robbery. Give me all your
money or else!" they aren't going to be able to argue in court that the teller's linguisitcal
preferences made them think that someone was trying to threaten them and steal money.
Speaking of bank robberies, in 2016 a Mr. Ripple robbed a bank taking $2924. He then
sat in the lobby waiting for police to arrest him because he said he had decided he'd rather
go to prison than be at home with his wife. Instead of prison he was sentenced to home
confinement...at home...with his wife. I'm not making this up.
If you go running into a police station and claim you have been robbed by a man on the
street. The court system isn't going to consider it a mere difference of liguistical preference
when the police assume that you mean you were actually robbed. Even if *you* like to use
"robbery" to describe someone looking in your general direction from across the street.
Society would fall apart if we put up with people randomly using language like that and
Agile falls apart when people just use random words to describe what it is.
It may not be immediately apparent why this is so important but when people call Agile
a methodology, they are talking about something fundamentally different than the Agile Values
and Principles. Now what they are talking about may be good, wonderful and useful. It
might even let you charm snakes and walk on fire, but it is something different different
than Agile.
Of course they also may just be talking nonsense.
If someone tells you that bananas are the best motorcycle you can buy from your troubadour
dentist, you should be highly suspect that don't know what those words mean.
"I hold many Agile diplomas and I will never use that methodology."
Alexa, what is an Agile Diploma?
Agile diploma? So a diploma that is on a flexible sheepskin instead of stone tablets?
I have no Agile diplomas. These diplomas are mounted behind glass and they are inflexible
therefore no longer as agile and flexible as they were when I received them.
The reason it is so important not to call Agile a methodology is because the terms are
innately contradictory. To say something is Agile is to say that it adapts well to change,
it is flexible, able to move and adapt quickly and easily as needed. A methodology on the
other hand is a set of procedures and methods to do something. This implies a lack of flexibility.
Having a methodology isn't bad. When you get on an airplane, you want your pilot to go
through the preflight checklist methodically. If you have a surgery, you want it to be done
by people who are very methodical. None of this opening someone up willy nilly and then
discovering that they forgot to give you anesthesia.
If you want to be a firewalker, there is a methodology that you must follow and if you
don't follow the methodology you get burned.
In 2016 40 people were burned at a firewalking exercise in downtown Dallas. A popular motivational
speaker event included the stunt saying it was part of a self improvement thingy...I
actually don't know why they were doing it.
Maybe I'm just not the target market, but walking on fire isn't a skill that I see as
being critical enough to invest in for my long term success in life.
Anyway the correct method for firewalking evidently does NOT include lingering on the
coals to take selfies of yourself or running in a way that pushes your feet down into the
hot part of the fire.
Maybe that is why it is't called firewalking instead of firerunning or fire selfying.
40 people did not follow the correct methodology and 40 people got burned.
And a quick disclaimer, this mention of firewalking is in no way meant to educate you on how to
successfully walk on burning hot coals. If you want to try something crazy like that,
don't try to use anything I've said in this video as a reference on how to do it successfully.
You go find a motivational seminar aimed at people who all see a lack of firewalking skills
as the thing that is holding them back from being truly successful in life. I'm sure they'd
be happy to show you how.
Just Remember: No running and no selfies. Bad methodologies equal burned feet and emergency
room visits.
So what do methodologies have to do with Agile? Agile gives you the values and principles
to make good decisions. A good team is going to use this decision making process to choose
methodologies that will help them follow the values and principles. But you can't confuse
the values and principles with the methodologies and claim to be Agile.
Why?
Because the methods will necessarily change. That is the definition of Agile--being able
to respond to change. If you assume that your methods are what defines you as Agile, you
are missing the entire point of Agile. Agile values and principles are fixed and general
enough that you can use all kinds of methods to achieve the Agile definition of progress.
Scrum, Kanban, Extreme Programming, SAFe, etc all have great methods that can help you
follow the Agile values and principles. TDD, BDD, Continuous Integration, DevOps, once
again those things all have a bunch of great methods. But if you are really following Agile,
you should always be ready to adapt modify and change your methods to improve your process
and to respond to changed situations.
The specific methods you happen to start with are less important than *why* you are using
them. If you choose a method because you think it will help you follow Agile values and principles
and it turns out it doesn't, the fact you are Agile should mean you can easily try something
different until you find what works best for your team in the particular situation you
find yourself in today. If you choose a particular method because you feel that that method is
what it means to be Agile, you've already failed.