Studies
back to Dave Hoover

One of the characteristics of a postmodern computer language is that it puts the focus not so much onto the problem to be solved, but rather onto the person trying to solve the problem. --Perl, the first postmodern computer language, Larry Wall

I think that the cutting edge of free software will belong to people who start from individual vision and brilliance, then amplify it through the effective construction of voluntary communities of interest. --The Cathedral and the Bazaar, Eric Raymond

To the extent that the protocols of the World Wide Web remain "unowned" by a single company, the Web will remain a level playing field for companies large and small. Thus, "ownership" of the protocol must be prevented, and the existence of a robust reference implementation of the protocol, available absolutely for free to all companies, is a tremendously good thing. --Why Apache is Free

It's never the size of the step that a person takes that counts, but its direction. --Narrative Means to Therapeutic Ends, Michael White & David Epston

Be a dreamer. If you don't know how to dream, you're dead. --Jim Valvano

Know what you see, don't see what you know. --Addie Fuhriman

Husbands, love your wives, just as Christ loved the church and gave himself up for her. --Ephesians 5:25

We can't take any credit for our talents. It's how we use them that counts. --A Wrinkle in Time, Madeleine L'Engle

"The third thing that I learned was that you, my Lord, never regarded me as I actually was, lame and weak and crooked and cowardly. You saw me as I would be when you had done what you promised and had brought me to the High Places, when it could be truly said, 'There is none that walks with such a queenly ease, or with such grace, as she.' You always treated me with the same love and graciousness as though I were a queen already and not wretched little Much-Afraid." Then she looked up into his face and for a little time could say no more, but at last she added, "My Lord, I cannot tell you how greatly I want to regard others in the same way." --Hinds' Feet on High Places, Hannah Hurnard

I know why God left this aching void - for himself to fill. --Practicing His Presence, Frank Laubach

What a stupid world this would be if one never did anything different for fear of criticism! --Practicing His Presence, Frank Laubach

True greatness is measured by how much freedom you give to others, not by how much you can coerce others to do what you want. I remember praying a prayer when I was very young...``God is great. God is good. Let us thank him for our food. Amen.'' Well, I'm here to say amen to that. God's greatness and goodness are measured by the fact that he gives us choices. He doesn't require us to thank him for our food. (In case you hadn't noticed.) God is not a Modernist. He doesn't view us as nails. God expects us to behave like carpenters. Indeed, he gave us a carpenter as an example. --Perl, the first postmodern computer language, Larry Wall

How can there be too many children? That's like saying there's too many flowers. --Mother Theresa

I think God put me here for a reason. I remember walking down the halls in my high school and getting this tremendous sense of destiny. Like I was supposed to do something really great. It was a really weird feeling. I feel like if I have an accurate view of myself, it frees me to be both humble and a megalomaniac at the same time. --FEEDmag's hacker interview series, Larry Wall

As God's chosen, blessed sons and daughters, we are expected to attempt something large enough that failure is guaranteed...unless God steps in...You do not become great; you become dependent on the strong hand of God. --The Prayer of Jabez, Bruce Wilkinson

The things you own end up owning you. --Fight Club, Tyler Durden

He is no fool who gives what he cannot keep, to gain what he cannot lose. --Jim Elliot

Instead of spreading hate, ignorance and a narrow-minded social agenda why doesn't the christian right go out and spread mercy, compassion, and selflessness? --Moby

If you can't tolerate being a public fool, you're not going to succeed in a role where all your actions are studied in detail... --Becoming a Technical Leader, Gerald Weinberg

You'll never accomplish anything if you care who gets the credit. --The Secrets of Consulting, Gerald Weinberg

Being able to see what's missing in ourselves is the only possible way to keep us from looking more ridiculous than we really are. --The Secrets of Consulting, Gerald Weinberg

When you're not terribly smart, it helps to be a good listener. --The Secrets of Consulting, Gerald Weinberg

I go to great lengths to keep my life hassle-free. --The Secrets of Consulting, Gerald Weinberg

The chances of solving a problem decline the closer you get to finding out who was the cause of the problem. --The Secrets of Consulting, Gerald Weinberg

People who can solve problems do lead better lives. But people who can ignore problems, when they choose to, live the best lives. If you can't do both, stay out of consulting. --The Secrets of Consulting, Gerald Weinberg

Each of us, after all, is the direct descendant of innumerable unbroken lines of survivors. --The Secrets of Consulting, Gerald Weinberg

The problem isn't change, per se, because change is going to happen; the problem, rather, is the inability to cope with change when it comes. --Extreme Programming Explained, Kent Beck

Programming is the Great Game. It consumes you, body and soul. When you're caught up in it, nothing else matters. --How Software Companies Die, Orson Scott Card

As soon as a person stops practicing, her mastery fades. Hence, beginners are apprenticed to a craft, because people cannot afford to take time away from their craft to teach others. --Software Craftsmanship, Pete McBreen

People master a craft because they care enough about the craft to make the effort. --Software Craftsmanship, Pete McBreen

Mastery has never been a case of finding the "one best way," but rather a journey of discovery in which new insights are possible, even in the most mundane of tasks. --Software Craftsmanship, Pete McBreen

Many microscopic changes can produce a very large effect in unison. --Agile Software Development, Alistair Cockburn

I long to accomplish a great and noble task, but it is my chief duty to accomplish humble tasks as though they were great and noble. The world is moved along not only by the mighty shoves of its heroes, but by the aggregate of the tiny pushes of each honest worker. --Helen Keller

The phenomenon of communication does not depend on what is transmitted, but on what happens to the person who receives it. --Agile Software Development, Alistair Cockburn

...Language marks the co-ordinates of my life in society and fills that life with meaningful objects. --The Social Construction of Reality, Peter Berger and Thomas Luckman

...As long as my friend Henry is available in the plentitude of expressivity of the face-to-face situation, he will constantly break through my type of anonymous Englishman and manifest himself as a unique and therefore atypical individual. --The Social Construction of Reality, Peter Berger and Thomas Luckman

Language provides me with a ready-made possibility for the ongoing objectification of my unfolding experience. --The Social Construction of Reality, Peter Berger and Thomas Luckman

My knowledge of everyday life has the quality of an instrument that cuts a path through a forest and, as it does so, projects a narrow cone of light on what lies just ahead and immediately around; on all sides of the path there continues to be darkness. --The Social Construction of Reality, Peter Berger and Thomas Luckman

Since...knowledge is socially objectivated as knowledge, that is, as a body of generally valid truths about reality, any radical deviance from the institutional order appears as a departure from reality. --The Social Construction of Reality, Peter Berger and Thomas Luckman

Reification implies that man is capable of forgetting his own authorship of the human world, and further, that the dialectic between man, the producer, and his products is lost to conciousness. ...As soon as the objective social world is established, the possibility of reification is never far away. The objectivity of the social world means that it confronts man as something outside himself. The decisive question is whether he still retains the awareness that, however objectivated, the social world was made by men -- and, therefore, can be remade by them. --The Social Construction of Reality, Peter Berger and Thomas Luckman

...A little dryness now and again forced the plant to extend its roots further down into the ground in search of moisture. --The Secrets of Consulting, Gerald Weinberg

Do not be anxious about anything, but in everything, by prayer and petition, with thanksgiving, present your requests to God. --Philippians 4:6

All we need to know is the first step we need to take to head toward where we think we want to go at the moment. --Growing Software: Debunking the Myth of Prediction and Control, p. 108, Roy Miller

But woe to you who are rich, for you have already received your comfort. Woe to you who are well fed, for you will go hungry. Woe to you who laugh, for you will mourn and weep. Woe to you when all men speak well of you, for that is how their fathers treated the false prophets. --Luke 6:24-26

Blessed are you who are poor, for yours is the kingdom of God. Blessed are you who hunger now, for you will be satisfied. Blessed are you who weep now, for you will laugh. Blessed are you when men hate you, when they exclude you and insult you and reject your name as evil, because of the Son of Man. --Luke 6:20-22

Jesus did many other things as well. If every one of them were written down, I suppose that even the whole world would not have room for the books that would be written. --John 21:25

The good man brings good things out of the good stored up in his heart, and the evil man brings evil things out of the evil stored up in his heart. For out of the overflow of his heart his mouth speaks. --Luke 6:45

Watch out! Be on your guard against all kinds of greed; a man's life does not consist in the abundance of his possessions. --Luke 12:15

From this time many of his disciples turned back and no longer followed him. "You do not want to leave too, do you?" Jesus asked the Twelve. Simon Peter answered him, "Lord, to whom shall we go? You have the words of eternal life. We believe and know that you are the Holy One of God." --John 6:66-69

Being intelligent is not having some magic formula which one can apply to every problem. It is, rather, having a number of "formulas" and not being so much in love with one that it cannot be dropped for another. --The Psychology of Computer Programming, Gerald Weinberg

Anyone who has ever seen a programmer at work...knows that programming itself, if the programmer is given the chance to do it his way, is the biggest motivation in programming. --The Psychology of Computer Programming, Gerald Weinberg

Good designers don't put handles on unlatched doors that can only be pushed. Instead, they put a flat plate where the handle would otherwise be. Just about the only thing you can do with a plate is to push on it, so the physical structure of the plate helps you operate the door correctly. --Object Oriented Perl, Damien Conway

Well-designed objects are easy to interpret and understand. They contain visible clues to their operation. --The Design of Everyday Things, Donald Norman

Once a satisfactory product has been achieved, further change may be counterproductive, especially if the product is successful. You have to know when to stop. --The Design of Everyday Things, Donald Norman

Designers are not typical users. They become so expert in using the object they have designed that they cannot believe that anyone else might have problems; only interaction and testing with actual users throughout the design process can forestall that. --The Design of Everyday Things, Donald Norman

When simple things need instruction, it is a certain sign of poor design. --The Design of Everyday Things, Donald Norman

Innovation is concerned with redefining a task or the way a task is done. --Becoming a Technical Leader, Gerald Weinberg

Good programmers are a little bit lazy: they sit back and wait for an insight rather than rushing forward with their first idea. That must, of course, be balanced with the initiative to code at the proper time. The real skill, though, is knowing the proper time. That judgment comes only with the experience of solving problems and reflecting on their solutions. --Programming Pearls, Jon Bentley

A different algorithm results from a different view of the problem... --Programming Pearls, Jon Bentley

A designer knows he has arrived at perfection not when there is no longer anything to add, but when there is no longer anything to take away. --Antoine de Saint-Exupéry

Program to an interface, not an implementation. --Design Patterns, Gamma et al

The choice of programming language is important because it influences one's point of view. --Design Patterns, Gamma et al

As systems evolve to depend more on object composition than class inheritance...emphasis shifts away from hard-coding a fixed set of behaviors toward defining a smaller set of fundamental behaviors that can be composed into any number of more complex ones. --Design Patterns, Gamma et al

A class is more reusable when you minimize the assumptions other classes must make to use it. --Design Patterns, Gamma et al

