Kephra / doc / CompleteProgramming.pod

=head1 Complete Programming

This document describes the method Kephra is developed with.
Its highest aim is to have at all times a usable program with the
highest quality at all levels while still letting programming be fun.

=head2 Overview


I hate strict rules or when people tell me what to do and I make fun of them
when they produce wild theories with three letter acronyms that try to be
the answer to everything. But now I am standing here, trying to "sell" you
yet another programming methodology. That irony, isn't it?

=head2 Rational

Well, several reasons brought me there.

1.) All methodologies I know of overlook several aspects of the product.
    That includes even "documentation driven development",
    which gave important impulses for the creation of CP.

2.) I always wanted a sane balance between the old bureaucratic waterfall method
    and the way too shortsighted, modern extreme or agile programming.

=head2 Main Goal

Highest aim is the overall user experience as well as the quality of the code. 
This means not only (almost) no bugs and good documentation,
but also a coherent, consistent application that is a joy to use.

=head2 Phases of Development

=head3 Defining Task

=head3 Early Development

=head3 Normal Development

=head3 Maintainance

=over 4
=item * 
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.