Support

Pre-sales

#34373 Akeeba Engage: what would it take to make it compatible with DPCalendar?

Posted in ‘Pre-sales and Account Questions’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Latest post by woluweb on Tuesday, 19 January 2021 05:37 CST

woluweb

Hi Nicholas,

I had one question about Akeeba Engage.

It works (perfectly 🙂) with Joomla! core content, namely Articles.

But I have now a usecase where it would be used :

  1. on Articles
  2. but also on DPCalendar Events

What would it take to make Akeeba Engage with DPCalendar (which is in line with the Joomla core standards) ?

  1. would it work "out of the box" - I doubt but I try :D
  2. or is it just a matter of tweaking a couple of lines ?
  3. or would you be ready to do it (and at which cost approx.) ?

Txs a lot!

Marc

nicholas
Akeeba Staff
Manager

Honestly? It won't happen.

The reason I wrote Akeeba Engage was that I wasn't exactly impressed with the performance of the other comment systems for Joomla. I realised that the technical reasons for their bad performance came down to one common root cause: they tried to support every component under the sun. This has some corollaries.

For example, each comment needs to have a double key defining the extension and the item ID that is being commented on. Even if you use the numeric extension ID and create a MySQL combined key (both of which none of the comment extensions do) you have a slow query to get the comments.

Moreover, while Joomla core content had onContent* events where you can hook to display the comments interface, comments summary etc third party extensions don't have that. This necessitates a lot of hacks around this limitation which translates to either post-processing the page output (with caching issues) or resorting to do that PLUS some kind of AJAX interface (which solves the caching issues but introduces a performance hit, makes comments inaccessible to search engines and people without JavaScript, has SEO implications since your cumulative layout shift and largest contentful paint are sky high etc).

Further to that, trying to have a consistent user interface for setting up comments in different component requires making a lot of concessions, from the fact that the content categories / items and comments configuration are disjointed in your backend interface to which options exactly you can implement.

When you put all those things together you realise that no matter what you do to support multiple components you'll end up with something over-engineered and slow by definition.

Akeeba Engage goes the opposite way. I started from a clean slate. I set forth a few design principles. It will be fast. It will support nested comments. It will not be hurting your SEO. It will use microdata. It will not have a disjointed interface i.e. comment options will appear into the options of the categories and content items which are being commented on. It will use standard Joomla content plugins to allow Joomla itself to manage the page or component caching (because we have Progressive Caching since 2010 and we'd better not ignore it like everyone else). The combination of these design goals pointed towards a singular direction: I could only support core articles.

I like my comments lean and performant. There is already a saturated market for comment components supporting third extensions other than core content. Trying to make yet another clone of them, sharing the same performance issues, doesn't make sense to me. As a result I am not going to add support for any third party component.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

woluweb

Hi Nicholas,

Txs for you detailed answer, it is very much appreciated.

And paradoxically, even if your answer is "no", I am happy with your answer 😉 😃

Indeed it was very interesting to have those insights about all what is at stake (performance, SEO, cache, ...).

Note : I was writing here under my username which is my web agency name, ie woluweb. But as you might know, my name is Marc Dechèvre and we have already met at FFTF, JoomlaDay France (in Paris when Crystal was there as well), JoomlaDay Germany and JoomlaDay Netherlands (when I made a.o. this presentation about Akeeba Unite: https://slides.woluweb.be/akeeba-unite/presentation.html )

 

nicholas
Akeeba Staff
Manager

I know who you are, Marc :)

I see your info when I reply to a ticket since I've got manager privileges in Akeeba Ticket System. I just don't call people by name on public tickets unless they use their name first or have it in their signature for privacy reasons ;)

Have a great day!

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

woluweb
> I know who you are, Marc :)

This sounds pretty scary. I am not sure myself of who I am :D

(seriously now: I was mentioning bc sometimes it is very funny on forum.joomla.fr where I am pretty active, bc most of the time people would know the person and would know the nickname on the forum... but would never make the connexion between the two ;) )

Have a nice day. I close the ticket for good.

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!