Umbraco with Paul Seal

Paul Seal talks through Umbraco - the up and downs in a brief tour of the .net CMS



Mike: Welcome to episode four of behind the source podcast. I'm Mike street, lead developer and CTO at Liquid Light. Each episode behind the source podcast. We invite someone to come on and talk about a topic project tool or process. We try not to get too techy, trying to cover the topic for people who don't know much about it and they're just looking to find out more all the previous interviews and podcasts could be found on the website, along with a, a mailing list sign up on behindthesource.co.uk.

This episode, I'm joined by Paul seal. Who's gonna be talking to me about Umbraco, Paul, how are you doing? How's it going?

Paul: Thanks. How are you?

Mike: Yeah, I'm all. I'm alright. To give a bit of context, we're recording in the evening of a, a Monday so hard day's work for you.

Paul: Yeah. Yeah. It's been a long one. I was up early this morning.

Mike: Well thanks for taking your time. So for those that don't know you, could you just please introduce yourself, talk about where you work and any side projects and your elevator pitch of who you are, please

Paul: yeah. So I'm Paul Seal I am a lead Umbraco developer at Moriyama and we are an Umbraco gold partner agency. And yeah, we, we work with all things on Braco and Azure DevOps, and also focus on data migrations. But me, myself, I'm really passionate about Umbraco. I love, I just love it, but I'm not too biased or anything like that, I will be honest. And yeah, I'm a, Umbraco MVP as well, five times MVP now, and a certified master as well, Umbraco

Mike: What's an Umbraco MVP.

Paul: So most valuable person, I think. So bit like the Microsoft MVP program, how they recognize people for their contributions. Is Umbraco specific one. So getting recognized by Umbraco for the contributions. I do. I think it mainly through, I've got a YouTube channel where I do tutorials. So if anyone's interested in learning about on Umbraco I'm currently three videos in a series about the new version of a Umbraco

Mike: oh, great. I'll I'll put a link to that in the show notes. So before we get into the main topic of talk about on Umbraco I ask the guests, what kind of new tech are you looking forward to learning about what sort of on the horizon for getting you excited,

Paul: the one that I'm interested in at the moment. Is do net six which coincidentally is what Umbraco has moved to using. So because I've been using do net framework for a long time and Umbraco's in the last six to nine months has changed to a different framework. It's now using assp.net core six.

I've now needed to learn a new framework, basically. So there are some differences between the two and that's what I'm focusing on doing, learning all of the new features that are coming with the new versions of C# and dot net basically. So I feel like I'm starting again in some ways

Mike: Yeah. Is there, are there, are there big breaking changes or are they sort of mainly new features that you can sort of benefit from?

Paul: I think you can migrate a project from net framework to dot net, but most of the time it requires a rewrite really. And the way the main thing is it's CRO cross platform now. So, whereas on Umbraco was. Just a windows thing. Don know, framework was a windows thing. Now you can, you can use.net on anything really, even down to someone had it on a steam deck. So they had a Umbraco installed on a steam deck, you know, that held console thing.

Mike: Yeah. Yeah. Yeah. So, so does that mean you could run.net on a, on a

Mike: Linux, Debian box now?

Paul: yeah, definitely. Yeah. I've I've run performance tests on Linux app service in Azure for Umbraco web.

Mike: Oh, wow. Great. All right. So onto the main topic then, which is Umbraco. So what is Umbraco?

Paul: Umbraco is a content management system built using the.net platform. As I said, it's cross-platform so you can develop or host your Umbraco site anywhere, basically. So Linux, Mac, windows. If you think of a content management system, the main one we'll think of is WordPress. And that one, if you think Umbraco is like the.net version of that, but probably a bit more advanced or specialized in, like you can, one of the best things about Umbraco is the output on the page is completely under your control. You don't, you're not influenced at all by any themes or anything to do with Umbraco you control the output and you also can control the models behind it as well. So everything is fully controlled. That's what, one of the best selling

points for in Umbraco is.

Mike: And so with you sort of mentioned WordPress, WordPress. Probably one of the most popular CMSs out there. With WordPress, it's very much, a lot of hosts offer it as like a, a click and play install. Obviously they don't tend to offer Umbraco but once you've got Umbraco set up Is there much configuration needed to get it started, because I know with WordPress, you can kind of install it and generally kind of use it straight away

whereas other CMSs, you need a bit more configuration, especially if their enterprise, which my understanding Umbraco is geared towards the enterprise market. So is it very much a you can have it as a basic click install, ready to play, or does it always need some configuration?

