Who destroyed base?

Hour after hour spent tying to get things working that used to work perfectly. I’ve been using base for many years now, and I am absolutely aghast at how bad it’s gotten. One new problem after another I’ve found. I’ve ask about a few of them here already. Some things I have been able to workaround like windows showing up with no frames.

Really did anyone test their code before it was pushed to the world? I am despondent. I have databases I need to be able to use! I have tried for many weeks to fix them to get them working again. Some things I have been able to fix, but I keep running into new things. Today it’s that subforms won’t work properly. WTF?

RULE # 1 of software development: DON’T BREAK EXISTING THINGS. This rule has been broken. I am now looking at buying a new computer to load an old backup onto just so I can function. I can’t really explain how angry I am at the shitty code that has been pushed out. It would have been better to not fix anything than to make things worse.

Nice rant. But completely useless, unless it calmed you down a bit…

If this is your conclusion, I doubt all your observations. IMHO it should be possible to use your current computer for this. That’s, why we have backups.
.
Good luck for your proceedings, whatever that may be. (As you didn’t give any details my conclusion was: You don’t seek help.)

2 Likes

LOL. Do you know a single software that never broke this “rule” while evolved? Don’t confuse an ideal with the reality.

And now think a bit. You have an office suite, where a lot of code is shared between several components (e.g., Writer code is used a lot in Base forms). You have a huge shortage of developers interested in Base development. You have a huge shortage of test coverage over Base. You have rapid evolution of, say, Writer compatibility and features. And you realistically expect things never breaking?

Why do you decide to upgrade in the first place? Just stay with the version that worked for you. But you likely wanted to upgrade because it might fix / implement something useful… (If not, then definitely stay with the old version, period.) But that new development is exactly what is causing breakages - just the other side of that. Even a vulnerability fix in an external library may break things (and e.g. we needed to release 7.5.9 because of that). This is no ideal world, and not the ideal project with ideal developers - there is not a single developer in this project, who knows every part of it. We do our best, but your idea is “indeed do what I need, and don’t do what I don’t need” … heh.

I hear you Mike. You’re a decent guy I think.

I’ve studied parts of the code in the past; what a huge, inherited mess, IMHO. The sheer lack of internal explanations of what is going on, oh my gosh; not even Einstein could figure it out. I even got a commit to fix one tiny, tiny thing. But then it took the git keepers over a month to approve a correction to a URL in a comment. LOL. Kind of pissed me off, and said to me: they were not interested in any help, at all.

Seems like LO is too complex to remain fully functional. What’s the solution? Is it time to jettison base?

Personally I hope, that at some point, there will appear a paying customer interested in Base. Up to now, they are mostly interested in Writer, then Calc, then Impress. This is an important factor in the development focus…

It is not true. We are real people, with real lives. We may be slow in review, which we do in our free time (as volunteers). Sorry to hear it was the initial experience for you, that created a bad impression. I can tell you, that we now even have TDF-employed, paid staff to review / help exactly newcomers, to make their boarding smoother.

There are some important bugs in forms since LO 7.5. These are the regressions I detected:

I design forms with LO 7.4.7.2. Change all I could change to get them working in newer versions. But something (like the multiline text boxes) I can’t get working any more. So I don’t use this boxes any more.

Creating forms is a nightmare since LO 7.5 - and all the bugs are known regressions.

But: I haven’t heard of a bug with connections to subforms, which is a new bug.
@EasyTrieve : Try to describe a little bit more.

1 Like

I hear you. You have a project management strategy of: pay to develop component x. I already knew this was how it was currently done.

So it’s obvious to me that this management strategy, if you think about it a moment, is exactly the problem. It creates bulls in the base china shop. Developers who work on underlying code but without the responsibility or resources to ensure they aren’t breaking something else. Look I know it’s a huge responsibility to ensure that every single dependent works after touching a primitive.

Anyone who touches shared code used by more than one component needs to be held responsible to ensure the quality of all components that use that shared code. So even if you are getting money to fix or enhance something in calc for example, if this requires touching shared code, then suddenly that money needs to be spread across all components, to make sure that every use of that shared code is tested and or fixed to ensure that it works before moving on.

So IMHO the management of LO progress needs to be improved. The rule is that money can be accepted to work on calc, but IF work to fix calc gets used by any other components, including by base, that then there has to be enough of that same pot of money allocated away from calc to be used to work on ALL of LO to ensure that every dependency works.

Without such a $ management adjustment, base is dead and should be abandoned. For even if a few base volunteers fixed a few things they will easily be overrun by others destroying things faster than they can fix them.

