My CMS is better than yours

Ah, the click-bate title. This one especially targeted at the passionate CMS enthusiast.

In this article I will tackle CMSs. The good ones, the other ones and the eh.. popular ones.

Some ground knowledge

What is “content”?

Content is everything that goes on your website. This can be text, images, videos ect.

In a vanilla – non-CMS – website this can often be difficult to manage on a medium to large scale. Creating the need for CMS platforms.

What is a CMS?

CMS stands for Content Management System. They are essentially software that provide an easier way to create easily maintainable websites and their content without necessarily needing skills in HTML, CSS, JavaScript or any other server-side language

I say necessarily because while many people are creating great looking websites using free or bought themes/skins and plugins/modules, if you want to make something custom for a client you are going to want to have some web skills.

How does it do it?

CMSs allow you to login to a back-end manager and add content through an easy to use GUI. Content is usually added through the use of WYSIWYG editors.

WYSIWYG – What You See Is What You Get

This content is stored away in a database which makes it easy to display and manage.

Is popular best?

Anyone with a bit of web knowledge will bring up WordPress as the best CMS to use – mainly because it’s the only one they know.

I have used and abused WordPress for a few years and have grown to enjoy it’s simplicity. Couple this with a wealth of third party plugins and it becomes a very capable CMS that can be used in a variety of different use cases. The question is, should you?

WordPress is great for what it was made for, blogging. You are busy seeing it in action right now. I love how easy WordPress makes it to smash out poorly written articles/rants like the many you see on this site. 

That, however, is where my use cases for the platform end. Building eCommerce and other bespoke web solutions can be done using WordPress, but are often (like the language used to write the platform, PHP) hacky solutions – far from what the platform was built to facilitate.

It is no secret that WordPress has security issues and developers often make these issues worse.

There is another way

This might boggle the mind but WordPress is not the only CMS (say what!!??). There are many other platforms out there that do a great job. Examples being: Joomla, Drupal, Wix, Django, Magento and my homeboy DotNetNuke (see much longer list)

Each platform has it’s own strengths and weaknesses. These need to be kept in mind when deciding on which to use for your particular use-case. This comes down to a number of factors and making the wrong decision can impact both you and your client.

How to choose

In my honest opinion this is simple, horses for courses. I am going to break it down into a over simplified guide – it’s just the way I roll.

You need a blog.

Just flipping use WordPress. It’s lightweight, easy to use and you can’t go wrong. There are too many people too proud to admit that WordPress is a great CMS for simple websites and blogs. It is easy to get going and you can create a good looking free blog on wordpress.com in seconds.

You need an eCommerce site.

The obvious answer is Magento. Magento is the best and most popular eCommerce platform in the world. There are loads of ready-made integration providers for back end accounting systems like Pastel and if you need something custom there are thousands of developers around the world to help (Syncrony being one of them).

The only issue I have with Magento is that it is  hectic to learn and will demand some time and patience to get fully familiar with it if you are doing it yourself.

Another option

An outside option for people in the .NET space is NOP commerce. NOP is an opensource eCommerce CMS. It is a great flexible option and is easily extensible.

Being build using the popular Asp.net MVC, finding a developer to work on your site won’t be hard either.

You need to build a big website

Commonly, large companies require large websites (you can have that one for free).

These websites often require integration with Windows based corporate systems. This is where DNN steps in. DNN or DotNetNuke is a highly popular .NET based CMS that makes it stupidly easy to create large, easy to maintain websites or intranet sites.

The US military uses DNN, so you have to believe that it is highly secure. With a large ecosystem of skins and modules and a friendly developer community, DNN can cater for just about your every need.

What isn’t catered for can be easily developed by any skilled ASP.NET developer (like me) using WebForms, MVC or SPA architectures.

I need a one page website

Do you even need a CMS? Even the most lightweight CMS can be overkill for simple one page websites. If you have the skills or desire, try the vanilla approach and build your website in pure HTML, CSS and JavaScript.

That is a lot of work!

Not always, there are loads of websites that provide paid or free templates. There a thousands of great looking vanilla websites that have been built using BootstrapJS. All the hard work is done for you, you just need to add the content.

Conclusion

There is no clear CMS to rule them all but not all CMSs are best for every use-case. I encourage you to look at your options before taking the jump into your next CMS based project. It is not always as easy as just going with what’s popular and you could save yourself a lot of time and effort by choosing what is best for you.

 

Advertisements