Paul: So it depends what, what you want to do. So there's different ways to go with it. So on Umbraco itself is free. So as open source it's completely free to use and I created a A tool or you could call it, it's a website, basically psw.codeshare.co.uk, and you go to there and it will give you the install script to actually install an instance of Umbraco for you.

So you can configure the options and what packages you want to install. And on there by default, it comes with the clean starter kit that I created. So in theory, you could have a website up and running on your machine, as long as you've installed the latest version of.net. You could have it on running on your machine within a few minutes, like it's really quick.

And then one other thing is if you wanted to, you could then use this other package called ecstatic, which is a new get package. And it installs into your, Umbraco instance. And you can then deploy to Github pages as a static site. You could deploy to Netlify as a static site. So in theory, you could have Umbraco on your machine.

Mike: Mm-hmm

Paul: Publish it to Netlify as a static website and then like that could be done within 10 or 15 minutes sort of thing.

Mike: Oh, wow. And I'm assuming it's got things like you can have it as a news or a blog, or can you have it, can you have products and stuff in it? Like a shop

Paul: Yeah. So you can do all that. So there's a. there's a really good eCommerce solution called vendor in Umbraco. And what they tried to do is like, let's say your website, you start off with just content, maybe you you're into art or photography or something like that. And you build your website and it's just a content site where you just display your pictures and things, and then you might think, well, actually I wanna sell these

so, what you can do is you can then install vendor, which you then are able to then put some properties on these pages now, like a price tag and things like that to it. And then you can install the vendor checkout as well. And then before, you know, you've actually got a store that's running through Umbraco ,you can log into Umbraco and manage all the orders and everything like that. So that's really good. And one of the things with Umbraco as well is that they're really focused on DXP at the moment composable DXP

Mike: What's DXP?

Paul: I I don't really know, but basically , it's it is the new buzzword. And so the idea is that it's all plugable, so it's almost like things. Not no code, but possibly low code. They just want it to be able to plug into other things. So like you would have your Umbraco as the content, and then you would have, you could plug into Shopify or whatever, or Zapier, you know, so you can have your form submit. And then that fires offer zap. And it's just easy integrations with other third parties.

Mike: Oh, okay.

Paul: yeah, so that's what they're, they're doing. So yeah, you can do sharps. You can do, you can do anything you want really is basically a.net website where you can manage the content sort of thing.

Mike: Yeah. So before we sort of go on to the advantages and disadvantages of it, what are the, if I'm, you know, a net developer and I want an open source CMS, I've heard of Umbraco but I wanna sort of try some others. What other CMSs are available for me to, to sort of try.

Paul: So I think there is .net nuke but I think that's quite old now and I'm not sure whether they brought it up to date with. With net. So they might still be stuck on net framework. Forgive me if I'm wrong. but that one, I think is still on do net framework. Then you've got orchard, CMS, so that was one of the first ones to be as on do net core.

And I, I think that's something to do with Microsoft themselves. But yeah, that's open source and free as well, but I don't, I don't believe it's as fully featured and fully like. Embraced as Umbraco is.

Mike: Okay. So, so say I've, I've installed orchard CMS, and I've sort of basic website. And you are sort of saying to me, no, no, no, Mike, you need to use Umbraco because it's this, like, what's the sort of killer features that Umbraco have got that that sort of makes you such a fan.

Paul: So the main things is the editor experience in Umbraco and the accessibility as well. So, Even just as a developer, as you are building up your models and everything like that in Umbraco your content models, your document types and things just tabbing around and pressing space and typing and not really having to touch your mouse.

They've really got that down lately in the latest versions of it. So that's really good as a developer as a content editor as well is just makes sense to use its intuitive and performance wise. It's, it's really good. I suppose if the other one is on do net core as well, they should be almost the same, but it's, it does really well with its caching as well.

It's got this thing called new cash where instead of hitting the database every time to return the content, it's got this in like I can't remember what you call it, but like, almost think of it like a, a database, but it's. Data. So it takes it from the actual database and puts it into a library a quick access database, I think,

Mike: okay.

Paul: new cash.

So it's really fast rapid access for the content and querying and things like that.

why would I pick it over orchard? The other one, the main one that I didn't say is the community behind it as well. So Umbraco got a really strong, friendly community it's known as the friendly CMS. And it just is because everyone who I've spoken to who's involved with Umbraco, they just want to help each other. They just want you to succeed. So there's a forum, there's a discord, there's a Facebook there's. There's a slack channel, you know, all these different places where you can get in touch. You just ask a question. It's not like where you go and stack overflow and you ask something and you feel stupid for asking it. They actually want to help you get to the answer and solve it. And you can make friends and go to conferences and things like that.