There is your base money. It comes from calc, impress, and word money. It must, or base dies.

No. You only hear yourself. I didn’t say this, nor implied this. Even without asking who was “you” in your second sentence

What does “interested in” mean?

Changes come into LibreOffice code, when one of several things happen: either developers themselves are interested in an area; or some user (company) needs support, and finds some professional (often one of certified ones) to contract them; or TDF has a tender to implement something; or - recently - TDF paid staff does something that TDF sees a priority.

I hope that some company in the developers community (e.g. Collabora, which I work for, or Allotropia, or any other company or individual) would get a customer who needs Base in good form. This part of my message was most definitely understood correctly.

What I didn’t mean was “a project management strategy of: pay to develop component x”. The project is governed by a non-profit organization; its goals is to provide infrastructure for development; promotion of FLOSS (LibreOffice in particular); making sure that the project isn’t dominated by any single entity; providing sustainability; having a steering body created from knowledgeable developers to solve technical issues … anything except making money for features.

3 Likes

@ mikekaganski, Mike, I’m not saying “you” are responsible. I should NOT have written “you”, but rather TDF, or perhaps “unknown”. I’m sorry. Perhaps better to say that collectively this problem has happened.

DATA POINT: For the record, I reported 24 Base bugs between 2018-2023 and now I see that ALL 24 still have a status: “NEW”.

Zero touched in 7 years is pretty dismal I think.

Thank you for these reports! Really.

Well, I have a somewhat different experience:

Of them:

But indeed: yours are Base-related. As said, this area is “underloved” (to not use a strong word).

I can only say, that in this time span, I have fixed some Base-related bugs myself (not many, I must admit). E.g., tdf#157826, tdf#138691, tdf#120129, tdf#125286, tdf#115547.

My statistics:

A little bit more statistic:
Since 2011 I reported 377 bugs for Base - my special part of LO…
6 of this bugs haven’t been confirmed by others in this time.
About 130 bugs for Base are still open and set to NEW.
Most of the rest has been fixed, also some were “notabug” or “worksforme” or “duplicate”.

Bug fixing will be faster for Writer. I see this when reporting a bug there - often the fix will appear some days later. Main problem I see is: Bugs, which are a regression, won’t be solved by the people, who introduced the regression with there changing of code. I posted some of this bugs above, which are all “bibisected”. Might be I should test them all with Writer and set a new label: “Writer” instead of “Base” :sweat_smile:.

Definitely do that. No joking.

@mikekaganski : Done it for the last 2 bugs. One of the problems is a special KDE-problem (multiline textboxes). Might be this is the reason why there isn’t happening anything …

IMO, it is death by a thousand cuts. Chip away here and there, and eventually it will be useless or so lame as to be fit for the knacker’s yard.

Unfortunately, no one seems to want to work on the ugly duckling, as the ROI isn’t seen as significant. The code is complex to read and debug and requires an extensive knowledge of the programming paradigms that were used during its creation.

This situation is both intensely desperate and annoying for me personally as I use Base on a daily basis for work. I believe that it was also entirely foreseeable as soon as the majority of commercial development work began to focus on Writer and Calc, and then into bringing LibreOffice “online”, i.e. when it was realized that money might be made out of offering a slimmed down version of basic Writer and Calc functionality that didn’t require a functional interaction with Base. For me, this is where I have an issue with the ecosystem arguments that are supposed to lead to benefits to the “entire LO project” and the alleged trickle down affect. Commercial resources are naturally targeted towards developments that are intended to meet one’s business objectives. If those objectives rule out by default any Base functionality, it is only a matter of time before the ugly duckling gets left stranded by the wayside.

Huh?
I have a friend, a school teacher from Germany, Andreas Heinisch, who has made hacking on LibreOffice his hobby. He often asks me to review his changes, or to advise on a tricky problem, in a random area he is interested at this moment. We sometimes make calls to discuss the code, and once had a hack session on one of LibOCons, where we could share the ways we tackle problems. Over the last years, he made a big impact on Basic in LibreOffice - basically alone. What was his ROI? Do you claim that Basic implementation is an easy-to-grasp area in the codebase?
I see Julien Nabet, another hobbyist, being annoyed by the Base state (he doesn’t seem to be interested in Base personally), spending hours fixing some bugs there.
But I don’t really see the bright Base community - admit it: people interested in Base are in general much more technically competent, as it used to be in IT in general some 40 years ago, or in Linux world even 20 years ago … - I don’t see them getting their hands dirty in code, coming to IRC and asking @hossein (who is mentoring newcomers) to help them set up their development environment, or CCing me to their changes in gerrit, asking for an advise or a review … Whose ROI would be greater, than for people personally interested?
People tend to over-estimate the difficulties, and expect someone else to do the work. The little ROI is only a sign that people interested in a feature are not interested enough. That was reflected somehow in my hope that a paying customer appears.