Software development is always an evolving dialog between the possible and the desirable. --Extreme Programming Explained, Kent Beck

We should assume that the simplest design we can imagine possibly working actually will work. This will give us time to do a thorough job in case the simplest design doesn't work. In the meantime, we won't have to carry along the cost of extra complexity. --Extreme Programming Explained, Kent Beck

The purpose of the design of the system is, first, to communicate the intent of the programmers and, second, to provide a place for the logic of the system to live. --Extreme Programming Explained, Kent Beck

If the cost of today's decision is high, and the probability of its being right is low, and the probability of knowing a better way tomorrow is high, and the cost of putting in the design tomorrow is low, then we can conclude that we should never make a design decision today if we don't need it today. --Extreme Programming Explained, Kent Beck

Instead of being impressed when someone (like you, for instance) gets something complicated to work, you have to learn to be dissatisfied with complexity, not to rest until you can't imagine anything simpler working. --Extreme Programming Explained, Kent Beck

We can drive ourselves crazy with expectation. But by preparing for every eventuality we can think of, we leave ourselves vulnerable to the eventualities we can't imagine.

There is another way. The team can be perfectly prepared at any moment to go in whatever direction the business or the system demands. By giving up explicit preparation for change, paradoxically they become entirely prepared for any change. They expect nothing. They can no longer be surprised. --Extreme Programming Explained, Kent Beck

If you'd like to become a better software designer, studying the evolution of great software designs will be more valuable than studying the great designs themselves. For it is in the evolution that the real wisdom lies. --Refactoring To Patterns, p. 8, Joshua Kerievsky

I'm always interested in simplifying client code: I want it to read as clearly as English. --Refactoring To Patterns version 0.14, Joshua Kerievsky

The essance of an organism, then, is not its components but rather its organization -- that is, how it fits together as a whole. --Metaframeworks, Breulin et al

The compiler doesn't care whether the code is ugly or clean. But when we change the system, there is a human involved, and humans do care. A poorly designed system is hard to change. --Refactoring: Improving the Design of Existing Code, Martin Fowler

Any fool can write code that a computer can understand. Good programmers write code that humans can understand. --Refactoring: Improving the Design of Existing Code, Martin Fowler

When you learn a new technique that greatly improves your productivity, it is hard to see when it does not apply. --Refactoring: Improving the Design of Existing Code, Martin Fowler

If there is any worse situation than having no documentation, it must be having wrong documentation. --Object-Oriented Software Construction, Second Edition, Bertrand Meyer

The hacker may seem bad at first, but his heart is pure. He sees a useful piece of software, which is almost able to address the needs of the moment.... Spurred by a laudible desire not to redo what can be reused, our hacker starts modifying the original to add provisions for new cases.... The impulse is good but the effect is often to pollute the software...so that after a few rounds of hacking...the software starts resembling a chunk of Swiss cheese that has been left outside for too long in August (if the tastlessness of this metaphor may be forgiven on the grounds that it does its best to convey the presence in such software of both holes and growth). --Object-Oriented Software Construction, Second Edition, Bertrand Meyer

The bad ideas and the complicated ones (they are often the same) often appear first; it takes time for the simple and the elegant to take over. --Object-Oriented Software Construction, Second Edition, Bertrand Meyer

...[T]he single biggest enemy of reliablity (and perhaps software quality in general) is complexity. --Object-Oriented Software Construction, Second Edition, Bertrand Meyer

To obtain reliable systems we must go from the microscopic view to a macroscopic view encompassing the entire architecture. If we take this global view, simplicity becomes a crucial criterion. --Object-Oriented Software Construction, Second Edition, Bertrand Meyer

Almost always, new software expands on previous developments; the best way to create is by imitation, refinement and combination. --Object-Oriented Software Construction, Second Edition, Bertrand Meyer

Inhertitance is a unifying principle; like many of the great unifying ideas of science, it brings together phenomena that had hitherto been treated as distinct. ... [Inheritance allows] a style of development which, instead of trying to solve every new problem from scratch, encourages building on previous accomplishments and extending their results. The spirit is one of both economy...and humility, in line with Newton's famous remark that he could reach so high only because he stood on the shoulders of giants. --Object-Oriented Software Construction, Second Edition, Bertrand Meyer

Decentralization is the key: classes manage their own implementations and do not meddle in each other's affairs. Applied to humans, this would sound like Voltaire's Cultivez votre jardin, tend your own garden. Applied to modules, it is an essential requirement for obtaining decentralized structures that will yield gracefully to requests for extension, modification, combination and reuse. --Object-Oriented Software Construction, Second Edition, Bertrand Meyer

The task facing developers is this: they are working on a problem that they don't fully understand, one that lives in emotions, wishes, and thoughts and that changes as they proceed. --Agile Software Development, Alistair Cockburn

Every project team should be on a quest to reduce the total energy cost of detecting and transferring needed ideas. That means noticing and improving the convection currents of information flow, getting the benefits of osmotic communication, watching for sources of drafts, and using information radiators. The end goal is to lower the erg-seconds required for team members to exchange information, whatever constraints their organization places on their seating, and with or without technology. --Agile Software Development, Alistair Cockburn

...By accepting responsiblity for your own development process, you are accepting responsibility for being aware and fixing it when there is a problem. --Extreme Programming Explained, Kent Beck

...Compassion isn't mere kindness, but a willingness to enter into long-term relationships, to accept and nurture the viewpoints of developers, managers, and customers, with any of whom you may disagree, to help them find ways to accept each other and build their community. --Extreme Programming Examined: "The Tao of Extreme Programming", Peter Merel

...A project suffers when the developers don't mention problems they notice. The project loses the creative interplay of sharp programmers offering their insights to refine the requests of the customers. --Agile Software Development, Alistair Cockburn

Software consists of tying together complex threads of thought. The programmer spends a great deal of time lifting and holding together a set of ideas. --Agile Software Development, Alistair Cockburn

Every consulting company can benefit from employing a social anthropologist or ethnographer. That person will help the consulting team understand the social forces in play on their projects, which will enhance the team's effectiveness. --Agile Software Development, Alistair Cockburn

Ecosystems and methodologies have this interesting characteristic in common: If the team members construct many complicated rules for themselves, they tie themselves to a narrow ecological niche.

However, narrow ecological niches are notoriously fragile, and the market has a nasty habit of changing the terrain around a company. The many rules that ensure effective behavior in one ecological setting are ill suited for use in another. --Agile Software Development, Alistair Cockburn

The better adapted you are the less adaptable you tend to be. --The Secrets of Consulting, Gerald Weinberg

A methodology is...a straightjacket. It is exactly the set of conventions and policies the people agree to use: It is the size and shape of the straightjacket they choose for themselves. --Agile Software Development, Alistair Cockburn

Discipline involves a person choosing to work in a way that requires consistency. Process involves a person following instructions. --Agile Software Development, Alistair Cockburn

Every project has a bottleneck activity. It moves during the project, but there is always one. ... The nonbottleneck people can spend some of their extra capacity by starting earlier, getting results earlier, doing more rework and doing it earlier, and doing other work that helps the person at the bottleneck activity. --Agile Software Development, Alistair Cockburn

If you follow a methodology out of the box, you will have one that fits some project in the world, but probably not yours. --Agile Software Development, Alistair Cockburn

With a short feedback cycle, it is very easy to learn what works and what doesn't. --Software Craftsmanship, Pete McBreen

Master craftsman are always willing to learn and are able to admit their own mistakes. Both of these traits are essential for software development, because things change so fast and it is easy to make mistakes. --Software Craftsmanship, Pete McBreen

Software craftsmanship is built on top of long-term relationships that are grounded in a reputation for delivery. --Software Craftsmanship, Pete McBreen

...The first few times you use a pattern are learning experiences that might not produce a good design, but will certainly add to your mental toolbox. --Ralph Johnson, [source]

All human activity is subject to habitualization. Any action that is repeated frequently becomes cast into a pattern, which can then be reproduced with an economy of effort and which, ipso facto, is apprehended by its performer as that pattern. --The Social Construction of Reality, Peter Berger and Thomas Luckman

One of the great advantages of not lying to your clients is that you generally don't have to remember what you said. --The Secrets of Consulting, Gerald Weinberg

It may look like a crisis, but it's only the end of an illusion. --The Secrets of Consulting, Gerald Weinberg

The boundary between one part of a system and another is a good place to look for missing things -- those things that each part assumes are taken care of by the other part. --The Secrets of Consulting, Gerald Weinberg

Planning is so valuable and important, so vital, that it deserves to go on a little every day, as long as development lasts. --Planning Extreme Programming, Kent Beck and Martin Fowler

The aim is to deliver software that matches the requirements at every release, not to match the requirements as they were misunderstood at the beginning of the project. --Planning Extreme Programming, Kent Beck and Martin Fowler

When you are overloaded, don't think about it as not having enough time; think of it as having too much to do. You can't give yourself more time, but you can give yourself less to do, at least for the moment. --Planning Extreme Programming, Kent Beck and Martin Fowler

The only thing we know for certain about a plan is that development won't go according to it. --Planning Extreme Programming, Kent Beck and Martin Fowler

Requirements creep is perfectly reasonable and rational, even valuable. The requirements can creep wherever they like as long as we know where they are going and the customer is informed of the consequences, indeed we encourage the requirements to crawl around and find whatever it is the customer needs. --Planning Extreme Programming, Kent Beck and Martin Fowler

The longer the iteration, the more risk you run of sliding just a little bit out of control. You want each iteration to be as short as possible, so that you know where you are as frequently as possible. --Planning Extreme Programming, Kent Beck and Martin Fowler

XP is not the end of the journey, it is just the current watering hole that is particularly tasty for many. We'll learn more with every project that we do. --Lowell Lindstrom, [source]

Having a plan isn't everything, but planning is. --Extreme Programming Installed, Ron Jeffries, Ann Anderson, Chet Hendrickson

When customers and programmers recognize that they depend on each other, the team can steer the project so that there's always the most business value implemented at any given moment. --Extreme Programming Installed, Ron Jeffries, Ann Anderson, Chet Hendrickson

It's not easy to guess how fast you will go at first, but it's easy to observe how fast you do go. --Extreme Programming Installed, Ron Jeffries, Ann Anderson, Chet Hendrickson

A focus on clear, intention revealing code is more valuable than all the comments you can write. --Extreme Programming Installed, Ron Jeffries, Ann Anderson, Chet Hendrickson

If your customer knows now exactly what she wants, and if by the time you're done she's still going to want the same thing, it may be the first time in software history that this has happened. Probably there will be a prize for you somewhere. --Extreme Programming Installed, Ron Jeffries, Ann Anderson, Chet Hendrickson

A good software product is based on a small number of powerful ideas. --Object-Oriented Software Construction, Second Edition, Bertrand Meyer

Inside almost every large program there are lots of little programs trying to get out. --Extreme Programming Installed, Ron Jeffries, Ann Anderson, Chet Hendrickson

