Thanks for sharing your journey and process with us Roger.

I hope this will give users out there a better understanding of how we got
here.

Gary


On Wed, Oct 19, 2022, 17:03 Roger Leigh <rle...@codelibre.net> wrote:

> Hi Scott,
>
>
>
>
>
> We can all “hope” for maintenance but ultimately someone needs to commit
> to doing the work.  That needs paying for, be it in time donated or money
> to pay for someone else to do it.  In my previous job I maintained an
> application which was critically dependent upon Xerces-C/Xalan-C, and when
> we found deficiencies and faults in it, in particular portability defects,
> my employer graciously permitted me to work on both codebases and provide
> the necessary fixes, including signing off the Corporate CLA.  So the cost
> for me to contribute to these projects was ultimately paid for by my
> employer, because it benefitted them to have supported libraries that
> worked on all of the platforms and compiler versions we cared about, plus
> any needed security fixes being applied.  After leaving that position, I
> continued to contribute, but at this point in time I’m no longer actively
> involved in working on codebases which use either Xerces-C or Xalan-C, and
> in fact I was contracted to replace their use with other libraries by one
> of my end users (which is reflective of people’s concern over the risk of
> using abandoned and unsupported libraries).  So while altruism can go some
> way, I’m afraid my time is limited and I work on other projects from which
> I derive more benefit.  I’m afraid to say that continuing to work on both
> projects costs me a great deal of time, for which I derive zero personal
> benefit, which is why it is time for me to cease participating in these
> projects and to work on others.
>
>
>
> None of this is “right” or “wrong”, it’s just the reality of where the
> project is at this point in its life.  All software projects have a
> lifecycle, a beginning when they are actively developed, a plateau during
> which they are maintained and stable and an end when they are wound down.
> Xalan-C is at the end.  Xerces-C isn’t far behind.
>
>
>
> One of the reasons for moving Xalan-C to the Attic is to make the true
> maintenance status of the project abundantly clear to everyone using it and
> distributing it.  Including provoking discussions such as this one—it’s
> important that everyone understands the consequences of the change in
> status (even if that status is what was effectively the status quo for the
> best part of a decade).  If the result of the discussion is that we end up
> with some new maintainers who make a genuine commitment to carrying the
> project forward, then I would be more than happy.  If there are businesses
> or individuals who are dependent upon it for the continuation of their
> products and business continuity, then perhaps this discussion will prompt
> some consideration of whether or not they need to contribute actively to
> keep the project going.
>
>
>
> However, while it would be nice to hope for such actions, I’m afraid as I
> said in my original email on the subject, that overall interest in XML and
> XSLT is waning, and there is much less demand for libraries and tools for
> performing XSLT transforms.  So the lack of interest in Xalan is not
> unique.  It also applies to libxslt, and it also applies to QtXmlPatterns.
> Look at
> https://gitlab.gnome.org/GNOME/libxslt/-/merge_requests?scope=all&state=merged
> to see how active libxslt is—it’s primarily sporadic churn to fix the CI
> and some minor portability issues and one or two bugfixes; there’s no
> actual development going on there either.  Basically what I was doing with
> Xalan-C for the 1.12 release.  QtXmlPatterns has been dropped entirely.  To
> be frank, if a company really needs to use XSLT, then paying for Saxon is
> probably the best choice—you’ll be paying for having a library which is
> actually maintained and which also has the best XSLT support of all of the
> XSLT libraries available.  If you are basing your business on this, then
> there isn’t really much of a choice to make here, the answer is obvious.
>
>
>
> I’m not sure I really buy the point about the cathedral and the bazaar.
> Xerces-C and Xalan-C benefitted from huge contributions from corporations,
> IBM in particular.  I could be wrong (I came in much later), but it looks
> like the vast majority of all of the development of these projects was done
> by developers working for IBM.  I’m not sure that the projects ever had
> many significant contributions outside this effort from independent
> individual contributors for anything more substantial than small fixes.
> Individual volunteers generally want to work on interesting and fun stuff.
> Working on Xerces-C and Xalan-C has been little more than hour after hour
> of boring maintenance work.  Hundreds of man-hours keeping the CI going,
> testing the build system on multiple platforms, debugging and testing,
> reviewing, testing and applying patches applied to the various Linux and
> other distributions, plus GitHub PRs.  Necessary, but not particularly fun
> or rewarding, and extremely time consuming.  But the project needs someone
> to be doing this on an ongoing basis as a basic prerequisite to be able to
> test changes and make releases, and generally provide the basic
> infrastructure one would expect from a healthy and active project as a
> viable ongoing concern.
>
>
>
> There’s a limit to what an individual can do.  I used to work a full-time
> job and then spend another 6-8 hours every day writing free software and
> being a Debian developer, with a lot of unwritten obligations to satisfy.
> That worked until I hit my 30s and I ended up with crippling RSI and
> massively burnt out.  Today in my 40s I work my day job and tinker with
> some free software stuff on the side.  Making a commitment to work on a
> project like Xalan-C or Xerces-C brings with it ongoing obligations to do a
> lot of work on an ongoing basis and in a timely manner.  I can’t continue
> to do that.  Everyone using Xalan-C today has benefitted from the work I’ve
> done, without needing to contribute anything back.  If users of Xalan-C
> want the project to continue, then they will need to step up to do all this
> stuff themselves.
>
>
>
>
>
> Regards,
>
> Roger
>
>
>
> *From:* Scott Furry <scott.wl.fu...@gmail.com>
> *Sent:* 19 October 2022 08:13
> *To:* c-users@xalan.apache.org; d...@xalan.apache.org
> *Subject:* Re: [VOTE] Moving Xalan-C to the Attic
>
>
>
> I'm only an occasional user of Xerces-C/Xalan-C libraries but retirement
> seems wrong to me. Understandable. Lamentable. Still wrong.
>
> Reading the suggestion of placing Xalan-C into 'the attic', I dove online
> to plan a migration strategy should it become necessary. I was not pleased
> with what I found:
> - Saxon has a `community edition` but is only interested in selling
> licenses.
> - Folks over at libxml2/libxslt go to great lengths to stipulate that
> Gnome is not required - but library has its 'C' quirks. C++ wrappers of
> various type and quality abound.
>
> The previous move by Oracle to 'abandoned' the Netbeans IDE to the Apache
> Foundation was not pleasant for me. After seven release iterations the IDE
> still doesn't have a decent C/C++ setup comparable to the Netbeans 8.2
> plugin. Everyone in the Apache Netbeans project seems focused on Java. I
> have an overall negative impression of Apache projects as a result.
>
> I can appreciate that few have the time and resources to commit to
> maintain code. We've gone from "The Cathedral and The Bazaar" to silos
> ("Big Box Stores") of companies - Ubuntu, Gnome, Red Hat, et al. The notion
> of the dedicated developer toiling away doing incredible work in obscurity
> is becoming quaint. XKCD pretty much nailed it with the 'Dependency' comic (
> https://xkcd.com/2347/).
>
> Given the long history of the Xerces-C/Xalan-C, as well as few decent
> compatible replacements, I would hope the code could be maintained in the
> future.
>
>
>

Reply via email to