Skip to main content

Mobomo webinars-now on demand! | learn more.

In the days of old, long, long ago, civilization nearly came to a standstill all because of sloppy code and a lack of foresight. Geniuses promoting the impending catastrophe creatively named it Y2K (Year 2000) and in the months that preceded the impending doom that the world would reap as a result of the “millennium bug” (as it was also so aptly referred to), programmers across all industries scrambled to save the culture’s – neigh – the world’s recent and vast leaps in technology made during the dawn of the internet. Some 20+ years later, Drupal developers find themselves beset by a similar foe – Drupal 10 and the premature, planned obsolescence of CKEditor 4.  

Okay…so that was all a bit hyperbolic (but there is a slice of truth to it). Drupal 10 is actually going to be a really great upgrade that is streamlined and refined, utilizing the most popular and critical modules for development while simultaneously retiring unused, underused, and non-essential modules – all the great features of Drupal 9 without any of the dead weight. Furthermore, Drupal releases are going to be performed in tandem with Symphony releases with a continuous focus on honing the core so that it is a sound infrastructure upon which modules can be used to strengthen and expand that core going forward. 

But the elephants in the room are CKEditor 4 (under planned obsolescence) and CKEditor 5 (being built from scratch). The trouble with building something from scratch to replace something old (at least in the case of CKEditor 5) is that the old library is filled with “hard copy books” while the new library is “digital” – and there is no automated “module converter” available. With very few of the modules within CKEditor 4 being transferred to CKEditor 5, a large selection of plugins that are currently being used on existing modules are not yet compatible and because Drupal is an open-source community, it falls to the community to contribute patches back…which isn’t happening fast enough. 

Unlike Y2K, the patches that need to be made between CKEditor 4 and 5 are not currently being backed and funded by corporations and federal agencies and by the time the urgency in doing so is realized, it may be too much of a crunch to accomplish the fix. The beauty of open-source software is that it belongs to everyone. But, as Peter Parker’s uncle said, “With power comes responsibility” and if we as a Drupal community don’t all take a little responsibility for this, we will all pay the price. For more information, the upgrade coordination can be found here and information on the deprecated and obsolete modules and themes can be found here. Within Mobomo, we pride ourselves on being thought leaders and valued contributors to this open-source community. If you have any questions, please reach out to us here and send a message directly to the Mobomo team. 

Categories
Author

Mobomo’s Drupal GovCon 2021 Training

Each year, the best and brightest in the web development community gather at Drupal GovCon to expand their expertise and share the latest insights and trends regarding Drupal, the free and open-source web content management system (CMS) that provides the back-end framework for at least 1300 of the top websites worldwide.

Mobomo, a leader in scalability who has worked with federal agencies from NASA to the NOAA (National Oceanic and Atmospheric Association), has been a key contributor to Drupal GovCon since its inception in 2015 and, as the sole Accessibility Sponsor for this year’s convention, our team of experts embraced the honor of hosting several shorter presentations in addition to an extensive training on Drupal infrastructure best practices. 

Widely recognized for a track record building some of the most trafficked sites for government entities, the Mobomo technical team is committed to serving the 1.4 million strong Drupal community as a partner and thought leader. This year, Mobomo aces Jason Schulte, Dan Narkiewicz, and Jeff Beagley focused on Mobomo’s unique approach and philosophy regarding what doing Drupal right really looks like.   An infrastructure, hosting, and web development veteran with more than 20 years experience fostering cohesive teams dedicated to innovation, Jason Schulte, Mobomo’s CTO, joined Dan Narkiewicz, a Full Stack Developer and Engineering Manager who specializes in Docker-in-the-Cloud solutions for Drupal 7, 8, and 9, and Jeff Beagley, a DevSecOps Engineer with a wide-ranging background in software development and a focus on building automated and efficient applications/architectures at scale. Together, they created a playbook for the more technically savvy Drupal GovCon attendees to hone their abilities in designing sites that strike the right balance between speed and aesthetics without sacrificing long term scalability capabilities.

The “Mobomo Way” deep dive Jason, Dan, and Jeff engaged in with the group began with Drupal on a single server using docker containers and then scaled it to a high-availability, production-ready cloud deployment utilizing AWS managed cloud services to scale the Drupal infrastructure with the capability to leverage AWS automation to its fullest extent. Taking advice from John Wooden, who famously once said, “If you don’t have the time to do it right, when will you have time to do it over?”, Jason, Dan, and Jeff shared the most critical elements involved in building sites that perform – and will keep performing no matter the scale; namely, memcache, docker containers, and appropriate planning of the reverse proxy caching layer and CDN.

Memcache

Speeding up dynamic web applications by reducing the database load, memcache is an open source, high-performance distributed memory caching system that is widely recognized for optimizing the user experience. Mobomo believes every Drupal site should be built using memcache because, without it, sites can encounter performance issues in the long term.  We have seen it too many times and the scalability issues that arise from not using memcache can become cost and performance prohibitive for you and your clients.

Docker Containers

Packaging applications and all their dependencies together in the form of “containers”, Docker ensures that each application is independent of other applications, will not interfere with one another, and is easily replicable by QA teams. This containerization platform works seamlessly in any environment but most importantly, Docker Containers force developers to view site infrastructures in terms of separate components and separate the site components at the beginning of the development process, which allows for easy scalability of individual layers throughout all site expansion efforts today and into the future.

Reverse Proxy Caching Layer and the CDN

Maximizing site performance is critical to the user experience, but a great deal of care and planning must go into a reverse proxy caching layer and the CDN (Content Delivery Network).  This can truly be one of the most difficult things to set up and configure properly, primarily because this is never a one size fits all situation.  The reverse proxy and CDN is how you make the site perform really fast for the public, but whenever you publish new content to the site, you run up against the CDN – so, striking a balance between these two forces (pushing content out quickly without hitting the backend all the time) is very challenging.  Mobomo’s training seminar touched on this, but in reality, reverse proxy caching and the CDN is a topic that could have its own intricate training course.  In other areas, developers can be prescriptive, but in this instance, the way in which each is calibrated is entirely dependent upon the site needs and usage.  For example, a news organization that publishes articles by the minute will require different planning than a government entity with static pages updated on an infrequent basis.

