Dev @ Work

A day in the life of a developer

Reporting on Liferay and the Future of Portal Development

January 28th, 2010 by Bert Willems

From the comfort of my own home, this is Bert Willems reporting on the Liferay and the future of portal development. I haven’t dreamed it up: this is a report of a Liferay webinar I just attended. Paul Hinz, Chief Marketing Officer of Liferay, Inc hosted the webinar. He talked about the role of open source software in enterprise as well as the vision Liferay has about the future of web, portal and social collaboration technologies.

He explained why a lot of things which portals have promised are actually unmet by today’s portals. Most notably is that portal development using the portlet API is hard when compared to develop decentralized applications in for example PHP or Ruby. The learning curve of Java and it’s technology stack is considerably longer compared to other web application frameworks. Due to this fact other frameworks made their way into the enterprise.

He then elaborated on the evolved focus of portals and other web applications: providing a centralized platform for end user to create, share and develop knowledge. This is not something new because it is all around us already. Take a look at LinkedIn for example: I can add this very WordPress blog to my LinkedIn profile and the same goes for my Twitter account; LinkedIn acts as a portal.

Paul envisions that users will developing applications and share them in the same way the develop content together now in the Wikipedia. The focus of technology providers like Liferay will be on facilitating these user developers. A good example here is Apples iPhone with its countless available user build applications.

The focus of the Liferay development team for 2010 is:

  • Content Management Interoperability Services & integration of 3rd party content repositories
  • User defined workflow & business processes
  • Stronger personalization and enhanced collaboration tools
  • Faceted search & other search improvements

Notice to focus on facilitation and easy of extension rather then providing new features.

This is, in my humble opinion, a positive paradigm shift from classic wisdom owners (fortune 500 companies, patent holders, publishers, standards committees etc.) to wisdom of the crowd. Why shouldn’t we use the collective knowledge in all of our minds and combine it in a productive way so we can solve problems together? I see this shift in the software development world (see the microformats opposed to standardization committees like W3C and JCP) for example but also in the publishing industry (Wikipedia anyone?). There is a lot more to say about this subject but I will save that for a later post. Bye for now.

Setting up Liferay with MySQL

January 24th, 2010 by Bert Willems

Welcome to the second article in a series of articles on Liferay. In this series I will show you various aspects of Liferay, Liferay installation, Liferay maintenance and Liferay development so lets get started. These articles assume that you have basic Java development skills.

In this post I will show you how to configure Liferay to use MySQL instead of Hypersonic. I assume you have followed all the steps in the previous post or that you are using a JNDI datasource. I also assume that you have installed MySQL on your system already. If not, please install it first. If the portal is still running stop it first before continuing with the next steps.

Read the rest of this entry »

Posted in Java | No Comments »

Setting up Liferay in JBoss 5.1

January 24th, 2010 by Bert Willems

Welcome to the first article in a series of articles on Liferay. In this series I will show you various aspects of Liferay, Liferay installation, Liferay maintenance and Liferay development so lets get started. These articles assume that you have basic Java development skills.

In this post I will show you how to install Liferay 5.2.3, the latest communitie edition, on your local machine in the JBoss 5.1 application server, I assume you have a Windows machine. If you are running a different OS you can take the same steps but some paths will change depending on your OS. There are quite a few steps that need to be taken in order to set up Liferay, I will go through each and every step in detail. Read the rest of this entry »

Posted in Java | 10 Comments »

Thinking about the Future

January 21st, 2010 by Bert Willems

Tomorrow I have my annual planning meeting with my manager. In this meeting we will discus my targets for 2010 as well as the long term goals. I always enjoy these meetings because if forces me to think about and to plan my future. Before I can see where I want to go, I have to figure out who I am now. So lets give it a try:

I am a 24 year old technical lead developer with a strong passion for software architecture and development. I am an expert on the .NET platform, expercienced in desktop and web application development and familiar with most frameworks like WCF, WPF, Castle Project, NHibernate and Lucene.NET. I am able to make technical designs using UML and apply the appropiate design and architectural patterns.

As a team lead I can start, manage and finish several project simultaneously using both inhouse and outsourced teams. I understand the business problem my customer have and advise them on solutions, do requirments analysis and make accurate estimations.

I think this is a pretty accurate description of who I am (professionally). I will let you know where I want to go tomorrow because it is time for a glass of wine and some frisian clove cheese!

Posted in Personal | No Comments »

BlackBerry & WordPress

December 24th, 2009 by Bert Willems

Today i got myself a new cellphone: a BlackBerry Bold 9700. I am really happy with it because it works so much better than my old phone. Everything works like it is supposed to.

Then i discovered an app which connects to WordPress! Brilliant! I wrote this post on it.

Going back to do something usefull now (making dinner).

Posted in Personal | No Comments »

Somewhere Over The Rainbow – Israel Kamakawiwo’Ole

December 24th, 2009 by Bert Willems

A beautiful song. I have spend a full day listening to this amazin song and I am still not bored with it and I want to share it with you, enjoy!

Posted in Personal | No Comments »

Quick Status Update

December 12th, 2009 by Bert Willems

