The RRP Software Development Book and Ebook

The book is still in the process of being written.

You can already put the book on your wishlist and you'll be notified as soon as it is ready to pre-order.

READ MORE

Managing Software Development with RRP
Helping you make better software one Waaaaaah! at a time!

WHAT IS YOUR NEXT STEP WHEN YOU DEVELOP SOFTWARE?
DO YOU:
  • Look for a complete test coverage?
  • Extract small methods out of a long method?
  • Apply divide and conquer to dominate complexity?
  • Separate domain objects from presentation and persistent objects?
  • Apply substitution as your main design principle?
  • Start a refactoring to reach a predetermined design pattern?
  • Maximise your editor to be able to fit as much code as possible?
  • Apply copy and paste to reuse code?
  • Apply IFs to handle different scenarios?
  • Inspect and adapt to improve your code and your process?
  • Add a new feature by always adding new lines of code?

Not all those decisions are ineffective, but they are all driven by Control.

TDD, refactoring, retrospectives, etc - will paradoxically start producing waste, increasing the complexity of our system, making it rigid, capricious, or even paranoid.

The main problem of the software industry is that it is dominated by an unconscious and inappropriate use of control.

CHOOSE YOUR NEXT STEP

Waaaaaah! Our software is crying. It needs something and we don’t know what to do...

We do our best to take care of it by applying sound principles and advanced practices. We are committed to continually improving our process. Nonetheless, our software keeps crying. You might have experienced something like this when you’re looking after a baby and she starts crying: you rock the baby, you feed her, you follow all the good advice your doctor has given you; still, the baby’s cries get louder. And despite the fact that we’re trying our best to grow our software, we end up staring at the blinking cursor, feeling we have to do “something” but unsure what that could be.

Question:
“Why does this happen? Aren’t the principles and practices we use in software development good enough to grow a healthy software system?”

Answer:
No, they are not enough. It is the way our mind “drives” values, principles and practices that can lead either to success, or failure and delusion.

At every Waaaaaah! our mind can only perform one of two teeny-tiny adaptive responses:

Inward Response
or
Exerting Control

an effort to adapt the "other" in terms of what we already know

looks for structure, completeness, containers, classifications, categories, abstractions, substitution, perfection, separation, splitting, breaking. If necessary it favours exerting more force: accelerating.

applies force to protect

sees uncertainty as a risk. To protect us from risk, Control adapts towards known structures and patterns.

Outward Response
or
Seeking for Relationship

an effort to adapt our current knowledge in terms of the "other"

looks for concreteness, exchange, exploration, dialogue, new planes and channels of communication, new languages.

values trust and favours exchange with "the other"

sees uncertainty as an opportunity. Through dialogue it favours the "uncertainty of the answer" and allows "the other" to freely express itself.

IS YOUR SYSTEM FLEXIBLE AND WILLING TO CHANGE, OR IS IT RIGID, CAPRICIOUS, PARANOID?

Your next decision shapes your software's behaviour.

At every Waaaaaah! of our system, we let Control or Relationship drive the adaptive process and determine, in their own way, the meaning of concepts like simplicity, duplication, waste, and the way we give and receive feedback.

WHAT DOES RRP PROPOSE?

Relationship knows how to deal with complexity and change. Control knows how to deal with simple and stable, often urgent problems which require hard work to reach a solution.

1.

Learn how to use both control and relationship and to apply them in an appropriate way when you develop software.

2.

Develop a relationship with your software so that it will help you develop itself.

Awareness is the key to productivity in software development.

HOW TO GET INVOLVED

Are you intrigued? Do you want to know more about RRP for Software Development?

Interested in attending Francesco's presentation at Codemotion Milan?

Want to attend a hands-on workshop with Francesco?

Want to ask Francesco a question? Or vote for questions already posted?

Interested in the new book?

Want Francesco to present RRP for Software Development at your event?

Do you want Francesco to give a Workshop at your company?

Our Network