Need developer to add language support to ATOM

26 views
Skip to first unread message

Abhay Aggarwal

unread,
Aug 15, 2021, 10:34:16 AM8/15/21
to AtoM Users
Urgently need a developer to add the following functionalities to ATOM

- Add a language support to Atom. 
- Generate a report listing which entities have English content but not primary language or vice versa.
- Provide ‘publish’ functionality for the Authority Records entities as currently exists for Archival Descriptions entities

I hope this post does not violate any group policies. If it does, please advise how I can ATOM developers.

Please contact me asap at ab...@pressmonitor.com

Dan Gillean

unread,
Aug 16, 2021, 10:35:50 AM8/16/21
to ICA-AtoM Users
Hi Abhay, 

You are always welcome to contact Artefactual at our info email to inquire about development opportunities. There are also many other development companies who do AtoM work, several of whom have members who participate in this list. If you choose to contract with another developer, we recommend that they review our recommendations on submitting custom development to the public project, as this can reduce the ongoing maintenance burden for you and them, and benefit the project and the community as a whole. However, it requires some upfront planning for larger projects! See: 
A few general thoughts to keep in mind: 

These all sound like fairly major development projects (particularly adding new languages - more on this below), so unless you have unlimited project funding, you may want to prioritize your requests, and if necessary, consider workarounds in the meantime. 

Regarding the language request:

A full list of currently supported languages can be found here:
If the language you want to use is already present in that list, then no development is necessary. However, if it's not, the situation is much more complicated. 

AtoM inherits its multilingual support from the Symfony 1.x PHP framework. This PHP framework was originally used to develop ICA-AtoM back in the mid-2000's. However, the framework was deprecated some time ago, and replaced with a non-backwards compatible 2.x version in 2014ish. The Symfony Project is now on version 5.x. 

The breaking changes between Symfony 1 and 2 were so extreme that upgrading Symfony in AtoM would have essentially required our team to rewrite the majority of AtoM to be able to implement it. Given that we have historically relied on community support (either via development sponsorship, or else community code contributions) for major development, and given that most institutions do not want to fund maintenance work such as internal upgrades, we have never found a sponsor, and the work was never completed. AtoM 2 still uses Symfony 1, and right now it is one of the biggest barriers to ongoing maintenance, development, and major scalability improvements in AtoM. 

As such, adding a new language either involves doing work to change how it is implemented in Symfony 1, or else... upgrading Symfony. 

At this point, the second option is not really our preference - mainly because we are not convinced that Symfony, or even PHP, should remain the future core of AtoM. Web based technologies have evolved massively since we began AtoM development, and other new design patterns and technologies have emerged that might be very beneficial in creating solutions for cultural heritage institutions that were not previously available.  Since a framework upgrade is essentially as much work as a rewrite, we would prefer to see a strategy to move AtoM to a more modular, service based design that can scale and be easier to maintain going forward. 

The first option (altering Symfony1 directly) is also a risk however, since it makes continued maintenance of AtoM and Symfony a greater burden for Artefactual - there is a chance we would no longer be able to pull in security patches and performance improvements from the community-maintained Symfony1 forks that exist, for example. 

Our recommendation would be to explore options that can be built outside of AtoM but still integrate with it. This approach would allow for any new development to potentially become one of the first components of an AtoM3 body of modules. Over time, incremental development to move more and more functionality out of Symfony may be the best way for us to build a next generation version, given that finding the funding necessary for new development from scratch to replace a project with 13 years of feature development has proven nearly impossible to find. 

I don't yet know what a solution built outside of AtoM but able to work alongside it might look like for additional language support - but that is exactly how our team is trying to approach development requests these days. Understand the underlying problem, consider how best to provide value, and explore options that will not further add to AtoM's technical debt, so we can move the project forward strategically. I would recommend that you consider a similar approach with any other developers you contract with for work on these feature requests. 

Regards, 

Dan Gillean, MAS, MLIS
AtoM Program Manager
Artefactual Systems, Inc.
604-527-2056
@accesstomemory
he / him


--
You received this message because you are subscribed to the Google Groups "AtoM Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ica-atom-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ica-atom-users/569d021b-53ce-4f0b-8370-040774d5f19cn%40googlegroups.com.

Abhay Aggarwal

unread,
Aug 16, 2021, 1:15:26 PM8/16/21
to AtoM Users
Dear Dan

Thank you for your reply. It was a pleasure speaking with you.

Following our conversation, I sent an email to info. I am waiting for a revert.

Would be grateful if you can connect me to someone who can take the conversation further.

Thanks & Regards
Abhay

Reply all
Reply to author
Forward
0 new messages