Jason, Dan, and Jeff made this look extremely easy through their training, but suffice it to say, practice makes perfect – and as experts in their fields, these gentlemen have seen and worked their way through many challenging site builds/rebuilds.

Have questions about performance audits or scaling your site? Interested in learning more from Jason, Dan, and Jeff? We at Mobomo pride ourselves on redefining the status quo in product design and DevSecOps engineering and are committed to sharing knowledge with our colleagues, so we’ve included a link to our Drupal GovCon training presentation. We welcome any thoughts you have on our work and or suggestions you have for future training that would be valuable to you and your organization. 

Please feel free to reach out to us via LinkedIn or click this link to access our contact form and share how we can help you.

Categories
Author

argument-open-source

Recently, Drupal has been on an update rampage. The introduction of the oh-so-beautiful Drupal 9 core has spurred a chain reaction of upgrades across the Drupal platform. Just this week, we're getting a new default theme (which is hyper-minimalist and easy-on-the-eyes), a 20% reduction in install times, and automated lazy load for images. But let's talk about the juiciest UI/UX update that came with Drupal 9 — the standardization of Drupal's Layout Builder.

If you've built a pre-Drupal-9 website over the past few years, you probably dabbled with Panels/Panelizer, WYSIWYG templates, or even custom coding to set up your UX/UI. And that works. We did it for years. But you can throw that worn-out Panelizer module in the trash. The times, they are a-changing. Drupal's new Layout Builder module combines the core functionality of Panelizer with an out-of-the-box WYSIWYG engine.

First hinted at in 2017, Drupal Layout Builder officially left the onerous Drupal testing pipeline last year as part of Drupal's 8.7 updates. Despite circulating for a year now, the chaos of 2020 has overshadowed this potent and flexible tool. So, let's talk about it. Here's what you need to know about Drupal's Layout Builder.

What is Layout Builder?

Layout Builder is a WYSIWYG page editing engine that lets you manipulate back-end features via an easy-to-use drag-and-drop interface. It's difficult to overstate just how valuable Layout Builder is when it comes to time-savings. You can create templates in minutes, immediately preview and create content changes, and tweak page-by-page UI/UX features to create more cohesive and on-the-fly websites and landing pages.

At its core, Layout Builder is a block-based layout builder. You can create layouts for either a single page or all content of a specific type. In addition, you can jump in and create rapid-fire landing pages based on your existing design theme. There are three "layers" that Layout Builder operates on to help you build out holistic websites.

  1. Layout templates: You can create a layout template for all content of a specific type. For example, you can make a layout template for your blog posts or a layout template for every product page. This template will be shared across all pages, so you don't have to go in and rebuild for each content type.
  2. Customized layout templates: You can also go in and make granular changes to a specific layout template. So, if you want a certain product page to be different than the layout template, you can make granular changes to just that page.
  3. Landing pages: Finally, you can create one-off pages that aren't tied to structured content — like landing pages.

Important: Founder of Drupal — Dries Buytaert — dropped a blog post with some use cases for each of these layers.

To be clear, Layout Builder isn't a WYSIWYG template. It uses your existing template. Instead, it allows non-developers (and lazy-feeling developers) to quickly make per-page changes to the website without diving into code. But these aren't just simple changes. You can create a layout template for every page type (e.g., creating a specific layout for all the shoes you sell), and you can also dive into each of these layout pages to make custom changes. So, it really lets you get granular with your editing without forcing you to completely retool and redesign pages for each type of content. This gives Layout Builder a massive advantage over WordPress's Gutenberg — which requires you to go in and re-lay elements for every page individually.

Here's the kicker: you get a live-preview of all changes without bouncing between the layout and the front-end. Every block and field you place and every change you make to taxonomies or content is visible the second you make the change. The entire process takes place on the front-end, and changes are instantly visible. Remember, Layout Builder is part of Drupal's Core, so you don't need to implement new entity types of dig into third-party elements. It's an out-of-the-box experience.

Advantages of Layout Builder

Last year, we got a gorgeous, picture-perfect demo of how Layout Builder would work. It's beautiful, fast, and packs a punch that other leading layout builders are indeed missing. So, to help unpack the value of Layout Builder, let's look at some of the advantages of Layout Builder:

Customization

Beyond Layout Builder's incredibly powerful and customizable block-based design engine, it offers customization in usage. Let's say you want to create an amazing landing page. You can start with a blank page that's untied to structured content, drop in some hero images, a few pieces of text, some content, and a video. Suddenly, you have a custom landing page (complete with modules, blocks, and taxonomy) that exists in a separate ecosystem from your website.

Simultaneously, you can create a template for every blog post, then dive into a specific blog post and make on-time changes to just that page while still being tied to your structured content. Remember, you can make these changes nearly instantly, without touching code. And you'll see a live preview of every change immediately without switching between interfaces.

Accessibility

Drupal is committed to accessibility. The second principle of Drupal's Values & Principles page reads, "build software everyone can use," and this rings true. Layout Builder meets Drupal's accessibility gate standards (i.e., conforms to WCAG 2.0 and ATAG 2.0, text color has sufficient contrast, JavaScript is keyboard-usable, etc.)

Ease-of-use

Like many WYSIWYG editors, Drupal Layout Builder is all about "blocks." But these aren't your run-of-the-mill blocks. There are inline blocks, field blocks, global blocks, and system blocks. Each of these has its own use case, and you can combine these block types to create stellar pages in minutes. For example, global blocks are used to create templates, and inline blocks are used to create page-specific changes that don't impact the layout. The combination of these block types makes Layout Builder a hassle-free experience.

Additionally, there are plenty of ease-of-use features built into the core. Layout Builder works with the keyboard, has plenty of usability features that tie to Drupal's value statements, and allows nit-picky setups for customized workflows.

Creating a Drupal Website is Easier Than Ever

