Java has already become the programming language of choice for Mobile Developers, Enterprise Developers, Research Scientist. However one area that Java still hasn't made significant traction is in the Office Space (remember the movie?).
The so called Power Users who typically creates reports, creates prototypes and small applications for their departmental usage. These users are not GUI designers, they don't fully understand the theories of computer science but these people are more creative. (If you don't know the limitation of physics, only then you can dream to go faster than light.)
What this people really need is SQL-like language that many people call 4GL - Fourth Generation Language since it is like an interpreter for the third abstraction of program ( Assembly code, Pnemonics, C/C++/Java Language)
What we need is something similar for Java? Let's call it 4JL (Fourth Generation Java Language). What will be the features of such a 4JL? Here are my thought on it.
* It will have only very limited functionality but will include Queries (SQL), Basic Flow Control and Rapid Dynamic GUI Generation on the fly. (Like when you select something the output is OpenOffice Spreadsheet so the power user can then work their "Spreadsheet" magic on top of it.
* It will cater to only 80% of these developers. 20% of the remaining developers can use Java for more flexibility.
* For Data Entry for updates it will dynamically create screens which adjusts to the local "skin" of the OS. (Thanks J2SE 5.0 for this wonderful feature.)
* A Functional Application can be generated within 15-20 minutes by any "developer" who can define what she wants to store and where.
Does it sound interesting?