Mike: Yeah, great. I, the, the CMS that we use at work is TYPO3 and that's very similar. That's got a great community behind it. There's a slack channel that you can ask anything and someone will know the answer, or someone might give you a hint and it's really, really helps building with those sites a lot better.

And sort of, yeah, as you say, like if you ask something, something silly, no one takes the Mickey, they're all sort of just welcoming and might correct you and stuff, and it's, it's really good.

Paul: Yeah, exactly. One one of the things, is the package ecosystem as well. So there's lots of free packages for Umbraco. I'm not saying it's anywhere near WordPress' level for packages, but And I don't know how many other are on orchard, but for Umbraco, there's lots of packages from starter kits.

So, you know, you easily get set up, like there's a theme package called uSkinned that won some awards recently at the Umbraco event where you can basically just pick a different theme and you can enter your content and just change the theme really easily. So I know WordPress has lots of themes and this, this itself, there's a thing there's like 26 different themes for this one package that you.

Install that one's commercial. But there's lots of free ones and some commercial ones as.

Mike: Is there some sort of auditing process for packages or is it still a community

Paul: So yeah, they, they do audit them. So Umbraco HQ themselves do see the packages that are coming through and test them out. And they also collaborate with the community as well. So when we see new packages coming through, we'll test them out and feedback on them, things like that. if there was anything dodgy or anything like that, we it'd be picked up quickly.

Mike: Yeah, cuz that that's one of the things with WordPress is it's, it's very open and there's loads of packages, but you're never quite sure whether the one that you are installing is from a legitimate source or anything like that. So it's good that they test their packages.

So the big question, why wouldn't you use Umbraco or what's the thing that winds you up about it, or, you know, what's the, the cloud behind the silver lining. I dunno what question I'm asking, but you know what, you know what I'm saying?

What's the worst bits about it?

Paul: So with Umbraco I think when you are comparing Umbraco with WordPress, perhaps, and you want to know which one should you go for? I think if you've got a developer or you are a developer who knows .net and you want full control of the output, as I mentioned previously, and you want full control of the different models and properties that you want to add, then that's when you would use Umbraco. But for just spinning up a quick blog or something like that, perhaps it might be better to go with WordPress. If you don't actually care about the platform that you're using sort of then you might want to use another, another one, but I think Umbraco what don't I like about it is hard to answer that. Well, I can't think, I think what the one, probably the one thing is that sometimes the feature requests that you might put through on GitHub might take a long time to actually get to because they prioritize other things on the roadmap and they don't always get to yours. Unless you, you want to create the poor request yourself and, and do it sort of thing.

So if I was gonna say one negative, I'd just say sometimes feature requests that go through GitHub, don't get actioned or stay around a while, but you, you do have the opportunity to create a poor request yourself

Mike: Do you find with the, I mean, I've, I've not got the numbers in front of me, so I can't, I can't vouch for the sort of community size and comparison to WordPress, but certainly with the CMS we use, I find that every now and then I run into a problem that feels like no one solved it before. Whereas with WordPress, it's sort of like every problem has been solved a million times before.

And there's sort of all those hints. Do you ever find that, that you sort of maybe come up. The limit of the, of the community or is it quite vast? And people have come across most of the problems that you don't have to run into those

Paul: So there's a main site called our.umbraco.com. And I think there are over a quarter of a million members on it, active members as well. So you can ask on the forum there, anything. I don't tend to come across anything that can't be solved. There's we have like meetups or conferences, or like I mentioned the discord and the slack.

So I generally tend to ask in there. And, but what's really good at the moment is that now that we've moved to.net and it's more closely rep representing an, a asp.net NBC website now, as opposed. Umbraco as a framework sort of thing. It's so close to being the.net website. Now that we've got the advantage of using the.net documentation now the community around.net themselves.

So it's made it broader now. So we, we can get answers more answers because it's not so specific about Umbraco because it's Umbraco has changed to get in line with actual the latest.net.

Mike: Yeah, I suppose it's similar to CMSs that are built on top of Laravel or something like that, or symphony and the PHP world where there's sort of such a community already behind that kind of underlying framework language that they sort of are building on top rather than, rather than something different.

So if , I mean, we've kind of covered this in terms of how easy it's to get started with. With, Umbraco, it seems fairly easy, especially with your sort of aforementioned starter kit that are linked to in the, in the show notes.

Is there if someone knows ASP or.net, sorry. Is onboarding onto Umbraco pretty straightforward or is there some, oh, you need to, you definitely need to understand this, this and this before you can start working with it.

