Author

Upgrade Your Drupal Skills

We trained 1,000+ Drupal Developers over the last decade.

See Advanced Courses NAH, I know Enough
May 20 2020
May 20

More likely, you have a content management system (CMS), which is specifically configured and customized to manage your content. In some cases, this same software will deliver your content to your audience. In more complex cases, the CMS exposes your content over an API to a front-end application and other channels, which present this content to your audience.

<?php

echo("It's software all the way down.");
 

When it comes to the software supporting your website or application, there will always be a tension between building something new and innovative and getting the most out of what you have already built. Twenty years ago, Joel Spolsky wrote about Netscape making the "worst strategic mistake... they decided to rewrite the code from scratch."

Quote

While I love this quote (I probably reference this thinking at least a few times a month) perhaps the more important point is made at the end of Joel's article:

"It’s important to remember that when you start from scratch there is absolutely no reason to believe that you are going to do a better job than you did the first time."

Now, this isn't to say that I am anti-innovation or that I am a technology conservative. In fact, I believe that iterations are the best way to make pieces of software more effective, elegant, or efficient. But, far more than this, I hate to see the waste created by under-investment in existing production software.

Talking about something new is way easier than executing maintenance plans on what you already have. And, as it turns out, executing a new development project is often far more difficult and way riskier than you can possibly imagine while you're dreaming up the new idea.

I believe that adopting a maintenance mindset is one of the best ways to delay the risky undertaking of a full web site or web application rebuild. I come across a lot of engineers, communications professionals, and digital marketers who think that web maintenance is something that starts after a development cycle and ends just before a rebuild.

Web Maintenance Graph

When talking to customers and teams, I try to encourage us to give the software being created the upper hand by employing what I refer to as "Engineering for Maintenance". You can think of this as "building it right". Once the software has been built and launched in a way that it can be maintained, you can execute a systematic maintenance plan, which I refer to as "Maintenance Engineering".

Engineering for maintenance

ALGM Web Maintenance

In the best case, "building it right" should be the first step taken towards adopting a maintenance mindset. Building and launching web software in a way that it can be maintained covers multiple interrelated disciplines. Starting from the user experience (UX) and design process, where we uncover the best way to communicate with your audience, through to the content modelling, where we plan a logical structure for your content, to picking the technology stack and developing the custom features required to present the specifics of your brand, organization, or mission.

By building something in a maintainable way, we lay the groundwork for getting the return on our investment for the longest possible time.

We frequently come across maintenance cases where "Engineering for Maintenance" was not considered. There are multiple reasons why this could be the case, running the range from inexperience to unexpected success, to pivot pressure, through to simply negligent practices. In these cases, the "Engineering for Maintenance" often takes the shape of an audit and change implementation plan to lay the foundation of what we need to take the project into an appropriate maintenance plan.

Maintenance engineering

ALGM Web Maintenance Engineering
In the web development context, "Maintenance Engineering" covers all the disciplines of keeping the website delivering the specific value it was created to deliver. This could be from simply communicating a concise brand message, through to an enterprise brand presentation, collecting donations, or selling products.

Maintenance Engineering is not just keeping the software secure and up to date - it is also about keeping features working well, iterating on features that can be changed, and building out new features which can launch on the same software. So Maintenance Engineering also covers the creation of new features to deliver new value as you iterate and grow to further understand your audience.

Consequently, this phase doesn't only involve engineers. It equally involves UX specialists, designers, content specialists, analytics consultants, and project managers.

As you may notice, there is a significant overlap in the activities that are undertaken during a new development stage and those undertaken in a maintenance stage. However, I've found that "Maintenance Engineering" has a somewhat different flavour to that of the engineering undertaken when building new software. This is due to the fact that maintenance engineering looks after a production site - it necessarily takes a more conservative approach, and moves at a different pace.

I don't mean to suggest that things move more slowly in a maintenance phase - in fact, this is often quite the opposite. I rather mean to underline the point that there are often more things to consider with a site that is in production. This is the reason that, at Amazee Labs, we split our team into a new build team and a maintenance & extension team.