With Layout Builder, users can generate valuable content and pages without needing to patch together various WYSIWYG tools or Panel/Panelizer. At Mobomo, we're incredibly excited for our clients to dive into Drupal Layout Builder and make actionable and memorable changes to their templates based on their in-the-moment needs and experiences.

But Layout Builder isn't a replacement for a well-designed and well-developed website. We can help you build your next world-class website. Once we're done, Layout Builder gives you the freedom to make substantial changes without the headaches, back-and-forth, or unnecessary touchpoints. Are you ready to create a customer-centric, experience-driven digital space? Contact us.

Categories
Author

argument-open-source

Here's a dirty secret: most businesses are unsatisfied with their website. Research shows that 34% of website owners are unsatisfied with the amount of business their website generates for them. Loudhouse data suggests that 62% of business owners believe a more effective website would increase their sales. And millions of business websites deal with slow load times, inconsistent customer experiences, and problematic UI/UX issues.

There's a reason that 36% of small businesses STILL don't have a website. Creating an amazing, design-driven, customer-centric website is challenging. So, what do you do when your website isn't making the cut? You look towards the source — your Content Management System (CMS). Every year, thousands of private and public entities migrate their website to a new CMS.

But, unfortunately, thousands more don't. Migration is scary. It's easier to stay with your current CMS and focus on redesigns or new templates. Here's the problem: new coats of paint don't fix broken engines. If you're thinking about migrating from WordPress or Joomla to Drupal, you've probably heard rumors and myths regarding migrations.

Let's clear those up. Here are 4 myths about migration that need to be squashed.

Myth #1: I'm Going to Lose All My Content/Data

This is, by far, the most common excuse against migrating. You're worried all of that precious content and data are going to fall off the ship if you switch ports. And, you're right to worry. It could... if you don't migrate correctly. But it's not inevitable. You can prevent data and content loss. In fact, if you lose data or content, we would consider that a failed migration. In other words, successful migrations keep data and content intact by definition.

Here are some handy-dandy steps you can take to ensure that your precious data doesn't go overboard during your migration:

Myth #2: I Have to Invest in a Redesign

You're migrating; you might as well invest in a redesign, right? Sure! You could. But it's tricky. When you do a redesign and a migration, you're no longer just matching URL-to-URL and content-to-content, you're simultaneously rebuilding your website. Don't get us wrong; there are advantages. It's a great time to redesign from an SEO perspective (you're already going to take a small hit during the migration; more on this in the next section), but it also requires significantly more planning, budget, and time.

If you want to do a redesign-migration, we heavily recommend that you touch base with your design company. You want to work through the kinks and create a best-in-class action plan to tackle any issues that may (or may not) pop up. The entire migration will be structured around the redesign, so it's important to carefully weigh your options.

Myth #3: Goodbye SEO!

From an SEO perspective, migration sounds like a nightmare. You've worked diligently to build up your SEO. What happens when you frolic to a new location? Let's get this out of the way: your SEO will take a temporary hit. But, it shouldn't last long. In fact, there's a good chance you're moving to another platform because it's better at handling SEO. For example, Drupal has built-in SEO capabilities (e.g., title-based URL nodes, customizable meta tags, etc.) WordPress does not. Obviously, you can get SEO plugins for WordPress that help you build SEO functionalities, but most of those plugins are also available for Drupal — so Drupal gives you a net gain.

Here's a secret: migration can help your page rank. After the first awkward week (Google has to recrawl your website, recognize that it's you, and give you back your ranking), migration can help you build a more powerful SEO framework.

Want to migrate without dumping your SEO overboard? Here are some tips:

Myth #4: You Just Have to "Lift-and-Shift"

There are plenty of myths surrounding the difficulty of migration. But there are also a few myths making migration out to be super easy. And, without a doubt, the most prevalent "easy-peasy-lemon-squeezy" migration myth is the ever-coveted "lift-and-shift." There is no one-size-fits-all strategy for migrating websites. Sometimes, it can be as easy as lifting content off of one website and putting it onto another website. But that's seldom the case.

Generally, you need to set up test servers, check to see if website elements function correctly on the new platform, test out and utilize new CMS features, and a variety of other tasks before you can simply drop content from one place to another. In other words, lift-and-shift may work when you're migrating a cloud environment, but it often doesn't work with CMS migration.

Remember, just because everything worked perfectly in one environment doesn't mean it will in another one. You may have to fix some website elements and carefully construct your new website ecosystem. At the same time, you'll probably be playing around with the new features available to you on Drupal — so the "lift-and-shift" is usually more of a "lift-and-test-and-shift."

Do You Need Help With Your Drupal Migration?

At Mobomo, we help private and public entities migrate to Drupal environments using proven migration strategies and best-in-class support. So, whether you're looking to establish your website in a more secure, SEO-friendly environment or you're looking to do a redesign-and-migrate, we can help you migrate pain-free. Are you ready to move to a brighter future?

Contact us. We've got your back.

Categories
Tags
Author

argument-open-source Like many developers, some of our first websites were built on the backbones of WordPress. It's the hyper-popular king of content management systems. It has name recognition, an overflowing user base, and plenty of third-party integrations that help cut your development time. But, over the years, we've migrated almost exclusively to Drupal. So why did we switch? What is it about Drupal that leaves developers drooling? And why would anyone pick Drupal — which has around 1.3 million users — over WordPress —which has over 400 million users? Today, we're going to compare David to Goliath. Why is Drupal, the third most active CMS behind WordPress and Joomla, a good choice for businesses looking to build a refreshing, impactful, and feature-rich website?

UNDERSTANDING THE CORE DIFFERENCES BETWEEN DRUPAL AND WORDPRESS

By far, the most significant difference between WordPress and Drupal is the overall development need. WordPress is simple. There are hundreds of thousands of third-party plugins that you can leverage to build an entire website with virtually no coding or developing knowledge. And, that's the single biggest reason that WordPress is so massive. Anyone can build a WordPress site. It's easy. Drupal requires development. If you want to build a Drupal website, you're going to have to hire some developers. So, naturally, Drupal has fewer overall users. But, it's essential to make that distinction. Drupal is built for businesses, public entities, and enterprises. WordPress is built for your everyday website. It's important to keep this main difference in mind. It's this difference that resonates throughout these core pillars. And, it's this core difference that creates pros and cons for each platform.

