DEV Community

Dave Woestenborghs
Dave Woestenborghs

Posted on

Let's make Umbraco great again

TLDR; Umbraco is still great, but there is always room for improvement.

Yesterday I my thoughts on a blog post written by Tim Geyssens.

So today I will try to give some ideas on how to improve.

Commercial product support

Some people will want everything to be open source and free. But for Umbraco to be sustainable there needs to be a revenue stream to pay the bills and salaries.

As I see it they have several ways to generate income :

  • Selling partnerships and support contracts
  • Offering training
  • Commercial add-ons like Forms
  • Umbraco.tv
  • Cloud (including Heartcore and Uno)

Having this income enabled Umbraco HQ to grow and this directly affected the core open source project.

Back in the day you had a bigger chance of finding a penguin on the northpole than getting support through the official channels. Now they have a lot of support warriors and so this area has improved a lot.

Also the core product has become more stable. Remember trying to do a upgrade back in the v3/v4 days. Only masochists kept up to date with the latest versions.

But back to the commercial product support, especially Umbraco Forms. We all know, and HQ even acknowlegded it, that it needs some TLC. But somehow this is not happening, or not fast and visible enough for the end users.

I don't know the exact reasons. But let's assume the revenue generated by selling Forms licenses is not high enough to do active maintenance.

So this can be solved in several ways :

  • Increase the price tag. This is the easiest solution. But raising the price tag could have the effect that is not affordable for everybody and thus decreasing the number of licenses sold. On the other hand if you need several hours tracking down a bug, creating a bug report and doing the follow up this easily evens out a increased price tag for a product that is actively supported.
  • Don't give it away for free on cloud. I know this is done to make Cloud offering more attractive, but this is a lot of money they are giving away for free. If they are hosting 5000 websites on cloud they are giving away €945000 for free. If only 10% of that amount was invested back into Forms that could pay for a lot of development hours.
  • Make it commercial open source. Still have the need for a license to run it in production, but open the source code to community contributions. Maybe only for Gold Partners. So you have extra selling point for a Gold Partnership : access to commercial product source code. Could also be a criteria that you need x number of amounts of PR's before you are able to contribute. And of course there needs to be HQ steward to guide everything.

Personally I think the last option is the best, because you have people who are actual users of the product, drive the product development.

But even with it's current flaws Umbraco Forms is still a great product compared to the formsbuilders in other (commercial) content management systems.

Gold Partner Support

Selling gold partnerships is another way for generating income for Umbraco HQ. And also in this area there has been a lot of improvement.

I know this is very short sighted, but back in the day, it was basicly donating money to HQ. And I was fine with that, after all you build your business around something you get for free.

But now there are several perks of becoming a Gold Partner

  • Free training : one online and one in the Gold Partner academy. As a bonus you get more Umbraco.tv accounts than you need.
  • Discount on cloud subscriptions. You get a professional plan at a big discount, while you can still charge your clients the full amount. If you have a lot of projects this pays for the Gold Partnership
  • Full Umbraco support

While the first 2 are for convincing management to become Gold Partner, the last one is important for developers.

And that could be improved in my opinion. The following is said on the Gold Partner page on umbraco.com about the support

We’ve got your back.

You'll be given a guaranteed lifeline directly into Umbraco HQ and our dedicated support team who are able to support you on both the Umbraco CMS and Umbraco Cloud. So if you’re ever having troubles with Umbraco, you're not left alone - contact us and we'll guide you back on track.

But this is not just a lifeline for you - it is also a guarantee for your clients. A guarantee that you've got direct access to the Umbraco HQ support team, should something come up in their project. A guarantee that will help them feel confident (and comfortable) in choosing you to handle their project.

But that's until you read the fine print on the bugfix warranty page.

There it states that only bugs of severity 1 (security, stability or data loss issues) will be fixed within 7 days. But these are the kind of bugs I expect to see fixed ASAP anyhow, regardless of being Gold Partner or not.

