3 Types of Content Management Systems to Consider in 2019: Traditional CMS vs Headless CMS vs Static Site Generators
Kind of stuck here? On one hand, you have all those software development technologies that are gaining momentum these days — API, serverless computing, microservices — while on the other hand, you have a bulky "wishlist" of functionalities and expectations from your future CMS. So, what are those types of content management systems that will be relevant many years to come and that cover all your feature requirements? And your list of expectations from this "ideal" enterprise-ready content infrastructure sure isn't a short one: to enable you to build content-centric apps quick and easy multi-languages support user role management a whole ecosystem of plugins inline content editing to be both user and developer-friendly personalization based on visitors' search history to support business agility search functions in site ... and so on. Now, we've done our research. We've weighed their pros and cons, their loads of pre-built features and plugins ecosystems, we've set them against their “rivaling” technologies and selected the 3 content management systems worth your attention in 2019: But What Is a Content Management System (CMS)? A Brief Overview To put it simply: Everything that goes into your website's content — from text to graphics — gets stored in a single system. This way, you get to manage your content — both written and graphical — from a single source. With no need for you to write code or to create new pages. Convenience at its best. 1. Traditional CMS, One of the Popular Types of Content Management Systems Take it as a... monolith. One containing and connecting the front-end and back-end of your website: both the database needed for your content and your website's presentation layer. Now, just turn back the hands of time and try to remember the before-the-CMS “era”. Then, you would update your HTML pages manually, upload them on the website via FTP, and so on... Those were the “dark ages” of web development for any developer... By comparison, the very reason why content management systems — like Drupal, WordPress, Joomla — have grown so popular so quickly is precisely this empowerment that they've “tempted” us with: To have both the CMS and the website's design in one place; easy to manage, quick to update. Main benefits: your whole website database and front-end is served from a single storage system they provide you with whole collections of themes and templates to craft your own presentation layer quick and easy to manage all your content there are large, active communities backing you up Main drawbacks: they do call for developers with hands-on experience working with that a specific CMS except for Drupal, with its heavy ecosystem of modules, content management systems generally don't scale well they require more resources — both time and budget — for further maintenance and enhancement A traditional CMS solution would fit: a small business' website a website that you build... for yourself an enterprise-level website … if and only if you do not need it to share content with other digital devices and platforms. You get to set up your website and have it running in no time, then manage every aspect of it from a single storage system. Note: although more often than not a traditional CMS is used to power a single website, many of these content infrastructures come with their own plugins that fit into multi-site scenarios or API access for sharing content with external apps. 2. Headless CMS (or API-First Pattern) The headless CMS “movement” has empowered non-developers to create and edit content without having to get tangled up in the build's complexities, as well. Or worrying about the content presentation layer: how it's going to get displayed and what external system will be “consuming” it. A brief definition would be: A headless CMS has no presentation layer. It deals exclusively with the content, that it serves, as APIs, to external clients. And it's those clients that will be fully responsible for the presentation layer. Speaking of which, let me give you the most common examples of external clients using APIs content: static page application (SPA) client-side UI frameworks, like Vue.js or React a Drupal website, a native mobile app, an IoT device static site generators like Gatsby, Jekyll, or Hugo A traditional CMS vs headless CMS comparison in a few words would be: The first one's a “monolith” solution for both the front-end and the back-end, whereas the second one deals with content only. When opting for a headless CMS, one of the increasingly popular types of content management systems, you create/edit your website content, and... that's it. It has no impact on the content presentation layer whatsoever. And this can only translate as “unmatched flexibility”: You can have your content displayed in as many ways and “consumed” by as many devices as possible. Main benefits: front-end developers will get to focus on the presentation layer only and worry less about how the content gets created/managed content's served, as APIs, to any device as a publisher, you get to focus on content only it's front-end agnostic: you're free to use the framework/tools of choice for displaying it/serving it to the end-user Main drawbacks: no content preview you'd still need to develop your output: the CMS's “head”, the one “in charge” with displaying your content (whether it's a mobile app, a website, and so on) additional upfront overhead: you'd need to integrate the front-end “head” with your CMS In short: the headless CMS fits any scenario where you'd need to publish content on multiple platforms, all at once. 3. Static Site Generators (Or Static Builders) Why are SSGs some of the future-proofed content management systems? Because they're the ideal intermediary between: a modular CMS solution a hand-coded HTML site Now, if we are to briefly define it: A static site generator will enable you to decouple the build phase of your website from its hosting via an JAMstack architectural pattern. It takes in raw content and configures it (as JSON files, Markdown, YAML data structures), stores it in a “posts” or “content” folder and, templating an SSG engine (Hugo, Jekyll, Gatsby etc.), it generates a static HTML website with no need of a CMS. How? By transpiring content into JSON blobs for the front-end system to use. A front-end system that can be any modern front-end workflow. And that's the beauty and the main reason why static site generators still are, even after all these years, one of the most commonly used types of content management systems: They easily integrate with React, for instance, and enable you to work with modern front-end development paradigms such as componentization and code splitting. They might be called “static”, yet since they're designed to integrate seamlessly with various front-end systems, they turn out to be surprisingly flexible and customizable. Main benefits: they're not specialized in a specific theme or database, so they can be easily adapted to a project's needs Jamstack sites generally rely on a content delivery network for managing requests, which removes all performance, scaling, and security limitations content and templates get version-controlled right out of the box (as opposed to the CMS-powered workflows) since it uses templates, an SSG-based website is a modular one And, in addition to their current strengths, SSGs seem to be securing their position among the most popular types of content management systems of the future with their 2 emerging new features: the improvement of their interface for non-developers (joining the “empower the non-technical user” movement that the headless CMS has embraced); a user-friendly GUI is sure to future-proof their popularity the integrated serverless functions; by connecting your JAMstack website with third-party services and APIs, you get to go beyond its static limitation and turbocharge it with dynamic functionality To sum up: since they enable you to get your website up and running in no time and to easily integrate it with modern front-end frameworks like Vue and React, static site generators are those types of content management systems of the future. The END! What do you think now? Which one of these CMS solutions manages to check off most of the feature and functionality requirements on your wishlist?
RADU SIMILEANU / Feb 26'2019
RADU SIMILEANU / Feb 14'2019
What Are the Best WordPress Cache Plugins for 2019? Top 5 Most Effective Ones for Speeding Up Your Website
RADU SIMILEANU / Feb 08'2019
RADU SIMILEANU / Feb 01'2019
RADU SIMILEANU / Jan 31'2019
Build, configure and deploy all necessary resources with just a few commands... The serverless framework empowers you to streamline your entire development workflow. But what if you need to tackle some project-specific issues? Then you extend its core functionality to suit your needs by implementing the best serverless plugins available. For you might need to: bundle a Lamba function with Webpack empty your buckets before removing them copy data from production to development table So, what are your options? to scan through the pile of already developed serverless plugins, looking for the one that addresses that specific issue to write your own custom serverless plugin This post here focuses on the first option. I'll reveal to you the 6 most useful community-driven plugins for the serverless framework. 1. But First: What's the Core Functionality of the Serverless Framework? In other words: What do you get out-of-the-box? Here's a short list of tasks that go from being manually carried out to... automated when you go serverless: creating, configuring, and deploying the needed resources (API Gateway and Lambda functions) storing your code (and configuration) into a repository for later use setting up database tables for your functions configuring serverless templates for your subnets and VPC's In other words: using a serverless framework streamlines all those tedious tasks of writing code on the console, configuring your resources, managing your team's workflow... 2. 6 Best Serverless Plugins to Consider for Your Next Project And the serverless framework itself is an “ecosystem” of plugins. Nevertheless, there are cases when its core functionality doesn't meet all your project's requirements and you need to... extend it. Before you rush to write your own plugin, you might want to have a look at what's already been built. In this respect, here's a list of the most widely used ones: 2.1. Serverless Webpack In a situation where you need to bundle your lambda functions with Webpack? Let this serverless plugin here handle the job for you. 2.2. Serverless Dotenv Here's a common scenario: You need to load your variables, currently stored in an env file, into your serverless yaml config. Then, this is the serverless framework plugin that comes to your rescue. It enables you to dynamically preload env files into serverless. 2.3. Serverless Offline Need to run everything on your local machine before you deploy it? Integrate this plugin here into your framework and it will emulate AWS Lambda and API Gateway on your PC, streamlining your whole development process. 2.4. Serverless Mocha Plugin One of the best serverless plugins, a mocha-based one, that provides you support for your test-driven development flow. 2.5. Aliyun Function Compute Is “injecting” Alibaba Cloud Function Compute support into your serverless app one of your project-specific needs? Well, then this is the plugin you need! It's been built to enable support for this event-driven compute service into the serverless framework. 2.6. Serverless S3 Remover What do you do with all those buckets that you will have been “joggling” with once you decide to delete your stack? The one you will have “overly exploited” by then, during your tests? Well... you remove them. Along with the content that they store. How? You let this plugin here handle the “decluttering task” for you. The END! These are the 6 best serverless plugins already available that you can implement into your projects. Which one's the perfect fit for your current project-specific needs? Photo from Unsplash
RADU SIMILEANU / Jan 19'2019
RADU SIMILEANU / Dec 21'2018
What's the future of cloud computing? What are the enterprise cloud computing trends for 2019 to expect, prepare for and leverage to your advantage? For, whether you: are just planning to move your workloads from a data center to a cloud-native architecture or you're already “reaping” the benefits of a multi-cloud architecture … the question remains the same: “From Kubernetes to serverless computing, to multi-cloud strategies, to containers, to... which will be the top influential cloud trends and patterns in 2019?” To be honest with you, we, too, as a Drupal firm, have asked ourselves the same question... Once you've got the answer, you can: (properly) prepare for the challenges to come turn them into... excellent new opportunities Now, without any further ado, here are the 5 trends that will dominate the cloud computing industry in 2019: 1. Serverless Computing: More and More Companies “Flock” to Serverless Serverless technology goes hand in hand with cloud-native architectures... And the fact that its enterprise adoption will just... explode in 2019 is no news at all, right? Just think of the key features and benefits that serverless “lures” even companies like NetFlix, New York Times or Mapbox with: high speed reduced costs the convenience to port their serverless apps between multiple cloud providers the opportunity to run serverless apps both on public clouds and on private data centers Not only that companies leveraging serverless get to “reap” all the benefits of enterprise cloud computing. But, since they get to run their apps on existing infrastructures, as well, they can modernize their legacy apps, too. All that in addition to the benefit of streamlining the development cycles of their cloud-native apps. What makes serverless computing “outshine” standard provisioning servers? it's a technology that uses “functions” as a measuring unit (instead of “instances” or VM) these pieces of code (“functions”) run automatically … and they take over any data format and turn it into a target legacy system “in charge” with processing the response; they can also interpret those messages sent back to consuming apps through the API gateway the burden of scaling and managing resources gets passed on to serverless providers (Google Cloud Functions, AWS Lambda, Microsoft Azure, Apache Whisk, OpenFaas) To sum up: serverless is going to be one of the leading enterprise cloud computing trends for 2019. accelerating the development process of cloud-native apps “revamping” legacy apps cutting down costs the convenience of going serverless all while leveraging one's existing infrastructure … are this technology's top “luring” features. 2. The Enterprise Adoption of Kubernetes Grows at Neck-Breaking Pace The solid arguments behind this prediction? Kubernetes is highly portable it's highly available it provides unmatched, granular scalability: the go-to choice for scaling containerized applications it automates deployment Whether they're planning to streamline their app development cycles or to rearchitect their existing IT infrastructures, large organizations are “flocking” to this open-source container orchestration system. The interoperable, composable architecture that it provides, along with its “extreme” availability — it runs on laptops, public//hybrid private cloud, VM — and the increased use of containers turns Kubernets into one of the highly influential enterprise cloud computing trends for 2019. One powering hybrid-cloud and multi-cloud deployments... And speaking of containers, Kubernete's simply: convenience at its best (convenience at scale): You're free to put together clusters of hosts running containers and then just use Kubernetes to easily manage them all. To easily “orchestrate” all your containers. 3. Cloud Data Management: One of the Influential Enterprise Cloud Computing Trends for 2019 With the trend of enterprise cloud computing architecture going up in 2019, it's only but predictable for cloud data management to become one of the hottest topics. An efficient cloud environment (whether a multi-cloud or a hybrid cloud infrastructure) calls for: serious planning constant optimization data aggregation analyzing the stored data In other words: with data being the key “nucleus” of any enterprise cloud computing architecture, properly managing and improving the quality of all those massive amounts of data becomes critical. 4. The Multi-Cloud Strategy: An Increasingly Compelling Pattern for Companies Companies will “dread” getting themselves locked-in to a unique cloud service provider. And so, the multi-cloud strategy is sure to rival the conventional “partnering with a single public cloud” approach. Why? Hmmm, let's see... getting cloud locked-in means: being constrained to integrate that specific public cloud environment's tools, services, APIs getting its dependencies “injected” into your application code being unable to future-proof your app, to update it to any new technologies that might emerge; you'd automatically “inherit” a technical debt when locked-in to a specific cloud service provider Whereas having a robust multi-cloud architecture allows large enterprises to: “juggle with” multiple dedicated clouds, each one with its specific functionalities and services be cloud provider agnostic; and that can only mean more flexibility: companies are free to port their cloud architectures between different environments leverage on interoperability; companies will be able to do application>APIs (or on-premise infrastructure ) decoupling And “flexibility” is the key term here: the one that's definitory for modern application development the reason why multi-cloud is going to be one of the powerful enterprise cloud computing trends for 2019 The END! Now, if we are to do a quick recap: more and more companies will migrate their workloads to cloud environments; they will be refactoring their legacy apps also, we'll be witnessing a massive migration to multi-cloud and hybrid cloud environments technical skills required for cloud computing will be in even higher demand in 2019
RADU SIMILEANU / Dec 19'2018
And there are so many strong reasons why you'd want to duplicate a page in WordPress. Or one of your blog posts: you wish to enable your client to make certain changes to the content before it goes live, all while still keeping the original version intact, just to compare the two you need to clone the layout of a specific page and to further use it on a different page on your website; all this with no impact on the “source” page, needless to add you want to “revamp” one of your WordPress pages, to give it a new design, while still keeping the original version “untouched” for future use ... and opting for a “copy/paste and save in a draft” option would only mean losing your SEO optimization, custom images, and page templates etc. “How do I create a duplicate page or post in WordPress?” you then ask yourself. Since WordPress doesn't “spoil” us with an out-of-the-box solution for this job. And writing custom WordPress code for triggering clones might not be on everyone's alley... Luckily, WordPress gives us the convenience of dedicated plugins. Lots and lots of them. And there are quite a few ones perfect for this job: duplicating pages and posts. Here are the 4 WordPress plugins that turn cloning content into a matter of... a few simple clicks: But First: 3 Major Benefits to Being Able to Easily Duplicate a WordPress Page A. Consistency And this is definitely more than “a nice thing to have” on your WordPress website or blog. Keeping consistency sitewide gets even more challenging when you're cloning page settings or layouts and move them around. Luckily, having a reliable plugin at hand: streamlines simplifies … the whole cloning process. It enables you to keep your website's design consistent while making changes. B. Shorten Development Cycle “High efficiency” is just another word for modern development. And, as a web developer, being able to create similar websites quick enough gets critical. Luckily, having a magic tool at hand to help you duplicate your page templates — those to be used as foundations for new websites — just gives your productivity a mega-boost. Simply clone that initial page's layout and settings and... use it sitewide. Efficiency at its best! C. Editing Pages/Posts on Live Websites Now, you can just guess the benefits deriving from this... convenience: you can choose a less “active” time of the day/day of the week and make all the needed changes right on the live site you get to use your Git repository to make critical changes, then just sync them to your website you get to duplicate a page in WordPress (or a custom blog post, let's say), edit it, then just replace the original version with this updated one 1. Use Duplicate Post Plugin to... (Bulk) Duplicate Pages or Posts Why did this WordPress plugin make it to the top of the list here? Well... let's see: not only that it turns cloning into “a child's play”, but it enables you to bulk duplicate posts, as well and speaking of convenience: just select “Copy to a new draft”, an option placed underneath your “Publish” settings and... you'll have your clone furthermore, it enables you to select the customization options that you'd like to add; you get to restrict “cloning” to a few user roles only and you can add your own prefix/suffix before/after the duplicated post's title And now, here's how you leverage its functionality: 1. Just install and activate the WordPress plugin. 2. Go to the “Settings” page; for this, either click on the “Settings” tab in your WordPress Admin panel and select “Duplicate Post” from the drop-down menu or click on “Settings” right beneath your plugin's name (in your WordPress plugins list) 3. While there, choose the settings page that you'd like to clone (and further edit/customize). And you have 3 options here: "What to copy", that lists all sort of web page elements that you may want to add to your cloned page or post. Note: feel free to customize the duplicate page title so you can set it apart from the original page/post. "Permissions", where you can grant permissions for cloning specific content types to certain user roles only "Display", where you can choose the website section(s) where the link of your duplicate page should get displayed. 4. Next, go to Pages>All Pages (or to Posts>All Posts) and track down the page you wish to clone. 5. Once spotted, hove over; you should see 2 new options popping up (in addition to the standard ... ones: “Edit”, “Quick Edit”, “Trash”... ): “Clone” and “New Draft” 6. Choose “Clone” if you just want to create a duplicate of that page or post Word of caution: if that original page/post is already published, the duplicate one will automatically go live, as well! 7. Or, choose “New Draft” if you want to make a copy and further edit it. Once you're done editing it, you can either publish it or save it and keep it as a draft. Note: if you need to bulk duplicate posts in WordPress, just select the pages to be cloned, unfold the “Bulk Actions” drop-down menu above the list and select the “Clone” option Another note: let's say that you've just finished writing a new blog post and you want to duplicate it. Yet, you dread having to navigate all the way to “Posts” and going through all the needed steps. To streamline things a bit, just click on “Copy to a new draft” right under your blog post's Publish settings. Should I also add that, in order to create a duplicate page in WordPress using this plugin you could also just: open a Preview of that post or page to be cloned look for “Copy to a new draft” in your admin bar? And that's it: two easy-peasy steps for creating a duplicate page or post. 2. Use Post Duplicator to Create a Duplicate Post/Page in WordPress Here's another easy way to clone WordPress pages or blog posts. This plugin would enable you to: Create a duplicate of that given post or page; one having the same custom taxonomies and custom fields. Here's how you use it: You install and enable it (obviously!) You select the “target” page and just click on “Duplicate Page” (or “Duplicate Post”) to create the duplicate Easy! 3. Duplicate Page Plugin: One of the Easiest Ways to Clone a Page/Post Don't let its name “trick” you: you can duplicate blog posts, as well, using this plugin! Once installed, you'll find a new option under each post or page called “Duplicate This”. Use it confidently... 4. Use Duplicator Plugin to Duplicate an... Entire WordPress Site What if your requirements go beyond duplicating a page or blog post? What if you need to clone... an entire website? Let's say that you want to build a website similar to the one that you've recently delivered to one of your clients. Or to the very same client. For this, you trigger this plugin's “superpower” and just... accelerate the development process. Since you'll already have a structure to build on. 5. Or Use the Page and Post Clone Plugin Ready for another handy option for you to duplicate a page in WordPress? The process is mostly the same: once you've activated your plugin hove over to the blog entry or page that you need to clone choose the new “Clone” option showing up there … and you'll have your duplicate page created as a draft. The END! These are the 4 easiest ways to create a duplicate page in WordPress. Have you already tried a different method/plugin? Sharing is caring...
RADU SIMILEANU / Dec 14'2018