Forums de discussion

General discussion about Liferay CE and how to improve it

Martin Jonik, modifié il y a 7 années.

General discussion about Liferay CE and how to improve it

Junior Member Publications: 69 Date d'inscription: 14/08/12 Publications récentes
Hello,

my name is Martin Jonik, I am an experienced software developer from Germany for all kinds of software and I have been using Liferay CE since version 4 in my company productivley.

The reason why I wrote this post is, because I have experienced many problems with this software since the first day I have been using it and I can't see its going to be better in the future.

I would like to understand why things are as they are and how I can help to improve it.

So basicly I am using Liferay almost to its extent. I am using the Social Office, document libraries, Web DAV, remote services, the workflow engine, video conversion and streaming, the knowledge base, I am running liferay on a TomEE 1.7.2 Plume modded for JSF 2.2, on Open web beans, with a custom frontend and totally integrated with other commercial business applications like SAP Netweaver and IBM Domino.
I like this product, because of its flexibility and its huge functionality right out of the box.

My problems with it are the following:

- Every single CE release has "so many" bugs that you can hardly use it. Of course 99% of the functionality is working correctly but there are always some things that don't work and these can change from release to release. Some bugs get fixed other ones appear or reappear and every time before I do an upgrade I have to test every single button click in every combination to find out all the major bugs to be able to fix them. So I was wondering why nobody is doing this before they are publishing a new release and why there are not enough integration tests or any frontend tests to do it automatically.

- When I report these bugs on the Jira nobody would even look at it and after one year my bug reports get closed by someone with a comment like fixed in 7.x, or "obsolete" in 7.x because many things have changed with the new release.

- Sometimes there are really serious bugs, that make the use of the product impossible for me but nobody seems to notice it or cares about it. Like this one: https://web.liferay.com/de/community/forums/-/message_boards/message/75342383. Many times I tought there would be nobody else than me using this product, otherwise they would have complained about it or fixed it already.

- If it is a bug, which it easy to fix, I can do it on my own. On the contribution pages I read you have to fix every bug on the master branch first. But most of the time the master branch is too far ahead of the latest stable release what I am using and I want my bug to be fixed for the current stable version. So I would post something like a patch on the Jira, like here: https://issues.liferay.com/browse/LPS-46228.
This bug would then be fixed by some developer for the EE version only. So EE customers seem to get fix packs periodically while the community has to wait for the next release, even if the community has contributed these patches. That just does not make sense to me. Why should Liferay Inc. keep the community version unstable? Why not just give patches to everybody? If they want someone to buy the enterprise version there should be some real advantages to the CE version, but not at the cost of stability and security.

- This brings me to the next point: The EE Version licening model. I thought about buying the EE version and talked to the local liferay partners in my country. There is exactly one licening model. The 20K per year model and nothing else. I think you will get the closed source EE version together with some update service and a 24/7 SLA. I don't know if this brings really some advantages other than the fix packs, which should be for free in my opinion, but I can totally understand someone who want to have this SLA because you will run into many issues if you are planning to run liferay productivley. But, 20K is expensive, and you would also loose the possibility to make changes to the code, because EE is closed, so if this would be the same code like the CE version having the same amount of bugs like CE you won't be able to fix it on your own anymore. So why is there no better way, combining CE and EE? Why not having a bit of both worlds and maybe for a more reasonable price?

- And than there are the bugs I cannot fix on my own. Like the first one I posted: https://web.liferay.com/de/community/forums/-/message_boards/message/75342383.
This is a major problem and I don't know how a stable release can contain a bug like this. There must be no QA at all.
I found the problem. There was one git commit that caused the problem and I informed the author but he does not respond to me.
Unfortunately the code of liferay's document library is a heap of rubbish with not only circular references all around it but also many other bugs I found during the process of debugging into it.
So basicly I cannot fix this on my own being sure to break nothing else. This needs a document library specialist who knows what he is doing or someone who makes everything new from the beginning.


So, in summary:
Running Liferay CE in production is like walking on a freshly, frozen lake and you can crack into at any time.
I think this does not have to be like this. There are many other open source projects that are working very well. Liferay is far the worst in my opinion but is also one of the most complex and dynamic projects.
I don't understand why they don't improve QA, why they don't offer regular fixes for CE and why they are not creating more and flexible EE models.

I am using Liferay for free, I am happy about this, but I would like to have more possibilties within the community. For example doing some QA tests or having some direct connections to people who are responsible for certain parts of the software. Liferay has a big contribution page.. I don't know how many people of the community are really contributing. There are always the same names mentioned on the Jira. For me it looks like the community is much smaller than someone might think, and the enterpise part of it is much bigger.

Anyway.. I would appreciate if someone could leave a comment on this. I would like to know if I am alone with my opinion or if some community members are having similar feelings.
Maybe you can give me a tip what I can do for having an easier life with this product.
Maybe there is some Liferay-Guy who can explain about CE and EE and the politics behind it. I would really like to understand why things have to be like this.

Many thanks,
Martin
thumbnail
Jorge Ferrer, modifié il y a 7 années.

RE: General discussion about Liferay CE and how to improve it

Liferay Legend Publications: 2871 Date d'inscription: 31/08/06 Publications récentes
Hey Martin,

First of all, thanks a lot for all your comments and suggestions. They are very appreciated since they help us identify pain areas and improve them.

You mention several things, so I'm trying to address them one by one:
  • Quality: This is a key aspect for us. We want all of our products to have the highest quality possible and have done very significant investments over the years to continuously raise the bar. This includes things such as: increasing our QA team, improving our internal processes to do exploratory testing sooner in the development process, increase significantly our CI farm (we have hundredths of servers running our automated unit, integration and functional tests at all times), create a pull request tester that runs the most critical tests for every single final pull request (and also for those sent to several key developers) to prevent new code to introduce regressions, involving more the community members who were volunteering to help with testing through the Community Expedition (and the results were amazing this year, many thanks to all who participated), make available many more milestones, alphas, betas and RCs than ever before to facilitate outside and inside testing, etc. And this is just some of the new stuff we've improved on during last year. We know that it's not enough, specially with a platform as large and versatile (used in many different ways and for many different purposes) as Liferay. But I hope it at least shows how much effort we are putting into it.
  • Dealing with code contributions: I agree with you that we need to get better at this. For community members who have been around long enough and know the developers by name is much easier, but for newcomers it's much harder than it should be. We are now in the process of splitting our big repository into smaller repositories and we hope it will be the foundation for much easier contributions.
  • Community Participation: I'm particularly interested in all suggestions that you may have on how to facilitate and encourage
  • Fixing bugs and delivering the fixes: I agree that we should allow submitting bug fixes for the latest stable version and not just for master. It's just that it's easier said than done. But I hear you and hope we can get there soon. Regarding, creating new releases with bug fixes, one goal that our community manager worked very hard to achieve is to have a bug fixes release every 6 months. It was very hard, but we were able to achieve it for 6.2. Doing it more often doesn't seem feasible to me right now, considering the cost of creating a new release.
  • EE licensing model: I'd love to hear more details, although it's probably more effective for you to contact a sales rep and make your proposals.
  • "document library is a heap of rubbish with not only circular references": I understand the complains about the circular dependencies, we take the quality of our code very seriously and as you can imagine reading the word "rubbish" to refer to it hurts. Regarding the dependencies, we have made a big investment for Liferay 7 to modularize the product and resolving circular dependencies and making the ones that should exist much more clear and explicit has been a big part of it. We have not finished the work, but have made a lot of progress. I'd love to hear your opinion about it.


Once again, thanks a lot of your feedback.

Jorge