DRUPAL VS. WORDPRESS: SECURITY, FLEXIBILITY, AND SCALABILITY

We consider security, flexibility, and scalability to be the three primary pillars of a CMS. An amazing designer can make a fantastic template or theme regardless of the CMS. And ease-of-use is relative to your plugins/modules, familiarity with the platform, and overall development capabilities. So those are both highly subjective. Security, flexibility, and scalability aren't subjective; they are what they are.

SECURITY

WordPress has a security problem. Alone, WordPress accounts for 90% of all hacked websites that use a CMS. There's a tradeoff that comes with leveraging third-party plugins to build websites. You increase your threat landscape. WPScan Vulnerability Database shows 21,675 vulnerabilities in WordPress's core and with third-party plugins. This security vulnerability issue has been an ongoing headache for WordPress from the start. If we do a play-by-play, year-over-year of WordPress's history, we see an ongoing and consistent security issue:

  • 2013: 70% of the top 40,000 most popular WordPress websites were vulnerable to hackers
  • 2014: SoakSoak compromises +100,000 websites, a massive DDOS attack hits 160,000 websites, and All In One SEO Pack puts +19 million sites at risk.
  • 2015: A core vulnerability puts millions of websites at risk, Akismet opens millions of websites to hackers, and YoastSEO puts over 14 million websites in hackers' crosshairs.
  • 2016: At this point, millions of hacks are happening every week across plugins. Check out this WordFence weekly update during this period.
  • 2017: The hacks continue. The average small business website using WordPress is attacked 44 times a day at this point, and WordPress websites are 2x more likely to be hacked than other CMS.

The list goes on. Year-over-year, more vulnerabilities happen across WordPress. And this is an important point. WordPress has subpar security by design. It's the tradeoff they made to build an ecosystem that doesn't require development. We aren't saying that the core of WordPress is inherently security-stripped. It's not. But, given the scale, scope, and third-party-fanatic nature of the platform, it's weak on security by nature. Drupal, on the other hand, is the opposite. Websites require development time, each website is customized to the user, and building a website takes time and patience. The tradeoff is better security. Drupal has built-in enterprise-scale security, and you don't rely on a hotchpotch of third-party applications to build your website's functionality. There's a reason that NASA, the White House, and other government entities use (or used) Drupal. It has better security. We want to take a second to make the distinction. WordPress has a secure core. We would argue that Drupal has a more secure core. But the difference isn't massive. WordPress's security vulnerabilities are a product of its reliance on third-party applications to make a functional website.

FLEXIBILITY

WordPress is more flexible than Drupal to some users. And Drupal is more flexible than WordPress to some users. That may sound complicated. But it comes down to your development capabilities. Drupal has more features than WordPress. Its core is filled with rich taxonomies, content blocks, and unique blocks than WordPress. But, if you aren't experienced, you probably won't find and/or use many of these functionalities. On the surface, WordPress has more accessible features. At the core, Drupal is the single most feature-rich CMS on the planet. So, for businesses (especially public entities and larger enterprises), Drupal has a more robust architecture to tackle large-scale projects that have hyper-specific needs. For small businesses and personal website owners, WordPress is easier to use and requires far less development experience to tap into its functionalities, features, and flexibility.

SCALABILITY

Drupal has better scalability. This one isn't a competition. Again, this comes down to the dev-heavy nature of the platform. To scale WordPress websites, you add more plugins. To scale Drupal websites, you develop more. There's a key practical difference here. Drupal modules, taxonomies, and content blocks all exist in the same ecosystem. Each WordPress plugin is its own micro-ecosystem. So, with WordPress, most users are stringing together a ton of third-party ecosystems in an attempt to create one overarching website. Also, Drupal is built for enterprise-scale projects. So there's backend support and a large landscape of community support around large-scale projects. WordPress is a catch-all CMS that has a little of everything. If WordPress is a Swiss army knife, Drupal is a custom, hand-forged bread knife — explicitly designed to help you scale, slice, and butter larger projects.

ARE YOU READY TO DEVELOP YOUR PERFECT DRUPAL WEBSITE?

At Mobomo, we specialize in Drupal development projects. Our agile-based team of top-level design, development, and support talent can help you launch and scale your website to fit your unique needs. From NASA to Great Minds, we help private and public entities build dreams and execute visions.

Contact us to learn more.

Categories
Author

argument-open-source Over 500,000 businesses leverage Drupal to launch their websites and projects. From NASA to Tesla, public and private institutions regularly rely on Drupal to launch large-scale websites capable of handling their development and visual needs. But, starting a Drupal project doesn't guarantee success. In fact, 14% of all IT projects outright fail, 43% exceed their initial budgets, and 31% fail to meet their original goals! In other words, if you want to create a successful Drupal project, you need to prepare. Don't worry! We've got your back. Here are 5 things to keep in mind when starting a Drupal-based project.

1. GATHER REQUIREMENTS FROM STAKEHOLDERS EARLY AND OFTEN

According to PMI, 39% of projects fail due to inadequate requirements. Believe it or not, requirement gathering is the single most important stage of project development. In fact, it's the first step Drupal itself takes when pushing out new projects (see this scope document for their technical document project). Gathering requirements may sound easy, but it can be a time-consuming process. We recommend using SMART (Specific, Measurable, Agreed Upon, Realistic, Time-based) to map out your specific needs. If possible, involve the end-user during this stage. Don't assume you know what users want; ask them directly. Internally, requirements gathering should rally nearly every stakeholder with hefty amounts of cross-collaboration between departments. You want to lean heavily on data, establish your benchmarks and KPIs early, and try to involve everyone regularly. The single biggest project mistake is acting like requirements are set-in-stone. If you just follow the initial requirements to a "T," you may push out a poor project. You want to regularly ask questions, communicate issues, and rely on guidance from stakeholders and subject matter experts (SMEs) to guide your project to completion.

2. PLAN YOUR SDLC/WORKFLOW PIPELINE

