Skip to main content

Mobomo webinars-now on demand! | learn more.

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

2020 has been a year full of unexpected surprises and challenges. In March, the coronavirus had reached the United States and had begun spreading quickly causing federal and state governments to take action to ensure public safety, including the development and passing of the Coronavirus Aid, Relief, and Economic Security Act (CARES Act). As the pandemic spread, many more eyes turned to the government to watch how they were navigating this new unmarked territory. 

The Pandemic Response Accountability Committee (PRAC) created PandemicOversight.gov to display the details of the $2.6 trillion coronavirus relief spending provided by the CARES Act. The website allows the public interactive tools for understanding who received coronavirus funding, how much they’ve received, and how the funds are being spent. The website also provides tools for the public to report fraud, waste, abuse, and mismanagement of coronavirus relief funding, as well as helpful information to protect yourself against fraudulent activity. 

Mobomo was brought in to perform the redesign and development of the website, which had initially launched as pandemic.oversight.gov earlier this year. The Mobomo team was able to do a complete overhaul of the legacy platform and re-launch the system in just over five weeks’ time with the new website having been officially launched to the public on September 10th. Since the launch, the website has received thousands of visitors interested in learning more about who, where, and how coronavirus relief funding is being spent. 

“Transparency in government is critical in these uncertain times and the mission of the PRAC strives to provide that public service. I’m very proud of what our team has developed and hope the website helps people see how relief funding is being distributed.” – Brian Lacey, CEO.

Not Your Average Government Website

The Mobomo team redesigned PandemicOversight.gov with the goal of incorporating modern theming and a clean design that many of your traditional government information sites lack, but did so while incorporating 18F and US Web Design Standards best practices.  Mobomo’s User Experience team worked with the PRAC to develop mobile-first, responsive design templates that mesh the innovative branding and theming with the high-fidelity interactive visualizations that are key to communicating coronavirus funding activity. 

Let’s Get Technical

The legacy pandemic.oversight.gov was developed in Drupal 8 and hosted in Amazon Web Services (AWS). For the redesign and re-launch of the site, the Mobomo team decided to rebuild the content management system leveraging the latest version of Drupal 9 and deployed the solution within the Microsoft Azure Websites platform-as-a-service (PaaS) environment. Mobomo developed a number of custom feature integrations with visualization partners Domo and Woolpert, enhanced search indexing for browsing various oversight reports and investigations, and optimized process for users to communicate instances of fraud, waste, and abuse through secure channels. 

In order to meet the tight five-week window for design, development, and deploying the new website – the Mobomo team leveraged containerization and Lando for streamlining local development and hooking into the continuous integration, continuous development (CI/CD) pipeline. Mobomo also worked with the Smartronix Azure Cloud team to architect a zero-downtime deployment procedure to allow seamless promotion of new code the public environment. 

“This is a great team on both sides of the table. For such an expedited delivery schedule, it is critical for all the contract partners and government stakeholders to stay Agile and collaborate effectively to succeed.” – Austin White, VP of Federal Services.

For more information on Mobomo’s work with the Federal Government click here.

About the PRAC

The Pandemic Response Accountability Committee (PRAC) was established by the CARES Act as part of the committee of the Council of the Inspectors General on Integrity and Efficiency (CIGIE). The PRAC has developed a Strategic Plan for the next five years that details how PRAC will serve the public by promoting transparency of funds and by preventing and detecting fraud, waste, abuse, and mismanagement of said funds. The committee will work closely with the Federal Inspectors General to support all affected by the pandemic. 

Our Partners
Pandemic Response and Accountability Committee (PRAC)
Council of the Inspectors General on Integrity and Efficiency (CIGIE)
Smartronix
Domo
Woolpert
Grant Thornton

Categories
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

DRUPAL MIGRATION PREPARATION AUDIT

All good things must come to an end. Drupal 7 will soon meet its end. Does your organization have your migration plan to Drupal 9 in order? Here’s what you need to know to keep your Drupal site running and supported. Talk to Our Drupal Migration Experts Now!

OUR APPROUCH TO DRUPAL MIGRATION.

  • Analyze 
  • Inventory
  • Migration
  • Revision
  • SEO

OVERVIEW

Staying up to date with Drupal versions is vital to maintaining performance to your site:

  • Future-proofing
  • Avoiding the end-of-life cut-off
  • Performance
  • Security

GOALS

  1. Catalog existing community contributed modules necessary to the project
  • Do these modules have a corresponding Drupal 8 version?
  • If the answer to the above question is no, is there an alternative?
  • Is there an opportunity to optimize or upgrade the site’s usage of contributed modules?
  1. Catalog existing custom built modules
  • Do these modules rely on community contributed modules that may not have a migration path to Drupal 8?
  • Do these modules contain deprecated function calls?
  • Are there any newer community contributed modules that may replace the functionality of the custom modules?
  1. Review existing content models.
  • How complex is the content currently—field, taxonomy, media?
  • What specific integrations need to be researched so content will have feature parity?
  1. Catalog and examine 3rd party integrations.
  • Is there any kind of e-commerce involved?
  • Do these 3rd party integrations have any Drupal 8 community modules?
  1. Catalog User roles and permissions
  • Do user accounts use any type of SSO?
  • Is there an opportunity to update permissions and clean up roles?

PRE-AUDIT REQUIREMENTS

  • Access to the codebase
  • Access to the database
  • Access to a live environment (optional)
  • Access to integrations in order to evaluate level of effort

DELIVERABLES

Module Report The module report should contain an outline of the existing Drupal 7 modules with the corresponding path to Drupal 8, whether that’s an upgraded version of the existing module or a similar module. This report should also contain a sheet outlining any deprecated function usage for the custom modules that will need to be ported to Drupal 8.

Content Model Report The Content Model report should contain an overview of the existing site’s content types, users, roles, permissions and taxonomic vocabularies with each field given special consideration. Recommendations should be made in the report to improve the model when migrating to Drupal 8.

Integration Report The integration report contains a catalog of the third party integrations currently in use and marks those with an existing contributed module from the community and those that will require custom work to integrate with the Drupal 8 system.

Our Insights on Drupal Our latest thoughts, musings and successes.

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

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
Subscribe to Drupal