summaryrefslogtreecommitdiff
path: root/_posts/2012-06-11-about-agile.markdown
blob: 731b96d0c776aac83a9ea0a8e50cf1bbae4cb3ce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
---
layout: post
title: About Agile
tags: [ development ]
published: true
---

I've been invited to give a speedtalk at [AgilePT](http://2012.agilept.org)
this year. I'll be covering the adoption of the Agile principles in Rails in
June 23rd. I'll be around for those days so if you wanna talk to me there,
[shoot me an email](mailto:jose@josemota.net?subject=AgilePT)!

The thing for trying to smite someone on wasted opinion just for the kicks can
be fragile sometimes, especially when it can be so controversial. Arguing about
wether Agile is a good philosophy or not can't be benefitial. I embrace Agile
for its manifesto and one's professionalism shouldn't be intimately associated
with Agile practices.

Trying to smite Agile down by showcasing bad practitioners is poor lack of
judgement. People have been successful with the «waterfall» model for a long
time. But its time is over based on the sole holistic fact that people in
general are allowed to change their minds so easily and frivolously. The human
brain processes information every square root of the time. What could have been
learned in 150 years takes only 12 years the next time; and that was more than
150 years ago. We are allowed to acknowledge and provoke change, That's called
_human nature_.

Agile follows nature
--------------------

As of 2012, people want to be engaged, fast. Software deployment and
maintenance is of the essence. As a software developer I can't afford to write
a one year contract without realizing I'll be filled with requirement changes.
There's no point in designing an app in a certain way for an entire year.
There's just too much uncertainty to handle, both for me and the client. That's
not being unprofessional, rather it's being cautious and respectful.

I believe in the present, it's filled with people willing to collaborate and be
engaged with the developers. I can't grab the uncertain future and I will
certainly regret the day I set my client up with a predictability that won't
exist. I have the responsability of being honest and professional. Clients
ought to be considered partners rather than money throwing trolls; you will
gain their trust and respect.

What's with Agile?
------------------

* «Individuals and interactions» — I read _understanding, respect and honesty_.
* «Customer collaboration» — Stay with your client. Let him follow the process.
* «Working software» — I read _keep it easy, don't build what you don't have_.
* «Response to change» — Be professional and predict change keypoints.

I realize it's rather difficult to keep it easy and predict change keypoints at
the same time. But there are two different things such as _simple_ and _easy_.
Learning your craft as a software developer is crucial to being able to judge
your design decisions for a certain project. It's my turn to learn how to
develop software well.

I believe in the manifesto and the way it empowers people to reach partners and
work together. I'd rather be told I'm not doing a good job than telling me that
the Agile methodology is evil; it does not apply more than development than it
applies to management. **Upright responsability alone is key to success, Agile
itself supports today's reality of constant change.**