Be agile

March 27, 2015, 8:24 a.m.

Agile Manifesto:

> Our highest priority is to satisfy the customer
> through early and continuous delivery
> of valuable software.

Insufficient demonstration and daily stable usage prevents feedback

Preventing feedback prevents iteration

Agile Manifesto:

> Welcome changing requirements, even late in
> development. Agile processes harness change for
> the customer's competitive advantage.

No feature harnessing provides non sellable non-features

Agile Manifesto:

> Deliver working software frequently, from a
> couple of weeks to a couple of months, with a
> preference to the shorter timescale.

Working software is available, stable, accessible, feature-demonstrative

Agile Manifesto:

> Business people and developers must work
> together daily throughout the project.

This actually demonstrates its value give it a try

Agile Manifesto:

> Build projects around motivated individuals.
> Give them the environment and support they need,
> and trust them to get the job done.
  • Simple, fast and proven software brings motivation.
  • Demonstration of quality software brins pride.
  • Feedback gives next iteration.

Agile Manifesto:

> The most efficient and effective method of
> conveying information to and within a development
> team is face-to-face conversation.

Stop mail. Whatever of talking, calling or chatting you choose, speed is the key.

Don't break(litt.) communication by making it asynchronous

Quote[DEF]: Communication is the path [in 4 dimensions, space plus time] that a piece of information walks from its establishment to its target

Agile Manifesto:

> Working software is the primary measure of progress.

And should be considered the only achievement.

And should be backed by automatized validation of presumed features.

Agile Manifesto:

> Agile processes promote sustainable development.
> The sponsors, developers, and users should be able
> to maintain a constant pace indefinitely.

Computer science: Combinatorial Explosion, see CombinatorialExplosion states that

  • when to prove a code you need n test
  • by adding one param/config you need n * [count of possible values for the param]
  • so the number of needed tests to prove a program is exponential

As a consequence manual testing is not an option

As a consequence sustainable development comes at the price of automatic testing

"You DO want to produce software used DAILY by MORE people than your team"

Agile Manifesto:

> Continuous attention to technical excellence
> and good design enhances agility.

... Real men grew up with the MIT Coding Standards, see some MITCodingStandards.

From a coder point of view, respect is a synonym for knowledge, see EgoLessProgrammer

Agile Manifesto:

> Simplicity--the art of maximizing the amount
> of work not done--is essential.

You bet

Agile Manifesto:

> The best architectures, requirements, and designs
> emerge from self-organizing teams.

[fr] CLE = Capacite d'action Liberte d'action Economie de moyens [en] MarechalFoch principles of war

Agile Manifesto:

> At regular intervals, the team reflects on how
> to become more effective, then tunes and adjusts
> its behavior accordingly.

Empty the trashbin, YAGNI

This blog as been written in 20 mins on a cell phone, as an agile exercise/performance [while walking]