We all have different development strategies. You may leverage freelancers, a best-in-class agency, or internal devs to execute your Drupal projects. Typically, we see a combination of two of the above. Either way, you have to set some software development lifecycle and workflow standards. This gets complex. On the surface, you should think about coding standards, code flow, databases, and repositories, and all of the other development needs that should be in sync across devs. But there's also the deeper, more holistic components to consider. Are you going to use agile? Do you have a DevOps strategy? Are you SCRUM-based? Do you practice design and dev sprints? At Mobomo, we use an agile-hybrid development cycle to fail early, iterate regularly, and deploy rapidly. But that's how we do things. You need to figure out how you want to execute your project. We've seen successful Drupal projects using virtually every workflow system out there. The way you work matters, sure. But getting everyone aligned under a specific way of working is more important. You can use the "old-school" waterfall methodology and still push out great projects. However, to do that, you need everyone on the same page.

3. USE SHIFT-LEFT TESTING FOR BUG AND VULNERABILITY DETECTION

Drupal is a secure platform. Of the four most popular content management systems, Drupal is the least hacked. But that doesn't mean it’s impenetrable. You want to shift-left test (i.e., automate testing early and often in the development cycle). Drupal 8+ has PHPUnit built-in — taking the place of SimpleTest. You can use this to quickly test out code. You can perform unit tests, kernel tests, and functional tests with and without JavaScript. You can also use Nightwatch.js to run tests. Of course, you may opt for third-party automation solutions (e.g., RUM, synthetic user monitoring, etc.) The important thing is that you test continuously. There are three primary reasons that shift-left testing needs to be part of your development arsenal.

  • It helps prevent vulnerabilities. The average cost of a data breach is over $3 million. And it takes around 300 days to identify and contain website breaches.
  • It bolsters the user experience. A 100-millisecond delay in page load speed drops conversions by 7%. Meanwhile, 75% of users judge your credibility by your website's design and performance, and 39% of users will stop engaging with your website if your images take too long to load. In other words, simple glitches can result in massive issues.
  • It reduces development headaches. Nothing is worse than developing out completely new features only to discover an error that takes you back to step 1.

4. GET HYPER-FAMILIAR WITH DRUPAL'S API

If you want to build amazing Drupal projects, you need to familiarize yourself with the Drupal REST API. This may sound like obvious advice. But understanding how Drupal's built-in features, architecture, and coding flow can help you minimize mistakes and maximize your time-to-launch. The last thing you want to do is code redundantly when Drupal may automate some of that coding on its end. For more information on Drupal's API and taxonomy, see Drupal API. We know! If you're using Drupal, you probably have a decent idea of what its API looks like. But make sure that you understand all of its core features to avoid headaches and redundancies.

5. SET STANDARDS

Every development project needs standards. There are a million ways to build a website or app. But you can't use all of those million ways together. You don't want half of your team using Drupal's built-in content builder and the other half using Gutenberg. Everyone should be on the same page. This goes for blocks, taxonomy, and every other coding need and task you're going to accomplish. You need coding standards, software standards, and process standards to align your team to a specific framework. You can develop standards incrementally, but they should be shared consistently across teams. Ideally, you'll build a standard for everything. From communication to development, testing, launching, and patching, you should have set-in-stone processes. In the past, this was less of an issue. But, with every developer rushing to agile, sprint-driven methodologies, it can be easy to lose sight of standards in favor of speed. Don't let that happen. Agile doesn't mean "willy-nilly" coding and development for the fastest possible launch. It still has to be systematic. Standards allow you to execute faster and smarter across your development pipeline.

NEED SOME HELP?

At Mobomo, we build best-in-class Drupal projects for brands across the globe. From NASA to UGS, we've helped private, and public entities launch safe, secure, and exciting Drupal solutions. Are you looking for a partner with fresh strategies and best-of-breed agile-driven development practices?

Contact us. Let's build your dream project — together.

Categories
Author

argument-open-source

When you first sit down to create your Drupal website, you have plenty of decisions to make. What are your first blog posts going to be? What kinds of marketing materials do you need to help your website convert? What is your SEO strategy to boost your SERP position? These are all important, and we highly recommend that you consider each point before you launch your first website.

But those are details. The most significant decision you're going to make is what theme you'll use. Think of your theme as the building block of your website. It's how users are going to perceive your site, interpret your content, and engage with your products or services. You want a beautiful, interactive, intuitive, and easy-to-browse website that pushes customers to think, engage, and consume your rich creatives.

Here's the problem: there are thousands of Drupal themes. When you first look through the avalanche of bright colors, minimal panes, and unique content configurations, it can be dizzying. How do you pick a theme with that certain something that sets you apart? 

Here are some criteria to help you sift through the tsunami of designs on the market.

How Important is Your Drupal Theme, Really?

At some point, you need to pull the trigger. But how soon should you go with your gut instinct? After all, is picking the "perfect" theme really that important? In today's hyper-redundant theme ecosystem, it's easy to think that website design is a secondary factor in your website build process. Many websites today have eerily similar themes, and you may be looking to copy-paste that minimalist, white-space-heavy style that your competitors probably use.

Don't make the mistake of minimizing the importance of the theme. Your competitors may use cookie-cutter themes, but you shouldn't. Here's why:

In other words, your customers are going to judge the efficacy of your brand based on your website's design. Remember the phrase, "first impressions are everything." Well, 94% of first impressions are based on design—you want something stunning. Obviously, design is still a highly personal experience. Some people like quirky and weird, some like minimal and smooth, and others like aggressive and animation heavy. It depends on your end user and who you are as a brand.

So how do you go about picking the right one? After all, there's a lot at stake. Your theme is going to be the first thing customers see when they click on your website. Here are the three core components of website themes you should consider before you make your choice.

1. Your Brand's Identity

We all know that branding is a big deal. 89% of marketers say that branding is their top goal, and branding is the first thing that 89% of investors look at when deciding whether or not to open their wallets. So, when it comes to your design, brand should be front-of-mind. Who is your company? What does it stand for? And, most all, what does it look like?

