Okay, time to whine again.
We (as in all of us hard-working duolingers) need more bonus skills to learn more language and spend our lingots. In the past I have offered to make up a bonus skill and let the staff check it for accuracy but never got an answer or even an acknowledgement. It is high time to expand the course. That is all the whining for now. Have a good day.
and it could be quite a big job to change the current structure
This excuse gets tossed around quite frequently around here. Though you're absolutely right that it's not as simple as the code fairy flipping a switch, it's disappointing to me that we're so willing to accept "difficulty of implementation" as a valid reason when the main components of the feature request are already in place.
Look at this suggestion. To get it working, you essentially need 2 things to exist. One, a method for volunteers to create the new skills. We have this already, it's called the incubator and it's fairly straightforward to use. Two, an update to the shop to allow the purchase of further "bonus skill" slots. Admittedly, this step isn't already done, but it's clearly not "hard" to implement. Copy/paste the existing code that provides the first 3 slots, create some new images, and you're mostly there.
Sure, there's other considerations too. Maybe the bonus skills should be moved to another tab away from the "main" skills so they don't take up too much space? Maybe the bonus skills have to be treated as beta material for a while, open to stricter review for a set amount of time? Maybe they want to keep the skills somewhat synchronized between all the courses? (Doubtful, as that's already not true, but maybe it's in the dev's minds, who knows?) Those things can be figured out later though, they're not good reasons for not implementing the feature in the first place.
While I've sometimes criticized Duolingo's decisions. It may not be as simple as you'd expect. I'll use an analogy for those not knowledgeable of programming:
Suppose you make a house, you lay the foundation, and keep building upon it. Some would say it is possible and easy to add hundreds of floors to the house to make it into a building with multiple floors. However, there is only so much a foundation is build to withstand before it starts crumbling down . Much like with a stack of dominoes on top of each other, messing around with some sections could also cause problems to every layer.
The core of a Duolingo tree was not designed with bonus skills in mind. Chances are that bonus skills were added through a hack, and there's evidence for this. Originally the bonus skills couldn't be strengthened using "general strengthen skills" and some incubator teams claim to have developed bonus skills and these don't show up in the course. Lastly there were other bugs associated with bonus skills that never happened with normal skills.
It is fine to suggest our ideas, but claiming something is simple just because it seems partly implemented, is like claiming a house is sturdy simply because it hasn't fallen.
You're right that initial designs don't always allow for indefinite expansion. It's a problem for all software (and buildings) that last for a sustained amount of time and, at least in the software world, it's a good problem to have to deal with. In fact, my company just rebuilt our biggest product from the ground up to account for a similar expansion need. I definitely overstated how easy it would be to fix in order to try to prove a point though.
My biggest complaint isn't so much that I think the team is overstating the difficulty of addressing certain issues (although I do think that happens), but rather that they seem to use "it's hard" as if it's a valid reason to perpetually ignore obvious weaknesses. It's disappointing that we've had issues like "not being able to switch between courses with different base languages" hanging around for years without resolution, because it's "too hard".
Sticking with the house analogy, no matter how a house was initially designed, at some point the builders have to stop saying "we can't do that, the foundation's not strong enough" and say instead "let's get the foundation fixed and then we can do it". It's easy for the builders to keep saying "can't have a deck out back, the foundation can't handle it" if the homeowner always replies "ok, I guess I don't really need a deck".
We'll never know the extent of the changes required to make any of this possible. What if making such changes required switching duolingo off for two or three weeks, would that be acceptable to users?
The point is that they have to prioritize, what you or I or others may perceive as problematic bugs might be minuscule from grand point of view. Switching courses is at best a minor annoyance only a very small part of the user-base (hard-core users) experience.
They have definitely indicated that they are interested in improving the bonus skills, so the rest is just assumptions and stories that have been created by users. Kind of like "we'll get a reverse tree for X language once X language is in phase 3". That has rarely been true, yet it is a common myth that keeps being promoted.
The trouble with free content, is that people keep asking and asking and asking, and feel entitled to more of it. Ultimately, there will never be enough bonus skills or languages to make everyone people happy.
This person shares with us many great ideas.
We cannot know how difficult changes are to make.
Duolingo must prioritize.
Duolingo might think about something about something.
Do not complain because it is free.
But users should know, like you, that your suggestions(complaints) will be ignored. They have data and more important things to consider. Duolingo must begin to make returns on investments. The future is unclear...