Saturday, July 21, 2007

Barcamp Grand Rapids Returns!!!


We are in the final sessions of the 2nd Annual BarCamp Grand Rapids 2007. Last year was fun, but this year was a blast. Kyle Adams and Dave Brondsema really put a lot of effort into making this year's unconference a success.

Two Google employees, a Senior Technical Recruiter and a Linux System Administrator, made the event this year, with plenty of swag. They gave away T-shirts, notebooks, pens and one lucky guy walked away with an iPod. Envoi Solutions, funded the party. There was great food and great drinks. Some of the interesting talks and Lightning Talks (LT) included:

Package Management for Ubuntu - Matt Alexander of Google
Design Eye for the IT Guy - Kyle Adams
Interaction Based Testing - Matt Heusser and Sean McMillan
(LT) :- SOA and Transactions
(LT) :- Re-inventing the Wheel

The presentations and the content were great, but the best part of the unconference was the people. At this type of event, it is the people that make the conference what it is. Since there was such a great group of people, I think that is what made this years event absolutely great. Looking forward to it next year.

Thursday, July 5, 2007

Model View Presenter

For those of you that did not come to the last Perl User Group meeting, you missed a great presentation which prompted a wonderful discussion on the Model-View-Presenter Pattern (MVP). Primarily being a J2EE developer and with many years of experience with the Struts Framework, I am very familiar with the Model-View-Controller (MVC). I was very interested, however, in this MVP pattern. This is mostly due to the thick client application development that I have been doing lately.

During the meeting, a lot of questions were raised regarding this pattern, and Jason Porrit was very patient with all of us (touche'). After the meeting, I decided to do a little more investigation, and found the following:

Martin Fowler Retires Model View Presenter Pattern

Yes. Believe it or not, this pattern has been retired by Martin Fowler. Well, I don't know if retired is the correct 'r'-word. Maybe it should say 'R'efactored instead. He has split up the pattern into the Supervising Controller and the Passive View. After reading both of the patterns, they sound very similar in detail and in practice. In the Passive View you put all of the widget population logic into the Presenter. All logic is pushed on the Presenter including the population of text fields or any other widgets available on the View. In the Supervising Controller, you push most of the logic onto the Presenter, but leave some of the logic of populating widgets in the View. Martin states:

"...the essence of a good Supervising Controller is to do as little as possible. Let the view handle as much as possible and only step in when there's more complex logic involved."

Atomic Object Presenter First
On a related note, Atomic Object also has their own variation of the MVP Design pattern called Presenter First (PF). After reading an article from Better Software magazine (referenced from their PF resources), I find this design pattern very attractive as well. What most attracts me is the concept of linking different PF triads in order to orchestrate behavior and a process. Please refer tot he Better Software article for more information on this.

Overall, I owe a big thanks to Jason for inspiring me to learn more about this design pattern. I look forward to hearing him present in the future.

Wednesday, July 4, 2007

CXF 2.0 Released...

At long last, I am very pleased to share in the celebration on the release of Apache CXF. Apache CXF is the culmination of two seperate projects: Iona Celtix and the open source tool XFire hosted at Codehaus, both serving the SOA community.

I have been using XFire on a number of contract projects lately, and I have found the product to be very easy to use and extremely reliable. Fellow blogger, netzooid, goes into more detail of what XFire fans can benefit from with this rebranding and stable release.

Congratulations once again to the entire team.

Tuesday, July 3, 2007

Eclipse Europa - the Good and the Bad

After using Eclipse Europa for the past couple of days, I thought that it would be a good idea to share my thoughts on this latest release.

the Good...
This new version of Eclipse has many wonderful and new features and shortcuts. My two top features are the CTRL+3 and the View folding.

CTRL+3 allows you to search across the entire Eclipse platform, matching on Views, Menu Items, and other parts of the Eclipse system. I am a huge fan of keyboard shortcuts. I believe that through their use, you can save lots of time and increase productivity. If you do not believe me, think about the time that it takes to move your hand from the keyboard to the mouse and click on a menu item. It may not seem like a lot of time, but how many times do you do this during the day? week? month? This shortcut just adds to my arsenal of productivity boosts.



The other enhancement that I am enjoying is the folding of the Views. In the older versions of Eclipse, when you collapsed a view stack that resided on the left portion of the screen, they would leave a thin collapsed view on the screen. Now, when collapsing views, they completely collapse and minimize to the left most portion of the screen. This leaves much more room for the work that you are actually focusing on.

the Bad...
Yes, believe it or not, there is something that I do not like about the new version. It goes back to my earlier statement of short-cut keys and committing them to memory to boost productivity. In Eclipse 3.2, I often found myself needing to surround code with a try catch block. I did it so often that I found a shortcut key that would do it for me. That shortcut key was Alt+Shift+Z, 4, as shown by the screen capture.





For some reason, in the Europa version, they decided to change this. Instead of it being Alt+Shift+Z, 4 it is now Alt+Shift+Z, 6. I know that this may seem minor, however when you get used to using something, like a short-cut, I don't think that you should ever change it. It makes me wonder what else they may change in the future.



Overall...
Overall, my impression of the new version of Eclipse is absolutely great. I have enjoyed this release thus far, and I am looking forward to learning more about it in the future.




Friday, June 29, 2007

Eclipse Europa Releases Today...

We are one hour away from the annual simultaneous release of many Eclipse Projects. This year's release is titled Eclipse Europa, which will include 21 different Eclipse Projects. Hats off to the Eclipse Team and Community for coordinating such an effort.

Unlike the iPhone, which also releases today, this is the product that I am sure to acquire. Speaking of the iPhone, here is a list of highly anticipated features as reported by the Onion.

Enjoy.

Saturday, June 9, 2007

Eclipse Europa Releases Soon...

Has it been a year already? Is it really that time again?

The annual release of the Eclipse projects, is just 20 days away. This years release, titled Europa, is sure to clog the "series of tubes" (Senator Ted Stevens) that the internet is, due to the massive downloading that will be taking place.

To learn more about this release:

http://www.eclipse.org/europa/

Congratulations and thank you to all of those whose efforts have made this possible.

Wednesday, May 9, 2007

Chasing your Dream...

I had a chance to attend a free conference last night. Unfortunately, it was not what I expected it to be, but I did pick up a lesson or two, which has made all the difference.

Overall, the conference was a sales pitch for additional training (which of course was not free), but they promised that the training was going to open the doors that would allow you to achieve your dreams. There was a part of the conference where we were asked to visualize our dreams and what we wanted to achieve in life. For me, this part of the conference was the most valuable.

How many of us actually take the time to think about our dreams / goals? Are we able to visualize them? Are we able to verbalize what it is that we want to accomplish? How many of us have settled for the status quo? How many of us have gotten so wrapped up in the hustle and bustle of our lives that we have lost sight of our dreams? How many of us have actually forgotten what it is that we want to accomplish?

Here is my challenge to you. Take time for yourself today and think about your dreams and your goals. Take a walk over lunch, or turn the radio / mp3 player off during your commute to work, and remember what it is that you would like to achieve. Develop a statement, a few sentences that becomes your mantra. Do whatever it takes to get excited and start chasing your dream.