Your Drupal theme is a powerful branding tool. Every single component of your website is an opportunity for branding. We could get overly complicated diving into website branding, but we'll stick with the simple stuff. Let's talk about color. Seems simple enough, right? Check this out:

Ok! So color is obviously important. But what about all the other "stuff" on your website? Does the position of content boxes, navigation menu, and blog posts really matter? You bet! Consistent brand representation across content boosts bottom-line profits by 33% on average. And 80% of people think content is what drives them to really engage and build loyalty with brands.

In a nutshell, think about branding when you look at themes. 90% of users expect you to have consistent branding across all channels. If you can't find a theme that screams, "you," that's ok! If you can't find one, build one.

2. Performance

The theme you choose will have a direct impact on your website's performance. Unnecessary components, visual clutter, and poor frontend coding can all increase load times and disrupt website accessibility. Obviously, some of your performance capabilities happen on the backend (e.g., caching, DB Query optimization, MySQL settings, etc.) But your theme still has a sizable effect on how your website performs.

Overly large CSS files, redundant coding for modules, blank spaces, and other issues can all increase time-to-load, create visual issues, and create stop-points for your users. To be clear, performance is a significant component in both lead generation and retention:

Always test out themes for performance. The aesthetic qualities of a website are important, but performance is a necessity.

3. UX

We like to call UX the "hidden performance." It's how your users will engage with and consume content throughout your website. The theme you pick will dictate a significant portion of your UX. Before you choose a theme, build out your information architecture strategy, create mockups for UI (or at least find UI examples that you enjoy), and plot out your broad content strategy. Then, choose a theme that compliments your strategy and information architecture.

Here's the most important thing: always evolve your UX. Consider applying agile to your theme building and choosing practices. Even after you select the right theme, constantly make improvements to your UI/UX to breed consistency and customer-centricity. You can purchase a pre-made theme on the Drupal marketplace, but you still need to customize the theme to fit your brand and conform to your UX framework. You don't want to choose a cookie-cutter theme on the marketplace and fail to maximize its value. Not only will your website look nearly identical to thousands of other Drupal sites, but you also won't truly build an experience-driven website. Give your customers home-cooked steak and potatoes—not a microwaved frozen dinner.

Are You Looking for the Perfect Drupal Theme?

If you want a theme that's hyper-branded, built for performance, and created using brand-specific information architecture, you won't find it on a pre-built theme website. You need to create it. At Mobomo, we help public and private entities create breathtaking Drupal themes specifically for their brand and their users. Let's build your brand something amazing.

Contact us to learn more.

Categories
Tags
Author

argument-open-source

Businesses and governments build websites for one reason: to provide value to their users. But what if your website was incapable of reaching millions of your users? 25% of Americans live with disabilities. For some of them, the simple act of navigating websites, digesting information, and understanding your content is difficult. Yet, despite brands increasing spending on web design and digital marketing, less than 10% of websites actually follow accessibility standards. Businesses are spending significant money to capture an audience, yet they're not ensuring that their audience can engage with their website.

It's a problem—a big one.

You don't want to exclude customers. It's bad for business, and it's bad for your brand. Better yet, accessibility features help improve your SEO, reduce your website complexity, and increase your ability to connect with your loyal audience. But accessibility standards aren't always baked into the architecture of websites.

Luckily, there are some content management systems (CMS) that let you create hyper-accessible websites without even trying. Drupal comes equipped with a variety of accessibility features — each of which helps make your website more accessible for your customers.

Understanding the Importance of Website Accessibility

Creating an accessible website may sound vague, but there's already a worldwide standard you can follow. The Web Content Accessibility Guidelines (WCAG) — which is maintained by The World Wide Web Consortium — is the global standard for web accessibility used by companies, governments, and merchants across the world.

Sure! Following the WCAG standard helps you reach a wider audience. But it also keeps you out of legal hot water. Not only has the ADA made it abundantly clear that compliance requires website accessibility. A United States District Court in Florida ruled that WCAG standards are the de facto standards of web accessibility. And there are already cases of businesses getting sued for failing to adhere to them.

The list goes on. Adhering to WCAG web accessibility standards helps protect your brand against litigation. But, more importantly, it opens doors to millions of customers who need accessibility to navigate and engage with your amazing content.

One-third of individuals over the age of 65 have hearing loss. Around 15% of Americans struggle with vision loss. And millions have issues with mobility. The CDC lists six forms of disability:

Web accessibility touches all of those types of disabilities. For those with trouble seeing, screen readers help them comprehend websites. But, screen readers strip away the CSS layer. Your core content has to be accessible for them to be able to comprehend it. Those with mobility issues may need to use keyboard shortcuts to help them navigate your website. Hearing-impaired individuals may require subtitles and captions. Those with cognitive issues may need your website to be built with focusable elements and good contrasting.

There are many disabilities. WCAG creates a unified guideline that helps government entities and businesses build websites that are hyper-accessible to people with a wide range of these disabilities.

Drupal is WCAG-compliant

WCAG is vast. A great starting point is the Accessibility Principles document. But, creating an accessible website doesn't have to be a time-consuming and expensive process. Drupal has an entire team dedicated to ensuring that their platform is WCAG compliant. In fact, Drupal is both WCAG 2.0 compliant and Authoring Tool Accessibility Guidelines (ATAG 2.0) compliant. The latter deals with the tools developers use to build websites. So, Drupal has accessibility compliance on both ends.

What Accessibility Features Does Drupal Have?

Drupal's accessibility compliance comes in two forms:

Drupal's Built-in Compliance Features

Drupal 7+ comes native with semantic markup. To keep things simple, semantic markup helps clarify the context of content. At Mobomo, we employ some of the best designers and website developers on the planet. So, we could make bad HTML markup nearly invisible to the average user with rich CSS and superb visuals. But when people use screen readers or other assistive technology, that CSS goes out-of-the-window. They're looking at the core HTML markup. And if it's not semantic, they may have a difficult time navigating it. With Drupal, markup is automatically semantic — which breeds comprehension for translation engines, search engines, and screen readers.