To clarify with a example. I encountered a bug in Umbraco. I knew I could workaround this by writing custom code. But in the spirit of open source I created a PR for fixing the bug. This was tested and proven to fix the issue. So I went to through the official channels and opened a Gold Partner ticket as well through the backchannels to get this in a patch release. In both cases I got the response it wasn't severity one so I was not entitled to special patch release. Later on the fixed was classified as breaking so a patch release was not possible.

So I implemented my workaround and got my project live. I reported the bug on Umbraco 8.3 but had to wait until 8.6 was out before I could remove the custom code. That is still 3 minor releases before it got in.

Imagine they handled the other way around. A patch release was possible and they created it. I know I would have been very vocal about thanking HQ for this. That would have been free advertising for becoming Gold Partner. Everybody happy.

Visibility of community

If your read my previous blog post you know I did not agree with Tim about community engagement being way down. I think it is more active than ever. But just in different ways than back in the old days.

But maybe things should be made more visible. Not sure on how and where to do that. Is umbraco.com or our.umbraco.com the place for that.

Maybe give people a incentive to contribute like Gatsby does. You would be surprised what people would do for a free T-shirt.

So if you have ideas please reach out here in the comments or on twitter. My DM's are open if you don't want to do it publicly.

HQ is hearing us

After our blogs Tim and I got a invite to visit Umbraco HQ to have a open discussion about the issues raised. But at the moment COVID-19 measures are preventing me to travel to Denmark. Thanks to Kim Sneum Madsen for the invite.

What's next ?

First off al people need to let go of how things were "back in the day". If still were still the same I don't think Umbraco still existed. Things changing is a natural consequence of growing.

I hope we can get a (virtual) platform where we, as a community, can express our concerns in a constructive manner. The round table discussions that happened were a good starting point.

In the end everybody benefits from a better Umbraco.

And we are in this together. Umbraco HQ would not exist without the community and vice versa.

Top comments (4)

Collapse
 
protherj profile image
Jason Prothero

Thanks Dave. Personally, I'm excited about many of the new directions that the HQ is pushing forward on. There are some fixable things about the long-time products that should be addressed, but overall I'm excited about where things are going both from a community and HQ standpoint.

Collapse
 
ronaldbarendse profile image
Ronald Barendse

I agree with both your and Tim's arguments, it really just depends on the angle you're looking from and what insights you already have. It will be interesting to see the result of these discussions though!

One of those insights I want to add is regarding the release of your bugfix (PR #7189): whenever Umbraco HQ releases a patch, they need to automatically update all Umbraco Cloud sites (running on the same minor). This makes releasing patches a time and resource intensive action for HQ, as maintenance windows need to be communicated, custom patch code created and tested (I believe Cloud applies a git patch and runs custom database actions, so it prevents the normal upgrade screen), a lot of sites will get restarted and additional support will be required if something doesn't go right.

I've noticed the same on multiple of my PRs (although not a Gold Partner): some small changes that are also simple to test, but fixes some critical issue (for you/your current project), sometimes take months to get merged and released, because they don't end up in the next patch release...

And to be fair: releasing a patch per bugfix isn't realistic either, so different things must be weighted in. This is just one of the things that might tip the scale in favour of not releasing patches, but including it in the next minor.

One solution might be to release official beta patches for these kind of issues, like they sometimes release a RC for minors. This would help developers continue with their project, have an easy way to upgrade to the next stable version again and remove the requirement of supporting and updating the Cloud sites for HQ. Any thoughts on that?

Collapse
 
dawoe profile image
Dave Woestenborghs

I like to disagree. The bugfix I mentioned was created and verified to be working. Maybe I did not make this clear enough. I requested it to be in the next patch release. However it was marked as breaking so at least I would have expected it to be in the next minor. But it took several minors to get included. Bug was reported on 8.3.0 and the fix was part of 8.6.0. So that is too long in my opinion.

Collapse
 
the_ashallcross profile image
Adam Shallcross

Great thoughts Dave...thanks for the suggestions.

All things I've considered for a long time too