A lot of things happened in my life the last couple of weeks. It has been incredably busy and to be honest: I am more than ready for the christmas holiday. Just one more week of work now. I won’t bother you with every little detail so here is a quick list:

Posted in General | No Comments »

Liferay: Good, Bad or Ugly?

November 2nd, 2009 by Bert Willems

liferay logoHello, I have been developing application for Liferay for about one month now and I thought it would be a nice idea to share my experience. This is no thorough review of the product, just my personal experience with Liferay.

For those who don’t know what Liferay is: it is a portal server based on Java technology. It allows you to create portal and community websites easily. It provides more than 60 out-of-the-box and ready-to-use application called ‘portlets’. Those ‘portlets’ range from simple editorial blocks to blog engine and a chat portlet. It contains a full blown content management system and some powerful collaboration tools. See http://www.liferay.com/web/guest/products/portal/features for a comprehensive list of features.

Anyway, I have been working with Liferay for about one month now, specifically for one project. I won’t elaborate on the project in details but it is a career portal with jobs, resumes and company presentations. I have developed a considerable part of the code myself and it has been an interesting experience because I never wrote one line of Java before: I have a c++/.NET background. Fortunately, I have a good, experienced Java team to back me up.

Okay, lets get back to the subject now. I will separate my experiences into three categories:

The good

In my opinion Liferay is a complete product, the out of the box portlets are useful and you can actually create a full portal just with those portlets: that is impressive.

I also like the fact that Liferay provides pre-packaged version of their portal software which you can download and run without any special configuration. You can get a Liferay portal up and running in 5 minutes.

The Liferay community is active. You can find a lot of information in the WIKI and on the forum. I also like the fact that Liferay provides seminars around the world, to me that is a sign of professionalism.

I also like the fact that Liferay offers custom JS and CSS includes per portlet, this allows me add style and JavaScript without having to code it into the portlet itself  or in a Liferay theme.

The API is pretty powerful and usable, although it is hard to find out how it works (seen second point of The Bad).

The bad

What I think is really bad on Liferay is that there are still some major bugs open in version 5.2.3. Those bugs should have been fixed a long time ago IMHO. I am not sure if those bugs are fixed in the enterprise version of Liferay, so I am judging on that. For example LPS-114.

One other thing I think is bad on Liferay is the lack of API documentation. It is really hard to find how certain things are achieved or what methods do exactly. For example I have spend some hours finding out how I can retrieve a list of pages of the current community. I have searched the Liferay Wiki, the Liferay forums and used Google without success: I ended up reverse engineering Liferay itself. It is working beautifully now but it wasn’t a good experience figuring it out.

The Ugly

Even though Liferay is supposed to be fully compliant with JSR-168 and JSR-286, I can’t get the custom portlet mode to work properly. Although this seems to be an optional part of the JSR-286 I  assume that a enterprise product like Liferay would support this feature. I had to apply a work around which resulted in ugly code.

Considering all above points, I can say I am fairly impressed by the Liferay portal. I would choose it again for portal project.

Please let me know if you agree or disagree with me, lets get into a debate regardin Liferay! It deserves it!

a Black Day

October 27th, 2009 by Bert Willems

Hello, today is a black day for me: my grandfather passed away this morning. Thankfully he passed away in his sleep. He was diagnosed with lung cancer 2 years ago; the docters gave him just a few more months but he was fighting the cancer off long enough to celebrate his 80th birthday which was last week. Although I am writing my thoughts down, I can’t possible describe what he meant to me and how much it hurts to know what I won’t be able to be talk to him. Ever.

It has strange that I only now realize what he meant for me and how much he has done for me for which I am thankful. He has been a great example to me. He always encouraged me to construct something, whether it was Lego or software development, it didnt matter. He had a great influence on my career choice and one of the reasons I am who I am now.

‘Opa’, I will never forget you,

thank you for everything

I drowned myself in my work today but I realize that is no way to deal with the loss. We all go have to deal with losing a loved one at some point in our lives, I thought I prepared myself for it but it still hit me like a rock. I have no ‘cure’ for this pain but I can tell you that writing your feelings down helps me deal with it. Maybe it is the hope this post will leave a trace so my grandad won’t be forgotten.

Posted in Personal | 2 Comments »

Extending your Successful Website: Improve your Search Engine

October 24th, 2009 by Bert Willems

convert search into moneyAs I showed you in my previous post, Expanding your Website: Make your Visitors Feel Home, innovation on your website is a must in order to keep ahead of your competitors.

Everybody knows that making your content findable is important. There are numerous websites dedicated to optimizing your website for the Google, Yahoo, Bing and Ask. The term SEO (Search Engine Optimization) is commonly known and I am not going to talk about that!

In this article I am going to talk about improvements you can make to your website’s internal search engine. If your website does not contain a lot of content or the content is highly volatile this article might not be relevant for you.

However if your content is really specific, for example:

  • Job offers
  • Location based (company addresses, houses, appliances, etc.)
  • Articles or Whitepapers about specific subjects

This article is a must read for you. First we will get through 2 cases I made to give you idea in what ways you can improve the user experience. Next we will talk about different technologies and selection criteria for search engines.

Read the rest of this entry »