11 Comments Add yours

  1. Mr. Gaia says:

    Just out of curiousity,how is DNN performing these days …?
    Last time I used it (10 years ago) it was sluggish, and didn’t scale …
    It had a kind of nice plugin thingie going for it, allowing us to create .Net plugins easily, and simply copy a zip file to some folder, but the performance was KILLIING me back then …

    How are things there today …?

    PS!
    I am working on my own CMS, called System42, which is a use-case for Phosphorus Five. You can check it out here. It has some really (kind of weird, but freakin’ AWESOME features) – Like the ability to create “lambda pages”, which are server-side “servlets” you might argue, written in Hyperlambda (my own invented server-side programming language, written on top of C#)

    It is extremely small and lightweight, but gives you an extreme flexibility when you dive into it. The default CSS files distributed with it, is Bootstrap btw (saw you mentioned it in your vanilla solutions)

    System42 would allow you, literally, to create what appears to be a “vanilla solution”, with whatever amount of server-side “servlets” you wish to embed into your site btw …

    Here is a blog I wrote about it … 🙂

    https://gaiasoul.com/2016/10/03/creating-a-new-page-in-system42s-cms/

    PPS!
    I too use WP for blogging, and wouldn’t even dreamm of ever using something else …
    Freakin’ LUUUUV wp.com 😀

    Like

    1. Luke Warren says:

      DNN’s performance is typical of any large Web Forms application. It is not blazingly fast but is not too bad. The in-context editing is it’s big plus and you are right, the developer experience is pretty good.

      Lately I have been using Umbraco a lot more. It’s performance is great and I enjoy the flexibility I have with my markup.

      WP is great for blogging but I will be moving over all my content to Umbraco soon. Nothing against WP, just prefer .NET.

      Will be doing a part 2 of this article soon.

      Thanks for reading!

      Liked by 1 person

      1. Luke Warren says:

        I’d like to clarify too that I already have another website built in umbraco to want to merge them into one with the blog just being one piece.

        Like

      2. Mr. Gaia says:

        Hi Luke, sorry,I couldn’t help myself, considering the name of your blog here … 😉

        I concluded with that my CMS was the “worst CMS on the planet” btw … 😉
        (Since, technically, it is not a CMS)

        Like

  2. Mr. Gaia says:

    Thx for the reply Luke,

    I agree with you, I too prefer .Net in general.

    PS!
    Would love a comparison blog between Umbraco and DNN. I Remember the Umbraco guys from years back, when they started. Loved them for trying to fix the stuff from DNN that was not optimal …

    Like

    1. Luke Warren says:

      I will do one soon but I must say that Umbraco has won over my heart. It is just so elegant

      Liked by 1 person

  3. Mr. Gaia says:

    PS, [shameless plug],
    You really should check out System42 for the record. It allows you to control your markup, down to the very last attribute, while still giving you the ability to create any code you wish. Also in C#, and inject this code through Active Events into your page. Here’s an example of how I consume a high level Ajax TreeView widget in Hyperlambda, but you can also create single HTML elements, where you have some DOM event, triggering a server side event. 100% declaratively … 🙂

    And you can also create your handlers in C# …

    Like

    1. Luke Warren says:

      Very impressive project. Where are you based? Are you working on this project full time?

      Liked by 1 person

  4. Mr. Gaia says:

    Thank you Luke 🙂

    I try, although it doesn’t bring any money yet, so I have to do other things in between.

    I’ve been researching and working on these ideas for more than a decade though. It is all facilitated by a simple design pattern I found in 2009, in addition to a concept I refer to as “managed Ajax”. These two ideas combined, became the birth of “Hyperlambda”, a declarative “app language” (Turing complete), which allows you to “declare your GUI”, among other things, with hooks towards the server, either executing other pieces of Hyperlambda, or C# code for that matter.

    For years it’s been “too weird” for people to discover it, but with my latest additions on the rich Ajax widget side, I think those days are soon gone …

    I profiled the above Ajax TreeView against some of my competitors, and found it to be scoring between 13 and 176 times better, depending upon which criteria you used to compare them against each other …

    The JavaScript for instance, will never exceed 5KB, unless you add your own (which is hardly necessary, but possible if you wish)

    Liked by 1 person

  5. Mr. Gaia says:

    PS, I got so inspired by your combination of CMS/C#/Ajax/design (Bootstrap and other CSS framework blogs), I chose to create some additional features in the TreeView, allowing for search engines to crawl the items, in addition to creating skin support for it … 🙂

    Here’s the result;

    PPS, I’m “all over the place”. Mostly in Europe, where I’ve got my own company, but I also spend some time in South America …

    Liked by 1 person

  6. Mr. Gaia says:

    I love the symbiosis between CMS (content) and Ajax … 😉

    Liked by 1 person

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s