Drupal's accessibility page also notes some core changes made to increase accessibility. These include things such as color contrasting. WCAG requires that color contrasting be at least 4.5:1 for normal text and 7:1 for enhanced contrast. Drupal complies with those guidelines. Many other changes are on the developer side, such as drag and drop functions and automated navigation buttons.

Of course, Drupal also provides developer handbooks, theming guides, and instructional PDFs for developers. Some of the accessibility is done on the developer's end, so it's important to work with a developer who leverages accessibility during their design process.

Drupal's Support for the Accessibility Community

In addition to following WCAG guidelines, Drupal supports community-driven modules that add additional accessibility support. Here are a few examples of Drupal modules that focus on accessibility:

There are hundreds. The main thing to remember is that Drupal supports both back-end, front-end, and community-driven accessibility. And they've committed to continuously improving their accessibility capabilities over time. Drupal's most recent update — the heavily anticipated Drupal 9 — carries on this tradition. Drupal has even announced that Drupal 10 will continue to expand upon accessibility.

Do You Want to Build an Accessible Website

Drupal is on the cutting-edge of CMS accessibility. But they can't make you accessible alone. You need to build your website from the ground up to comply with accessibility. A good chunk of the responsibility is in the hands of your developer. Are you looking to build a robust, functional, beautiful, and accessible website? 

Contact us. We'll help you expand your reach.

Categories
Tags
Author

argument-open-source

Back in 2013, when I first joined Mobomo, we migrated NASA.gov from a proprietary content management system (CMS) to Amazon Cloud and Drupal 7. It goes without saying, but there was a lot riding on getting it right. The NASA site had to handle high traffic and page views each day, without service interruptions, and the new content management system had to accommodate a high volume of content updates each day. In addition to having no room for compromise on performance and availability, the site also had to have a high level of security. 

Maybe the biggest challenge, though, was laying the groundwork to achieve NASA’s vision for a website with greater usability and enhanced user experiences. If NASA’s audience all fell into the same demographic, that goal probably wouldn’t have seemed so intimidating, but NASA’s audience includes space fans who range from scientists to elementary school kids. 

Our mission was to create a mobile-first site that stayed true to NASA’s brand and spoke to all of the diverse members of its audience. A few years later, we relaunched a user-centric site that directed visitors from a dynamic home page to microsites designed specifically for them.

Making Space Seem Not So Far Away

NASA.gov includes data on its missions, past and present. To make this massive amount of data more user-friendly, we worked with NASA to design a site that’s easily searchable, navigable, and enhanced through audio, video, social media feeds, and calendars. Users can find updates on events via features such as the countdown clock to the International Space Station’s 20th anniversary. NASA.gov users can also easily find what they need if they want to research space technology, stream NASA TV, or explore image galleries. 

The NASA.gov site directs its younger visitors to a STEM engagement microsite where students can find activities appropriate for their grade level. The site also includes the NASA Kids’ Club where students can have some fun while they’re learning about exploration. For example, they can try their hands at virtually driving a rover on Mars, play games, and download activities. 

Older students with space-related aspirations can learn about internship and career opportunities, and teachers can access lesson plans and STEM resources.

How to Make it Happen

To successfully achieve NASA’s goals and manage a project this complex, we had to choose the right approach. Some website projects are tailor-made for a simple development plan that moves from a concept to design, construction, testing, and implementation in a structured, linear way. The NASA.gov project, however, wasn’t one of them.

For this website and the vast majority of the sites we develop, our team follows DevOps methodology. With DevOps, you don’t silo development from operations. Our DevOps culture brings together all stakeholders to collaborate throughout the process to achieve:

Faster Deployment

If we had to build the entire site then take it live, it would have taken much longer for NASA and its users to have a new resource. We built the site in stages, validating at every stage. By developing in iterations, and involving the entire team, we also have the ability to address small issues rather than waiting until they create major ones. It also gives us more agility to address changes and keep everyone informed. This prevents errors that could put the brakes on the entire project.

Optimized Design

NASA.gov has several Webby Awards, and award-winning web design takes a team that works together and collaborates with the organization to define the audience (or audiences), optimize the site’s navigation and usability, and strike a balance between the site’s primary purpose and its appeal. 

Mobile-First

Because NASA.gov users may be accessing the site from a PC, laptop, tablet, smartphone, or other device, it was also pivotal to use mobile-first design. Mobile-first starts by designing for the smallest screens first, and then work your way up to larger screens. This approach forces you to build a strong foundation first, then enhance it as screen sizes increase. It basically allows you to ensure user experiences are optimized for any size device. 

Scalability

NASA.gov wasn’t only a goliath website when we migrated it to Amazon Cloud and Drupal. We knew it would continue to grow. Designing the site with microsites that organize content, help visitors find the content that is most relevant to their interests, and enhance usability and UX informed a plan for future growth. 

Efficient Development Processes

DevOps Methodology breaks down barriers between developers and other stakeholders, automates processes, makes coding and review processes more efficient, and enables continuous testing. Even though we work in iterations, our team maintains a big-picture view of projects, such as addressing integrations, during the development process. 

Planned Post-Production

DevOps also helps us cover all the bases to prepare for launch and to build in management tools for ongoing site maintenance. 

What Your Business Can Learn from NASA

You probably never thought about it, but your business or organization has a lot in common with NASA, at least when it comes to your website. Just like NASA, you need a website that gives you the ability to handle a growing digital audience, reliably and securely. You’re probably also looking for the best CMS for your website, one that’s cost-effective and gives you the features you need.

Your website should also be designed to be usable and to provide the user experiences your audience wants. And, with the number of mobile phone users in the world topping 5 billion, you want to make sure their UX is optimized with mobile-first design. 

NASA’s project is also an illustration of how building your website in stages, getting input from all stakeholders, and validating and testing each step of the way can lead to great results. You also need a plan for launching the site with minimal disruption and tools that will make ongoing management and maintenance easier. 

You probably want to know you are doing everything you can to make your content appealing, engaging, and interactive. You may think NASA has an advantage in that department since NASA’s content is inherently exciting to its audience.

But so is yours. Create a website that showcases it. Not sure where to begin? Click here and we’ll point you in the right direction.

