Grades

Grades are martial art inspired gradings and represented by a color schema. They are given for mastering certain programming tasks and grades can be obtained for different languages (e.g. Python, C, HTML, Javascript etc.).

In programming, there are 8 different belt levels. Each of these belt levels is signified by a different colored belt. However, behind each of these belts is a different level of skill and mastery of the art of programming.

The basic color progression (white -> yellow -> orange -> green -> blue -> purple -> brown -> black) originated from the circumstance that it facilitated dying the same belt (with of course natural dyes and colors extracted from the nature). In such the color order is the due to the fact that each color can be dyed into the next color, hence a programmer can retain their original belt. The first seven (from white to brown) are within the kyū levels of programming belt grades.

Kyū grades are considered to be student degrees, while the dan grades are considered as those of the master levels. A developer that has successfully progressed through the kyū grades then may enter the dan grades. Dan means "step", "stage" or "phase". Achieving dan grade means that, while one is no longer considered a beginner, one is not yet necessarily an expert. Rather it means that one learned the basics.

From student to teacher, from impetuous to circumspect, from taking to giving and from war to peace, this is the objective of programming martial arts training. Those that do not fully understand this follow a short path with no reward other that egotism and selfishness awaiting.

One of the philosophical roots of the arts of programming is to "be like water and constantly seek the lowest point via the way of least resistance". This conception must be firmly understood, appreciated and accepted to permit and then encourage an attitude of first non-attainment and then later no-mind. This is all achieved only with diligent and repetitive practice and never completed. Those that find fault in this system are those who hold on to an attitude of superiority that should not be tolerated or endorsed as true arts of programming. o

karate_belts.jpeg

name description symbol requirement level language
White belt The highest kyū represents the first grade in becoming a programmer. It is obtained by declaring the willingness to understand informational technology. The white signifies "innocence" and is like a blank paper that needs to be painted or like a blank hard-disk which needs to be filled with information. In such it is a symbol for space. Symbol: a white/black space, perhaps yin/yang sign, or an empty Denigma.
<bound method Image.name of <Image: glossy-white-sphere.png>>
Accept Path of Truth II 0 English
Yellow belt The yellow belt will be obtained if a quest was successfully completed. It assumes that the developer mastered the basics of programming and is familiar in at least one language. This means also s/he can use the command line / bash. Yellow signifies that the first sun lights are enlightening the developer. Symbol: Sun rays like the Japanese flag.
<bound method Image.name of <Image: Rebel_symbol_Yellow.png>>
1 Quest, Command line, Basics of 1 language 1
Orange belt In order to get the orange belt the developer shall have solved two quests. The second quest should be in another language and prove that the developer is able to program in a second language and general indicates be ability to quickly learn multiple languages based on a foundation programming concepts. Orange signifies the "earth" from which the plant (meaning the developer) takes root. Symbol: earth and root
<bound method Image.name of <Image: root_chakra.png>>
2 Quests, Basics of 2 languages 2
Green belt The green belt is conferred to those that found solutions to three quests created or contributed significantly to an app. It also means that at this point the developer owns its own reversion control repository. The green signifies the growth of a plant. Symbol: a plant or its leaf
<bound method Image.name of <Image: leaf-street-logo.png>>
3 Quests, Contribute to 1 App 3
Blue belt To get the blue belt four quests need to be have solved. Blue signifies "towards the heaven" and means the programmer is reached new horizons. Symbol: A plant seen from the bottom raising toward the sky.
<bound method Image.name of <Image: throat_chakra.png>>
4 Quests, Virtual environments 4
Purple belt The purple belt is obtained by coming up with solutions to five quests and if the programmer leads the development of an app. Purple signifies the flowers of a plant. Symbol: A purple flower
<bound method Image.name of <Image: chrysanthemum-flower-purple-with-lime-green-white-center-isolated-on-white-background.png>>
5 Quests, Own App 5
Brown belt Once a developer reaches the lowest kyū, which is signified by the brown belt (six quest solved), s/he will the become the opportunity to test his/her way into the way into level one of the dan. The developer already reached a solid understanding of information technology. Brown signifies "danger" and maturity of a solid stem like those of a huge tree. Symbol: A tree
<bound method Image.name of <Image: tree.png>>
6 Quests, Own server 6
Black belt The black belt (obtained by solving seven quests) consists of different levels of dan. The first dan is tested based on skill, like all the levels of kyu. However, the grades above the first dan are higher order levels and contribution to those grades is based on the contribution to the development of programming and management as well as advanced programming techniques. Black signifies "the persons skill and mastery over fear". Black is also symbolic for the night as well as the opening to a new universe. Symbol: The night/space
<bound method Image.name of <Image: symbol_God_wheel.png>>
7 Quests, Parallel programming 7
Ninja Programmers which gained the second dan are Ninjas. Like assessines, Ninjas relie upon their stealth and ferocity. They are able to see pattern hidden in data. Technically, a Ninja is master of regular expression and is able to execute various types of data mining techniques. Symbol: Katanas crossed
<bound method Image.name of <Image: Ninja-with-crossed-swords-symbol.png>>
8 Quests, Regular expression, Data mining 8
Samurai Samurais are analogous to European knights. They are noble and work for higher ups and are renowned for their great bravery and code of honor. A samurai relies on the code of honor. Samurai write very good documentation. One of outstanding abilities of a programmer Samurai is that they have masters various methodologies of machine learning. Symbol: Armor, helmet or mask
<bound method Image.name of <Image: fearsome-monochrome-samurai-mask.png>>
9 Quests, reST, Documentation, Machine learning 9
Master Masters are highly experienced programmers which have invented impacting concepts and usually have several programmers students under supervision.
<bound method Image.name of <Image: master_symbol.gif>>
10 Quests, Impacting code, Supervision 10
Grandmaster Grandmasters have made a great contributions to programming. They are the most talented coders and have often a framework generated that has high usability. Quite commonly they are moderating a mailing.
<bound method Image.name of <Image: Divisio_Militaris_symbol.jpg>>
11 Quests, Own Framework, Active mailing list 11
Sensei A programmer that is deemed capable of teaching independently as teacher or instructor is nominated to the grade of a Sensei.
<bound method Image.name of <Image: SagaNew.png>>
12 Quests, Teaching 12
  • 13 grades

Comment on This Data Unit