Tuesday, December 23, 2008
Presenting on OSGi at EclipseCon 2009
Well it looks like 2 of my session proposals were accepted by the EclipseCon 2009 program committee. So I will be doing a long talk on Symmetric Service Oriented Programming and short talk on Using BundleTracker to support the OSGi Extender Pattern. Looking forward to EclipseCon again. It is a great conference. Hope to see you there.
Tuesday, December 02, 2008
Another Early Draft of 4.2 from OSGi
The OSGi Alliance just announced the release of an updated Early Draft of new content for the OSGi Service Platform Release 4 Version 4.2 spec which is planned to be published in late 2Q2009.
Some of the designs in the draft are already being implemented in the Equinox 3.5 code stream. In fact, I already implemented RFC 126 Service Hooks there.
If some of my EclipseCon 2009 session proposals are accepted, I will present some of these new features there.
Some of the designs in the draft are already being implemented in the Equinox 3.5 code stream. In fact, I already implemented RFC 126 Service Hooks there.
If some of my EclipseCon 2009 session proposals are accepted, I will present some of these new features there.
Saturday, November 22, 2008
Øredev and the Renaissance?
I am on my way home from Øredev 2008 where I presented on OSGi which seemed to have been well received by my kind audience.
This was an interesting conference for me (aside from the blizzard I walked into as I left the conference on Friday evening). Most of the conferences I attend are all Java (JavaOne, EclipseCon). This one had Java but also .Net and other things relevant to programmers. One area that got a bunch of focus was programming methodologies like Agile, Scrum, etc. I will confess to be not very familiar with their details but I think it is great that these things are discussed at conferences.
During the final session of the conference, a panel discussion which featured some of the bigger names of the conference, a lot of the discussion centered on these programming methodologies. The discussion included things like how they should be applied, whether one methodology was better than another or even whether one should rigorously follow a methodology or just pick the parts you like. The term Renaissance was used quite often (in fact it appeared in the titles of the daily keynotes) as if there was some renaissance in progress in the programming community. Perhaps people using these programming methodologies means a renaissance?
But what really started to bother me as I thought about it during this panel discussion, was that no one seemed to discuss any science behind these methods which prove their effectiveness and utility. Is there any scientific studies which demonstrate these methods really help? or hurt? That some are better than others? Perhaps we don't need so much of a renaissance as we need an enlightenment and apply some rational science to evaluating these different ideas instead of being dogmatic about them. If we programmers want to be professional, we need operate based upon science (like astronomers) and not pseudoscience (like astrologers).
One of the panelists quoted Bill and Ted and simply suggested we programmers Be Excellent! That is great advice for all things in life but not specifically helpful for programmers.
This was an interesting conference for me (aside from the blizzard I walked into as I left the conference on Friday evening). Most of the conferences I attend are all Java (JavaOne, EclipseCon). This one had Java but also .Net and other things relevant to programmers. One area that got a bunch of focus was programming methodologies like Agile, Scrum, etc. I will confess to be not very familiar with their details but I think it is great that these things are discussed at conferences.
During the final session of the conference, a panel discussion which featured some of the bigger names of the conference, a lot of the discussion centered on these programming methodologies. The discussion included things like how they should be applied, whether one methodology was better than another or even whether one should rigorously follow a methodology or just pick the parts you like. The term Renaissance was used quite often (in fact it appeared in the titles of the daily keynotes) as if there was some renaissance in progress in the programming community. Perhaps people using these programming methodologies means a renaissance?
But what really started to bother me as I thought about it during this panel discussion, was that no one seemed to discuss any science behind these methods which prove their effectiveness and utility. Is there any scientific studies which demonstrate these methods really help? or hurt? That some are better than others? Perhaps we don't need so much of a renaissance as we need an enlightenment and apply some rational science to evaluating these different ideas instead of being dogmatic about them. If we programmers want to be professional, we need operate based upon science (like astronomers) and not pseudoscience (like astrologers).
One of the panelists quoted Bill and Ted and simply suggested we programmers Be Excellent! That is great advice for all things in life but not specifically helpful for programmers.
Thursday, May 08, 2008
Hot off the press: my JavaOne presentation
You can now download the JavaOne 2008 presentation Converting (Large) Applications to OSGi I just delivered with Peter Kriens.
The presentation went really well. There was around 700-800 people there and we had some really good questions asked during the 5 minutes we had left for questions. And then many more questions after we left the stage. I felt like a JavaOne Rock Star! :-)
The presentation went really well. There was around 700-800 people there and we had some really good questions asked during the 5 minutes we had left for questions. And then many more questions after we left the stage. I felt like a JavaOne Rock Star! :-)
Wednesday, May 07, 2008
An AJO is not a POJO
A POJO is a plain old Java object. Everyone talks POJOs these days. They are easy to compose and unit test. They are free of coupling to specific infrastructure details. So you can take your POJO to another infrastructure. For example, from JavaEE to Spring or OSGi. I like them and I think it is the right way to do things.
However, people are also fascinated with annotations now. Things like Guice and EJB3 and Glassfish all want you to annotate your POJO. But once you do that, your POJO ceases to be plain. While the non-annotation part of your code is still the same, the annotations in your code mean that your source now has coupling to specific infrastructure details and it is wrong to call is a POJO anymore. You can't compile your code without the proper support for those annotations. If you want to deploy your code in another infrastructure that uses annotations to describe the infrastructure details, you have to add more annotations to your source.
While I see the interest in putting the infrastructure information in the source near where it is used. We need to be honest. Your code is not a POJO anymore. It is now an AJO: an annotated Java object.
However, people are also fascinated with annotations now. Things like Guice and EJB3 and Glassfish all want you to annotate your POJO. But once you do that, your POJO ceases to be plain. While the non-annotation part of your code is still the same, the annotations in your code mean that your source now has coupling to specific infrastructure details and it is wrong to call is a POJO anymore. You can't compile your code without the proper support for those annotations. If you want to deploy your code in another infrastructure that uses annotations to describe the infrastructure details, you have to add more annotations to your source.
While I see the interest in putting the infrastructure information in the source near where it is used. We need to be honest. Your code is not a POJO anymore. It is now an AJO: an annotated Java object.
Thursday, March 27, 2008
Equinox and Google Summer of Code
An implementation of an OSGi resolver is a complex beast. Just ask Tom Watson, the Equinox dev lead :-) The Equinox p2 project, a new provisioning system for Eclipse, also has similar and complex resolve algorithm. Recently the p2 project, changed to use the SAT4J SAT solver to drive their resolve algorithm.
We have proposed a Google Summer of Code project for someone to investigate replacing the current Equinox runtime resolver with SAT4J (or another suitable constraint solver). So if this project sounds interesting to you, please sign up for it!
We have proposed a Google Summer of Code project for someone to investigate replacing the current Equinox runtime resolver with SAT4J (or another suitable constraint solver). So if this project sounds interesting to you, please sign up for it!
Tuesday, March 25, 2008
OSGi and eRCP on Mobile Phones
Sprint (a US mobile operator) has a new OSGi based mobile phone platform called Titan. There was a session at EclipseCon announcing this. But if you missed the session at EclipseCon and want to learn more, there is a webcast on Wednesday March 26 at 1pm EDT.
Sunday, March 23, 2008
Call for Speakers at 2008 OSGi Community Event
The OSGi Alliance is holding the 2008 OSGi Community Event June 10-11 in Berlin, Germany. The Call for Speakers was just issued. Please consider submitting a session proposal and attending the Community Event. I hope to see you there.
EclipseCon is over and a MacBook Pro for me!
Another great EclipseCon is over. The OSGi DevCon portion of EclipseCon had a great set of sessions this year. Kudos to Peter Kriens for another great job as OSGi DevCon program chair! This is the third year that OSGi has been featured at EclipseCon. The first year we spent a lot of time educating people on what OSGi was. The second year more people knew about OSGi but there was still more educating to do. This year was different. Everyone knew about OSGi. I kept overhearing people mention OSGi in conversations. There were many presentation not in the OSGi DevCon track of which OSGi was a topic. I am thrilled! Now the focus can move from teaching people about what OSGi is to how best to use OSGi. And the new Eclipse Runtime top-level project and Equinox portal are great news as well.
It was a long and busy trip for me. We had OSGi expert group meetings (hosted by Siemens in San Jose) the Thur/Fri before EclipseCon. Then we had four days of EclipseCon where I was involved in 5 presentations. Just to make things even more exciting, my trusty laptop decided to stop cooperating. It began to hang almost every time I closed it (during suspend). I don't know what the cause was. I can only imagine it was suffering from the entropy and decay that seems to happen to Windows systems over time. I defragged the hard disk, I deleted a boatload of programs. Nothing seemed to really help. And then just before my final presentation, it hung again and this time would not reboot. Fortunately, I had a copy of my charts on a USB flash drive and presented from that using a borrowed laptop. I was finally able to get the laptop booting again after running chkdsk for 2.5 hours in the airport between flights. But I have no idea if/when it will hang again (sigh).
During EclipseCon I could not help but notice how many people had MacBooks this year. I feel like almost half of the attendees did. (iPhone penetration was pretty deep too!). Peter Kriens got a MacBook recently as well. After watching him and Neil Bartlett use their MacBooks, I was very impressed with MacOS X. And then my own windows problems with my laptop pushed me over the edge. I just ordered a new 15" MacBook Pro. I almost feel guilty now for calling Peter an Apple fan boy... :-)
It was a long and busy trip for me. We had OSGi expert group meetings (hosted by Siemens in San Jose) the Thur/Fri before EclipseCon. Then we had four days of EclipseCon where I was involved in 5 presentations. Just to make things even more exciting, my trusty laptop decided to stop cooperating. It began to hang almost every time I closed it (during suspend). I don't know what the cause was. I can only imagine it was suffering from the entropy and decay that seems to happen to Windows systems over time. I defragged the hard disk, I deleted a boatload of programs. Nothing seemed to really help. And then just before my final presentation, it hung again and this time would not reboot. Fortunately, I had a copy of my charts on a USB flash drive and presented from that using a borrowed laptop. I was finally able to get the laptop booting again after running chkdsk for 2.5 hours in the airport between flights. But I have no idea if/when it will hang again (sigh).
During EclipseCon I could not help but notice how many people had MacBooks this year. I feel like almost half of the attendees did. (iPhone penetration was pretty deep too!). Peter Kriens got a MacBook recently as well. After watching him and Neil Bartlett use their MacBooks, I was very impressed with MacOS X. And then my own windows problems with my laptop pushed me over the edge. I just ordered a new 15" MacBook Pro. I almost feel guilty now for calling Peter an Apple fan boy... :-)
Wednesday, February 27, 2008
Speaking at JavaOne 2008
I will be presenting a session at JavaOne 2008 with Peter Kriens titled Converting (Large) Applications to OSGi.
Wednesday, January 02, 2008
Speaking at EclipseCon 2008
I will be speaking as part of 5 sessions at EclipseCon 2008 related to OSGi technology. See you there!
Subscribe to:
Posts (Atom)