A new uberframework has been announced. The framework, called "The Invisible Framework" features: extreme loose coupling, versatile configurability, clean implementation, and no lock in. It enables you to only have to write 2 lines of code for each object, and the rest comes from configuration files. Maybe they will even get away from those lines in the next version ;)
"The framework is smart so it resolves all references, dependencies and imports correctly based on the configuration file, sometimes even the logic based on keywords (implement decorator, command switch statement, auto javadoc, log all data, etc) . The great thing about the framework is that now you wont need to know Java to change the app and the deployer can do all the work for the developers. Also, the application can be reconfigured and rebuilt on the fly with the config file reflection API that is included in one of the packages.
According to rumors, version 2.0 will deduce configuration file content through the use of autonomous agents and neural networks that will learn from the Internet and the semantic Web in order to remove complexity and infer requirements from the public domain and common sense. A prototype of the config file for version 2.0 would look like this:
<app category="ecommerce" type="petstore" />
Read The future of Java : The Invisible Framework cometh
NOTE: Although this isn't April 1st. It obviously is.
So now we have:
- LOAF: http://postneo.com/postwiki/moin.cgi/LoafHome
- Nada: http://www.bernardbelanger.com/computing/NaDa/
and The Invisible Framework.
I just wish some people would ask themselves some questions before they decide to write their own insubstantial framework:
1. I(we) had a need not to do: <Two phrases to describe>
2. I(we) have not tried the following frameworks: <insert names> before starting to develop my own
3. They are supposed to address my needs but I was not happy with them because: <reasons why those framworks are not satisfactory>
4. I(we) decided not to contribute to any of the existing open source frameworks because: <describe why>
It's exactly this kind of fragementation that is destroying the open source world. If Microsoft wanted to create a nonexistent framework you can be damn sure that there would only be ONE application that everyone would be able to put on their CV's without fear that some small minded jobsworth at their next interview would have a preference for the OTHER imaginary specification.
That said, innovation and diversity are a Good Thing (tm).
You probably should volunteer to integrate the non-existent frameworks. For that matter so should I. Is this being hosted at SourceFake.org?
I have successfuly used the Invisible Framework to develop a mission critical system for a Fortune 100 client. There are some features that are missing (such as automatic generation of unit tests), but it did cut development time by 99%. Kudos to the authors and keep up the good work!
I have also used the invisible framework to build a pretty complex application. Here is the link:
Perhaps so, but the client replaced your with mine which I wrote in my lunch hour yesterday. I went the extra step and generated the InvisiDoc, which I have pasted here:
Please refer to subject header.
When can we expect Eclipse plug-in ?
How does it compare to Tapestry or Webwork ?
Only if you write your framework in Whitespace
it will be truly invisible.
A good trick is in html set your text color
to the background color. Invisible text!
I think you'll find it's a Type III Invisible framework, Type II's being much more usefull as they are embedded into the O/S...
XML is messy... deeply nested and all that. Can "Invisible framework" be converted to PDF file? Just wonder.
are you kidding? Who is going to write those two lines of java code. Also, who will import all different packages and classes.
I need XML. No compromise.
"through the use of autonomous agents and neural networks that will learn from the Internet and the semantic Web.."
Sounds great but the compiler throws an exception! Am I doing anything wrong? Are you sure that an 8 year old can understand it?
(8 Year Old Becomes The Worlds Youngest Microsoft Certified Software Engineer)
Class is part of the rubicon of languages- thus, the dialectic conceptualism holds.
Will I be able to use 'The Invisible Framework' with technology 'X'?
I haven't used or looked at 'The Invisible Framework' or Framework 'Y' but does anybody know how they compare?
And last but not least, Another framework I have to learn investigate?
(thought I would get these all out up front) :)
Can I have a .NET wrapper on this framework written in XML, that can use the .NET confuguration file written in XML so I can searialize remote objects as XML, that would be loaded by my .NET XML invisible framework Dom parser configurable by XML (in case you want to use SAX).
For what you're discussing I think the Avaj framework would be best. All of your "POJO" code is written in XML, with configuration and wiring of components written in Java files.
Just so you know, i made a very wise comment written in
invisible type. It was done without java or xml. And
i was cleaning my unlocked loose couplings at the time.
C'mon folks this is already old. JBoss has this since its 1. version! Maybe we should write a new documentation about this possibility in JBoss, so that nobody thinks that this is such a new stuff.
Anyway, don't talk too much, let's code!
Love and I really love EJB...
No, no, you are wrong. Spring can be integrated not only with Hibernate, EJB but also with Invisible Framework. So, you can use Spring to wrap the whole Invisible Framework, so it becomes *visible*. Great, right? Spring just takes care the rest of your problem, no worry. Anyway, don't use EJB because this is just too complicated.
I had the same ideea 2 years ago and the implementation is in production for 2 month now. The platform is even registered as a trademark. I will take any performance and usability benchmark challenge with the Invisible Framework.
They stole my ideea. I think I will sue them immediately.
Dude, this framework is way too difficult! But wait until folks see my mind melding web site code generator, just think of the site and it is created.
Fantastic! Finally, I can replace my Mock Objects and Naked Objects with something more lightweight: Invisible Objects.
I'm going to register theinvisibleside.com domain ;)
And what about invisible meta-framework for generating invisible frameworks ?
Is this free of any licensing concerns from unix vendors?
I heard that some major vendors are pushing this through the JSR process and will become embedded into the Java Runtime by JDK 1.6.
Other possible enhances:
Dragging an invisible JSF Page
Accessibility through the SDO Mediator to cut down on 2 lines of code
Exposing Invisible Objects through a Web Service (Direct WSDL representation of invisible objects)
XDoclet tags write above the 2 lines code to generate config files.
Grid computing capabilities, possible as well.
Comments my own and not my employer IBM.
Does the framework support 2 phase transactions? 2*0=0? but we have to wait for the answer...
It's a common misperception that invisible == lightweight. I can tell you, it's just not so. I've gone through the effort to inspect the Invisible codebase, and while it's transparency is admirable, I found the following bits to be troubling:
- It adds 89283311388 milliseconds to invocation overhead.
- They've replaced bluetooth wireless support at the socket layer with flocks of carrier pigeons. They claim "pigeons are cheaper than networking hardware and just as reliable", but I don't buy it.
- The caching code adds 9,881 5K objects worth of overhead to each object instance field being cached.
- The catch blocks do not propogate exceptions back to the caller properly. Instead, they make a reference to a mysterious JNI function called "instigateGigabyteCoreDump()".
- It uses the GGPL license (Greater Gnu Public License) which requires that not only do you have to distribute your source code, but you also have to distribute your spouse and children "for the greater public good".
- I applaud the fact that the Invisible Framework (finally) is the first open source solution to properly implement XA transaction logs. But the only supported interface right now is the Cassette Tape Reader/Writer. I've had some experience in this area, and when you've had a hard failure in production and the clock is ticking, the last thing you want to deal with is a console message saying "Please flip cassette tape over to 'B' side to complete transaction recovery".
But the above are just quibbles, really. The fundamental problem here is that people think invisibility is a good thing. The same misguided souls pushing XP and TDD have also jumped to the conclusion that Invisibility is a good thing for software development. They're confusing Transparency with Masslessness - it's Masslessness you really want to go for (that's the ultimate in lightweight).
Ironically, the Photonic Framework is _quite_ visible, but it beats the pants off of the Invisible Framework because of the masslessness of the photonic architecture. In Photonic all objects undergo runtime bytecode modification which proxies all requests to something called "Photons". Photon based objects aren't just lightweight, they literally have _no_ weight at all!
Remember - a boulder dropped on you from 5,000 feet will crush you into paste whether you can see it or not. Invisibility is crap! Massless is what real software engineers strive for, not this transparency fad.
Photon based objects aren't just lightweight, they literally
> have _no_ weight at all!
Oh, isn't this just typical of the computer "science" brigade that live in some lovely abstract logical world. Physicists and engineers that get our feet wet in the mucky physical world know that photons *do* have mass.
. . .the Photonic Framework will never be successfully implemented until the duality problem is resolved within the software community. Those who think it's wave based are deeply entrenched against those who insist it's particle based. Until this is settled, the framework is no different than Schroedinger's cat-it's neither here nor there. . .
. . .the Photonic Framework will never be successfully implemented until the duality problem is resolved within the software community. Those who think it's wave based are deeply entrenched against those who insist it's particle based.
You need to read up on Stringbuffer theory ..
: Clustered JCache for Grid Computing!
I wonder if it scales?
I wonder if it scales?
We haven't seen any limit to the scalability ..
: Clustered JCache for Grid Computing!
We haven't seen any limit to the scalability ..
More precisely, all algorithms in the framework exhibit constant-time behavior (O(1)) in both single-server and massive-clustering situations, which is widely regarded as the ultimate goal of any scalable framework.
For pedants, the constant _is_ 6.1287 x 10^15, but this is seen as a minor implementation issue that in no way detracts from the constant-time behavior of the system.
The Chief Software Architect of Invisible has been quoted as saying "You really can't get any better than a constant time algorithm. Really, do _you_ wanna be the guy that takes issue with Big-O O(1)? I sure don't.". The CEO was later heard to say "yes, yes, 6.1287 x 10^15 is a big number, but we're a big Professional company and we can handle it. And we guarantee that we'll hit that number on anything from a cellphone to a Sun 10K setup. Yeah, that's right, guarantee. Some computer science academic wannabees might try to talk to you about the lifetime of the universe and crap like that, but don't listen to them. I've got the big package _and_ the big bucks, and we'll solve that big number problem in the next point release, no problem".
Ah, finally. Some controversy. Waiting with "baited" breath...
The SharpCloaked Financial reference implementation (www.SharpCloakedPetFinancialDemo.com) proves that .Net is better than 'The Invisible Framework' and Java.
Based on the feedback from the developers on projects who have used this framework
in production things are not actually rosy as they seem. We intend to create extensions to this framework to address them.
Visibiliser : will make generate all the code and make it visible. This is primarily for all the wimps who cannot work with outputs of the log statements (which happen to be invisible) and need to step through the code in the debugger.
MockAspects (These are actually invisible aspects - but everything mock has a better sound to it) : The neural networks shall be supported with the capability for locating and downloading freely a number of available aspects and automagically figuring out the right aspects to be applied. The aspect locator shall be integrated with common file sharing tools.
I created an extension that will allow you to write the two required lines of code in the same line. All you need now is to add another 50 xml configuration files and some properties files to the windows system directory, create the environment variable MAX_INVIS_LINE_CODES=1, and then set the minimizeLineOfCodeUsage flag in the invisibleFramework.xml config.
I don't know about whole app in XML, but i knew one system which allows the user to define a java class using HTML UI, and stores it in XML format. Even methods use XML format for storage and steps inside the method are defined by user, using java. Methods are reusable, subject to scope and security. Finally everything gets converted into Java during run time.
Is there any kind of 12 step program for de-nerding nerds? :)
I would certainly pay for attending it..
I hope the project owners have negotiated terms with the developer staff to prevent a fork.
Of course, they should probably rename the project to "The Indivisible Framework", just in case. . .
Check out some of my XUL News Wire stories for further evidence at http://xul.soourceforge.net
I have downloaded the new invisible Petshop benchmark test to compare with MS "transparent Petshop 2004" (enterprise-wide, high security, multi-threaded, object pooled and JIT activated with heterogeneous distributed transactions), so far I notice that the MS version only have 4 lines of code.
I pitched the invisible framework and get my manager very excited. Little did I know that he decided to implement it by himself and a group of "business analysts". This great tool has cost me a job!!!
The only invisibility is that in source files. It shifts the visibility from source files to complex-meta-meta-semantic-neural-network programming engine. You still have to *think* of an application:
Let there be a petstore application.
And there is one.
We can do better than that. We can assign someone to think for us. Like for example, they may think "let there be light..."
This one is ideal match for invisible requirements that we usually get from Clients. Clients were very happy, as they got perfect application that do not require any visible production support.
This framework rocks!! We actually compared it with other frameworks in market and this one topped on charts. Check out many of the released rankings and you will see it( only not with naked eyes, please use special glasses, manufactured using this framework ).
It readily support WYSIWYG (What you see is what you get). Just pick up any magazine that you wont read and you will see(again you need above glasses)
this one is Editors pick.
Actually, according to insider information, this framework was developed by ET (Extra terrestrial) software developers and with there offshore development centers on Mars. So it is absolutely free for use.
Better start coding your 2 lines now...