The result of an XP project should be a computer program. Not just any computer program, but a well-crafted, flexibly structured, properly documented computer program, shown by testing to meet known and written requirements. --Extreme Programming Installed, Ron Jeffries, Ann Anderson, Chet Hendrickson

To become truly good at programming is a life's work, an ongoing enterprise of learning and practicing. --Extreme Programming Installed, Ron Jeffries, Ann Anderson, Chet Hendrickson

One hundred years from now, our engineering may seem as archaic as the techniques used by medieval cathedral builders seem to today's civil engineers, while our craftsmanship will still be honored. --The Pragmatic Programmer, Dave Thomas and Andy Hunt

Organize your code into cells (modules) and limit the interaction between them. --The Pragmatic Programmer, p. 138, Dave Thomas and Andy Hunt

It's always a good idea to make sure an algorithm really is a bottleneck before investing your precious time trying to improve it. --The Pragmatic Programmer, p. 182, Dave Thomas and Andy Hunt

By building tests before you implement the code, you get to try out the interface before you commit to it. --The Pragmatic Programmer, p. 192, Dave Thomas and Andy Hunt

The act of writing tests first is an act of discerning between design decisions. --Agile Software Development Principles, Patterns, and Practices, p. 24, Robert Martin

When we write a test, we imagine the perfect interface for our operation. We are telling ourselves a story about how the operation will look from the outside. --Test-Driven Development: By Example, p. 4, Kent Beck

Successful tools adapt to the hands that use them... [As a software developer] it is the tools that you build for others that must be adaptable. --The Pragmatic Programmer, p. 205, Dave Thomas and Andy Hunt

You should work constantly to refine and improve your processes. Never accept the rigid confines of a methodology as the limits of your world. --The Pragmatic Programmer, p. 222, Dave Thomas and Andy Hunt

It is a mistake to think that the activities of a project -- analysis, design, coding, and testing -- can happen in isolation. --The Pragmatic Programmer, p. 227, Dave Thomas and Andy Hunt

The major problems of our work are not so much technological as sociological in nature. --Peopleware: Productive Projects and Teams, Second Edition, p. 4, Tom DeMarco and Timothy Lister

The main reason we tend to focus on the technical rather than the human side of the work is not because it's more crucial, but because it's easier to do... Human interactions are complicated and never very crisp and clean in their effects, but they matter more than any other aspect of the work. --Peopleware: Productive Projects and Teams, Second Edition, p. 5, Tom DeMarco and Timothy Lister

Overtime is like sprinting: it makes some sense for the last hundred yards of the marathon for those with any energy left, but if you start sprinting in the first mile, you're just wasting time. --Peopleware: Productive Projects and Teams, Second Edition, p. 16, Tom DeMarco and Timothy Lister

As long as workers are crowded into noisy, sterile, disruptive space, it's not worth improving anything but the workspace. --Peopleware: Productive Projects and Teams, Second Edition, p. 41, Tom DeMarco and Timothy Lister

The business we're in is more sociological than technological, more dependent on workers' abilities to communicate with each other than their abilities to communicate with machines. --Peopleware: Productive Projects and Teams, Second Edition, p. 103, Tom DeMarco and Timothy Lister

The essence of successful management is to get everyone pulling in the same direction and then somehow get them fired up to the point that nothing, not even their manager, could stop their progress. --Peopleware: Productive Projects and Teams, Second Edition, p. 154, Tom DeMarco and Timothy Lister

On the best teams, different individuals provide occasional leadership, taking charge in areas where they have particular strengths. No one is the permanent leader...The structure of the team is a network, not a hierarchy. --Peopleware: Productive Projects and Teams, Second Edition, p. 155, Tom DeMarco and Timothy Lister

When you observe a well-knit team in action, you'll see a basic hygienic act of peer-coaching that is going on all the time. Team members sit down in pairs to transfer knowledge. When this happens, there is always one learner and one teacher. Their roles tend to switch back and forth over time... --Peopleware: Productive Projects and Teams, Second Edition, p. 182, Tom DeMarco and Timothy Lister

Like any work of art, your success at fostering community is going to require substantial talent, courage, and creativity. It will also need an enormous investment of time. The work will not be completed by you alone; at best, you will be the catalyst. --Peopleware: Productive Projects and Teams, Second Edition, p. 225, Tom DeMarco and Timothy Lister

When you ignore all the things that can go wrong, most of them will. --Extreme Programming Applied: Playing to Win, p. xxxix, Ken Auer and Roy Miller

When you use a process meant for building inflexible things like bridges to build flexible things like software, it shouldn't shock you that later change costs more. --Extreme Programming Applied: Playing to Win, p. xl, Ken Auer and Roy Miller

Remember that doing XP is not the goal, it is the means to an end. The goal is developing superior software quickly without messing up people's lives. --Extreme Programming Applied: Playing to Win, p. 11, Ken Auer and Roy Miller

Everybody on an XP team should feel like an idiot regularly. --Extreme Programming Applied: Playing to Win, p. 62, Ken Auer and Roy Miller

When you're honest with others and with yourself, you have no choice but to be humble. When you are humble, you are teachable. When you are teachable, you learn. When you learn, you can use what you learn to achieve great things. --Extreme Programming Applied: Playing to Win, p. 65, Ken Auer and Roy Miller

If you are practicing XP exactly the same way after six months, you aren't practicing XP. --"Iteration Retrospectives" by Frank Westphal in Extreme Programming Applied: Playing to Win, p. 76, Ken Auer and Roy Miller

XP Planning is all about learning and then applying the lessons learned as soon as possible. We hope to be "progressively less wrong" over time. --Extreme Programming Applied: Playing to Win, p. 138, Ken Auer and Roy Miller

XP is a team sport. People must work together and share problems. Some people may experience short bursts of hyperproductivity when they program solo, but solo programming will slow the team down in the long run. --Extreme Programming Applied: Playing to Win, p. 169, Ken Auer and Roy Miller

[Pair programming] is about loving the person you're pairing with. --Extreme Programming Applied: Playing to Win, p. 177, Ken Auer and Roy Miller

Bare sufficiency reduces costs through streamlining but even more importantly, it incorporates the chaordic perspective that creativity and innovation occur in a slightly messy environment, not a primarily structured one. --What is Agile Software Development?, Jim Highsmith

The implicit and explicit goal of conformance to plan restricts a manager's ability to steer the project in innovative directions. --What is Agile Software Development?, Jim Highsmith

Refactoring is the essential first step toward maintaining the simplest possible design. Clean code simply gives you more room to maneuver. --Extreme Programming Applied: Playing to Win, p. 190, Ken Auer and Roy Miller

The only way to get rid of your fear of changing code is to do it over and over again. --Extreme Programming Applied: Playing to Win, p. 196, Ken Auer and Roy Miller

To make collective [code] ownership work, you have to change your definition of what it means to be a hero. Heroes aren't the ones who have the best code with the most clever tricks; heroes are the ones who make the team better -- the best pairs, the best refactorers, the best encouragers of other people. --Extreme Programming Applied: Playing to Win, p. 225, Ken Auer and Roy Miller

In many ways, software bears more resemblance to complex social or organic systems than to hardware. --What is Software Design?, Jack Reeves

We should not be afraid to code our designs as we derive them. We simply must be willing to refine them as necessary. --What is Software Design?, Jack Reeves

Interfaces belong to the client, not to the derivative... Clients tend to be packaged with the interfaces they control. --Agile Software Development Principles, Patterns, and Practices, p. 318-319, Robert Martin

There is no such thing as enough analysis. No matter how much time you spend trying to figure out the perfect software structure, you will always find that the customer will introduce a change that violates that structure. --Agile Software Development Principles, Patterns, and Practices, p. 324-325, Robert Martin

Working well with others, communicating and interacting, is more important than raw programming talent. A team of average developers who communicate well are more likely to succeed than a group of superstars who fail to interact as a team. --Agile Software Development Principles, Patterns, and Practices, p. 4, Robert Martin

Building the team is more important than building the environment... Work to create the team, and then let the team configure the environment on the basis of need. --Agile Software Development Principles, Patterns, and Practices, p. 5, Robert Martin

A user story is a mnemonic token of an ongoing conversation about a requirement. --Agile Software Development Principles, Patterns, and Practices, p. 12, Robert Martin

Design patterns are wonderful things. They can help you with many design problems. But the fact that they exist does not mean that they should always be used. --Agile Software Development Principles, Patterns, and Practices, p. 164, Robert Martin

Just at the edge of chaos, the most complex behaviors can occur -- orderly enough to ensure stability, yet full of flexibility and surprise. --At Home in the Universe, p. 87, Stuart Kauffman

Simple rules applied locally can give a group of agents the ability to adapt to a changing environment naturally. --Growing Software: Debunking the Myth of Prediction and Control, p. 88, Roy Miller

Guess as intelligently as you can and pull the trigger. Thinking about it for a long time only means you'll delay guessing. --Growing Software: Debunking the Myth of Prediction and Control, p. 106, Roy Miller

Requirements are a conversation that never stops. --Growing Software: Debunking the Myth of Prediction and Control, p. 106, Roy Miller

Design is not a revealing of hidden order. It is the creation of new order that didn't exist before. --Growing Software: Debunking the Myth of Prediction and Control, p. 107, Roy Miller

The simpler it is to run a suite of tests, the more often those tests will be run. --Agile Software Development Principles, Patterns, and Practices, p. 29, Robert Martin

Diagrams can be inappropriate at times. When are they inappropriate? When you create them without code to validate them, and then intend to follow them. --Agile Software Development Principles, Patterns, and Practices, p. 83, Robert Martin

Software development is a messy problem. The only way to solve it is to interact with each other, and to let our understanding and path forward emerge. --Growing Software: Debunking the Myth of Prediction and Control, p. 143, Roy Miller

In a complex environment, following a plan produces the product you intended, just not the product you need. --Agile Software Development Ecosystems, p. 42, Jim Highsmith

By preparing for too many contingencies, the design becomes littered with constructs that are never used. --Agile Software Development Principles, Patterns, and Practices, p. 89, Robert Martin

Developers need to put themselves in the readers' shoes and make a concerted effort to refactor their code so that their readers can understand it. --Agile Software Development Principles, Patterns, and Practices, p. 89, Robert Martin

The attitude that agile developers have toward the design of the software is the same attitude that surgeons have toward sterile procedure. Sterile procedure is what makes surgery possible. --Agile Software Development Principles, Patterns, and Practices, p. 94, Robert Martin

A class should only have one reason to change. --Agile Software Development Principles, Patterns, and Practices, p. 95, Robert Martin

Resisting premature abstraction is as important as abstraction itself. --Agile Software Development Principles, Patterns, and Practices, p. 109, Robert Martin

Taking small steps and preserving simplicity, then being wrong and learning from it is the best way to explore the unknown. Make failure frequent, fast, and cheap. --Growing Software: Debunking the Myth of Prediction and Control, p. 164, Roy Miller