Get more from what you have already built


Adopting a maintenance mindset can be a challenge. It sometimes requires a shift in thinking and taking a longer view than what you may have intended. But I believe it can be valuable, and that you can often get more out of what you have already built.

Find a partner that gets it

If you have an internal team looking after your web software, find a product owner, manager, or member of the engineering team that also believes there is merit in maintenance as a mindset, rather than a milestone.

If you outsource your web development, have a chat with your project manager or customer liaison and check that they share your view on maintenance as a mindset. At Amazee Labs, this happens by default in the regular alignment calls between the Project Manager and client Product Owner.

Take inventory

Spend some time with your chosen partner taking an inventory of where you are at with your current site or application. How aligned is your website look and feel with your brand? How well is it telling your story? Is it still effectively selling your products, or collecting your donations? Essentially ask yourself, from a functionality and communication perspective, how far off are you?

Next, take inventory of the software and infrastructure. Is the software out of date, and can it be brought up to date easily? How performant is the site? Does it feel snappy or sluggish?

Take action

Remember, the goal is to get more out of what you already have. There is no getting without doing, so the most important part of trying it out is to take action! The sooner you try to adopt the maintenance mindset, the sooner you'll really know how much more you can get out of what you have already built. In some cases, you may find that the relative cost of maintenance is so high that new software should be considered. In this case, you have learned something, so you're already better off than you were.

But in my experience at Amazee Labs, 9 times out of 10, with some planning and some creativity, we have been able to extend the lifetime of our customers' sites significantly.

Reach out


The team and I at Amazee Labs are passionate about helping you get more out of what you have already built. If you are interested to find out what we do, and how we do it, get in touch. Looking forward to hearing from you.

Sep 27 2017
Sep 27

The people have arrived from all around the world. The booths have been set up. #DrupalConEUR 2017 - It has begun!

The obvious highlights of the day were the Prenote and the Keynote address.

What is the Prenote you ask? You can check it out for yourself! You may even recognise some of the people who took part!

[embedded content]

Where are we from?

Our friends over at Pantheon ran a “from the stage” survey of the community in the room (and I guess a few people who were watching the live stream). Inky, Dania, Lees and I are from Cape Town and Mostfa is from Tunisia. I’m fairly sure that Amazee Labs people account for a large portion of the 1% from Africa.

What do we like?

It starts with the community of course. There is meeting people, sharing food, learning, sprinting on the project. And friends!

… and of course, there is beer. And people, and travel, and connections, and OIDA.

 

… and there are stickers and hugs… AND beer sessions, and networking beer, and community beer. And if you keep an eye out and stay vigilant you might just spot a beer.

 

OIDA!

Dries took to the stage to the expected applause from the room. He spent quite some time going through the product stats and if you weren’t at the Driesnote it's worth checking out the full presentation below.

[embedded content]

At Amazee Labs, we use Drupal all the time. It supports most of what we produce, and it underpins 100% of what we do. In my team, we support, extend, and maintain a myriad Drupal 7 and 8 sites. Soon we will be onboarding some of the more ambitious Fully Decoupled Drupal-React sites that the sprint teams have been hard at work on this year into the maintenance and extension project phase. It is really helpful to have someone like Dries stand up and force us to take stock of where Drupal is a product and to highlight some of the things that the people using the product should be thinking about.

“The CMS Vendor Landscape is changing”

The CMS vendor landscape is undergoing a transformation. With the rapid rise and adoption of various Javascript frameworks, and patterns, CMSs are increasingly becoming (or in the case of Drupal, being used as) headless providers of data and content. This will over time inevitably change things for the Drupal project.

“Drupal is for Ambitious Digital Experiences”

So what is the graph telling us? It maps different potential Drupal users in two dimensions along Reach (how many people will the system touch?), and Richness (how many features will the system have?). Perhaps the most striking piece is the explicit acknowledgment that the SaaS competitive platforms are now mature and feature-rich enough to make them more appropriate for blogs, portfolio, and brochure sites.

