Intelligent design

From APIDesign

(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
Are you fan of [[wikipedia:Intelligent_design|intelligent design]] or [[evolution]]? Most of the people around me would select [[evolution]] as a mean of how our world has been populated (althrough [[Geertjan]] in an [[Module_system|recent screencast]] refused to answer). However when you ask the same people whether they use [[evolution]] or [[intelligent design]] methods to manage their company, their answer will change. They act as intelligent designers. Is not that another example of a [[doublethink]]?
Are you fan of [[wikipedia:Intelligent_design|intelligent design]] or [[evolution]]? Most of the people around me would select [[evolution]] as a mean of how our world has been populated (althrough [[Geertjan]] in an [[Module_system|recent screencast]] refused to answer). However when you ask the same people whether they use [[evolution]] or [[intelligent design]] methods to manage their company, their answer will change. They act as intelligent designers. Is not that another example of a [[doublethink]]?
-
== Me & [[JDeveloper]] ==
+
== [[Evolution]] and [[JDeveloper]] ==
-
== [[API]] Designers ==
+
When I got the task to bring [[JDeveloper]] and [[NetBeans]] closer to each other, I knew we have to start from the basics, from creating a common ground. Thus we invested a lot of time to share the [[module system]] underneath the two products. The short term benefit was the speedup of [[JDeveloper]] launch time. However the long term visition was more important for me: such ''common ground'' would give us a chance to ''share''. I was not 100% what are the parts that should be shared, but I knew that allowing it is important.
 +
 
 +
However, it was not enough to share components in runtime. We needed to modify the build systems of [[NetBeans]] and [[JDeveloper]] to allow compilation against the [[OSGi]] bundles and modules comming from the other system. This took us a while, but we have such system now - everyone in the two teams can easily start to use libraries provided by the other system. We are ready for [[evolution]]!
 +
 
 +
And guess what? In the recent few weeks I've been asked by various members from the teams whether they could share some [[API]]. Some of these requests were not surprising (e.g. I know that sharing these sub-systems could be beneficial), however some where completely new! Only by creating an [[environment]] suitable for [[evolution]] would could stimulate brainstorms among minds of our collegues. Only by not having a plan we could come up with so great ideas!
 +
 
 +
== [[API]] Architects ==
[[TBD]]
[[TBD]]

Revision as of 13:57, 24 July 2011

Are you fan of intelligent design or evolution? Most of the people around me would select evolution as a mean of how our world has been populated (althrough Geertjan in an recent screencast refused to answer). However when you ask the same people whether they use evolution or intelligent design methods to manage their company, their answer will change. They act as intelligent designers. Is not that another example of a doublethink?

Evolution and JDeveloper

When I got the task to bring JDeveloper and NetBeans closer to each other, I knew we have to start from the basics, from creating a common ground. Thus we invested a lot of time to share the module system underneath the two products. The short term benefit was the speedup of JDeveloper launch time. However the long term visition was more important for me: such common ground would give us a chance to share. I was not 100% what are the parts that should be shared, but I knew that allowing it is important.

However, it was not enough to share components in runtime. We needed to modify the build systems of NetBeans and JDeveloper to allow compilation against the OSGi bundles and modules comming from the other system. This took us a while, but we have such system now - everyone in the two teams can easily start to use libraries provided by the other system. We are ready for evolution!

And guess what? In the recent few weeks I've been asked by various members from the teams whether they could share some API. Some of these requests were not surprising (e.g. I know that sharing these sub-systems could be beneficial), however some where completely new! Only by creating an environment suitable for evolution would could stimulate brainstorms among minds of our collegues. Only by not having a plan we could come up with so great ideas!

API Architects

TBD

Personal tools
buy