You know, I myself came to the project this way. I used to be a system administrator in a company working in a construction business. I decided to move it from a commercial office suite to OpenOffice.org, then to LibreOffice; I saw the issues I needed to workaround - creating workplaces, templates, teaching users, I needed to know the programs better than them … and I started by filing bugs, then triaging, and after some time, I got brave enough to start patching. And then I was noticed by my current employer, and became a full-time paid LibreOffice developer. I have a right to say it it doable.

  1. Please tell me, exactly when was it so, that the work on Base wasn’t primarily driven by commercial interests. As I said, unfortunately I don’t see a single person, who would be interested in Base themselves, who would either hire someone, or do the work themselves. I claim that it was from the start something “just for a checkmark”, to match a competitor’s offering repertoire.
  2. Please tell me, where did you read / hear about this fictional “offering a slimmed down version of basic Writer and Calc functionality”. Please show me that offline package made by any community member (Collabora, or CIB, or Allotropia, or …)? You mention Online. Then look at the evolution of the Online. Yes, it started by only offering Writer and Calc functionality. But then, Impress was added; then Draw; then we added support for macros, Math … the ultimate goal is to provide as complete set of functionality as possible. Honestly, what you wrote is so untrue (and I feel it personally).

Base is used in Mail Merge. Base is used in Bibliography. Both are required. Bibliography was improved ~recently: see What is Miklos hacking – Bibliography improvements in LibreOffice Writer and What is Miklos hacking – Bibliography improvements in LibreOffice Writer: refer to a specific page ; Mail Merge saw a big rework some earlier (I believe, in LiMux project time; but also later, when I myself worked on MM topics for some our customers). I don’t see how can anyone say there is a plan to cut something off.

Now let me ask a question I have no answer myself. If you put aside the specific set of bugs mentioned by @RobertG in Who destroyed base? - #6 by RobertG above, which were all caused by a massive work on dark theme by a single developer - @caolan - during 7.5 cycle, which, as any new development, indeed created its trail of regressions, and which I am sure will be fixed - was Base in a really better shape at any point? My suspicion is that it is not a “death by a thousand cuts”, but rather, a frustration from seeing the part being in basically the same state, while other parts evolved. It might be sad. But I didn’t even see a clear description of the specific problem that caused this thread in the first place, which e.g. @RobertG asked for.

4 Likes

After thinking about Mike’s repeated comments here that LO needs funding for base, it occurred to me this morning what might be going on:

There is someone who is funding LO development, e.g for Calc, Writer, etc, but who is deliberately not funding Base development.

Now, who would do that sort of thing, or why???

Well, Oracle for example might do that sort of thing.

Hear me out. It might be in Oracle’s interest to be able to use some of the LO open source suite, but they wouldn’t want LO to ever compete with their database tools which are the core of their business.

Obviously if they are doing this, they would be funneling the money to LO in a way that LO doesn’t really know where the money is coming from.

And if you recall, when Oracle paid all of that money for Sun Microsystems, where Open Office was developed, they probably thought they were getting rights to Open Office and also to MySQL. But they lost both of these key sources! So they are probably pissed and working to re-gain what they lost somehow.

Anyway Base is so bad now that it barely works. It’s like someone purposely tried to destroy it I think.

Call me a nut, but that’s my thoughts on this subject.

Feed most of LO, but starve Base! What a great way to kill base.

Check this out: https://www.youtube.com/watch?v=IEP99RZd8Tc

Very interesting discussion! I have learned a lot from this. Perhaps it is time for some of us, who tried Base but found it too difficult, or who might have wanted to use Base but were warned away from it by others who had tried it, to start a fund of some sort, hopefully “matched” by some larger public-interest group (ODF, are you listening?) that could help to pay developers to repair, update, and renew the Base software.

I use Calc for many things (large data sets with calculations and graphs based on the raw data and the calculations), but there have been many times when I thought of uses for a simple database. Last year, I actually tried to use Base for a simple inventory-type of database. After setting up the format (with difficulty and several re-starts) and entering about half of the data (tediously!), I just gave up. The disadvantages of the current Base certainly seem to outweigh the potential advantages. This should be changed.