But we can also see that Drupal isn’t only for enterprise clients. To quote Dries: “Ambitious is much more than just enterprise”. In fact, enterprise clients are only a portion of the potential Drupal market. There is plenty of space (perhaps even the majority of the market?) for feature-rich sites to be built and deployed for customers who we would not consider Enterprise. And Dries’ talk suggests that we should think about this, and start to include this in our strategies, and to help our customers to include this in their strategies.

Sep 19 2017
Sep 19

In a bit less than a week's time of writing this post, I’ll be packing my bag and getting ready to fly from Edinburgh to Vienna for the annual DrupalCon event. 

For those reading this who don’t already know, DrupalCon Europe is a community-focused event intended to bring existing community members together as well as encourage new participation in the project. There are a number of session tracks focusing on broadly accessible topics such as “Being Human” all the way through to the detailed and technical sessions. There are also sprint workshops focused on adding features and fixing bugs in the existing and future version of Drupal. In a very real sense, there is something for everyone.

 Compared with some of the other Amazee Labs team members, I am a relative DrupalCon newbie. I’ve only recently moved to the UK, so this will be my second DrupalCon. For some of the team members, this will be their 10th or even 15th DrupalCon!

Something that struck me last year, and that I’m really excited to see again this year, is the diversity of the attendees and how much work the organisers and community put into making the event accessible. I’m really looking forward to seeing people from all ages, races, and genders getting together under the banner of something we all have in common, namely our support (albeit in varied forms) for the Drupal Open Source project.


DrupalpsThere is a growing sense of excitement in our daily standups and on our Slack channels as we draw closer to this year’s event. We have people coming from across Europe, South Africa, the UK, Taiwan, and the USA. While most of us are traveling to the event by way of planes, trains, and automobiles we can proudly boast that one of our team members is cycling all the way from Zurich to Vienna through the Alps! This is not the result of a lost bet between rivals but rather Amazee’s latest “Extreme Challenge” participant. Check out the Tour de Drupalps if you are (understandably) intrigued. You can also follow @dasjo or the #drupalps on Twitter.

Amazee submitted a number of session proposals this year and we are extremely proud of our team members who were selected to share their knowledge and ideas with the Drupal community.

Dania and Michael from the Amazee Group will present “How to go from one to seven companies around the world and how to run them”.

Lisa and Sarah will drop some creative styles and share “Motion Design - Improving UX with animations

Bastian and Tyler from Amazee.io will be showing us “Power to the People - How using containers can make your life easier”. 

John Albin (this being his 14th DrupalCon!) has a talk planned to shed some light on CSS-in-JS and share some of his unexpected lessons for Drupal component design. 

And finally “Everybody cheer! Here comes Media!” will be presented by Sasa and Tadej

With so many of our core team members working all over the world, we love to take these opportunities to have some real-world and in-person conversations. Our team dinner is a great opportunity to buy that person - who is usually on the other side of the world - a beer to say thanks for that one time where they made magic happen on that deadline that needed to get done that one Friday. It’s also a great opportunity to seek out that core or module developer and say thanks for all their efforts on the Drupal project.

Looking beyond ourselves, we’re also really excited to see what other companies and teams are doing and thinking. Josef is super excited for the Community Summit on Monday. Mary is excited to see the presentation on “Teaching Clients How to Succeed”, and I’m looking forward to seeing a presentation on Drupal & Ethereum as well as the Commerce 2.0 “Lessons Learned”.

If you’re attending, I hope to see you around! If you’re not attending you’ll be able to follow along with us. During the course of DrupalCon we will be posting at least one blog post per day on our Amazee Labs blog about the various events and highlights of our team’s experiences, so check back here and keep an eye out for our various social media posts.

About Drupal Sun

Drupal Sun is an Evolving Web project. It allows you to:

  • Do full-text search on all the articles in Drupal Planet (thanks to Apache Solr)
  • Facet based on tags, author, or feed
  • Flip through articles quickly (with j/k or arrow keys) to find what you're interested in
  • View the entire article text inline, or in the context of the site where it was created

See the blog post at Evolving Web

Evolving Web