The bad thing about great technical talent is the attitude that tends to come along with it. It's tough to find a super programmer who doesn't believe he's a step above mere mortals. --Growing Software: Debunking the Myth of Prediction and Control, p. 170, Roy Miller

No process is foolproof enough, or complete enough, for users of that process to turn off their brains. --Adaptation: XP Style, p. 57, Christopher Collins and Roy Miller

The guarantee that a subclass will always work where its base classes are used is a powerful way to manage complexity. Once it is forsaken, we must consider each class individually. --Agile Software Development Principles, Patterns, and Practices, p. 122, Robert Martin

Overreliance on tools and procedures, and underreliance on intelligence and experience are recipes for disaster. --Agile Software Development Principles, Patterns, and Practices, p. 202, Robert Martin

If a package contains software that should be reused, then it should not also contain software that is not designed for reuse. Either all of the classes in a package are reusable or none of them are. --Agile Software Development Principles, Patterns, and Practices, p. 255, Robert Martin

When we are actively developing an application, there are many concrete classes that are very volatile. Depending on them is problematic. We'd rather depend on an abstract interface to shield us from the majority of these changes. The Factory pattern allows us to create instances of concrete objects while depending only on abstract interfaces. --Agile Software Development Principles, Patterns, and Practices, p. 270, Robert Martin

Rule of thumb: if you think something is clever and sophisticated, beware -- it is probably self-indulgence. --The Design of Everyday Things, Donald Norman

I prefer to evolve the code I am working on in the direction of its needs. As I refactor it to resolve issues of coupling, simplicity, and expressiveness, I may find that the code has come close to a particular pattern. When that happens, I change the names of the classes and variables to use the name of the pattern, and change the structure of the code to use the pattern in a more regular form. Thus the code backs into the pattern. --Agile Software Development Principles, Patterns, and Practices, p. 295, Robert Martin

The need to create test code that verifies each unit in isolation forces us to decouple the code in ways we might not otherwise think of. Thus, testability is a force that drives the design to a less coupled state. --Agile Software Development Principles, Patterns, and Practices, p. 424, Robert Martin

By eliminating duplication before we go on to the next test, we maximize our chance of being able to get the next test running with one and only one change. --Test-Driven Development: By Example, p. 8, Kent Beck

TDD is not about taking teeny-tiny steps, it's about being able to take teeny-tiny steps...If you can make steps too small, you can certainly make steps the right size. --Test-Driven Development: By Example, p. 9, Kent Beck

Rather than apply minutes of suspect reasoning, we can just ask the computer by making the change and running the tests. --Test-Driven Development: By Example, p. 46, Kent Beck

I try to keep the objects at the heart as ignorant of the rest of the system as possible, so they stay flexible as long as possible. --Test-Driven Development: By Example, p. 57, Kent Beck

The Extreme Programming movement is fascinating not so much because it works, but because it's about human relationships... I believe firmly that the key to creating great software lies more in people and process than in technology and engineering. Making programmers look up from their keyboards and smell the humans might well be one of the most significant improvements in high technology. --Digging the Panama Canal, Alan Cooper

Duplication is always a bad thing, unless you look at it as motivation to find the missing design element. --Test-Driven Development: By Example, p. 113, Kent Beck

The first part of our approach to dealing with programming stress is never to take a step forward unless we know where our foot is going to land. --Test-Driven Development: By Example, p. 126, Kent Beck

In TDD, the tests are a means to an end -- the end being code in which we have great confidence. --Test-Driven Development: By Example, p. 197, Kent Beck

Every programming practice encodes a value system, explicitly or implicitly. --Test-Driven Development: By Example, p. 200, Kent Beck

The higher your confidence, the more aggressive you will be in trying large-scale refactorings that extend the life of your system. --Test-Driven Development: By Example, p. 205, Kent Beck

...It is in relation to the limits of logico-scientific thought that the contribution of the narrative approach is perhaps most easily understood. --Complex thinking, complex practice: The case for a narrative approach to organizational complexity, p. 990, Haridimos Tsoukas and Mary Jo Hatch

When things seem out of control, most managers react understandably -- they try to control more. When they do that, they unintentionally squeeze out the potential for novel discovery their teams need in order to solve problems they've never solved before, which is what software development is all about. --Growing Software: Debunking the Myth of Prediction and Control, p. 8, Roy Miller

It is precisely because narrative can encode oppressive epistemes that it can also function as a means of individual, cultural, and political empowerment. --"Narrative and Chaos", New Literary History, 1992, p. 661, Alex Argyros

A narrative is perhaps best conceptualized as a hypothesis about the nature of an existing slice of reality or about the potential consequences of certain variations on a model of the world. Inasmuch as narratives tend to be shared, they perform on an intersubjective cultural level what our central nervous system does at the level of the individual. --"Narrative and Chaos", New Literary History, 1992, p. 667-8, Alex Argyros

It is because narratives need to accomodate the requirements of finitude and complexity that they tend to fold in on themselves, creating intricate, temporal, fractal depths. --"Narrative and Chaos", New Literary History, 1992, p. 669, Alex Argyros

Traditional narratives can be viewed as chaotic laminar systems, rivers characterized by an overall vector, the plot, itself composed of areas of local turbulence, eddies where time is reversed, rapids where it speeds ahead, and pools where it effectively stops. --"Narrative and Chaos", New Literary History, 1992, p. 669, Alex Argyros

Narrative offers culture both a powerful databank in which to store and transmit cultural knowledge, and a flexible and turbulent laboratory in which to invent new knowledge. --"Narrative and Chaos", New Literary History, 1992, p. 670, Alex Argyros

We live in a future which is largely waiting to be imagined... --"Narrative and Chaos", New Literary History, 1992, p. 672, Alex Argyros

The atmosphere in a troubled family is easy to feel...Whenever I am in any of these troubled atmospheres, my body reacts violently. My stomach feels queasy; my back and shoulders soon ache, as does my head. --The New Peoplemaking, p. 10, Virginia Satir

Rearing a family is probably the most difficult job in the world. It resembles two business firms merging their respective resources to make a single product. --The New Peoplemaking, p. 17, Virginia Satir

A person who does not value him- or herself will expect someone else -- a wife, husband, son, or daughter -- to be responsible for bestowing that value. --The New Peoplemaking, p. 31, Virginia Satir

The fear of the Lord is the beginning of knowledge, but fools despise wisdom and discipline. --Proverbs 1:7

I think having more than three feet between people puts a great strain on their relationship. --The New Peoplemaking, p. 65, Virginia Satir

I am convinced that anything exciting, even dangerous, is preferable to boredom. Fighting is better than being bored. You might get killed from it, but at least you feel alive while it's going on. --The New Peoplemaking, p. 79, Virginia Satir

Communication is the greatest single factor affecting a person's health and relationship to others. --The New Peoplemaking, p. 79, Virginia Satir

Wisdom is supreme; therefore get wisdom. Though it cost all you have, get understanding. --Proverbs 4:7

Good rules facilitate instead of limiting. --The New Peoplemaking, p. 118, Virginia Satir

The task of the therapist is to see the light that shines in every person or family, and to uncoil the wrappings that shroud that light. --The New Peoplemaking, p. 133, Virginia Satir

Sometimes even a minor incident can overwhelm the system, which indicates that the system's designers behaved as though change would never happen. --The New Peoplemaking, p. 136, Virginia Satir

Familiarity exerts a powerful pull. What we have observed and experienced day after day exerts a powerful influence. Most people will choose the familiar, even though uncomfortable, over the unfamiliar, because of that power. --The New Peoplemaking, p. 144-145, Virginia Satir

If I rise on the wings of the dawn, if I settle on the far side of the sea, even there your hand will guide me, your right hand will hold me fast. --Pslam 139:9-10

Search me, O God, and know my heart; test me and know my anxious thoughts. See if there is any offensive way in me, and lead me in the way everlasting. --Psalm 139:23-24

Any time a child is asked to ignore and/or denounce either biological parent, she or he runs a great risk of developing low self-worth. --The New Peoplemaking, p. 168, Virginia Satir

Blame is an expensive, useless, and destructive way to use your energy. --The New Peoplemaking, p. 211, Virginia Satir

The power of the familiar is very strong, often stronger than the wish to change. Strong interventions, lots of patience, and continual awareness help us challenge the power of the familiar. --The New Peoplemaking, p. 212, Virginia Satir

If we can get introduced to our ignorance, isn't that something worth celebrating? --The New Peoplemaking, p. 220, Virginia Satir

It is wise to get together once a day for everyone to touch base with each other. In the busy lives that most of us lead, this kind of meeting needs to be planned. It cannot be left to chance. --The New Peoplemaking, p. 284, Virginia Satir

When youth and young looks fade, when money, power, and position have gone, people can suffer great agonies if they equated this factors with personal value. --The New Peoplemaking, p. 354, Virginia Satir

Whenever change occurs, the old order is disturbed and a period of upheaval follows. During this chaos, it may be hard to see what has been gained... It takes time to learn a new process. --The New Peoplemaking, p. 381, Virginia Satir

Why is programming fun? What delights may its practitioner expect as his reward?

First is the the sheer joy of making things. As the child delights in his mud pie, so the adult enjoys building things, especially things of his own design. I think this delight must be an image of God's delight in making things, a delight shown in the distinctness and newness of each leaf and each snowflake. --The Mythical Man Month, p. 7, Frederick Brooks

For the human makers of things, the incompleteness and inconsistencies of our ideas become clear only during implementation. Thus it is that writing, experimentation, "working out" are essential discliplines for the theoretician. --The Mythical Man Month, p. 15, Frederick Brooks

How, then, shall teams communicate with one another? In as many ways as possible. --The Mythical Man Month, p. 75, Frederick Brooks

The man with strong management talent and strong technical talent is rarely found. Thinkers are rare; doers are rarer; and thinker-doers are rarest. --The Mythical Man Month, p. 80, Frederick Brooks

If the design is to be free to change, the organization must be prepared to change. --The Mythical Man Month, p. 111, Frederick Brooks

It's better to have a system omit certain anomalous features and improvements, but to reflect one set of design ideas, than to have one that contains many good but independent and uncoordinated ideas. --The Mythical Man Month, p. 42, Frederick Brooks

Sharp milestones are in fact a service to the team, and one they can properly expect from a manager. The fuzzy milestone is the harder burden to live with. It is in fact a millstone that grinds down morale, for it deceives one about lost time until it is irremediable. And chronic schedule slippage is a morale-killer. --The Mythical Man Month, p. 155, Frederick Brooks

Most documentation fails in giving too little overview. The trees are described, the bark and the leaves are commented, but there is no map of the forest. --The Mythical Man Month, p. 165, Frederick Brooks

The software product is embedded in a cultural matrix of applications, users, laws, and machine vehicles. These all change continually, and their changes inexorably force change upon the software product. --The Mythical Man Month, p. 185, Frederick Brooks

I...assert that it is really impossible for clients, even those working with software engineers, to specify completely, precisely, and correctly the exact requirements of a modern software product before having built and tried some versions of the product they are specifying. --The Mythical Man Month, p. 200, Frederick Brooks

