Showing posts with label AgileByExample. Show all posts
Showing posts with label AgileByExample. Show all posts

Monday, December 16, 2013

What does Agile mean to you?

Not so long time a go, I was on the conference about Agile (AgileByExample - great conference by the way) and one of the sponsors has a win-tablet contest. To win brand new Nexus you had to post on their facebook wall answer for a question:
What does Agile mean to you?
I posted 2 answers but the contest was setup and someone else won my Nexus (just kidding of course). Conference was over but the question was coming back, ringing in my head. What the hell is Agile ? Is it methodology (ugly word), nickname for Scrum, XP or maybe just a buzzword? Other questions emerged: Who could be agile? Developer? Analyst? CEO? Housewife? My confusion was rising… I knew that I had to start from the beginning. What is called Agile by most of the people? For sure one of those:
  • TDD
  • Scrum
  • Kanban

What are the similarities?

TDD gives me flexibility to change my code anytime and I know that it will work as I'm expecting. Scrum (same as Kanban) helps me to deal with changing (or just discovered) customer's requirements. Main difference between agile approach and its opposite: waterfall (or simply planned end-to-end process) is ability to handle change. So simply agile means being adaptive.
Adaptation is very important thing, in fact it's a matter of live or dead.
It is not the strongest of the species that survives, nor the most intelligent that survives. It is the one that is the most adaptable to change. Charls Darvin
So if you don't want to end up like mammoth or dinosaurs, be adaptive! I think that the reason why nowadays start-ups and small innovative companies are so successful. They are adaptive!

You don't want to end up like mammoth

Adaptive: another buzzword?

But not to get from one buzzword to another, what is my definition of being adaptive. I believe that there is a philosophy behind it. I come to terms with fact that I'm not able to plan and control everything (believe me, that it took me a while). Maybe for some of you it's obvious, but I'm programmer. When I write println("hello world"), the text is printed out. Moreover in the real world I am expected to make promises and fulfill them (those are named estimates, plans, sprint backlogs etc). So sometimes I may have illusion that I'm in control. That means that: I may think long enough and come up with solution or plan that will work! And will always work… cause it's smart and made well.

Wanna play?

And here comes Agile…

There is no a such thing as perfect plan, solution or even estimate. Some things are better than the other, but usually you don't know how good they are until you try. The solution is to start with something small, try it out and then change. Repeat that cycle forever (I call it: try-change cycle). There is always temptation to spend more time on planning and invent a perfect solution. But in my opinion it's better to spend that time on trying out. The other problem is that, in big organizations to change something you must have well-documented-bullet-proof plan and blessings from the CEO or managers. That's the reason why such organizations are almost incapable to change. So if you are working in such organization remember: it's much better to change one team (call it pilot project) immediately than spend a year to make a plan that will change organization. If your team will be successful it would be much easier to spread the change. On the other hand, if your first solution will fail you may easily change it (remember, be adaptive!).

She is definitely Agile!

Agile is direction not destination

Bottom line is, be adaptive, prefer try-change cycle over thinking on master plan. Always start with something small, try it out (as it is) and then if it doesn't work well enough, change it. Remember! You are never there, something that may work today but tomorrow world will change. You should never-ever end try-change cycle. That's my definition of agile and anyone could be agile: student, developer, programer, CEO, housewife, literally anybody. I tried to be agile in my personal life and no surprise here, it works!

Are we there yet ?

Beware

Beware you will meet salesmen that will tell you that there is a magic pill called Scrum or whatever. You just buy it or make a certificate and you are agile! Just like that! If you believe them, it means that you are not agile enough. I don't say that making certificates or training doesn't make sense, just remember that those are just tools to become agile, not the agile itself.

Beware agile certificates!

Disclaimer

Everything you just read it's my personal option. I'm not considering myself as agile guru or coach. I just think that I understood what agile means to me and I want to share this though with you. Thanks for reading that, if you disagree or have some more insights about agile just leave a comment or drop an email.

Photos

Photos on CC license taken from Flickr:
Mammoth, SquirrelLandscape, Beware sing

Monday, September 19, 2011

Agile By Example - relacja

W dniach 15-16.09.2011 dzięki mojemu pracodawcy (firmie 7N) miałem okazję uczestniczyć w konferencji AgileByExample. Konferencja odbyła się w Warszawie w Centralnym Basenie Artystycznym. Samo miejsce było dość egzotyczne, gdyż z reguły konferencje na których bywałem odbywały się na uczelniach czy w kinach, ale bez wątpienia była to pierwsza konferencja w basenie. Sam lokal jest dość ciekawy, a dzięki samemu basenowi i faktowi iż kolejne rzędy były położone coraz wyżej widoczność była naprawdę dobra. W CBA nad nagłośnieniem czuwała lokalna ekipa i była to jedna z najlepiej nagłośnionych konferencji na jakiej byłem.



Konferencja ABE trwała 2 dni i podczas niej mogliśmy posłuchać wielu ciekawych prezentacji ułożonych w jedną ścieżkę. Ciekawostką było wprowadzenie sesji Q&A po blokach 2-3 prezentacji, gdzie na każde pytanie mógł odpowiedzieć więcej niż jeden prelegent. Jak dla mnie to rozwiązanie w pełni się sprawdziło, choć niektórzy z prelegentów próbowali wyłamać się z formuły. Prezentacje które wbudziły moje największe zainteresowanie to:
  • Jutta Eckstein - Applying Agile Development Practices in Distributed Teams 
  • Inbar Oren - How to Lose a Team in 10 Days
  • Marcin Czenko - Don't Start with Kanban
  • Alexandru Bolboaca - TDD - Let's Have a Real Conversation
Fajnie było posłuchać wrażeń weteranów i porównać swoje wyobrażenia o Agile, SCRUM i TDD z doświadczeniami ludzi, którzy wdrożyli te metodyki w wielu firmach i projektach. Jak widać ciężko znaleźć organizację, gdzie wszystko było by zaimplementowane perfekcyjnie. Cieszy fakt, że większość zaleceń i praktyk Agile da się wprowadzić w życie nawet w dużych projektach. Kluczem do wszystkiego okazuje się jak zwykle dojrzałość organizacji i kadry kierowniczej (czego dowodził Boris Gloger).

Bałem się, że na ABE spotkam przede wszystkim fanatyków próbujących sprzedać Agile jako lek na całe zło tego świata i miło się zaskoczyłem, gdyż takich ludzi było bardzo niewielu. Zdecydowana większość uczestników to doświadczeni praktycy, a zarazem pragmatycy, którzy w ruchu Agile widzą przede wszystkim wartość jaką wnosi on do organizacji ich pracy oraz jego wpływ na jakość produktów. Jednocześnie wszyscy żyją w tej samej rzeczywistości pełnej tych okropnych klientów i ich dziwnych wymagań :-)

To co mi się odrobinę nie podobało to prezentacje w których robienie "show" odgrywało większą rolę od samej prezentacji, ale na szczęście było ich dość niewiele. Prezentacje trwały ok. 30 minut co sprawiało, że trudno było znudzić się którąkolwiek z prezentacji.
Tak więc i organizatorom i prelegentom mogę wystawić ocenę bardzo dobrą jako uczestnik. Polecam i zapraszam za rok, może się tam spotkamy ?