This site is the host for a number of technologies. The most important of them is the Judo (or JudoScript) programming language. Next to Judo are the JuSP (Judo Server Page) web development platform and the JuSPT (JuSP Transform) content management toolkit. These are the key technologies on this site.
Separately, this site also hosts another language called Jamaica, a JVM Macro Assembler. In the programming language spectrum, Judo and Jamaica sit on precisely the opposite ends. While Judo is a dynamic scripting language plus built-in high-level support for application domains, Jamaica only deals with JVM byte-codes. Yet, they still share something in common — simplicity, intuitiveness and effectiveness.
Judo, Sports and Software Engineering
The name of "JudoScript" was adopted quite incidentally. However, the principles of any sports, including judo, can well teach a lesson for software engineering efforts.
Every sport pursues the maximum efficiency in order to win and avoid injuries. If someone tells a tennis player to swing the racket twice in the air before hitting the ball, the response would probably be, "Are you nuts?!"
Unfortunately, such strange things sometimes happen among computer programmers at large. Counter-intuitive methods and technologies are invented and marketed from time to time, and the majority of programmers adopt or are forced to adopt them. We are all guilty of twisting our minds to chase the technical vogue of the time, making good money and wondering why, because good programmers are mostly perfectionists.
To be fair, software engineering is a much larger problem space than any particular sport, hence optimal solutions may not be as easily attainable. It is very easy to come up with many locally-favorable mechanisms and, at the same time, lose sight of the global simplicity and intuitiveness — the Gestalt — that really matter and affect all programmers all the time.
The Judo language and the related technologies are carefully crafted and are aimed at the goal to provide globally simple and intuitive programming solutions of our time.
What To Expect From This Site?
Expect computing technologies of ultra simplicity that work. The belief is:
Simple = Intuitive
Simplicity of computer technologies have two sides: one for creators and one for beholders. From the standpoint of code viewers, it can be defined as:
When a person sees a machine he has never seen before, and he can figure out what the machine does with confidence by taking one or two glances with nothing but domain common sense, then the machine is deemed simple to understand. This contributes to good software maintainability.
From the standpoint of coders, simplicity can be defined as:
A programming environment that allows coders to accomplish a given task with the least number of mental state switches, including making choices, is deemed the simplest or easiet. This contributes to high development productivity and low stress level.
Technologies hosted on this site have a proven track record of being simple and intuitive. People have been loving the RunExeSvc for years for that reason. Jamaica immediately attracted naughty Java programmers' attention, because it is so natural to do JVM assembly programming by writing method bodies with byte-code instructions and macros. Judo appears to be monstrous at first sight, but when you look any closer at all, you will realize how simple it is and how much easier it will make your life as a power computer user or programmer. Then come the ultra flat and light framework of JuSP and JuSPT, which are magically capable of building full-blown web applications with very few constructs and assumptions.
Our mission is to take on the hard part of computing, so that you can focus on addressing business needs and do your jobs more efficiently with lowered stress level, to have more energy and time left for what is truly important to your lives. Program naturally and wisely! Happy coding!