I can't emphasize enough the importance of empowerment, of the team being accountable to itself for its success. --The Mythical Man Month, p. 279, Frederick Brooks quoting Jim McCarthy

To only a fraction of the human race does God give the privilege of earning one's bread doing what one would have gladly pursued free, for passion. I am very thankful. --The Mythical Man Month, p. 291, Frederick Brooks

I became the buffer between the team and the chaos of changing requirements and competitive pressures. I helped to protect the team so it could focus on its Sprint commitments. The role I assumed became known as the Scrum Master. --Agile Software Development with Scrum, p. 6, Ken Schwaber and Mike Beedle

By having every member of the team see every day what every other team member was doing, we began to get comments from one developer that if he changed a few lines of code, he could eliminate days of work for another developer. --Jeff Sutherland in Agile Software Development with Scrum, p. 12, Ken Schwaber and Mike Beedle

I've found that it's usually better to proceed with some decision than no decision. --Agile Software Development with Scrum, p. 32, Ken Schwaber and Mike Beedle

In my experience, a [Scrum] team self-organizes to draw on its strengths rather than succumb to its problems. Each team member's best changes day by day, but the team's best tends to be rather predictable. --Agile Software Development with Scrum, p. 36, Ken Schwaber and Mike Beedle

Use open working evironments. Such environments allow people to communicate more easily, make it easier to get together, and facilitate self-organization. When I walk into open team areas, I can immediately tell how the team is doing. Silence is always a bad sign. I know that people are collaborating if I can hear conversations. When I enter a cubicle environment, there is often silence, indicating an absence of interaction. Cubicles are truly the bane of the modern workplace. They quite literally keep people apart and break teams up. --Agile Software Development with Scrum, p. 39, Ken Schwaber and Mike Beedle

The Scrum Master helps the team learn to make its own decisions to fulfill its commitments. The more the team relies on outsiders to make its decisions, the less control it has over its commitments. --Agile Software Development with Scrum, p. 45, Ken Schwaber and Mike Beedle

Scrum asks people to try to wrest a predictable product from unpredictable complexity. Some people can't handle this type of assignment... Those who succeed at Scrum are the individuals that will form the core of an organization. Scrum helps identify these people. --Agile Software Development with Scrum, p. 51, Ken Schwaber and Mike Beedle

Scrum meetings do much more for a team than just capturing information. They don't only make everyone capture what they did, but it makes everyone say it in front of everybody else. That way everyone listens to what others are doing and they can offer to help them later. They don't only make everyone say what the issues are, but it makes everyone say it face to face to their management. This forces everyone to have courage and to be honest, and gives everyone a tool to put pressure on management about resolving issues. It also makes everyone promise in front of everyone else what you will be working on next, so it puts everyone's credibility and trust to the test. Scrum is about deep social interactions that build trust among team members. --Agile Software Development with Scrum, p. 106-7, Ken Schwaber and Mike Beedle

[Scrum] cannot be statically defined or for that matter repeated. You can only hope to repeat the application of Scrum practices but they will lead to different organizational or process arrangements every time. --Agile Software Development with Scrum, p. 113, Ken Schwaber and Mike Beedle

Processes should be melded to individuals and teams, not the other way around. --Agile Software Development Ecosystems, p. xviii, Jim Highsmith

Plans are hypotheses to be tested rather than predictions to be realized. --Agile Software Development Ecosystems, p. xxv, Jim Highsmith

[Agile Software Development Ecosystems] are garnering increasing interest not because they attempt [to] overturn 25 years of software engineering progress, as some critics contend, but because they address the issues germane to turbulence, risk, and uncertainty. --Agile Software Development Ecosystems, p. 10, Jim Highsmith

To be able to understand when the rules don't apply, you need to completely understand when they do. --Bob Charette in Agile Software Development Ecosystems, p. 31, Jim Highsmith

We accept that talented people, who are internally motivated, who must work in a volatile environment, who understand the product vision, will do the best they can do. If they don't conform to the plan, the plan was wrong. If they delivered business value, then whether the plan was "right" or not is immaterial. --Agile Software Development Ecosystems, p. 32, Jim Highsmith

Being Agile means trusting one's ability to respond more than trusting one's ability to plan. --Agile Software Development Ecosystems, p. 34, Jim Highsmith

We don't want requirements to creep; we want requirements to get up and dance. --Kent Beck in Agile Software Development Ecosystems, p. 51, Jim Highsmith

Working with process and tools pales in simplicity when matched with the frustration, messiness, difficulty, and fun of working with people and relying on people to get the job done. --Agile Software Development Ecosystems, p. 90, Jim Highsmith

An organization's ability to innovate is tied more closely to its collaborative framework than either project management or software development practices. --Agile Software Development Ecosystems, p. 129, Jim Highsmith

Refactoring may be the single most important factor in achieving agility. --Agile Software Development Ecosystems, p. 155, Jim Highsmith

No single individual has the range of abilities required for most software projects, and we therefore need to enhance our collaboration skills. --Agile Software Development Ecosystems, p. 197, Jim Highsmith

Multi-disciplinary teams rather than isolated individuals are needed because diversity is so key to innovative, fast-cycle time development. --Agile Software Development Ecosystems, p. 291, Jim Highsmith

Once we admit to ourselves that we are fallible, then learning practices...become vital for success. We have to test our knowledge constantly, using practices like project retrospectives and customer focus groups. --Agile Software Development Ecosystems, p. 312, Jim Highsmith

Adaptive cultures understand that learning about what we don't know is often more important than doing things we already know how to do. --Agile Software Development Ecosystems, p. 319, Jim Highsmith

Part of the architect's job...should include making sure that subteams continually engage in the appropriate level of conversation to ensure that every member understands the architecture. --Agile Software Development Ecosystems, p. 364, Jim Highsmith

Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice. --A Pattern Language, p. x, Christopher Alexander, Sara Ishikawa, and Murray Silverstein

No pattern is an isolated entity. Each pattern can exist in the world, only to the extent that is supported by other patterns: the larger patterns in which it is embedded, the patterns of the same size that surround it, and the smaller patterns which are embedded in it.

This is a fundamental view of the world. It says that when you build a thing you cannot merely build that thing in isolation, but must also repair the world around it, and within it, so that the larger world at that one place becomes more coherent, and more whole; and the thing which you make takes its place in the web of nature, as you make it. --A Pattern Language, p. xiii, Christopher Alexander, Sara Ishikawa, and Murray Silverstein

The fundamental learning situation is one in which a person learns by helping someone who really knows what he is doing. --A Pattern Language, p. 413, Christopher Alexander, Sara Ishikawa, and Murray Silverstein

In a society which emphasizes teaching, children and students -- and adults -- become passive and unable to think or act for themselves. Creative, active individuals can only grow up in a society that emphasizes learning instead of teaching. --A Pattern Language, p. 100, Christopher Alexander, Sara Ishikawa, and Murray Silverstein

Avoid closed off, separate, or private offices. Make every workroom, whether it's for a group of two or three people or for one person, half-open to the other workgroups and the world immediately beyond it. --A Pattern Language, p. 718, Christopher Alexander, Sara Ishikawa, and Murray Silverstein

A man enjoys his work when he understands the whole and when he is responsible for the quality of the whole. He can only understand the whole and be responsible for the whole when the work which happens in society, all of it, is undertaken by small self-governing human groups; groups small enough to give people understanding through face-to-face contact, and autonomous enough to let the workers themselves govern their own affairs. --A Pattern Language, p. 399, Christopher Alexander, Sara Ishikawa, and Murray Silverstein

The bride belongs to the bridegroom. The friend who attends the bridegroom waits and listens for him, and is full of joy when he hears the bridegroom's voice. That joy is mine, and is now complete. He must become greater; I must become less. --John the Baptist in John 3:29-30

The best food always comes from people who are in business for themselves, who buy the raw food, and prepare it in their own style. --A Pattern Language, p. 456, Christopher Alexander, Sara Ishikawa, and Murray Silverstein

All those detailed design decisions which can never be worked out in advance on paper, can be made during the building process. --A Pattern Language, p. 964, Christopher Alexander, Sara Ishikawa, and Murray Silverstein

However, I consider my life worth nothing to me, if only I may finish the race and complete the task the Lord Jesus has given to me -- the task of testifying to the gospel of God's grace. --Acts 20:24

Any moment in any day provides an opportunity for investigation, if we can recognize it. --People and Methodologies in Software Development, p. 26, Alistair Cockburn

System developers must open their minds and engage in reflections and dialogues to generate the necessary insights into the situation at hand. --Reflective Systems Development, p. 3, Lars Mattiassen

Experienced developers are needed to learn and apply ethnographic techniques. They will be able to spot important clues that others would miss, and will be able to represent the culture's values. --Software Development as Community Poetry Writing, Alistair Cockburn

Most of the time inventing consists of being able to see old things in a new way. --Reflective Systems Development, p. 93, Lars Mattiassen

Whoever wants to be great among you must be your servant, and whoever wants to be first must be slave of all. For even the the Son of Man did not come to be served, but to serve, and to give his life as a ransom for many. --Mark 10:43-44

Agile methodolgies free the project manager from the drudgery of being a taskmaster thereby enabling the project manager to focus on being a leader -- someone who keeps the spotlight on the vision, who inspires the team, who promotes teamwork and collaboration, who champions the project and removes obstacles to progress. Rather than being an operational controller, the project manager can become an adaptive leader -- if she can reliquish her reliance on old style management. --Agile Project Management: Emergent Order Through Visionary Leadership, Sanjiv Augustine and Susan Woodcock

When one develops a software system, one actually is in an ongoing conversation with the creation. --The Reflective Practitioner Perspective in eXtreme Programming, p. 2, Orit Hazzan and Jim Tomayko

In his heart a man plans his course, but the Lord determines his steps. --Proverbs 16:9

Tedious programming is a sign that something is wrong. --Patterns of Enterprise Application Architecture, p. 309, Martin Fowler

Knowledge puffs up, but love builds up. The man who thinks he knows something does not yet know as he ought to know. But the man who loves God is known by God. --1 Corinthians 8:1-3

If I have the gift of prophesy and can fathom all mysteries and all knowledge, and if I have a faith that can move mountains, but have not love, I am nothing. --1 Corinthians 13:2

We in the software industry are working with a more or less invisible product, yet this very invisibility only heightens our need for feedback. --Gerald Weinberg in Project Retrospectives, p. xiii, Norm Kerth

By avoiding a review of a failed project, the community loses a valuable opportunity to learn from its experience, possibly leaving the door open for the same kind of failure to happen again. --Project Retrospectives, p. xvi, Norm Kerth

Wisdom is the learning that comes from experience. --Project Retrospectives, p. 101, Norm Kerth

The project's degree of success is not a relavant measure to use while people are trying to learn from their experiences. --Project Retrospectives, p. 106, Norm Kerth

