Java: the holy language of God

After years and years of studying various holy sources I am finally able to present my research results. Looking at the Qur’an (yes, Ministry of Homeland Security, I’m one of them apparently), the Popol Vuh, the Bhagavad-Gita and even a page or two of the Bible clearly proves that God (or Gods, as with omnipresent omniscient entities you can never be sure with whom you are talking right now) speaks Java (and not more than Java Language Specification 1.2).

Every reader of the aforementioned books first notices the convoluted and verbose use of syntactical elements. Every reader of Java source code first notices the convoluted and verbose use of syntactical elements. Of course, this is good, as it gives you time to think while reading the text, without overloading your mind with to many facts in to little time. Linguists found that redundancy in a language improves its error resistance and its understandability.

Along with that, there is a lack of shorthand constructs and cryptic sequences of unspeakable characters. Gods language is clean and simple so that every creature can hear it without getting knots in their brain. It is notable that some print media uses text known from lesser languages like *(x+=y++%8) to signal profanity.

The products and rules of God expressed in the holy books apply to the whole universe. Most of the texts make explicit statements about this “write once, run everywhere” principle. The creator of the universe made his rules .. well .. universal. Being the omnipotent entity he is he could have created a universe where he has no power. But to avoid imploding the brains of those who study the universe he obviously refrained from creating that paradox.

Holy (and maybe not so holy) men (and woman, but less in numbers and usually burning rather quickly if being overly verbose) pointed out that one can find the answer to any of life’s problems in those holy books, if you study the text long enough. Smart (and sometimes not so smart) men (and woman, but less in numbers but not burning these days due to worries about the CO2 footprint) pointed out that one can find the answer to any of the core programming problems in the fairly complete Java runtime library, if you study the JavaDoc long enough.

Sadly, even tho the Gods are Java and Java therefore is God, there is evidence that humans are probably created in C or C++.

The first thing you notice when you look at humans is their obvious need for manual resource management. Breathing is a classical example of allocating a resource (air) and freeing it after use (breathing out). There are numerous examples where failure of either allocation or release of the resource caused unrecoverable errors in the program execution.

Looking around the planet, it is also obvious that humans in general do not do a good job in freeing their resources properly. Garbage collection is virtually unknown even tho viable garbage collectors exist. The various resource allocation strategies and conflicts give cause to much grief and pain.

Looking at humans you can see a clear platform dependency. Although it is claimed that the same source or genetic code could be adapted to various environments, humans tend to die rather quickly (and sometimes in fairly interesting ways) if transplanted to a different runtime environment.

And last but not least: A freshly created human is void of any usable strategies and has to spend years and years to build up a reasonable runtime library (which then is over-adapted to the specific environment and fails easily when ported to a different platform (see the section on resource management above). Likewise the C languages themselves come with only the minimum standard library. Extra functionality has to be manually coded or brought in from outside. Humans call this process education, programmers “importing a library”. Different educations/libraries usually come with complex and contradictory requirements causing more vendor dependence and thus again pain and grief.

So humans: abandon your erroneous ways, repent and join the forces of god and stick to 100% pure Java.

This entry was posted in Non-Technical Topics on by .

About Thomas

After working as all-hands guy and lead developer on Pentaho Reporting for over an decade, I have learned a thing or two about report generation, layouting and general BI practices. I have witnessed the remarkable growth of Pentaho Reporting from a small niche product to a enterprise class Business Intelligence product. This blog documents my own perspective on Pentaho Reporting's development process and our our steps towards upcoming releases.

3 thoughts on “Java: the holy language of God

    1. ThomasThomas Post author

      Whenever I get asked: What parts of a language shall I cover to learn, I only have one answer. It depends.

      If you end up in a job where you write J2EE applications, you wont need any Swing or desktop UI knowledge. If you on the other spectrum end up in a embedded-Java job, forget about both J2EE and desktop. And if you happen to work for a desktop tool vendor, your J2EE knowledge might become rusty and crumble.

      So here is what I tell a novice who comes to the temple: “Go out and find yourself a project that you want to do with the Java programming language. Make sure the project is fun and something that really interests you – not just a ‘hello world’ or yet-another-calculator example program. And then go out and start doing it. You will pick up all relevant knowledge along the way.”

      So go grab yourself an introduction book to Java and write code. Everything else comes from there.

      However, there is no magic pill and the course you quote will be a disappointing exercise in uselessness.

      If you believe that a 6-week course can make you competent (not even master, just good enough not to kill yourself) in that long list of complex technologies, then good luck. You will need it. 6 weeks will be enough to cover the basic Java language skills, assuming you are already fluent in a C-style language.

      At that point, you may be good enough to roam through the standard library yourself. But Spring? J2EE? Hibernate. Never. If your instructor is a genius, he may be able to scratch one of these topics in a way that you can get a glimpse at the mountain. But nothing more, and that only if he is that good.

      Stay away from fishy offers that claim unreasonable results. Grab a book from a library, it costs you nothing and you get better results out of it.

Comments are closed.