Categories
Author

argument-open-source

If you engaged in a word association game, one of the first things people would respond when you say “open source” is that it’s free. If any of those people are in the position of purchasing software licenses for a business or organization, that makes open source (a.k.a., free) definitely a benefit worth exploring. Open source has the potential to save thousands of dollars or more, depending on the software and the size of the organization. 

Even though eliminating a budget line item for licensing costs may be enough to convince some organizations that open source is the way to go, it’s actually only one of several compelling reasons to migrate from proprietary platforms to open-source architecture. 

In a debate on open-source vs. licensed platforms, the affirmative argument will include these four, additional points: 

Development Freedom

When businesses provide workstations for their employees, they choose (often inadvertently) the framework on which their organizations operate. For example, if a business buys Dell computers, it will operate within the Microsoft Windows framework. This isn’t necessarily a bad thing. A business with limited IT and development resources won’t have to worry about how to keep its operating system working or whether business applications or security solutions are available. Microsoft has a line of solutions and partnerships that can provide what they’re looking for. 

With a system built on an open-source platform, on the other hand, it may take more resources and work to keep it running and secure, but it gives developers the freedom to do exactly what the end user needs. You aren’t limited by what a commercial platform enables you to do. 

In some markets, foregoing the status quo for developmental freedom sounds like risk. It’s a major reason that government users lag behind the commercial space in technology. They’re committed to the old systems that they know are robust, secure, and predictable at budget time — even though they’re outdated. When those organizations take a closer look, however, they quickly realize they can negate development costs through greater visibility, efficiency, and productivity that a platform that specifically supports their operations can provide. 

Open-source platforms are also hardware agnostic, giving organizations more latitude when it comes to the computers, mobile devices, and tools they can use, rather than being locked into limited, sometimes expensive, options for hardware. 

Moreover, development freedom delivers more ROI than merely decreasing current costs. Open-source platforms give developers the freedom to customize systems and innovate. If your system enabled you to expand your reach, better control labor costs, and support new revenue streams, what impact could that have on your business?

Interoperability

Enterprises and manufacturers have traditionally guarded their proprietary systems, which gave them an edge in their markets and control over complementary solutions and peripherals end users needed. Those same proprietary systems, however, could now be a business liability. Many markets are moving toward open source to provide greater interoperability, and businesses continuing to use proprietary platforms will increasingly be viewed as less desirable partners. 

Military avionics is a prime example. This industry is migrating to the Future Airborne Capability Environment (FACE) Technical Standard. Administered by the FACE Consortium, this open standard aims to give the U.S. Department of Defense the ability to acquire systems more easily and affordably and to integrate them more quickly and efficiently.  

You’ll also find a preference for open-source architecture in some segments of the tech industry as well, such as robotics. The Robot Operation System (ROS) is a set of open resources of tools, libraries, and conventions that standardizes how robots communicate and share information. ROS simplifies the time-consuming work of creating robotic behaviors, and ROS 2 takes that objective further by giving industrial robot developers support for multirobot systems, safety, and security. 

As Internet of Things (IoT) technology adoption grows, more operations are experiencing roadblocks connecting legacy equipment and enabling the free flow of data — which open-source architecture can overcome. Furthermore, IoT based on open-source components allow networks to expand beyond the four walls of a facility to connect with business partners, the supply chain, and end users. The Linux Foundation’s Zephyr Project, for example, promotes open-source, real-time operating systems (RTOS) that enables developers to build secure, manageable systems more easily and quickly. 

Faster Time to Market

Open source projects can also move more quickly than developing on a proprietary platform. You may be at the mercy of the vendor during the development process if you require assistance, and certifying hardware or applications occur on their timelines. 

That process moves much more quickly in an open source community. Additionally, members of the community share. Some of the best developers in the industry work on these platforms and often make their work available to other developers so they don’t need to start from scratch to include a feature or function their end user requires. A modular system can include components that these developers have created, tested, and proven — and that have fewer bugs than a newly developed prototype. 

Developers, using prebuilt components and leveraging an open source community’s expertise, can help you deploy your next system more quickly than starting from ground zero. 

Business Flexibility

Open-source architecture also gives a business or organization advantages beyond the IT department. With open source, you have more options. The manager of a chain of resorts facing budget cuts, for example, could more easily find ways to decrease operating expenses if her organization’s system runs on an open-source platform. A chain that operates on a commercial platform, however, may have to find other options, such as reducing staff with lay-offs.  

Open source architecture also decreases vendor lock-in. In a world that’s changing at a faster and faster pace, basing your systems open-source architecture gives you options if a vendor’s company is acquired and product quality, customer service, and prices change. It also gives you flexibility if industry standards or regulations require that you add new features or capabilities that your vendor doesn’t provide, decreasing the chances you’ll need to rip and replace your IT system.

The Price of Open Source

To be perfectly honest in the open source vs. commercial platform debate, we have to admit there is a cost associated with using these platforms. They can’t exist without their communities’ contributions of time, talent, and support. 

At Mobomo, for example, we’re an active part of the Drupal open-source content management system (CMS) platform. Our developers are among the more than 1 million members of this community that have contributed more than 30,000 modules. We also take the opportunity to speak at Drupal community events and give back to the community in other ways. 

Regardless of how much we contribute to the community, however, it’s never exceeded the payback. It’s enabled lower total cost of ownership (TCO) for us and our clients, saving millions of dollars in operating expenses. It has ramped up our ability to create and innovate. It’s also allowed us to help build more viable organizations and valuable partnerships. 

The majority of our industry agrees with us. The State of Enterprise Open Source report in 2019 from Red Hat asked nearly 1,000 IT leaders around the world how strategically important open source is to an enterprises’ infrastructure software plans. Among respondents, 69 percent reported that it is extremely important, citing top benefits as lower TCO, access to innovation, security, higher-quality software, support, and the freedom to customize. 

Only 1 percent of survey respondents said it wasn’t important at all. 

Which side of the open-source vs. commercial platforms argument do you come down on?

Contact us to drop us a line and tell us about your project.

Categories
Author
Subscribe to Cloud