Self-examination is hard, but I believe we can learn more from studying our failures than from our successes. --Project Retrospectives, p. 175, Norm Kerth

You can learn great ideas from books, but to put those ideas into practice, you need more than just a book. You need a teacher -- and you need to work repeatedly at what you are taught. --Project Retrospectives, p. 210, Norm Kerth

Acceptance of ourselves prepares us for surviving the chaos of change. --Tao of Communication and the Constancy of Change, Jean McLendon

Language is not a tool of communication as is the interconnecting cable between computers. Instead it is the fundamental way in which humans are physically present with one another. Language is a way of being. --The Body Speaks, p. 32, James & Melissa Griffith

Emotional postures govern access to knowledge, because they bias perception, patterns of cognition, and possible actions... [For example]...while walking through a dangerous neighborhood at night, the beautiful old architecture and the romantic glow of the rising moon pass unseen. --The Body Speaks, p. 69-70, James & Melissa Griffith

Creative ideas most often spring out of dialogical, not monological, conversations. --The Body Speaks, p. 81, James & Melissa Griffith

Starting a narrative a bit earlier or extending its endpoint further in time creates a turn-of-the-kaleidescope effect that instantly transforms the meaning of the narrative as a whole. --The Body Speaks, p. 140, James & Melissa Griffith

Evolutionary delivery is an approach that delivers the system in stages. You can build a little, get a little feedback from your users, adjust your design a little, make a few changes, and build a little more. The key is using short development cycles so that you can respond to your users quickly. --Code Complete, p. 32, Steve McConnell

[Software] construction is not at all mechanical and involves substantial creativity and judgment. --Code Complete, p. 2, Steve McConnell

The words available in a programming language for expressing your progamming thoughts certainly determine how you express your thoughts and might even determine what thoughts you can express. --Code Complete, p. 47, Steve McConnell

The single most important reason to create a routine is to reduce a program's complexity. Create a routine to hide information so that you won't need to think about it. --Code Complete, p. 74, Steve McConnell

The language you use to solve a problem substantially affects your solution. --Code Complete, p. 345, Steve McConnell

In general, complicated code is a sign that you don't understand your program well enough to make it simple. --Code Complete, p. 387, Steve McConnell

The competent programmer is fully aware of the strictly limited size of his own skull; therefore he approaches the programming task in full humility. --The Humble Progammer, Communications of the ACM, p. 32, Edsger W. Dijkstra

Techniques that make good code look good and bad code look bad are more useful than techniques that make all code look good. --Code Complete, p. 403, Steve McConnell

Until you've measured performance gains, you're better off striving for clarity and correctness first, performance second. --Code Complete, p. 434, Steve McConnell

Mentoring is a mutuality that requires more than meeting the right teacher: the teacher must meet the right student. In this encounter, not only are the qualities of the mentor revealed, but the qualities of the student are drawn out in a way that is equally revealing. --The Courage to Teach: Exploring the Inner Landscape of a Teacher's Life, p. 21, Parker Palmer

A vocation that is not mine, no matter how externally valued, does violence to the self -- the precise sense that it violates my identity and integrity on behalf of some abstract norm. --The Courage to Teach: Exploring the Inner Landscape of a Teacher's Life, p. 30, Parker Palmer

When the group norm asserts, however subtly, that everyone must speak, or must speak in a common voice, then both speech and dissent are stifled, the solitude of the individual is violated, and no learning can occur. --The Courage to Teach: Exploring the Inner Landscape of a Teacher's Life, p. 77, Parker Palmer

We dance round in a ring and suppose,
But the secret sits in the middle and knows.
--Robert Frost

When we are not depedant on each other, community cannot exist. --The Courage to Teach: Exploring the Inner Landscape of a Teacher's Life, p. 139, Parker Palmer

My question cannot be honest and open if, even as I ask it, I am listening for a particular answer that I regard as "correct." --The Courage to Teach: Exploring the Inner Landscape of a Teacher's Life, p. 153, Parker Palmer

Practices perhaps inform and change our theories more often than theories influence our practice. --The Reflecting Team: Dialogues and Dialogues About the Dialogues, p. 167, Tom Andersen

When pride comes, then comes disgrace, but with humility comes wisdom. --Proverbs 11:2

The abstractness of the programming activity calls for an offsetting naturalness in the office environment and rich contacts among coworkers. --Code Complete, p. 547, Steve McConnell

If you have to pay twice as much to get a top-10-percent programmer rather than a bottom-10-percent programmer, jump at the chance. You'll get an immediate payoff in the quality and productivity of the programmer you hire, and a residual effect in the quality and productivity of other programmers your organization is able to retain because good programmers tend to cluster. --Code Complete, p. 549, Steve McConnell

Projects that aim from the beginning at achieving the shortest possible schedules regardless of quailty considerations, tend to have fairly high frequencies of both schedule and cost overruns. Software projects that aim initially at achieving the highest possible levels of quality and reliability tend to have the best schedule adherence records, the highest productivity, and even the best marketplac success. --Programming Productivity, p. 549, Capers Jones

It's nearly impossible to produce a high-quality product unless you can systematically retest it after changes have been made. ... The only way to manage regression testing is to automate it. --Code Complete, p. 618, Steve McConnell

Even if an error at first appears not to be your fault, it's strongly in your interest to assume it is. That assumption helps you debug: It's hard enough to find an error in your code when you're looking for it; it's even harder when you've assumed your code is error free. --Code Complete, p. 628, Steve McConnell

A program with numerous small, well-named routines is as close as you'll get to a self-documenting program. Well-named routines are preferable to comments because readers can look at code only...and routine names are less likely to get out of date than comments are. --Code Complete, p. 741, Steve McConnell

How can you learn anything new if you pretend that you know everything already? --Code Complete, p. 761, Steve McConnell

The crucible for silver and the furnace for gold, but man is tested by the praise he receives. --Proverbs 27:21

Code that bores the programmer is likely to contain errors. --Java RMI, p. 66, William Grosso

Until we as an industry learn to control our schedules and free up time for developers and managers to learn more about their professions, we will never have enough time to put the rest of our house in order. --Rapid Development, p. xiii, Steve McConnell

A typical software project can present more opportunities to learn from mistakes than some people get in a lifetime. --Rapid Development, p. 29, Steve McConnell

Organizations that attempt to put software-engineering discipline in place before putting project-management discipline in place are doomed to fail. --Rapid Development, p. 55, Steve McConnell

Software development is a process of gradual refinement. You begin with a fuzzy picture of what you want to build and then spend the rest of the project trying to bring that picture into clearer focus. --Rapid Development, p. 165, Steve McConnell

Imprecision isn't a sign of a bad estimate; it's part of the nature of software development. Failure to acknowledge imprecision is a sign of a bad estimate. --Rapid Development, p. 198, Steve McConnell

The best way to motivate developers is to provide an environment that makes it easy for them to focus on what they like doing most, which is developing software. --Rapid Development, p. 255, Steve McConnell

A "team" exists whenever two heads together are better than two heads individually. --Rapid Development, p. 276, Steve McConnell

On a well-oiled team, different people will be willing to play different roles at different times, depending on what the team needs. --Rapid Development, p. 284, Steve McConnell

Refusing to allow changes assumes that your customers know what they want at requirements time. It assumes that you can truly know requirements at the outset, before design and coding begin. On most projects this isn't possible. Part of the software developer's job is to help customers figure out what they want, and customers often can't figure out what they want until after they have working software in their hands. You can use the various incremental development practices to respond to this need. --Rapid Development, p. 336, Steve McConnell

Today, the most successful products are often those that had the most change implemented the latest in the development cycle. --Rapid Development, p. 337, Steve McConnell

Software development is a tough, time-consuming business. For 30 years we've been told that the magic that will enable us to slay giant schedules and budgets is just around the corner. For 30 years it hasn't come. I say, enough is enough. There is no magic. There is no point in waiting for it. The more we wait, the more we deprive ourselves of valuable, incrementally better solutions to many of our problems. There aren't any easy solutions, but there are easier solutions, which can provide modest improvements individually and dramatic improvements collectively. --Rapid Development, p. 368, Steve McConnell

All people live in the reality God had created. The more closely we conform to reality as it is, and not to the way we imagine it, the closer we are to life and prosperity. --Discipling Nations, p. 36, Darrow Miller

While man's mind is woefully limited when compared to God's boundless fountainhead of intellect, still we can learn something about the world and our place in it by pondering the mind of the Almighty, even though we will never comprehend all its awesome majesty. --Discipling Nations, p. 85, Darrow Miller

By adding the truth and morals God has revealed, "knowledge workers" can become "wisdom workers." These people share not only what's in their heads but also what's in their hearts. --Discipling Nations, p. 107, Darrow Miller

Science, ideally, is the fulfillment of man's moral obligation to inquire into the nature of creation for God's glory. Technology is (or should be) the moral application of scientific knowledge for the benefit of mankind. --Discipling Nations, p. 114, Darrow Miller

Those who look at the world as God's creation...see a world of potentialities limited only by their own creativity and moral stewardship. --Discipling Nations, p. 148, Darrow Miller

It is within man's nature to be creatively engaged in development, because that activity is part of God's nature too. In this respect, as in others, man is called to reflect the divine genius. --Green Finger of God, Maurice Sinclair

We can do no great things, only small things with great love. --Mother Theresa

Our lives have more potential impact -- for good or ill -- than we will ever know, this side of eternity. --Discipling Nations, p. 271, Darrow Miller

Mere change is not growth. Growth is the synthesis of change and continuity, and where there is no continuity, there is no growth. --C.S. Lewis in Discipling Nations, p. 274, Darrow Miller

Rapid development has many advantages. Without speed, you cannot delay decisions. Without speed, you do not have reliable feedback. In development the discovery cycle is critical for learning: design, implement, feedback, improve. --Lean Software Development: An Agile Toolkit, p. xxvi, Mary and Tom Poppendieck

Involving developers in the details of technical decisions is fundamental to achieving excellence. The people on the front line combine the knowledge of minute details with the power of many minds. When equipped with necessary expertise and guided by a leader, they will make better technical decisions and better process decisions than anyone can make for them. --Lean Software Development: An Agile Toolkit, p. xxvi-xxvii, Mary and Tom Poppendieck

Assigning people to multiple projects is a source of waste. Every time software developers switch between tasks, a significant switching time is incurred as they get their thoughts gathered and get into the flow of the new task. --Lean Software Development: An Agile Toolkit, p. 6, Mary and Tom Poppendieck

The way to reduce waste due to defects is to test immediately, integrate often, and release to production as soon as possible. --Lean Software Development: An Agile Toolkit, p. 8, Mary and Tom Poppendieck

In a service economy, quality does not mean conformance to a script; it means adapting to meet the changing expectations of many different customers. --Lean Software Development: An Agile Toolkit, p. 16, Mary and Tom Poppendieck

It is necessary to have a reasonable failure rate in order to generate a reasonable amount of information. --Lean Software Development: An Agile Toolkit, p. 19, Mary and Tom Poppendieck