Paul: When I first started with Umbraco, it was on version 7 and I will be honest, there was a big learning curve for me. So I'd been used to do net framework. I'd been using web forms. I knew vb.net and C#. And so when it came to picking up Umbraco and MVC I did struggle at first just to get the concepts of it all.

But as I say, as. Move more towards being very close to.net itself and how it does things even down to like using the.net logging way of doing things and other things like that. It feels like if you can learn asp.net in Don net six, then you can use Umbraco sort of thing. So you can, so you, you get access to not only do you have the tutorials that Umbraco do themselves. or members of the community like myself and John D. Jones put out tutorial series. And then you've also got the official training from Umbraco as well. So you've got different ways to get in and learn a Braco. But I think as a brand new developer, yeah, I would start by watching some tutorials. and that's, that's what I tried to do my best to do is make it easy for someone brand new coming into Umbraco.

Mike: Yeah.

Paul: Like just follow along and you'll start doing it without realizing you're doing it or knowing everything about the technicalities of it. And you'll get the book for it. Cause you'll enjoy it. And you'll see I'm adding a property here and then that's showing on the page. Wow. I'm, you know, this is addictive sort of thing.

And then learn the other stuff around it.

Mike: Yeah. That's what people say about there's a very divided community. Isn't there about junior developers learning react, but. I heard a very good talk at a conference once about the fact that using react, you get something on a webpage really quickly, if you're following a tutorial. And then it's just about getting out, you don't necessarily need to understand the sort of inner workings to begin with.

It's about getting you interested in getting you hooked on the the little shot of adrenaline you get for pressing refresh in a browser and seeing your, your sort of work takes place.

Paul: that brings me onto something actually about dot net. So in.net six, they've focused on trying to get to the one line hello world now. So, whereas before you, you had to set up , your program dots with your main method and this, that, and the other, and you, you are on like 10 or 11 lines before you can even just write to the console "hello world". So now they've really made it a lot easier with minimal APIs and implicit usings and implicit. And global usings and stuff, file scope, namespace, all these other things to make it really simple and easy for beginners. So again, we're getting the advantage of, of that.

I think now that Umbraco has moved to.net core, I think the number of users and people picking it up will, will definitely start to.

Mike: Great. And does Umbraco use, I'm assuming it uses a database under the, behind the scenes. What database does it use?

Paul: So, yeah, it does. It uses you can do SQL Azure SQL server SQL light, which I'm really enjoying using and local DB as well. think they're the main ones

Mike: is sequel like the file based one or did I make that

Paul: Yeah. Yeah. So basically you can run sequel, light anywhere. So you've probably got sequel light on your phone, like servicing WhatsApp and things like that. yeah, it's it's brilliant. And you can use tools like data grip to, you know, from jet brains to actually view the data in, in your sequel light database.

Mike: Excellent. So is there anything else you'd like to say about Umbraco? Anything we've missed?

Paul: I've mentioned the community maybe you mentioned the conferences. So every year there's a conference called code garden. Where I think like between six and 700 people from around the world actually meet up and there's, it's like a three day, it's not just a conference. It's almost like a festival sort of thing.

There's all sorts going on. And it's just a great place to go to and meet up with people that you've seen online in like these avatars are walking around in 3d to go and shake people's

Mike: people have legs that you, you see and stuff like that.

Paul: Yeah, there's a, there's a good conference circuit. I'll be going to Netherlands and in October to give a talk there and you can watch loads of stuff online for free with with YouTube. Yeah. There's lots of content about Umbraco out there.

Mike: It does certainly seem, there's a lot of parallels between, Umbraco and TYPO3, cuz they've just had a big conference out in Germany that sort of looked very similar, kind of a bit more of a community rather than just a stand up on stage and be talked at, of thing.

So. I think that's it for, Umbraco, thank you very your time where can people find you? Obviously i'll put all the links in the show notes, but where is best to ge in touch if people have any questions?

Paul: So the best place to get in touch is Twitter. So if you look for @codesharepaul yeah, I usually tweet on there usually about on Braco but I am interested in technology, you know On the front end as well, and things like that. So yeah, if you want, I've got any questions go to co co-chair Paul on Twitter and my website is co-chair dot code at UK.

And then if you want any of my links to things it's like slash GitHub slash YouTube slash LinkedIn, you know, the usual.

Wonderful. Great. And I'm @mikestreety on all the social networks or you can find the podcast at behind source or at www dot behind the source dot K. As this is a fairly new podcast, I would appreciate any feedback, comments, criticisms, reviews, anywhere. You can either put them out public or drop me an email at [email protected]

Mike: so I've Paul have you? if not you can say goodbye

Paul: No, that's it for me.

Mike: well thank you very much for your time