1. Herbert Breunung
  2. Kephra


Herbert Breunung  committed f165dfc

redone cp basic ideas

  • Participants
  • Parent commits c0634d4
  • Branches sp3

Comments (0)

Files changed (1)

File doc/CompleteProgramming.pod

View file
  • Ignore whitespace
     This document describes a set of thougths and workflows
     that evolved from the development of the Kephra editor.
-    Please stick to these guidelines if you wan tto join the team.
+    Please stick to these guidelines if you wan to join the team.
 =head2 Overview
     So I had to use just two letters to sound even more important.
     This document is long and you might not want to read it.
-    I understand that and pushed myself to shorten it where I could
-    and the next twenty lines provide you with all the basic ideas.
+    I understand that and pushed myself to shorten it where I could.
+    The next twenty lines provide you with all the basic ideas.
     But there is an even more destilled essence, which I've not written down yet.
     Honesty, trust and understanding are the foremost productivity boosters.
     So it is not hard to understand why psychological aspects are most important
 =head3 Basic Ideas
-    1) There is an elemental progression from an flittering idea to an solid work
-       that any experienced writer has observed. By adding the natural laws of
-       psychology, sociology and some common sense I hope to be more productive,
-       without cutting something on the one side of the blanket and adding it
-       othe the opposite.
+    1) The natural progression from a flittering idea to an solid product has some
+       inherent logic and order. Discovering and supporting it, is the main aim of CP.
-    2) Each methodology has its good and weak spots.
-       I tried to combine the strong ones and filling in what I felt was missing,
-       because it should be possible to combine sound planning, practicability,
-       changing goals and quick results without reaching for any extremes.
+    2) In other words: we look for a careful balance between planning and flexibility.
+    3) This will be achieved by splitting the overall task into handy parcels,
+       in which one goal has priority. So work becomes more fun, less of a burden,
+       manageable, measurable and can be parallelized more often.
-    3) All parts of a product are equally important,
-       because only a fully usable software is worthy to spend time with.
-       That includes all parts like the installer, documentation, artwork,
-       but also the not visible parts as tests, comments, and so on.
+    4) Because every subtask has a practical and lasting benefit to the project,
+       there is almost none (felt) overhead.
+    5) CP relies on honest, open and complete communication which happens through
+       (one|a set of) repository.
+    6) All parts of the software as e.g. docs, code, comments, tests, artwork
+       and the installer are equally important and without any of them the product
+       is less usable and therefore not complete.
     2) As a consequence all parts that belong together
        should also be produced and managed together.
        District chiefs should be free to make own decisions but also
        but also bear responsibility for it.
-    3) Any step in the creative process has to be timed,
-       so it pushes the least burden to the developer.
-       That is when most of then needed informations are available
-       and least amount of guessing is needed.
     4) We reduce frustration by cutting some administrative tasks and
        transforming the the rest (as any unloved subtask) to an activity
     5) The awesome powers of prototypes are known but still not fully used.
     6) Software tests are no silver bullet. They are used for several competing
-       purposes and are often not even honestly doable.
+       purposes and are often not even realistically doable.
        That's why a lot of programers hate seriously don't like it.
     7) New tools like hg or git allow new workflows which solve pending problems.
 =head3 Main Goal
     Highest aim of CP is the conscience the code is produced with. As result you get