An iteration should be considered a demonstration of a possible solution; it should not be considered the only solution. --Lean Software Development: An Agile Toolkit, p. 44, Mary and Tom Poppendieck

As the group grapples with the problem, resist the temptation to jump to a solution; keep the constraints of the problem visible so that the team can discover the intersection of the design space that will work for all concerned. --Lean Software Development: An Agile Toolkit, p. 44, Mary and Tom Poppendieck

Frameworks should be extracted from a collection of successful implementations, not built on speculation. --Lean Software Development: An Agile Toolkit, p. 58, Mary and Tom Poppendieck

If you can change your software quickly, you can wait to make a change until the customers know what they want. --Lean Software Development: An Agile Toolkit, p. 60, Mary and Tom Poppendieck

It is much more important to develop people with the expertise to make wise decisions than it is to develop decision-making processes that purportedly thnk for people. --Lean Software Development: An Agile Toolkit, p. 62, Mary and Tom Poppendieck

For everyone who exalts himself will be humbled, and he who humbles himself will be exalted. --Luke 18:14b

It doesn't matter how fast you develop software if you can't test it at the same rate. --Lean Software Development: An Agile Toolkit, p. 82, Mary and Tom Poppendieck

Search me, O God, and know my heart: try me, and know my thoughts: And see if there be any wicked way in me, and lead me in the way everlasting. --Psalm 139:23-24

Though the fig tree does not bud and there are no grapes on the vines, though the olive crop fails and the fields produce no food, though there are no sheep in the pen and no cattle in the stalls, yet I will rejoice in the Lord, I will be joyful in God my Savior. --Habakkuk 3:17-18

An organization that respects software developers as professionals will expect them to design their own jobs with proper training, coaching, and assistance. It will expect them to improve continually the way they do their work as part of a learning process. --Lean Software Development: An Agile Toolkit, p. 99, Mary and Tom Poppendieck

An organization has to value leadership in order to develop leaders. --Lean Software Development: An Agile Toolkit, p. 115, Mary and Tom Poppendieck

We need to adopt the attitude that the internal structure of a system will require continuous improvement as the system evolves. Just as manufacturing processes are continuously improved by production workers, so must a software system be continuously improved by developers. --Lean Software Development: An Agile Toolkit, p. 141, Mary and Tom Poppendieck

When a developer finds something wrong with the code base, something that interferes with the smooth flow of development or its smooth execution, then she or he should stop the line -- stop adding new features. The team should take the time to find and fix the root cause of the problem before proceeding with more development. --Lean Software Development: An Agile Toolkit, p. 143, Mary and Tom Poppendieck

A system is not just the sum of its parts -- it is the product of their interactions. --Lean Software Development: An Agile Toolkit, p. 153, Mary and Tom Poppendieck

The most fertile ground for productivity improvement in software development lies in not implementing features that are not needed. --Lean Software Development: An Agile Toolkit, p. 177, Mary and Tom Poppendieck

If your moral ideas can be truer, and those of the Nazis less true, there must be something -- some Real Morality -- for them to be true about. --Mere Christianity, p. 13, C.S. Lewis

If you are on the wrong road, progress means doing an about-turn and walking back to the right road, and in that case the man who turns back soonest is the most progressive man. --Mere Christianity, p. 28, C.S. Lewis

To what will you look for help if you will not look to that which is stronger than yourself? --Mere Christianity, p. 59, C.S. Lewis

If somebody else made me, for His own purposes, then I shall have a lot of duties which I should not have if I simply belonged to myself. --Mere Christianity, p. 74, C.S. Lewis

One of the marks of a certain type of bad man is that he cannot give up a thing himself without wanting every one else to give it up. That is not the Christian way. An individual Christian may see fit to give up all sorts of things for special reasons -- marriage, or meat, or beer, or the cinema; but the moment he starts saying the things are bad in themselves, or looking down his nose at other people who do use them, he has taken the wrong turning. --Mere Christianity, p. 79, C.S. Lewis

But love, in the Christian sense, does not mean an emotion. It is a state not of the feelings but of the will. --Mere Christianity, p. 129, C.S. Lewis

If you could see humanity spread out in time, as God sees it, it would not look like a lot of separate things dotted about. It would look like one single growing thing -- rather like a very complicated tree. --Mere Christianity, p. 180, C.S. Lewis

The question is not what we intended ourselves to be, but what He intended us to be when He made us. He is the inventor, we are only the machine. --Mere Christianity, p. 203, C.S. Lewis

We may be content to remain what we call 'ordinary people;' but He is determined to carry out a quite different plan. To shrink back from that plan is not humility: it is laziness and cowardice. To submit to it is not conceit or megalomania: it is obedience. --Mere Christianity, p. 204, C.S. Lewis

If you simply try to tell the truth...you will, nine times out of ten, become original without ever having noticed it. --Mere Christianity, p. 226, C.S. Lewis

That's the essence of the spike concept. We try to hammer through our ignorance, not by building a complex, well-crafted program for the ages, but by finding something simple, ideally trivial, that bridges gaps in our knowledge. --Extreme Programming Adventures in C#, p. 10, Ron Jeffries

Is our work good enough but not so good that we are wasting time? --Extreme Programming Adventures in C#, p. 42, Ron Jeffries

Kent Beck taught me that if the code needs a comment we should take that as a sign that the code isn't done yet: either it doesn't work, or it isn't good enough. --Extreme Programming Adventures in C#, p. 51, Ron Jeffries

Kent Beck taught us to be aware [of] when we're adding functionality, and he suggested that we should not try to clean up, or refactor, the code at that time. --Extreme Programming Adventures in C#, p. 95, Ron Jeffries

...we always like to say it'll be easier to do now than it will be to do later. Not likely: I plan to be smarter later than I am now... --Extreme Programming Adventures in C#, p. 217, Ron Jeffries

Software development is an activity that takes place over months and years, and the team needs to work at a pace that keeps them strong and growing stronger, over the entire term. --Extreme Programming Adventures in C#, p. 252, Ron Jeffries

I know that once I get programming, it's hard to turn back to tests, and so my best bet is to start with tests.--Extreme Programming Adventures in C#, p. 277, Ron Jeffries

When a problem looks difficult, this is more often due to our ignorance than it is to anything inherently tricky and difficult in the problem. --Extreme Programming Adventures in C#, p. 404, Ron Jeffries

Our simple style of development focuses on putting every idea we have into the code and on removing all the duplication. The result is that the ideas tend all to be in just one place. So even if the idea is wrong, there tends to be only one place needing to be changed. --Extreme Programming Adventures in C#, p. 442, Ron Jeffries

The more frequently we take a break to reflect on how things are going, the sooner we are likely to realize when we're off our best track. --Extreme Programming Adventures in C#, p. 469, Ron Jeffries

We cannot know the pressures and dates that our customers and managers are subject to. And we should not try to take responsibility for them. What we can do is lay out the project as we understand it, with costs and recommendations, and let them adjust things to best meet their needs. They must manage: we can provide the information they need to do it. --Extreme Programming Adventures in C#, p. 488, Ron Jeffries

It is essential to determine with absolute clarity, shared understanding, and deep conviction the purpose of the community. From that, all else must flow. It is what will bind the group together as worthy of pursuit. --Birth of the Chaordic Age, p. 7, Dee Hock

Community is not about profit, it is about benefit. We confuse them at our peril. --Birth of the Chaordic Age, p. 43, Dee Hock

In a very real sense, followers lead by choosing where to be lead. --Birth of the Chaordic Age, p. 68, Dee Hock

Success, while it may provide encouragement, build confidence, and be joy filled, often teaches an insidious lesson -- to have a high opinion of self. It is from failure that amazing growth and grace so often come, provided only that we can recognize it, admit it, learn from it, rise above it, and try again. --Birth of the Chaordic Age, p. 71, Dee Hock

People are not "things" to be manipulated, labeled, boxed, bought, and sold. Above all else, they are not "human resources." --Birth of the Chaordic Age, p. 73, Dee Hock

I suppressed my perspective of what the future might be and tried to create the conditions by which new concepts could emerge. --Birth of the Chaordic Age, p. 131, Dee Hock

"Human resources" are mined, smelted, shaped, made into products, worn out, and discarded with little more consideration on the part of monetary shareholders and management than they might give to a load of ore or a pile of lumber. --Birth of the Chaordic Age, p. 169, Dee Hock

Making good judgments and acting wisely when one has complete data, facts, and knowledge is not leadership. It's not even management. It's bookkeeping. Leadership is the ability to make wise decisions, and act responsibly upon them when one has little more than a clear sense of direction and proper values; that is, a perception of how things ought to be, understanding of how they are, and some indication of the prevalent forces driving change. --Birth of the Chaordic Age, p. 236, Dee Hock

When organizations lose shared purpose and principles -- their sense of community -- they are already in the process of decay and dissolution, even though they may linger with outward appearance of success for some time. --Birth of the Chaordic Age, p. 298, Dee Hock

Just as a moviemaker selects aspects of experience and presents them in an idiosyncratic way to tell a story or make a point, a domain modeler chooses a particular model for its utility. --Domain-Driven Design, p. 3, Eric Evans

It is vital that we play around with words and phrases, harnessing our linguistic abilities to the modeling effort, just as it's vital to engage our visual/spatial reasoning by sketching diagrams. --Domain-Driven Design, p. 31, Eric Evans

The knowledge and skills of experienced designers won't be transferred to other developers if the division of labor prevents the kind of collaboration that conveys the subtleties of coding a model-driven design. --Domain-Driven Design, p. 61, Eric Evans

Defining objects that capture concepts of the domain seems very intuitive on the surface, but serious challenges are lurking in the shades of meaning. --Domain-Driven Design, p. 81, Eric Evans

As constraints on associations are discovered they should be included in the model and implementation. They make the model more precise and the implementation easier to maintain. --Domain-Driven Design, p. 87, Eric Evans

When you place some classes together in a module, you are telling the next developer who looks at your design to think about them together. If your model is telling a story, the modules are chapters. --Domain-Driven Design, p. 110, Eric Evans

Much of the power of objects rests in the intricate configuration of their internals and their associations. An object should be distilled until nothing remains that does not relate to its meaning or support its role in interactions. --Domain-Driven Design, p. 136, Eric Evans

Modeling and design is not a constant forward process. It will grind to a halt unless there is frequent refactoring to take advantage of new insights to improve the model and the design. --Domain-Driven Design, p. 177, Eric Evans

Modeling is as inherently unstructured as any exploration. Refactoring to deeper insight should follow wherever learning and deep thinking lead. --Domain-Driven Design, p. 189, Eric Evans

A modeler/designer cannot afford to get attached to his own ideas. --Domain-Driven Design, p. 219, Eric Evans

A pattern is not a cookbook. It lets you start from a base of experience to develop your solution...and it gives you some language to talk about what you are doing. --Domain-Driven Design, p. 227, Eric Evans

