=head1 Kephra Philosophy =head2 Main Principle ... is simply freedom. Because even programmers are human beings in the first place and inherently want to feel free, joyful and creative (productive). And you are not free if it doesn't run on your operating system ..., is gigantic, slow, has a lot of dependencies or a restricitve license or can't just be copied around. The usage is also crippled if important features are missing or you have to learn something you don't want to in order to get your work done. The beginner is glad to do his stuff by simple and visually-assisted methods, however experts are happiest when they control every detail and achieve their goals as fast as they can think. True freedom consideres both types of users and a smooth path to become an expert. Freedom also means not to get stuck in old ways, but combine the best (not the most popular) ideas available and not being afraid to make own inventions. And the full delight can only manifest if it's beautiful on every level. =head2 Strategies =head3 Simple Aiming toward less code and only necessary functions is the first rule for several reasons. Yes it is the basis for a small, fast, clean and maintainable program. But also the only option since our dev team is frankly basically just me. =head3 Mature Because half baked solutions are not really enjoyable, we try to develope our features to functional and visual perfection before we publish them in a version marked as stable. Thats why Kephra has very few open construction zones at a time. =head3 Complete All the tools you need should be on one workbench. Either provided by Kephra or well integrated, originating from the operating system or third party software. This enables uninterrupted workflows and functions (or macros) that solve complex tasks at once. Kephra makes it easy to integrate your favorite program too. =head3 Individual An editor should fully match all preferences of its user, that spends so much time with it. Several types of communication with the program (like notepad, vi, emacs) we plan to support and most features and visuals can be configured and disabled via a typed commands, a dialog and config files. Yet many setting can be changed most quickly in place of their display by mouse. For deeper modifications use the extensive plugin API, that can be even left behind (with risk). There is no special plugin language - it's all Perl, which also supports your individual coding style. =head3 Unix-Like To achieve the proposed simplicity and power Kephra has a similar design like Unix. That means: it contains a few flexible tools solve the fundamental tasks thoroughly. Only difference: for the most common tasks we already added some ready-to-use functions that combine several of these tools. Consequently are "introspection" and "shell integration" more than buzzwords to us. =head3 Graphical To search for new and advanced graphical input and display methods was one of the original reasons for Kephra being founded. Graphics allow a much higher information density than text, which is very needed in a software world that is getting ever more complex. =head3 Information-Centered It may start with small text snippets you want to set aside and save for later reuse. But we believe that editor can assist their users much more in creating, sorting, storing and sharing their relevant data. Even while normal usage the editor can remember details to prevent repetitive work. It's important to us seeing you as the owner of all your data. =head2 DISCLAIMER Like platons politeia, this document descibes the ideal state of version 1.0.