Welcome to the World of Peter Rabbit!
aka Introduction by the Author
Once, many, many years ago, one morning I was sitting and wondering what to do for my son, first-graders who would like programmed like me, but unfortunately all the familiar tools such as Karel and others like it seemed to be useless. Daughter came when she was ready to take her to kindergarten. She wore a pale blue shirt with a large picture of a white rabbit. I was so impressed that I quickly sketched a basic drawing of him. At that time ran on television series "The World of Peter Rabbit and his friends", according to the literary works by British writer Helen Beatrix Potter. And a new hero of programming world was born!
Soon he got a girlfriend. After all, two is better than one. First she named Petra (in Czech language it is like girl-Peter). But the names were confused and especially in English. So the couple Peter and Lucy was formed, like the eponymous novel by the French writer Romain Rolland. Petra still remained in the names of many internal program variables.
Peter was rapidly increasing, as well as growing son and with that his programming requirements. A very common image was then, son and daughter sitting at their PC and puttering something in Peter. The son is grown-up today and I go to him contrary to advice me, because it is now a much better programmer than I am. I wonder how much of his development has involved Peter? I think it had to show that since 8 years he was teaching logical thinking and algorithm development.
With regret I observe how real programmers disappear around me. Such those real ones, who understand how things work inside and what is XOR and who write programs in hex code. Today, under commercial pressure, people are switching to puzzle systems, although they are slow and cumbersome, and even the most primitive operations they solve through multistage XML parsers, because they do not see what is going on inside all those modules. With overkill the world becomes increasingly complex and yet it is so simple in fact. Just penetrate into the essence and try to make things as easy as possible. Sacrificing a little more of their own work and effort is needed just for the good feeling, that what I give to others, is really good.
One of the things that is sometimes criticized on Peter is his small versatility. Reportedly the object programming, true color, web applications are missing. The Other minds a rabbit puerility (of course, only the age group around "-teens" who no longer want to be children, but they are not parents yet). Peter is NOT universal programming tool and so well. Just that Peter knows A LOT and does not want to know EVERYTHING, because then all its advantages, based on simplicity would disappeared. Proper programmer uses what he has available, and he can use it fully. And if that's not enough, he adds something else. He does not care whether there running rabbit. Even the thought idea came to me that anyone who can not tolerant and adaptive view of the world, he/she can never be a good programmer.
The main purpose of Peter is: quickly and easily create simpler programs and simple games focused especially for graphics. May be used by children since preschool. And maximum limit - does not exist. I often using Peter myself, although otherwise I programming in other languages, because in Peter you can quickly throw together something and it‘s much easier than in anything else. Not only because of programming in icons, but mainly because of good functionality. I’m most using 3D graphics, I have never come cross to something similar and easily accessible 3D engine.
Someone has sometimes a concern that it will be useless to waste time studying tool which later stops using. He/she would start now "with something big." But this is the wrong approach. Art of programming is not about instruments and how much of them you can control (which is a common approach today - learning control of tools), but it is about how the programmer can think of. If you will learn think programmatically, then you don‘t not care in what you programming, because then it is always about just a little bit different syntax.
That is why Peter does not even deal with object programming. The main thing is to learn structured programming and logical thinking. And what is variable. But objects and classes - these are only structures and simplifying their using. It is a mistake to learn programming from "backward", as it often tend to do today and to exaggerate the importance of "massive tools". If one learns to understand the basics and logic, then it is easy to him to understand even the higher tools. Often he will not use them rather and he will choose his own, easier procedures.
I am grateful to all those who are committed to the promotion of Peter. Especially thanks to previous users, who for many years funded the development of Peter and brought him so to his present perfection ( ;-) ). Further developments would have harmed it and therefore it was released as freeware. I wish you let Peter to bring benefit and joy to you.
Miroslav Nemecek