To have a project accelerate as development proceeds--rather than get weighed down by its own legacy--demands a design that is a pleasure to work with, inviting to change. A supple design.. --Domain-Driven Design, p. 244, Eric Evans

The names of classes and methods are great opportunities for improving the communication between developers, and for improving the abstraction of hte system. --Domain-Driven Design, p. 246, Eric Evans

...Understanding a class means understanding what it is attached to. --Domain-Driven Design, p. 265, Eric Evans

You can't plan on a deep model; you just have to accept the opportunity when it arises, change your strategy, and refactor. --Domain-Driven Design, p. 386, Eric Evans

Distillation is the process of separating the components of a mixture to extract the essence in a form that makes it more valuable and useful. A model is a distillation of knowledge. With every refactoring to deeper insight, we abstract some crucial aspect of domain knowledge and priorities. --Domain-Driven Design, p. 397, Eric Evans

A team committed to evolving order must fearlessly rethink the large-scale structure throughout the project lifecycle. The team should not saddle itself with a structure conceived of early on, when no one understood the domain or the requirements very well. --Domain-Driven Design, p. , Eric Evans

...We have to discipline ourselves to produce organizing prinicples and core models that are pared down to contain nothing that does not significantly improve the clarity of the design. The truth is, almost everything gets in the way of something, so each element had better be worth it. Realizing that your best idea is likely to get in somebody's way takes humility. --Domain-Driven Design, p. 495, Eric Evans

I am not sentimental about my designs. The success of a design is not neccessarily marked by its stasis. Take a system people depend on, make it opaque, and it will live forever as untouchable legacy. A deep model allows clear vision that can yield new insight, while a supple design facilitates ongoing change. --Domain-Driven Design, p. 502, Eric Evans

Depth is better achieved by looking from two points at once. --Actual Minds, Possible Worlds, p. 10, Jerome Bruner

I have developed a feel for what to expect and I usually see what I am looking for, no matter what else I may miss. --Actual Minds, Possible Worlds, p. 47, Jerome Bruner

The question of how we come to endow experience with meaning...is the question that preoccupies the poet and the storyteller. --Actual Minds, Possible Worlds, p. 12, Jerome Bruner

The moment one abandons the idea that "the world" is there once for all and immutably, and substitutes for it the idea that what we take as the world is itself no more or less than a stipulation couched in a symbol system, the the shape of the discipline alters radically. And we are, at last, in a position to deal with the myriad forms that reality can take -- including the realities created by story, as well as those created by science. --Actual Minds, Possible Worlds, p. 105, Jerome Bruner

There is no seeing without looking, no hearing without listening, and both looking and listening are shaped by expectancy, stance, and intention. --Actual Minds, Possible Worlds, p. 110, Jerome Bruner

For at the heart of any social change one often finds fundamental changes in regard to our conceptions of knowledge and thought and learning, changes whose fulfillment is impeded and distorted by the way in which we talk about the world adn think about it in the coin of that talk. --Actual Minds, Possible Worlds, p. 121, Jerome Bruner

Effective innovators succeed not only by reshaping culture by their primary contribution, but forcing a shape on the criticisms that eventually dislodge them. --Actual Minds, Possible Worlds, p. 145, Jerome Bruner

A programmer is greatly influenced by the language in which programs are written; there is an overwhelming tendency to prefer constructions that are simplest in the language, rather than those that are best for the machine. --Donald E. Knuth, The Art of Computer Programming, Volume I

Only by changing how we interact can shared visions, shared understandings, and new capacities for coordinated action be established. --The Fifth Discipline, p. xiv, Peter Senge

In building learning organizations, there is no "there," no ultimate destination, only a lifelong journey. --The Fifth Discipline, p. xv, Peter Senge

People with a high level of personal mastery are able to consistently realize the results that matter most deeply to them. In effect, they approach their life as an artist would approach a work of art. They do that by becoming committed to their own lifelong learning. --The Fifth Discipline, p. 7, Peter Senge

The discipline of personal master...starts with clarifying the things that really matter to us, of living our lives in the service of our highest aspirations. --The Fifth Discipline, p. 8, Peter Senge

How can a team of committed managers with individual IQs above 120 have a collective IQ of 63? --The Fifth Discipline, p. 9, Peter Senge

Real learning gets to the heart of what it means to be human. Through learning we re-create ourselves. --The Fifth Discipline, p. 14, Peter Senge

Rather than pushing harder to overcome resistance to change, artful leaders discern the source of the resistance. They focus directly on the implicit norms and power relationships within which the norms are embedded. --The Fifth Discipline, p. 80, Peter Senge

Don't push growth, remove the factors limiting growth. --The Fifth Discipline, p. 95, Peter Senge

Often, leverage follows the principle of economy of means: where the best results come not from large-scale efforts but from small well-focused actions. --The Fifth Discipline, p. 118, Peter Senge

Once a student develops the rare talent for seeking his or her own ignorance, teachers become irrelevant. --Questions and Ignorance, John H. Lienhard

Whatever my business might be, I'm best served when I begin by finding the place where I know the least. If I begin as the expert, I learn nothing. But, when I start out ignorant, then the fun really begins. --Questions and Ignorance, John H. Lienhard

To seek personal fulfillment only outside of work and to ignore the significant portion of our lives which we spend working would be to limit our opportunities to be happy and complete human beings. --Bill O'Brien in The Fifth Discipline, p. 144, Peter Senge

The greatest unexplored territory in the world is the space between our ears. --Bill O'Brien in The Fifth Discipline, p. 162, Peter Senge

There's nothing more powerful you can do to encourage others in their quest for personal mastery than to be serious in your own quest. --The Fifth Discipline, p. 173, Peter Senge

Until the gap between my espoused theory and my current behavior is recognized, no learning can occur. --The Fifth Discipline, p. 202, Peter Senge

The facilitator always walks a careful line between being knowledgeable and helpful in the process at hand, and yet not taking on the "expert" or "doctor" mantle that wuld shift attention away from the members of the team, and their own ideas adn responsibility. --The Fifth Discipline, p. 246, Peter Senge

One of the most reliable indicators of a team that is continuously learning is the visible conflict of ideas. --The Fifth Discipline, p. 249, Peter Senge

The companies I have come to admire most show little obvious sense of hurry. They are more like an extended family, embarked upon a project whose goal is only partly expressed in getting something done; the other part of the goal is that all involved learn and grow and enjoy themselves along the way. --Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency, p. 210, Tom DeMarco

If you idenitify any project as risk-free, or even relatively risk free, cancel it. You're going to need the resources and calendar time to do something transformational. --Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency, p. 210, Tom DeMarco

Success on extreme projects is measured in three equally important ways. First, the product gets shipped. Second, the project approaches its mission profile, a prioritized combination of scope, schedule, resource, and defect level, and third, the project team is healthy at the end. --Adaptive Software Development, p. 4, Jim Highsmith

Adaptation is an organism's or an organization's ability to alter its internal rules of operation in response to external stimuli. --Adaptive Software Development, p. 10, Jim Highsmith

The greatest risk we face in software development is that of overestimating our own knowledge. --Adaptive Software Development, p. 14, Jim Highsmith

At the core of our ability to succeed in extreme environments is the admission that we don't know it all, that we need to enrich our understanding through better attention to how we explore our world, to how we collaborate, to how we learn--in essence, to how we adapt as living systems. --Adaptive Software Development, p. 14, Jim Highsmith

Fast learning requires iterations--try, review, repeat. --Adaptive Software Development, p. , Jim Highsmith

At its core, adaptive software development reflects the developer's mental switch from an inexorable belief in imposed order--a linear, deterministic view of the world--to an acceptance of emergent order as a source of solutions in complex realms. --Adaptive Software Development, p. 17, Jim Highsmith

Success goes to those who can hold anxiety, who can attune themselves to paradox and uncertainty, and who can sustain creative tension. Innovation, creativity, and emergent results are born in the transition zone at the edge of chaos. --Adaptive Software Development, p. 37, Jim Highsmith

As the goal becomes less certain, and the number of changes to product requirements increases, success in development depends more on continuous learning about the product than on predicting its final form. --Adaptive Software Development, p. 85, Jim Highsmith

Jesus called them together and said, "You know that those who are regarded as rulers of the Gentiles lord it over them, and their high officials exercise authority over them. Not so with you. Instead, whoever wants to be great among you must be your servant, and whoever wants to be first must be slave of all. For even the Son of Man did not come to be served, but to serve, and to give his life as a ransom for many. --Mark 10:42-45

XP is my attempt to reconcile humanity and productivity in my own practice of software development and to share that reconciliation. --Extreme Programming Explained, Second Edition, p. 3, Kent Beck

If you want people to take your advice, you need to solve more problems than you create. --Extreme Programming Explained, Second Edition, p. 27, Kent Beck

Good teams don't just do their work, they think about how they are working and why they are working. They analyze why they succeeded or failed. They don't try to hide their mistakes, but expose them and learn from them. No one stumbles into excellence. --Extreme Programming Explained, Second Edition, p. 29, Kent Beck

Software development is a game of insight, and insight comes to the prepared, rested, relaxed mind. --Extreme Programming Explained, Second Edition, p. 41, Kent Beck

The cogitation required for a breakthrough solution requires a relaxed, contemplative state of mind. --Rapid Development, p. 217, Steve McConnell

Rather than divide and conquer, an XP team conquers and divides. --Extreme Programming Explained, Second Edition, p. 76, Kent Beck

Because design has leverage and because design ideas improve with experience, patience is one of the most valuable skills a software designer can possess. There is an art to designing just enough to get feedback, and then using that feedback to improving the design enough to get the next round of feedback. --Extreme Programming Explained, Second Edition, p. 104, Kent Beck

Designing software is not done for its own sake in XP. Design is in service of a trust relationship between technical and business people. Weekly delivery of requested functionality is the cornerstone of that relationship. It doesn't matter what the theoretical best way to design might be. The convenience of the designers is lower on the priority list than maintaining the diverse relationships that create value within the team. --Extreme Programming Explained, Second Edition, p. 109, Kent Beck

It's worse to fail with an XP team then to succeed with a pure waterfall team. The goal is successful and satisfying relationships and projects, not membership in the XP Club. --Extreme Programming Explained, Second Edition, p. 146, Kent Beck

For sole preoccupation with the world is sleep, but immersion in him is life. --A Testament of Devotion, p. 14, Thomas Kelly

To this extraordinary life I call you -- or He calls you through me -- not as a lovely ideal, a charming pattern to aim at hopefully, but a serious, concrete program of life, to be lived here and now, in industrial America, by you and by me. --A Testament of Devotion, p. 27, Thomas Kelly

The lion hath roared, who can but tremble? The voice of Jehovah hath spoken, who can but prophesy? --Amos 3:8

Don't grit your teeth and clench your fists and say, "I will! I will!" Relax, take hands off. Submit yourself to God. Learn to live in the passive voice -- a hard saying for Americans -- and let life be willed through you. For "I will" spells not obedience. --A Testament of Devotion, p. 34, Thomas Kelly