Feeds

Author

Upgrade Your Drupal Skills

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

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

We live in the age of the digital, with digital experiences an intrinsic part of our everyday lives. This means that now more than ever there’s a need for incredible amounts of people who have the skills to craft compelling experiences in the digital. A large portion of them is represented by software developers.

However, one of the main characteristics of the digital is its unbelievably fast pace. There are new trends and technologies emerging constantly, and it’s very difficult to keep up, especially for larger businesses whose digital endeavors are broader and encompass multiple different channels. 

What this means is that all these highly skilled developers need to at once be familiar and experienced enough with existing technologies and prepared for any future trends that might emerge further on. It’s definitely no easy task finding and retaining this perfect blend, especially with the unprecedentedly high demand for developers today. 

In this post, we’ll dive deeper into the importance of a development team that’s future-ready, explain what future readiness even means, and look at some tried and tested methods for acquiring a team of future-ready developers. 

What does it mean to be future-ready?

Future readiness means different things for developers and businesses, so we’ll define each separately. Still, both of them ultimately tie together: due to the need for digital experiences, business future-readiness depends majorly upon developer future-readiness.

Developers

If a developer is future-ready, it means they are familiar with and follow best practices, know and effectively implement accessibility guidelines, and are up-to-date with a range of technologies as well as trends (e.g. web components, lazy loading, etc).

They don’t necessarily have to be experts at obscure emerging frameworks, but they do know enough about the state of the software development landscape that they’re able to adopt a new technology if it turns out to offer a significant business advantage, or a greatly improved developer experience.

When it comes to a future-ready development team, one of the most important characteristics is the developers’ ability to cooperate internally. They are able to complement each other’s potential skill gaps to deliver a cohesive final product. 

Businesses

A business that’s future-ready is not locked into a system that doesn’t allow integrations, or that’s dependent on a lot of other technologies that are outdated. 

It’s built on a platform that can scale and that is owned by the business, not a third party. It has the capability of integrating new technologies, and is optimized for mobile and multichannel digital experiences.

By investing in their employees’ growth, as well as by following industry standards and agile methodologies for swift iteration, it is resistant to disruption and always able to use its familiarity with the digital to its advantage.

Why do you need a future-ready development team?

This is more or less a no-brainer; if you want your digital business to be future ready, the baseline of that business has to be future ready. 

Plus, the future is uncertain - that means, while you can never be fully prepared for it, you have to do what you can to at least be somewhat prepared. There are new technology trends emerging all the time, and if you want to be on the cutting edge, you need to be able to leverage them when you or your clients need them. 

Also, considering the current disruption, the nature and importance of digital experiences are themselves changing - right now, for example, we’re seeing a major rise in e-commerce and video conferencing solutions. Those that respond quickly without having to change course have an obvious advantage in navigating such crises. 

This is where a future-ready development team comes into play. It’s even more convenient if you leverage the expertise of a skilled development agency, as you don’t have to invest a lot of resources into vetting and re-/up-skilling your in-house employees, but rather get a readymade team of developers possessing the exact skill-sets that you need.

If you are, for example, a startup building your groundbreaking tech product, you’ll definitely want to make use of the most innovative technology available to you, as well as make sure you’re working with vetted experts who follow best industry practices. Read here how proven Agiledrop engineers can help you build high-end digital products. 

What’s the best way to secure a team of future-ready developers?

As with any developer, there are several ways, e.g. outsourcing (to an agency or a freelancer) or in-house. For a future-ready team, however, it’s even more important that you’re able to get exactly what you need without too much additional overhead. 

With everything going on recently, it’s become incredibly difficult to attract in-house talent that fits your needs, let alone vet them and/or invest into up-skilling your existing talent. As stated, your best bet right now would be to partner with a company that’s focused exclusively on development, as you can be sure they’ll invest their energies into being up-to-date. 

For complex projects that require various technologies all functioning together, you’d typically need a full team, not just a single developer. Cherry-picking the team with the exact needed skill-sets from a pool of available freelancers would likely be a very time consuming and costly process - plus, you get no guarantee that these individual developers will work well together.

A development company such as Agiledrop can provide a full team that is used to working together and collaborating on complex problems to deliver smooth and efficient solutions. Our engineers are encouraged to learn about any new technologies that interest them, and to share what they’ve learned with the whole team during monthly AgileTalks. 

As is also obvious from our name, we follow agile methodologies in all our projects, but we ultimately always adapt to our clients’ workflow, adopting their tools and processes. This ensures that, while our clients benefit from our expertise in the latest trends, this benefit never comes at the expense of internal consistency. 

So, if you’re currently in the process of searching for a future-ready development team, you’re in luck - get in touch with us and find out how our skilled engineers can help you deliver just the product you need. 

Conclusion

The faster the pace of the digital, the more important it is to be future-ready. And, as drivers of digital experiences, developers and engineers are key in guaranteeing digital-based future readiness. 

Future-ready businesses have an obvious competitive edge, but it is not always possible to invest in an in-house team of future-ready developers. In those cases, finding and partnering with a development company that’s able to provide the right skills for your needs is definitely the best bet. 

Ideally, you’d also want that partnership to be long-lasting, so that you don’t have to search for the right partner again during every big project. If you’re able to secure a partner that can accommodate your digital requirements when you need them, you’ll never again have to worry about future disruption - you’ll be future-ready.

May 18 2020
May 18

We recently introduced the concept of digital experience frameworks as the essential tools for creating and managing digital experiences. That blog post covered the basics of DXF: what’s meant by the term, some different types of DXF, and how to choose the right ones for your needs, supported by a short look into the choices for Agiledrop’s own suite of DXF.

This post will then focus more on the advantages of open-source digital experience frameworks and how they can be utilized to streamline operations and drive growth for your business. 

We’ll discuss the main reasons for opting for open-source DXF rather than custom development or proprietary tools, and take a look at the benefits of using them, both for your products/services as well as for your internal operations. 

How can you drive business growth with open-source digital experience frameworks?

In the experience economy, websites are just one of the numerous channels with which your customers interact with your business. In order to truly drive business growth, you’ll want to take advantage of all available channels where your target audience spends their time (and money!).

It’s true that with custom development, you’ll get all the customizability you desire and won’t be constrained with certain limitations of specific and already established DXF. However, custom development, especially in the multichannel digital landscape, is not only much more costly, but also much much more time consuming than relying on open-source DXF.

Just think of it - while you may achieve more functionality with custom development, the question arises whether the custom code will be completed at a time when this functionality is still relevant. Chances are high that this won’t be the case.

With SaaS solutions for creating digital experiences, the story is a bit different. They are incredibly time- and resource-efficient, but that’s also reflected in the budget. 

For big companies with a reasonable budget, it might make sense to rely on established SaaS providers - but what about small to medium-sized businesses that don’t have the luxury to afford a premium subscription to, say, Salesforce?

Furthermore, while initial development is faster, the SaaS still likely has certain limitations which can’t be dealt with as flexibly as with a digital experience framework. Plus, if you ever decide to migrate from a SaaS to another solution, you’ll have a very hard time getting all your data - it won’t, technically, be yours.

Luckily, there are a lot of really good open-source solutions - this is basically free software, supported and vetted by a community of experts (with frameworks such as WordPress or React, for example, these communities are downright huge). 

There are 2 crucial things to take into account here:

  • Vetting by experts guarantees a very high level of security. This is especially true in Angular and Drupal: the former is supported by Google, while the latter is renowned for being the most secure open-source CMS and as such a favorite of governments, nonprofits and similar organizations.
  • Wide range of customizable options makes it easier to do personalization well, which contributes to a better customer experience, with higher conversion and lower bounce rates.

All three digital experience frameworks which we utilize at Agiledrop satisfy these two criteria. As the two leading CMS with huge communities backing them, WordPress and Drupal are able to respond efficiently to the ever-changing market demands, both of them introducing sought-after features while allowing for better and better integration with other technologies. 

Both of them can also be used as “headless” or “decoupled” content management systems, relying on a front-end framework such as Angular or React for the presentation of that content.

While both of them offer out-of-the-box support for React, they can function with basically any framework. There have been a few articles recently on using WordPress with Vue, and one of our developers has been working on a project that uses Vue in combination with Drupal. 

Our front-end framework of choice, however, is the TypeScript-based Angular, due to its enterprise capabilities. These especially make it a perfect fit with Drupal, which is also predominantly used for bigger, enterprise platforms. 

Angular is developed and maintained by leading tech company Google, and the TypeScript language by another tech giant, Microsoft. On top of that, the framework’s regular release cycle guarantees constant additions and optimizations to functionality and security. 

All three frameworks provide enough out-of-the-box features, as well as all the plugins, modules and other tools contributed by the community, that you can significantly cut down on costs with them, as you’ll require less custom development to achieve the same functionality. 

What’s more, to cater to the recent explosion of digital channels, they also come with excellent mobile support, as well as the ability to integrate with any kind of channel, allowing your business to leverage all the channels it needs to, from the web to IoT. 

In addition to powering all sorts of digital experiences for your audiences, open-source DXF are also the ideal tools for all of your internal operations, from WebOps to project and resource management. 

WordPress and especially Drupal are perfect for internal platforms where you need good content management capabilities, media handling and well-defined permissions and user roles. 

Frameworks such as Angular or React are then suited towards more specific use cases - at Agiledrop, we recently revamped our resource management dashboards which now utilize Angular, for example. And, as our project managers testify, their day-to-day work has been greatly facilitated thanks to this upgrade!

So, by providing a great experience for both your users and customers, as well as your employees, open-source digital experience frameworks are a cost-effective and future-proof solution for establishing and scaling your digital presence. Leveraging them allows for more innovation and flexibility, enabling you to better tailor your digital experiences to the needs of your audiences.

Conclusion

To sum up, open-source digital experience frameworks such as Drupal, WordPress and Angular can be used to power any kind of digital experience, from products to operations, from web to mobile to physical digital display.

They are by their very nature future-proof enough to guarantee business relevance a few years down the line when new trends emerge, allowing you to scale and grow without having to worry about migrating your entire codebase every few years, or losing any user data. 

This is only enhanced with the frameworks’ commitment to backward compatibility, which will make upgrades between future versions even easier. 

If you’re looking for the right suite of digital experience frameworks for your next project, and proven engineers versed in those frameworks, reach out to us and we’ll craft a team with the perfect skill-set for your needs.

Owen Lansbury, co-founder of PreviousNext: DrupalSouth, running code sprints in the sun & GovCMS

Apr 23 2020
Apr 23

Guide for Project Managers working with development teams

Apr 21 2020
Apr 21

Top Drupal blog posts from March 2020

Apr 10 2020
Apr 10

Interview with Tiffany Farriss, CEO of Palantir: The advantage of being digital native in times of crisis

Apr 03 2020
Apr 03
Mar 31 2020
Mar 31

There are many factors that make up a good agency partnership. But there’s one without which such a partnership would essentially be impossible, and which all the other factors issue from: communication.

In this post, we’ll further break down how and why good communication with your partner agency is so vital to a successful partnership. We’ll also provide some concrete examples of good vs. poor communication, then finish with some tips on how to communicate more effectively internally within your team and externally with partners and/or clients.

Why is good communication important?

Well, the first and foremost reason why good communication is so important to an agency partnership is that it’s actually vitally important in any kind of relationship, be it personal or professional. 

And the aim with agency partnerships is, or at least should be most of the time, to be both personal and professional. As we pointed out in an earlier post, you should strive to be a true partner, not just a contractor that executes whatever happens to be needed.

This transforms the partnership from a mere business relationship into a deeper, more personal one, from which both sides can benefit significantly. At the heart of such a relationship, however, lies good communication. 

By frequently communicating with your partner and their team, you ensure everyone working on the project is on the same page and thus greatly reduce risks of errors or failure. 

This is especially important since the partnership is typically a remote one, quite possibly with a significant time difference, so a well established feedback loop is extremely important, as are other forms of preparation; e.g. setting a meeting agenda rather than wasting the time of all meeting participants with real-time problem solving. 

Keeping your partners updated on the progress of projects with transparent and timely communication is a clear indicator of your commitment to the respective relationship and helps you to establish yourself as a trustworthy and reliable partner, often helping you secure a long-term relationship.

Good vs. poor communication

Let’s now take a look at a couple examples of what (not) to say and how (not) to act to be the best partner agency you can be. We’ll also accompany each example with some possible results or outcomes of the respective approach. 

Let’s start with an example of positive communication. The following is a screenshot of our developer Kristina’s conversation with a member of a client’s team from a different timezone:

As you can see, she informs the client when she’s ready to start working on her daily tasks, as well as nearing the end of the day, when she also provides an update on her work for the day and makes sure that she is able to work on new tasks the next day without needing major synchronization with the client’s team again. 

This is a general practice of developers of Agiledrop. We strive to be reliable partners to our clients, and the trust we so establish releases them from having to micromanage everything while still retaining complete control of the course of the project. 

The fact that we prioritize clear and frequent communication from our very first interaction with a potential client plays an important part here. The way we work requires us to always secure documentation and other necessary materials for optimal work as early as possible, so that we don’t have to make constant re-requests to the client’s project management. 

If you’d like to learn more about the ways we strive to cultivate strong client relationships, check out the third chapter in the story of Agiledrop.

Let’s now take a look at an example of a situation where communication could have been better handled. Some time ago, our client adviser Aleš was on a late afternoon call with a client, which was supposed to only last about 15 minutes. 

But, since the client’s project manager wasn’t adequately prepared for the call and was trying to find answers to our developer’s questions on the spot, that timeframe quickly stretched out into 45 minutes, essentially rendering the meeting useless. 

This is why we pointed out earlier how important it is to set a clear agenda to have meetings be as efficient as possible. You can learn more about the situation described above, as well as get some useful time management tips, in Aleš’s blog post

How to foster quality communication

We’ll leave you with some tips and best practices of fostering quality communication which have especially proven vital in working with agile methodologies and as remote teammates. 

  • Good English skills are a must. Since English is the lingua franca, you’ll be doing most of your client communications in English, so a good written and spoken English will be essential to a strong relationship.
  • Your internal communication needs to be on point. You can’t communicate well with a client’s team if you can’t communicate and collaborate effectively within your in-house team. Ideally, you would have daily, weekly and monthly team meetings to keep everyone up-to-date. 
  • You need a good feedback loop. The regular internal meetings under the previous point are a vital element of this, and you also need a similar approach for client communication. The above Slack conversation of Kristina’s daily client update is a great example. Of course, you also need a good strategy for collecting feedback and relaying it to your own and to the partner team without excessive back-and-forths. Check out this post to see how we approach this. 
  • Good preparation is essential. As stated already, being well prepared indicates professionalism and saves a lot of time and effort for everyone. Don’t forget - weeks of programming can save you hours of planning, so don’t fall into this trap, and think before you start making.
  • Acts of kindness and thoughtfulness are never unappreciated. You might think that acts of thoughtfulness would be too personal, maybe even to the point of being intrusive, but the point is, after all, to build a strong, personal relationship. You can add a really nice touch with in-person partner visits, birthday greetings, or by sending and/or bringing small, symbolic gifts.
  • Follow the true - kind - necessary rule. This is a golden rule of communication, attributed originally to Persian poet and scholar Rumi, and employed throughout history by several other authors: anything you say needs to satisfy these three criteria - truthfulness, kindness and necessity. 


Conclusion

The revelation that communication is the most important thing in an agency partnership may seem like a no-brainer, and thus not really a revelation at all. But it is exactly because it is a no-brainer that we decided to write this up - its importance can often go overlooked, clouded by all the other elements that issue from it, but not getting to the root of it.

But, seeing how all the other elements are so closely tied to communication, we decided to write this up to really highlight the idea that communication is at the core of it all. 

And we speak from experience, of course - having worked with numerous clients from different cultures across nearly a decade, we’ve always seen relationships flourish the most when there is good and transparent communication on both sides. These were then typically the partnerships that ended up lasting, and many of them still do to this day. 

If you’re interested in establishing a partnership with a reliable and proficient development agency, give us a shout out or read more about how we help agencies scale.
 

Mar 23 2020
Mar 23

Late last year, we started a series of posts that tell the story of what makes Agiledrop the company that it is today. In the first chapter, we presented our unique workflow, while the second and third chapter dealt with the major challenges that arose from such a workflow and our very efficient solutions to them.

This final chapter of the series will tie things together, diving into our company culture which strongly promotes cooperation and knowledge-sharing. This ensures that our clients always benefit from the collective knowledge and skillsets of the entire Agiledrop team.

Well, let’s get right down to it!

Basing our company culture on cooperation and knowledge-sharing

What makes Agiledrop stand out is our strong culture of support and knowledge-sharing among developers. We make it a priority to integrate new employees into our A-team, make them feel welcome and help them become fully-fledged members of the team as soon as possible. Creating a collaborative and welcoming working environment is the responsibility of every person on the team and something we all participate in. 

The onboarding and mentoring of new developers is a prime example of our company culture - but it doesn’t stop there. We promote and encourage knowledge-sharing between all members of the team, no matter their status within the company or the amount of time spent with us.

Our development leads are always available to help developers weather through any obstacles they might encounter - be they considerable or negligible ones. In this way, we are able to find solutions much faster, which results in fewer working hours spent on a specific issue and, in consequence, significantly lower costs for the client.

We also have a Slack workspace dedicated exclusively to obstacles encountered by developers during their work. Every member of the team participates, no matter their physical location. It’s a place where the real knowledge exchange is allowed to happen. One of the best things to see there is when a newly recruited junior developer who is still dealing with their onboarding project helps out a senior developer with one of their issues - and it happens more often than you’d think!

In short, when working at Agiledrop, you are never given the impression that your lack of knowledge is detrimental to anyone on the team or the company as a whole; rather, it’s an opportunity to learn something new or revisit something already learned. 

Balancing the happiness of clients and developers

It’s not always easy to sustain such a well-defined and inclusive company culture. On the one hand, the development leads in the mentor roles must possess an innate pedagogical capacity in addition to extensive technical knowledge and a knack for spotting and solving problems. On the other hand, however, we must take great care to understand the positions of both the developer and client when a problem arises, and not simply look for scapegoats.

In order to catch and resolve issues in the early stages of a project and not after a month, we do weekly reports every Friday. These reports are done in two directions: our resource manager collects feedback from the clients, while the development director checks the issues that were raised by developers, such as not getting enough tasks or sufficient information to fulfill a task.

Issues raised by the clients are not something we punish; instead, we aim to provide constructive feedback to improve on the mistake, not just sanction it. The development director will speak with developers and suggest any improvements to their work. Likewise, the resource manager will notify the client about issues raised by developers so that they can do certain things differently in the future. 

Such a system ensures constant smooth communication between everyone involved in the projects, making it easier to find solutions and improvements while also keeping each side satisfied and up-to-date on any new projects and developments. 

Boosting morale and keeping the team motivated

We understand that a motivated team is more committed and able to deliver better results. It’s easier for people to give their best and be satisfied with their job when they know that their work makes a difference. The appreciation of their peers and superiors gives them the confidence needed to get through even the most difficult days.

For this reason, we hold weekly meetings every Monday and monthly meetings every first Thursday of the month; these meetings are essentially weekly and monthly reviews where we go through our new and ongoing projects. But, most importantly, they are an opportunity to congratulate people for the good work they’ve been doing, which helps boost the morale of the entire team. 

We also frequently organize various educational and sports activities that bring the whole team together, which results in new friendships and another level of knowledge-exchange. Besides our free Drupal courses where we train wannabe Drupal developers (who often go on to become full members of our team!), we also:

  • Organize TechTalks, which we call AgileTalks, on developers’ own initiative,
  • Attend tech conferences and other Drupal-related events,
  • Promote and reward any additional activities of developers, such as the organization of an aforementioned AgileTalk or writing a blog post on a topic of their choosing,
  • Organize teambuildings,
  • Organize differently-themed common lunches,
  • Enable flexible working hours that ensure a healthy work-life balance for developers.

Additionally, we also collect feedback through Officevibe surveys, which makes for a better overview of the week-to-week satisfaction of our employees and enables us to constantly improve the way we do things. A pleasant working environment and a good team spirit are key to a strong company culture.   

Providing clients with our collective knowledge

Because we base our company culture on collaboration and knowledge-exchange, we are in a unique position where we can offer our clients not just individual, but the collective knowledge of the entire Agiledrop team. By exchanging ideas and sharing resources, we are much more productive and consequently able to provide solutions faster and more efficiently. 

If you’ve read the other posts in this series (and we suggest you do!), you’ll notice that the values outlined in this post are intrinsically tied to and realized in all aspects of the work we do. We take the same understanding and inclusive approach with developers and clients alike, and we believe this is what lies at the heart of our success. 

We truly operate as a team, having each other’s back and valuing the input of each and every member. As a result, we managed to strike the perfect balance between the wants and needs of our clients and developers. This balance guarantees, on the one hand, that our developers work for a company that helps them grow, on projects they can take pride in; and, on the other, it ensures the satisfaction of our clients and helps establish ourselves as trustworthy partners that never fail to deliver.

This is evidenced by our fast, but stable growth: in just one year, we doubled the size of our team, opening offices in a new location in Maribor, with plans for a third Slovenian office this year. In addition to that, we are now taking on a number of new and exciting projects for a wide range of different international clients, making for a stable market share. You can dive into the numbers a little bit more by reading our review of 2018.

(This is not) a conclusion

Last year, we thought “Wow - 2018 really is our year”. But, seeing how it’s only the middle of March and there are already so many exciting things going on and planned for later in the year, we might have to reevaluate our previous assessment. Perhaps 2019 will be our year; besides all the new teammates and exciting projects, there’s also a major change for us on the horizon (keep following our blog posts to find out more about it!).

Or, maybe, it’s not about the year at all. Maybe we’ve arrived at the point where we’ve finally realized our vision - maybe, if we keep following in the footsteps that we’ve set for ourselves, every year will be our year. 

And, hopefully, an insight into how we do things at Agiledrop will help other businesses who are dealing with the same obstacles as we did, giving them proof that, yes, it is possible to start and successfully scale the kind of company you’d be proud working for!

So, this was the story of how we transformed Agiledrop into what it is today - a company one can take pride to work at and work with. We hope this series has given you some ideas on how to kill two birds with one stone by keeping your employees and clients happy. If you’re interested in working with us, give us a shout out!

Other posts in this series:

Introduction to Digital Experience Frameworks

Mar 17 2020
Mar 17

Top Drupal blog posts from February 2020

Mar 05 2020
Mar 05

Interview with Amitai Burstein, co-owner and CTO of Gizra

Feb 28 2020
Feb 28
Feb 25 2020
Feb 25

The opening talk as DrupalCamp Paris 2019 was a presentation given by Thomas Jolliet (FranceTV) and yours truly about how we rebuilt FranceTV Sport to a Symfony 4 / headless Drupal 8 combo.

The most salient points of the talk are probably the "defense in depth" mechanisms we built for scalability and fault tolerance, and the business results, like -85% full page load time, -65% speed index, or +50% iOS app traffic.

How to improve your time management skills and master your time

Feb 18 2020
Feb 18

Top Drupal blog posts from January 2020

Feb 06 2020
Feb 06

Interview with Marloes Bosch of LimoenGroen: Building bridges between cultures

Jan 30 2020
Jan 30
Jan 10 2020
Jan 10

Between a quarter and about a third of the content on the World Wide Web repeats itself. According to Google's head of search spam, Matt Cutts, around 25-30% of web content is duplicate. Your website is also likely to have duplicate content, even if it follows web content writing rules. In this post, we will touch upon the reasons and risks of duplication, as well as review useful modules that fix duplicate content in Drupal.

What is duplicate content?

Duplicate content is defined as identical or similar one found at different web addresses. These URLs can be within the same domain or across different ones.

Common reasons for duplicate content

Reasons for duplicate content in Drupal are pretty much the same as in other CMSs. They vary from unintentional to malicious, and from purely technical to human-created. Among the most common ones are:

  • scraped content (copied without permission)
  • syndicated content (shared by agreement)
  • HTTP and HTTPS versions of pages
  • WWW and non-WWW versions of pages
  • printer-friendly versions of pages
  • different user session IDs generating different URLs
  • almost identical product descriptions in e-commerce stores (for example, Drupal Commerce)
  • identical pieces of site-wide content (for example, in the footer)

What are the risks of duplicate content?

Duplicate content may result in losing your Google rankings. Google can’t show all duplicate results but only one from the “cluster” of duplicates. 

In addition, Google rewards uniqueness as added value. Sites with no unique content will find it harder to get good rankings.

SEO experts always take care to keep their websites from being penalized algorithmically by Google for low-quality content, including copied content. That’s why they try to keep their sites unique.

Google admits there may be strict penalties in cases when the behavior of a website with many duplicates is found to be manipulative. 

Modules that deal with duplicate content in Drupal

Getting rid of duplicates completely is neither possible nor necessary. However, there are contributed modules to deal with duplicate content  in Drupal that will make your website much cleaner from copies.

The Taxonomy Unique module

By default, Drupal allows for creating taxonomy terms with the same names within the same vocabulary. As part of measures to avoid duplicate content in Drupal 7 and 8, the Taxonomy Unique module can prohibit that.

Whenever someone tries to create a term that already exists, Drupal shows an error message saying the term name already exists. The feature can be individually enabled for each vocabulary. The error message is also customizable.

Taxonomy Unique module to fix duplicate content in Drupal


The Unique Content Title module

Thanks to the Unique Content Title module, you can require unique titles for each node of a content type. You will need to check the “Unique title” option in the “Submission form settings” of a content type. The module is only available for Drupal 7. 

The Suggest Similar Titles module

Here is another module to avoid duplication on node titles. This Drupal 7 module is at the pre-release stage for Drupal 8. 

During node creation, the Suggest Similar Titles module compares the new node titles to existing ones, and informs you if they match. The module settings allow to you:

  • decide on which content types to use the feature
  • add keywords to ignore
  • specify the allowed percentage of text matching
  • ask to check node permissions
  • limit the number of titles to show in suggestions

The Copy Prevention module

The Copy Prevention module helps you protect your texts and images from being copied on the Internet. Among the ways to do it are:

  • disabling text selection
  • disabling copy to clipboard
  • disabling right-click context menu on all content or on images
  • placing transparent image above your images
  • hiding your images from indexing 
Copy Prevention module to fix duplicate content in Drupal

The Intelligent Content Tools module

Here is an interesting module to fix duplicate content in Drupal, although it is in the development version. 

The Intelligent Content Tools module consists of three submodules. It offers auto tagging, text summarization, and duplicate content identification for your website. 

The module tells you when some duplicates have been found. Its work is based on Natural Language Processing.

Intelligent Content Tools module to fix duplicate content in Drupal


The Redirect module

The Redirect is a complex module that offers a user interface to redirect your URLs to new paths. It inherits the capabilities of the Global Redirect and the Path Redirect modules. 

Since 301 redirects and canonical URLs are among the ways to fix duplicates, the module is helpful in this sphere. It lets you:

  • manually create redirects
  • automatically redirect to canonical URLs (taking care of trailing slashes, language prefixes, and so on)
  • automatically create redirects in case of URL alias change
Redirect module to fix duplicate content in Drupal Redirect module to fix duplicate content in Drupal


The Redirect module for Drupal 8 comes with two submodules: Redirect 404 and Redirect Domain. They help you, respectively:

  • track and fix 404 errors
  • create cross-domain redirects

A bunch of other modules are recommended to use in cooperation with the Redirect:

  • Multi-path autocomplete as help with entering paths
  • Pathologic for transforming relative links in content to absolute URLs
  • Match Redirect for redirecting according to path patterns with wildcards
  • Pathauto for automatic generation of path redirects, which we will now look at more closely

The PathAuto module

The purpose of the PathAuto module is generating human-readable and SEO-friendly URLs according to chosen patterns. By default, URL aliases in Drupal look like this: /node/123. The Pathauto module can automatically change them to something like /category/my-node-title. 

The module will play an important part in website clean-up from duplicates. The Pathauto module quietly and reliably redirects URLs to the new paths based on the pattern, with no confusion for search engines or broken links for users.

Let’s fix duplicate content on your Drupal website

Each of the above modules will add a helpful touch to fixing duplicate content in Drupal. If you need help using them, or doing a comprehensive website check and clean-up with a variety of tools, feel free to contact our Drupal team. Stay unique — and both search engines and users appreciate that!

Feb 13 2019
Feb 13

Agiledrop is highlighting active Drupal community members through a series of interviews. Now you get a chance to learn more about the people behind Drupal projects.

We had a delightful talk with Taco Potze, co-founder of GoalGorilla, Open Social and THX. Taco revealed to us why his team decided for Drupal among the various possible CMS choices and what Drupal initiative they are most excited about. He thinks open source has the potential to balance out the power of tech giants and give people all over the world equal opportunities. Read on to find out more about his projects and his contributions to the community.

1. Please tell us a little about yourself. How do you participate in the Drupal community and what do you do professionally?

My name is Taco Potze, or just Taco usually does it ;). I am the co-Founder of the Drupalshop GoalGorilla and co-Founder of the Open Social and THX projects. I have been on the board of the Dutch Drupal Association for four years and active in organizing various local events such as the DrupalJam. My day to day business focuses on business development for Open Social and getting our latest THX Project up and running. Other than that, I love to travel and take care of our 1-year-old son.

2. When did you first come across Drupal? What convinced you to stay, the software or the community, and why?

I really started working with Drupal when one of our early clients asked us to build their new website. We were mainly working on online marketing, analytics and UX improvement in those days. 

My co-Founder and I have an industrial engineering background, not in coding per se. We searched for an out-of-the-box CMS that was open-source and Drupal made it to our shortlist. The winning reason for doing the project with Drupal 6 was the multi-language capabilities. The project had to be done in English and Chinese. Adding Chinese menus, blocks and content to the websites gives me now, over 10 years later, still nightmares sometimes ;). 

Jaap Jan Koster and I, now our VP of product, got the project done over summer within time and budget and ended up with a very happy client. That triggered us to offer more web development services and soon we were doing lots of projects. We used a variety of open-source CMSs until in 2010 we decided to do projects only in Drupal. 

For us Drupal provided the best framework to do challenging projects and working with only one CMS meant we could really become experts. The early years did not include many Drupal projects, I have to admit. We did not fully understand how important contributions (on all levels) are and lacked some of the skills to make worthwhile contributions. This changed over time when we started contributing modules back and became mature with the Open Social distribution where we have invested 10,000s of hours.

3. What impact has Drupal made on you? Is there a particular moment you remember?

One of the best aspects of the community is the Dutch Drupal Community. We have excellent thought leaders such as Bert Boerland and Baris Wanschers that relentlessly push the Drupal community forward.

We’ve had many successful events such as the DrupalJam, Frontend United and Splash Awards. There are informal meetings with developers or members of the board, and cooperation exists in distribution projects such as Dimpact WIM or DVG. Instead of competing with negative sentiment, we are competing but also working together to push our projects and companies forward.

A while ago, I even helped pitch an Open Social project for another Drupal agency (which we won). When I tell other companies about this ecosystem, at times they are skeptical and think that I am overselling or that we don't really compete or cooperate. However, with over 10 years of experience as a community, we have proven we can. The community is growing, Drupal is still winning market share, and companies are flourishing. I think this has made a profound impact on me as an entrepreneur.

4. How do you explain what Drupal is to other, non-Drupal people?

It depends who you are talking to. At a birthday party, you might want to simplify more than when talking to a potential client that hasn't heard of Drupal yet. I always amplify the message that it's a huge global community all working on the same IT project contributing code, sharing information and meeting at events all around the world.

I might share some of my worries about the power of big tech companies (Facebook tends to be a good example) and how we are trying to balance the scale by being completely open and transparent. I love sharing the idea that work we have done on Open Social gives people all around the world, say in developing countries, the same opportunities to organize and engage and drive their missions as companies with larger budgets.

For me working on open-source is a principled choice. Drupal is one of the projects where the importance of the open-source comes first. If I can make somebody aware of that and the choice they might have in that one day, then it was a good conversation.

5. How did you see Drupal evolving over the years? What do you think the future will bring?

These next few questions about Drupal I answered with the help from my team.

Our team sees Drupal evolving into an API-first platform, something we definitely applaud when looking at the possibilities out there that are related to this innovation (e.g. Internet of Things). We see Drupal being more open to integrations with other systems so we can provide an amazing cross-channel user experience.

6. What are some of the contributions to open source code or to the community that you are most proud of?

Our team works hard to contribute back to the Drupal distribution. It’s actually hard to pick which contributions we are most proud of since every single one of them is something to be proud of. 

However, the contributions we would highlight are all the commits done to Open Social. The fact that we are able to provide a ready solution for everybody to use is very motivating, especially since we can work together with developers from the community who help to make our distribution even better!

7. Is there an initiative or a project in Drupal space that you would like to promote or highlight?

Drupal has many initiatives that we look forward to. One of our developers, Ronald, especially highlighted the Layout Builder

“I’m really looking forward to using the Layout Builder. We have always struggled with creating a good solution for custom one-off pages with unstructured content, which would provide a lot of flexibility for content managers using Drupal. I think this initiative will produce the “wow factor” to our users and give us the ease of mind by not needing to create difficult custom solutions.” - Ronald te Brake

8. Is there anything else that excites you beyond Drupal? Either a new technology or a personal endeavorment. 

Blockchain technology has been a passion for a while and we are making great steps adding this exciting technology as part of Open Social and beyond with our THX Project. It's important to be able to improve engagement in social communities. 

With THX you can reward your users for valuable actions they take. For example, filling out their profile, adding content, adding code and patches for a community such as Drupal and much more. It also helps transferring reputation from one community to the next and gives a model to measure the value of online communities. If you are interested, we have written a white paper and various blogs on the matter and will publicize more information on the project and our DAICO in the upcoming months.
 

Feb 11 2019
Feb 11

We’re off to a great start of the new year! In January, we wrote some really interesting blog posts; in case you missed any of them, we’ve prepared this overview where you can find all of our posts from last month, neatly compiled in one place. Enjoy!

2018 in review

Our first post in 2019, published just a few days into the new year, was a review of our achievements in the previous year. Not only did 2018 mark the 5-year anniversary of Agiledrop, it will also remain in our memories as the year when we upped our game, scaled our team very successfully and optimized our strategy for the future. 

Of course, we still found the time to give back to the Drupal community, whether it be through open-source contributions or any of our educational events, such as our free Drupal courses. 

Read more

Interview with Shawn McCabe, CTO of Acro Media

We couldn’t properly start the year without continuing with our Community Interviews series. Mere days after our yearly review, we published the interview with Shawn McCabe, CTO of the Canadian Acro Media

Shawn’s love for open source was something that was immediately obvious from our talk and it was extremely interesting to get to know his story about discovering and working with Drupal. Our favorite part is almost definitely how he first met Dries - but you’ll just have to check out the entire post if you’re curious about that! 

Read more

Best Drupal 8 Security Modules

To also cater to the more tech-oriented audience, and to highlight one of the foremost advantages of Drupal (yes, of course it’s security!), we wrote a post about the 5 Drupal security modules that we’ve so far found to be the most useful. 

Even though Drupal is known for being a very secure CMS out-of-the-box, it still never hurts to take some additional security measures. Better safe than sorry, they say, especially with so many cyber security threats reported recently!

Read more

Interview with Gabriele Maira of Manifesto Digital

Next up came another Community Interview - this time we talked with Manifesto Digital’s Gambry, an avid proponent of contribution sprints (definitely not just because he’s responsible for running local Contribution Sprints in London!). He thinks every Drupal developer should attend a sprint at least once in their life, and provides the really on-point reasons for this.

There’s one sentence from the interview that’s really remained with us and fills us with warmth every time we read it: “And instead of being a mortal between gods, I found friends. I found the wonderful Drupal Community.” Ahh … Isn’t it great? Can you feel the warmth? We know we sure do.

Read more

The Story of Agiledrop: Cultivating Strong Relationships with Clients

Our final blog post from January was the 3rd chapter in our latest series of posts, The Story of Agiledrop. In this extensive post, we talked about the steps we take to ensure that the relationships with our clients are always as healthy and strong as possible.

Admittedly, due to our unique workflow, this has proved to be quite challenging. But, because we’ve understood the importance of this from the get-go and have hence made it one of our top priorities, we’re proud to say that our approach is very effective. The result is two-fold: happy clients and a motivated team.

Read more

That’s it for our posts from January - but, don’t worry, we’ll be back very soon with new content, and, if you happen to miss any of our upcoming blog posts, we’ll be doing the overview again in March. So, keep warm and stay tuned! 

Feb 07 2019
Feb 07

A while ago, we wrote a post on the history of the Druplicon. As we pointed out in this post, our beloved Drupal logo, the drop, went through quite a few iterations to arrive at the point where it is today, known by everyone in the community. On top of that, because of the same prolific community, various versions of the logo have been created for special occasions, such as new releases and events, and for different topics and regions.

So, in the 18 years since Drupal’s conception, the community has seen a wide range of different Druplicons. But, unlike for other Drupal-related material, such as modules, there did not exist a unified platform where one could get an overview of the Druplicon’s evolution and all its variations throughout the years.

Druplicon version Delta from 2013

The Official Origin Story 

Officially, this is what sparked the idea of druplicon.org for Vesna, one of our Drupal developers. She was impressed by the large number of Druplicons and wanted to create a website that would display all existing Druplicons in one place. 

In order to bring the Druplicon closer to the community, she decided to gather all the diverse versions of the Druplicon and turn their discovery into something fun and interactive. 
 

... And the Actual One

Well, the origin story above is not exactly untrue; there is more to it, though. Vesna actually revealed the whole story behind what drove her to create druplicon.org - and it’s super fascinating! 

At Drupal Developer Days Milan 2016 she caught a glimpse of someone wearing a T-shirt with what appeared to be a Druplicon in the style of Joan Miró i Ferrà, one of her favorite painters. She isn’t completely sure, but she thinks the logo was that of a Drupal-related event in Barcelona (Joan Miró was a Spanish painter, sculptor, and ceramicist born in Barcelona, so there’s the connection). 

Of course, it’s not always easy to approach someone you don’t know and just spark up a conversation. It’s totally understandable, then, that she didn’t go to him to find out about his shirt and ask him if she can take a photo of the Druplicon for Instagram - and it’s even more understandable that she immediately regretted not doing so! 

She went on to scour Google relentlessly, trying to find the lost Druplicon - but, sadly, to no avail. So, she decided to make a database of all existing Druplicons, with the hidden agenda of maybe eventually finding this mythical one.

Memory Game

Visitors to druplicon.org can thus easily explore the icons by different categories, get additional information about them, clearly see which are the newest ones and even play an interactive memory game with the icons.

Due to the abundance of different Druplicons, the game is not exactly an easy one - even when opting for the “easy” mode. Playing it regularly, however, will quickly improve your knowledge of existing Druplicons. 

And, since the game is designed to be educational as well as fun to play, it greatly helps with remembering which Drupal event or aspect of the larger community a specific icon is connected to. 

Whenever you discover a matching pair, you get information about the event or topic that the icon has been used for, together with the link to the event’s or the community’s page on drupal.org

So, attend Drupal events, memorize their logos, get to know the community, then play the game regularly and become a true Druplicon master! (Pro tip: tackling the harder levels on a big screen will make the game much easier).

Druplicon.org memory game example

Staying True to the Spirit of Drupal

There’s another very Drupal-esque aspect of the site - in the spirit of Drupal contribution, users that register to the platform get the opportunity to submit new Druplicons. Because, let’s face it - there are so many versions of Drupal’s logo that it would almost be megalomaniac to think that we caught them all. 

So, if you discover or think of any Druplicons we might have missed, you’re more than welcome to join druplicon.org and add them to the platform - especially if one of them is the elusive Joan Miró Druplicon!

The Power of the Community

Druplicon.org is thus a collective effort in the true sense of the word. Staying true to the all-encompassing nature of Drupal, it’s a site anyone can contribute to and thus connect with members of the Drupal community no matter where they hail from. 

And, fittingly, the site itself is of course built in Drupal 8; it was actually built by our freshly recruited developers as part of their onboarding project (if you want to know more about how we onboard our new developers, take a look at this post on our effective training program). 

Doing so, they got hands-on experience with both crucial aspects of Drupal: coding and giving back to the community. As such, druplicon.org is truly a site by and for the Drupal community, showcasing the power of said community. 

Call to Action

This, then, is the perfect opportunity to try to get the community involved in our search for the lost Druplicon. Remember how we mentioned before that (a major!) part of the motivation behind the creation of the site was finding the Joan Miró Druplicon?

Well, we know that the Druplicon is somewhere out there, just waiting to be discovered. So, now we’re calling on all of you, especially those who attended Drupal Developer Days Milan in 2016, to spread the word, explore druplicon.org and contribute with any missing Druplicons. Together, we can surely find the lost Druplicon and make Vesna happy!

Joan Miró i Ferrà: Zephyr Bird

(If anyone has any information on the icon, but doesn’t want to join the platform for any reason whatsoever, please give us a shout out - any info is helpful!)


 

 

Feb 05 2019
Feb 05

Just like every month, we’ve prepared a selection of the most interesting and engaging Drupal-related blog posts from the previous month. Check out January’s list and make sure you haven’t missed any!

Drupal Pitch Deck initiative update and call for Case Studies

With the Promote Drupal initiative gaining ground, it was high time to get the larger community involved. Since Drupal Europe in September, the lead proponents of the initiative (Paul Johnson, Suzanne Dergacheva and Ricardo Amaro) have been working on the Pitch Deck of case studies showcasing the various benefits of choosing Drupal for a particular project. 

The goal of the document is to have sales material always at hand to help promote and sell Drupal. And, since Drupal has been a collective effort from its very beginnings, this post hence functions as a call to action to anyone within the Drupal community to contribute to the Pitch Deck by sharing their interesting case studies and helping Drupal win more often.

Take a look

Refreshing the Drupal administration UI

Now this is a post that gained a lot of traction - and not only because it was authored by Dries. There have been talks for quite some time now about the outdated look of Drupal’s admin UI and the need to refresh it, especially from the sales perspective. 

Early last month, Dries finally catered to the community by providing a glimpse into the new look of the UI (aptly called “Claro”, meaning “clear” in Spanish). The new design system is already being implemented and an alpha release is planned for next month. Anyone wanting to get involved, especially designers and front-end developers, is of course more than welcome to do so - more details on how to go about it can be found in the post itself.

Take a look

A Step in a New Direction. Farewell from Amanda Gonser.

This next post is quite a bit more emotional - and rightfully so, since it is essentially a farewell letter from Amanda Gonser after stepping down from her role within the Drupal Association

In this post, Amanda revisits the greatest achievements during her 4 years as a member of the Drupal Association, and thanks everyone who was part of this journey. Now she will finally be able to start getting hands-on with Drupal. Good luck, Amanda!

Take a look

6 Tips to Rock Drupal 8 SEO

Ben Finklea, the CEO of Volacci, has written a helpful blog post on how to make your Drupal site as SEO-friendly as possible. The post was originally published over a year ago, but has been updated with more up-to-date information and best practices. 

Since SEO is a field that is constantly changing, site builders have likewise to remain flexible and adapt to emerging trends. But, luckily, in the words of Ben Finklea, “Drupal is phenomenal for SEO”. Taking into account the 6 tips highlighted in this post, you can start taking advantage of Drupal 8’s innate affinity for SEO today.

Take a look

How to decouple Drupal in 2019

Another great post by Dries, this one explains all you need to know when decoupling Drupal in 2019. The post includes a flowchart mapping the perfect decoupled solution based on the needs of your site or app. Here, a balance between developer and editorial needs is crucial.

Accompanying the flowchart are the explanations of the different architectural options as well as a more accessible version of said flowchart in textual form. With the help of this post, you can now easily and painstakingly determine to which extent you need to decouple your Drupal site and plan the project accordingly.

Take a look

Getting ready for the Drupal Global Contribution Weekend

In light of Drupal’s Global Contribution Weekend which took place in late January, Nathan Dentzau of Chromatic wrote a post aimed at new developers who are eager to start contributing to Drupal. 

Nathan includes links to useful resources for new contributors to get started, as well as a short step-by-step guide on how to set up a local development environment with Lando.

Take a look 

Happy eighteenth birthday, Drupal

Contrary to what one would expect after such a hectic end of the year, January was likewise a very hectic month. Amidst all the interesting developments in the Drupalverse either taking place or on the agenda, we also celebrated Drupal’s birthday on January 15. But not just any birthday - it was, in fact, Drupal’s 18th birthday!

With 18 representing the age of maturity in many cultures, we can now proudly say that our favorite CMS has successfully entered adulthood. In his post, Dries looks back on Drupal’s humble beginnings through an emotional video showcasing some of the most powerful brands that have adopted Drupal for their online presence.

Take a look

The Webform module for Drupal joins Open Collective

The last post from January that we wanted to highlight is Jacob Rockowitz’ post on the sustainability of open source. As the creator and maintainer of the Webform module, Jacob has invested a lot of time and effort into said module. 

In this post, he tackles the problem of making open source sustainable. A very good solution he presents is Open Collective - a global platform for the collection and distribution of funds. The Webform module has already joined Open Collective, and so Jacob explores how to best leverage the funds obtained through the platform.

Take a look

We’re off to a great start of the year. The abundance of activity so early on is a true testament to how the Drupal community is always active, never resting. Be sure to check back next month for an overview of the top Drupal content from February. Till then - enjoy!


 


 

Jan 30 2019
Jan 30

In the second chapter of the series, we wrote about the first challenge we encountered when defining our unique workflow, which was establishing a process for training newly employed developers to meet requirements needed to work as part of the client’s team. In fact, this was just one half of something more important that we had to be mindful of - building and maintaining a healthy relationship with our clients. This is what we’ll dive into in this chapter.

The Challenge

The first and foremost thing to keep in mind when providing clients with experienced and reliable personnel is actually having that experienced personnel. However, a strong and healthy relationship with clients also demands continuously ensuring this personnel’s top-notch performance and smooth communication with the clients. 

Since our developers are integrated into various projects for various agencies or simply development teams at, let’s say, a publishing company, and are managed directly from the client’s side, we had to find a way to monitor their work and eliminate any possible friction before it transformed into a major issue for the client.

Playbook

Forming and cultivating strong relationships with our clients is something we encourage from day one. All new employees receive a copy of our “playbook”, a directional document outlining our workflow, best practices and basically everything they need to know when starting their job at Agiledrop. 

This playbook includes a set of guidelines for working as a part of the Agiledrop as well as the client’s team. Before any specific instructions on time tracking, communication, tools or anything technical, though, there’s a helpful introductory principle that they’re familiarized with. We call it SHARD, which is short for:

  • Stop - Take a breath and take a moment to remember that every interaction matters.
  • Hear - Let the client tell their entire story without interrupting them. Sometimes, all we need is someone who listens.
  • Apologize - As long as it’s sincere, you can’t apologize too much. Even if it wasn’t your fault, you can still genuinely be apologetic for the way your client feels.
  • Resolve - Resolve the issue quickly and don’t be afraid to ask the client: “What can I do to make this right?”
  • Diagnose - Get to the bottom of why the mistake or issue occurred, without putting the blame on anyone. Instead, focus on fixing the problem so that it doesn’t happen again.

As you can see, we take great care to always provide top-notch services to clients, even if the fault or mistake did not occur on our side, if we are swamped with projects and deadlines, if we are tired and fed up with a specific issue…. We suck it up and put the client first! The entire team is extremely committed and driven to deliver. 

And, even though we operate as remote partners to our clients, we strive to make the relationship feel as personal as possible and to reassure the clients of our online presence. Our developers frequently and conscientiously inform the clients about when they start and get off work, and about any breaks they might have.

We're Your Remote Partners

Since our clients come from various countries, often with different time zones, we had to find a way to always be available for calls and daily standup meetings for clients, but also keep things fair for those working on open source or on projects for clients from the same time zone. 

For this reason, we’ve implemented the rule that our offices are open between 8 a.m. and 6 p.m., which altogether comprises 10 hours, while our effective working hours are between 7 and 7.5 per day. 

These flexible working hours allow for at least 2 hours of overlap even with clients with the biggest time difference, such as those from the US. The developers who work on those clients’ projects are hence able to arrive at the office later and don’t have to work overtime just to be present for a call or a standup meeting, whereas the rest of the developers are able to arrive earlier and finish work earlier, but are still available to the client when they are needed.

Such a system also ensures an excellent work-life balance, which in turn also greatly benefits the clients, since our developers working as members of their team are consequently more motivated and perform better - it’s truly a win-win arrangement! 

Motivation is crucial for a strong and successful team, and this is why we frequently organize team buildings, shared dinners and other fun events that strengthen the team, further improve the vibes in the offices and consequently make working at Agiledrop something every team member looks forward to each day.

Another major benefit for clients working with our A-team is that we operate as remote partners to the client’s team. This means that the client essentially gets a boost to their workforce without any additional costs such as recruitment, onboarding and equipment costs, health insurance, travel expenses, etc. 

Furthermore, we spare clients the need to open additional offices in different parts of the world in order to effectively scale - it’s exactly like we’re there with them (except that we’re not, at least physically)!
 

Feast or Famine? Not with Agiledrop

A considerable concern for companies and agencies when it comes to remote staffing is “feast or famine”. This is realized as the need for extra developers for a certain project, whom you cannot hire as full-time employees, since they will turn into unnecessary burdens to your finances once that project is concluded and you will no longer need such an extensive team. 

This is where we offer the perfect solution. Clients can hire our developers for the duration of the project, but, if they happen to need them for an extended period of time or again at a later time, that can be arranged as well. In this way, we can scale your team easily and efficiently, but only when it’s needed.

Usually, when hiring part-time employees or freelancers, your chances are quite limited. If your remote developer falls ill, goes on leave, or disappears in some other, unexplained manner, what can you do, really? Go through the tedious, wrought-out process of staffing a second time? Deliver a not-so-optimized product? Either way, your project and consequently likely your entire enterprise suffer because of this. 

Fortunately, this is pretty much an impossible scenario when working with the Agiledrop team. Our reliable team is led by skilled development experts whose greatest talent lies in the recognition of the talent and skills of others. As such, you can always count on them to provide the people and solutions most suitable for a specific project from about 30 to 40 experienced and proven developers.

If a developer assigned to a certain project falls ill or goes on leave? No problem - we take utmost care to immediately provide appropriate replacements, ensuring that the client’s project is never at a disadvantage because of some uncontrollable factor. With such a diverse team, we can assure we will find the people with the best possible combination of skills and experience for any given project. 

Cultural Breach - What's That?

Even though we come from a small, relatively unknown country in the European Union, our values and traditions are essentially the same as in other Western countries; hence, our developers are able to integrate completely into the client’s team. All of them are fluent in English and are extremely flexible; we can effortlessly and seamlessly adapt to different practices and cultures, and we immediately employ the client’s tools, communication channels and workflows. 

We strive to eliminate cultural breach as much as possible, continuously reassuring the client that the developers working with them are not a separate entity, but rather an equal part of their in-house team. Of course, we also pay attention to respecting specific cultural norms and/or time zone differences. You will never get pinged by one of our developers during your day off!

Your Privacy Is Safe With Us

Besides ensuring smooth project delivery, we’re also dedicated to protecting our client’s privacy and any trade secrets. A very strict NDA is signed with all our clients as well as our employees and we make sure everyone respects and follows it. 

We never reveal our clients’ identity to other clients and we never share the client’s documents outside the team assigned to their project (you probably noticed that we appropriately censored the photo above with the conversation). 

Additionally, we’re extra careful when handling our or the client’s passwords and access to services, etc. - especially when working from home. To add an extra layer of security, we handle our passwords with LastPass or similar tools.

Hire 1, Get Access to 30

What’s also greatly advantageous for our clients is that with such a large group of developers working in the same workspace, the client always benefits from the collective knowledge of the entire Agiledrop team. As we shall see in the final chapter of this series (stay tuned!), we promote and reward knowledge-sharing and support between employees. 

We already pointed out in the first chapter of this series that our workflow demands new employees are supported by their mentors and team leads, helping them with tasks that are beyond their current level of expertise; but this support is not only limited to the probation period or to less experienced developers. 

Anyone can help anyone, as we firmly believe that a unique and fresh perspective can always be beneficial, and we encourage asking for help rather than spending copious amounts of time trying to solve the problem on one’s own. We encourage communication between employees and also with the client’s management team, we peer review our code, we seek and develop solutions together, as a team. 

It’s like those really old commercials or sales offers - remember, buy one, get one free? Well, with Agiledrop, it’s more like - hire one, get access to the skills and experience of thirty!

Unsure about how to most efficiently scale your team? Need to augment your staff, but only for the duration of a certain project? Not to worry - reach out to us anytime and we’ll be happy to lend a helping hand and ensure the success of your project! 

Jan 22 2019
Jan 22

Agiledrop is highlighting active Drupal community members through a series of interviews. Now you get a chance to learn more about the people behind Drupal projects.

Meet Gabriele Maira, also known as Gabi by friends and as Gambry by the Drupal community. With over 15 years of experience working with PHP and over 10 working with Drupal, Gabriele is currently the PHP/Drupal Practice lead at the London-based Manifesto Digital. Read about his beginnings with open source and why he thinks every Drupal developer should attend a Sprint at least once in their life. 

1. Please tell us a little about yourself. How do you participate in the Drupal community and what do you do professionally?

Hi I’m Gabriele, Gabi for friends and @gambry on Drupal.org. I’ve been working for more than 15 years with Web and PHP and just a bit more than 10 with Drupal.
I work at Manifesto Digital where I am PHP/Drupal Practice Lead, meaning I take care of the quality of the projects, from the code, best practices, standards and security perspective.

I’m an active member of the Drupal London community, I help with organizing local events as well as running Sprints (either Drupal Sprints, Distributed Sprints or Open Source Sprints).

2. When did you first come across Drupal? What convinced you to stay, the software or the community, and why?

My first Drupal installation was with version 5. At that time I was more messing around rather than following the Drupal way. Nasty things like PHP logic in templates and hacking the core

In my life I’ve been involved in a lot of communities more or less connected with FOSS (Free Open Source Software), where the community is always divided into 

  • The top GODs: who know everything and have the last word
  • The rest of mortals: who are normally scared of doing or saying anything and their contribution is often as small as possible, due to fearing the reproof from whoever knows more than them.

And with the same skepticism I’ve never been much involved with the community until Drupal 8 came along.

Drupal 8.0 had just been released, although some of its modules where still in an almost-stable (if not unstable) state. The “date” ecosystem was one of them I required the most, but it had several glitches.

The “date” Drupal subsystem is one of the most fragile and obscure ones for most developers, but it is one I’m confident with so I gave all my expertise and all the time I had to complete 2 of the most important issues still open despite thousands of requests from users (Datetime Views plugins don't support timezones and The Views integration Datetime Range fields should extend the views integration for regular Datetime fields).

And instead of being a mortal between gods, I found friends. I found the wonderful Drupal Community.

3. What impact has Drupal made on you? Is there a particular moment you remember?

Drupal for me has always been a trigger for my curiosity. Since Drupal 8 is based on Symfony, I found myself browsing Symfony documentation a lot. If you want to know more about routing, container, services and dependency injection, events and dispatchers, etc., Drupal is just the consumer and the only way to master the topic is to look further and out.

Take for example the issue “Sites named with special characters cannot send mail”, which started as a bug in a client website and ended in a two day long research about email syntax protocol and all RFCs related to it.

4. How do you explain what Drupal is to other, non-Drupal people?

“It’s a program” - nowadays I call it “App” - “helping you build a website. A bit like MS Word, but for the web”.

5. How did you see Drupal evolving over the years? What do you think the future will bring?

Drupal’s future has never been so bright as it is now. Drupal 7 was a good product, after the initial skepticism I can now shout Drupal 8 is an even better one, and Drupal 9 - and next versions - have already a defined approach and you can already tell Drupal will grow better and better.

6. What are some of the contributions to open source code or to the community that you are most proud of?

The work for the “date” subsystem is the one I’m really proud of. It was my kick-off to the Drupal community and code contribution. And for this I thank mpdonadio and jhedstrom for being so patient and helpful. Something I will never forget.

7. Is there an initiative or a project in Drupal space that you would like to promote or highlight?

All religions have their “things you should do at least once in your life, to be a good believer”, and I think the Drupal community must have one too: attending Sprints!

Attending a Sprint should be something every Drupal developer should do. By attending a Sprint you:

  • Meet Drupalists like you, creating new friends.
  • Know more about the Drupal community, the WHYs, the HOWs, the WHATs and the WHEREs.
  • Know more about Drupal contribution, either writing code or documentation or reviewing issues.
  • Improve your skills!

8. Is there anything else that excites you beyond Drupal? Either a new technology or a personal endeavorment. 

I’m always being curious about Chatbots and Conversational devices, and how they can improve your everyday small actions… if not your entire life in general.

After some investigation and playing around I’ve published the Chatbot API suite, which creates a common layer to expose Drupal content to conversational interfaces and/or services.


Photo used with permission by NW Drupal User Group (@nwdug)
 

Jan 17 2019
Jan 17

The internet can be a dangerous place, what with so many hackers and people potentially looking to make a quick profit off bad practices. In such an environment, it becomes increasingly important to make your Drupal site as secure as possible. Fortunately, Drupal is well-known for being a pretty secure CMS out of the box. However, it is by no means perfect, and, owing to its flexibility and support for various modules, there are a number of modules you can install to make it a lot more secure. So, in this, post let’s take a look at some of the best security modules that you can download and install on your Drupal site to make it as foolproof as possible.

Login Security

The login page to your site is like the gate to your house. It only makes sense, then, that the first thing to strengthen would be the login process. An excellent module for this purpose is the Login Security Module. It allows you to set a limited number of login attempts, failing which the account will be automatically blocked. In addition to that, it also allows you to block IP addresses as well as sends you alerts via email if there’s a potential brute force attack on your site.

Link

Captcha Module

Quick question: what’s the easiest and most widely used method of keeping spammers away? It is, of course, captcha. With the captcha module, you can integrate captcha on your Drupal site in a couple of minutes and keep those pesky spammers and bots at bay.

Link

Security Kit

A module that’s going to become your best friend on your journey to make you site foolproof, Security Kit is an all-in-one module for your site that allows your to configure, tweak and set up various options in order to minimize the chances of any attacks on your site. On top of that, it also gives you helpful directions such as setting up http headers etc. to make your site as resistant to malicious attacks as possible. A module which is very much worth its weight in any secure Drupal site’s arsenal.

Link 

Password Policy

Setting up a password policy for your site is a good idea, as it not only keeps bots away, but also helps to ensure that users keep a strong password and not just the ‘password123’ type. A strong password helps prevent breaches on your site, making it a lot more secure in the process. The password policy module allows you to do just that by giving you options to define a set of constraints which need to be met by the user before their password is accepted. While the Drupal 8 version is currently in the alpha stage, it works perfectly well, so go ahead and enable it on your site.

Link

Session Limit

As the name implies, this module allows you to configure the maximum number of sessions allowed per user. The number of sessions is the number of browsers a user is logged in at. Using this module, you can also configure various other options such as prompting the user to log out of another session before logging into a new one etc.

Link

Conclusion

Using these modules, you can ensure your Drupal site stays a lot more secure. Since these are modules that anyone can grab for their site, there’s really no excuse not to use them. While there are additional techniques which can be implemented on a Drupal site to secure it, they are advanced techniques. To get started, these modules will do the job nicely. Another thing to note is that with Drupal 8, a lot of security measures have been implemented out-of-the-box, hence it currently sports a smaller amount of additional security modules than Drupal 7.


Are you confused about how to set up security measures for you site? Worried about whether your site isn’t safe enough? Contact us at Agiledrop and let our extensive Drupal experience help you with this!
 

Jan 14 2019
Jan 14

We’ve compiled all the blog posts we wrote in the final month of 2018. Besides continuing with our Community Interviews series, we also introduced a brand new series of posts - the Story of Agiledrop, in which we discuss our work practices and give you a glimpse into what it’s like to work as a member of our A-team. Have a look and stay tuned!

How to Create a Node in Drupal 8 using REST

The first blog post we wrote in December was a short tutorial on creating a node in Drupal 8 using RESTful web services. RESTful web services are the underlying principles that enable the concept of “headless Drupal”, and they bring about a plethora of possibilities for the customization of a Drupal site. This post takes you through the basic function of creating a node using these services and serves as a kind of demo of the feature.

Read more

The Story of Agiledrop: Introduction

Our next post was the first chapter of our new series, the Story of Agiledrop. Here we explained our workflow and the advantages it has had, both for our dedicated team and for our clients. Thanks to such a well-defined workflow, our A-team can keep improving and growing, professionally as well as personally. But, of course, we also encountered some obstacles when defining our workflow and putting it into effect - we discussed these in the series’ second chapter.

Read more

Interview with Kevin Kaland, aka wizonesolutions: Towards a more and more decoupled Drupal

The third post was part of our Community Interviews series. We talked with the digital wizard Kevin Kaland of WizOne Solutions, who revealed to us his thoughts on Drupal’s future as well as some more personal, non-Drupal related bits of information. Besides being actively involved in the community as the maintainer of the FillPDF module among other things, he’s also an avid traveler, hiker and language enthusiast. Take a look at what we talked about.

Read more

The Story of Agiledrop: Our Training Program

Finally, just before the holiday season, we wrote a blog post on our effective training program, the second chapter in Agiledrop’s story. While the first chapter concentrated on our workflow and its advantages, this second one dove into the challenges we faced when setting up such a unique workflow. We deal with the first of these challenges - providing a number of clients with proven and experienced developers - more thoroughly, and reveal how we succeeded in finding a very beneficial solution for it. 

Read more

That’s that for our blog posts from December. We hope 2018 was a successful year and the transition into 2019 a pleasant one for everyone. Check back later this month or keep following our blog for any new content!
 

Jan 11 2019
Jan 11

Values & Principles Committee Update - November 2018

The first post we would like to highlight is Rachel Lawson’s update on the Drupal community’s Values & Principals Committee. Here, Rachel covers the basics of the committee: why it has been put together, how it will function and who its members are. She finishes with a powerful CTA to members of the community to contribute their own stories about Principle 8.

Read more

Drupal's Commitment to Accessibility

Next up, we have a post by Dries on Drupal's commitment to accessibility. He has made the realization that accessibility is not something that benefits only a small group of people and should as such be shrugged off and/or postponed, but rather something that promotes inclusion and can benefit everybody involved. So, the community as a whole should put more effort in making Drupal accessible, consequently benefiting each and every member.

Read more

A Visual Prototype of Drupal.org's Integration with GitLab

Early last month, Tim Lehnen, executive director of the Drupal Association, wrote a piece on Drupal.org's integration with GitLab. In this post, he goes through all the things needed to get the integration working and even includes a video outlining the migration phases for the project.

Read more

A Framework for Progressively Decoupled Drupal

When discussing the future of Drupal, a lot of talk revolves around “decoupled Drupal” or “headless CMS”. Malcolm Young of Capgemini offers his insights on what Dries describes as “progressively decoupled Drupal”, and introduces the so-called SPALP module together with the benefits of using this module.

Read more

The New Layout Builder’s Impact on Drupal’s Evolving Learning Curve

Ashraf Abed and Jack Garratt discuss Drupal’s new layout builder in this blog post by Debug Academy. They compare different ways of creating content and show how site building can be greatly facilitated when using the layout builder. Consequently, it makes Drupal more accessible to content editors and less experienced developers, giving them more reign in creating a website.

Read more

How to Automate Testing whether Your Drupal 8 Module Is Incompatible with Drupal 9?

In this blog post, Gábor Hojtsy takes us through how to automate testing the incompatibility of a Drupal 8 module with Drupal 9. With the release of Drupal 9 only about a year and a half away, it’s wise to check whether your module is compatible with Drupal 9 (or, at the very least, if it’s incompatible).

Read more

Improving Drupal and Gatsby Integration - Part 1 and Part 2

Jesus Manuel Olivas, Head of Product at weKnow, has started a series on improving Drupal and Gatsby integration. In December, he published the first two chapters of the series: part 1 focuses on two contributed Drupal modules that facilitate the usage of Drupal when working with Gatsby, while part 2 explains how you can really take advantage of the two modules using weKnow’s very own Gatsby plugin. 

Part 1

Part 2

Plan for Drupal 9

Last but not least comes a major post from Dries’ blog. He finally announces the release date for Drupal 9, which is planned for June 2020. This gives site owners more than enough time for a smooth and uncomplicated upgrade from Drupal 8 to Drupal 9. According to Dries, the upgrade will be easy and should as such not be considered a big deal.

Read more

This concludes our selection of the top blog posts from December 2018. We’re very excited to see what the new year will bring for Drupal; we’ll make sure to keep you informed of all the most important goings-on.
 

Jan 08 2019
Jan 08

Agiledrop is highlighting active Drupal community members through a series of interviews. Now you get a chance to learn more about the people behind Drupal projects. 

This time we had a chat with none other than Shawn McCabe, the CTO of Acro Media. In our interview, the avid Drupal contributor talked about his most memorable Drupal moments, his love for open source and his reasons to opt for a more sustainable lifestyle. Have a read!

1. Please tell us a little about yourself. How do you participate in the Drupal community and what do you do professionally?

I am the CTO at Acro Media, so I run our product development and R&D, which puts me pretty heavily into contributing to Drupal and working in the community. I do actually get to do a respectful amount of programming myself, which is nice and not something I always got to do as Acro was growing as a company. 

Thankfully now we have a head of operations for development who handles most of the day to day runnings and I get to run wild with awesome new tech while he does most of the actual work.

I also do architectural consulting and sales work for larger clients, a lot of which involves proselytizing about our lord and savior Drupal to anyone I get pointed in the general direction of.

2. When did you first come across Drupal? What convinced you to stay, the software or the community, and why?

I was aware Drupal existed, but my first actual work with it was when I was assigned to do a large Drupal/Ubercart site, back when Ubercart was still just in alpha. At the time we’d just started transitioning from our own proprietary stuff to Drupal. I’ve been an open source advocate pretty much since I got the internet, so I was all for the move in general.

Drupal ended up matching fairly well with my own preferences, it was open source, fairly developer focused and not controlled by a single company. I found it fairly similar to Linux in philosophy and that sat well with me. That whole “come for the code, stay for the community” thing that Drupal has never resonated with me, I keep working on Drupal because I like the direction and philosophy behind it.

Lots of Drupal events seem to focus on non-coding related activities as a big selling point, but I have little interest in doing non-Drupal activities as part of the community. I am not an isolated freelancer, so this isn’t one of my few times to hang out with other developers. I know other people in the community feel differently and we chatted about it on Slack and Drupal was literally the first time a lot of developers had a single other friend who was also a developer.

That’s a really rambly way of saying that I stay for the code, all the core developers are honestly working towards the best decisions for the project and even having larger corporate backers like Acquia I don’t think has affected that. People like Wim Leers, Gabor, Fabianx, Berdir, Daniel Wehner and Bojanz have done a lot of architectural work that I admire. Working with something like Magento I don’t get quite the same experience, they care primarily about only their own use cases and contribution efforts always feel like you’re the little brother tagging along.

3. What impact has Drupal made on you? Is there a particular moment you remember?

Haha, I remember meeting Dries for the first time and basically just getting all starry eyed and basically stammering at him. In person I swear he’s like 7 feet tall.

On a less embarrassing note, I was very proud to be on the list of the top 100 Drupal contributors at this year’s Drupalcon, as well as 4 other Acro employees. It’s been my goal to push Acro’s community involvement heavily over the last few years, so to see those efforts pay off was really great. As a company we’re also consistently in the Top 3, which I’d like to think I had a large part in. If anyone from Acquia is reading this, we’re coming for your #1 spot.

4. How do you explain what Drupal is to other, non-Drupal people?

Ha! Explaining it to people not in the industry is nearly impossible, usually I resort to “I make websites”. Even then people seem to get confused, it’s like “you know websites? You use them every day? Someone has to make those”. Drupal runs like 10% of the sites you go to, even if you don’t know it.

If they know web development I just say it is like wordpress with more flexibility and fewer security holes.

On a more serious note, I tend to pitch the philosophy of open source a lot when I talk about Drupal. I find most people grasp that fairly well and can see the advantages of having control over their own stuff. Somewhat ironically, I find developers who come from the proprietary side of things have the hardest time grasping open source, the concept of opening up the code is strange and terrifying. I’ve had calls with some very large companies who shall remain nameless who had to be given the ‘Explain it like I’m 5’ version of open source, which I found baffling.

5. How did you see Drupal evolving over the years? What do you think the future will bring?

I am a big fan of the direction of Drupal 8, I love the integration with the community and the adoption of many modern development practices. I think anyone still wishing for Drupal 7 to stay around is doing themselves a disservice instead of growing as a developer along with Drupal. I’ve been working with Drupal since late in the 4.7/early in the 5.x era and I think every version has been a clear improvement over the previous. 

6. What are some of the contributions to open source code or to the community that you are most proud of?

I’ve contributed around performance a lot at various times, I like to think those ones are the most useful since they help everyone. Drupal gets this bad rap for performance that I think is totally unjustified, install one bad module or make a poor caching choice and suddenly it seems like Drupal sucks, but it’s just a side effect of how much flexibility it gives you.

I always feel I’m 10 blog articles or videos behind though in sharing information, any time anyone else has to fix something I’ve already solved, I feel like I’ve wasted their time and they could have solved something new instead of the same thing twice. I’m mostly a “self taught” developer, which really means I’ve been taught by every kind soul who wrote a blog article or open sourced a project, which is a debt it doesn’t seem I can ever sufficiently pay back. So I’d guess I’d say I’m also proud of any content I’ve been able to give back, especially completely original work, then I’ve done my tiny bit to push society forward.

7. Is there an initiative or a project in Drupal space that you would like to promote or highlight?

We’ve done a ton of work on the Commerce POS module that I don’t think gets as much exposure as it should. It provides a wealth of functionality that integrates completely with commerce, providing a fully integrated setup that is usually only an option for expensive or enterprise setups. It even works with hardware you can build yourself like a Raspberry Pi, of which we’ve built some samples of already.

8. Is there anything else that excites you beyond Drupal? Either a new technology or a personal endeavorment. 

I am obsessed with renewable energy stuff lately, I built my own ebike last year and converted a Jeep Cherokee to full electric this year as well. Shameless plug for my youtube channel and blog, except they don’t have near as much content as they should. Our head office is in an area that has suffered from increasingly bad forest fires similar to California, so I’ve tried to take my reduction in greenhouse gases seriously.

I am a fanboy of Tesla for all the work they’ve done pushing the industry forward, but they’re not really my kind of cars as they’re very locked down against customization and filled with unnecessary gadgets, which as you can’t tell from my open source rantings, is pretty important to me. 

I’ve also converted to a vegan diet (aside from the occasional screw up, you wouldn’t believe how much stuff has milk powder in it!) for the same reason. Less for the cute little animals and more so I don’t die in a fire.

I also get super excited about OpenAI’s efforts to build DOTA bots, which seems like a real advancement from comparatively simple games like chess or go. 
 

Jan 04 2019
Jan 04

Happy New Year to everyone! At Agiledrop we’ll remember 2018 as a year of training, mentoring and increasing our A-team. This year was a successful one in itself, but, most importantly, it set us for growth for the upcoming years. Have a look at some of our highlights in 2018.

Agiledrop turned 5 last year

In September, we celebrated the company’s 5th birthday! The history of Agiledrop dates back to our humble beginnings in 2008, when we started out as just a couple of Drupal enthusiasts.

But 2013 was the year that marked the inception of Agiledrop as the company that we know today - and, due to the ever-evolving digital landscape, we are constantly in the process of growing and improving ourselves, expanding the skillsets of our team members and providing top-notch services to our clients.

From 25 to 42 full-time employees

At the very beginning of 2018, we proudly announced that our team grew from 18 to 30 people in the previous year, this number also including contractors. With the opening of a new office in Slovenia’s second largest city, Maribor, and the increase of our team to a whopping 42 members (!), we were able to transition to working solely with full-time employees who work from one of our offices in Ljubljana or Maribor. 

Even though we operate as a remote partner to our clients, we strongly believe that developers working together in the same workspace can provide a better, much more all-inclusive service to our customers. As our motto goes: “When working with one of our developers, you also benefit from the skills of the entire team at Agiledrop.” This is why we shall continue to base our workflow on our developers sharing the same workspace.

26% revenue growth from 2017 to 2018

A huge success in 2018 was growing our revenue by as much as 26%. We managed to acquire clients from different leading countries, dividing our work pretty equally between several minor and major clients. This means we don’t have to depend on only one major client, nor on a singular market to drive our business. Because of this, we were able to achieve stability no matter the market situation.

But growth is not only measured in numbers. Let’s take a look at how our scope has evolved since 2013: we started out as a “digital agency”, then dubbed ourselves “web development agency” in 2014, adding the development of our own product ply.jobs in 2015. It was, then, 2016 that served as the turning point, when we evolved into a “Drupal agency”, only to further specify this in 2017 as “Drupal outsourcing company”. In 2018, it felt like we finally found our calling as “partners to Drupal agencies” - but, the market and the business demand adaptability, so, we’re staying flexible and redefining our focus again. 

Our plans for 2019 are to expand the scope of our services, providing development teams with reliable and proven developers who work alongside their in-house developers as their teammates. 

Drupal courses, internal training and mentoring

In the introduction, we mentioned that 2018 will remain in our hearts as the year of training and mentoring. This comprises the very effective onboarding program for all our newly employed developers, who learn the tricks of the trade through an in-house onboarding project under the supervision of their mentors (if you want to know more about our workflow, you can read about it here). 

But we’ve also dedicated ourselves to helping aspiring coders become fully-fledged Drupal developers - we’re talking about the Drupal courses that we’ve been organizing for the second year now. In 2018, we organized 4 of these courses, one of them being run for the first time in our newly-established Maribor office. And we’re very happy to say that some of the attendants actually went on to join our team as full-time employees!

Giving back to the community

Even though we were busy with all of our ongoing projects and investing into our new employees to help them become Drupal superheroes, we still found the time to contribute to the community. Besides training new developers through our Drupal courses and participating at 6 Drupal events, we also contributed to Drupal core issues with 125 issue credits, ranking on page 1 of the list of several thousand companies contributing to Drupal.

This is only the beginning

We can’t wait to see what 2019 will bring for our company as well as for the Drupal community as a whole. We’re already looking forward to overcoming new challenges and growing as a team. We wish everyone a successful and engaging new year!


 

Dec 24 2018
Dec 24

We want to get you better acquainted with the kind of company Agiledrop is, the practices we employ and the team spirit we cultivate. So, we’ve decided to start a series of blog posts that tell the story of how the company has managed to make a name for itself and form a team that major global agencies can trust and depend upon. 

In the first post of the series, we got you familiar with our workflow and the advantages it has brought for our team as well as for our clients. But defining the workflow of your business is not all sunshine and rainbows, especially if your goal is to be on the cutting edge in your field.

So, as promised in the first chapter, the second post of the series will take a look at the major challenges we faced when defining a workflow as unique as ours. We’ll discuss one of them in detail and present our very efficient solution to it.

The management of a team fragmented over different projects and agencies alongside the rapid growth of the company turned out to be quite challenging. We’ve had to:

  • Establish effective training programs to deal with people’s personal and professional development,
  • Find a way to monitor and control the work of developers integrated into different agencies and managed directly by the clients and their teams,
  • Promote an environment where everybody is encouraged to share their knowledge with each other to limit the skill gaps,
  • Create a system that motivates employees and maintains a strong company culture.

The first thing we had to do was establish a process for training new employees to meet requirements needed to work as independent members of the client’s team.

All freshly recruited developers are first given an initial onboarding project which involves tasks and environments that they will need later on in their work. This helps them get familiar with the practices and modules they will be using when working on actual projects with clients.

Understanding the importance of training has led us to take our best people from their projects and assign them to take over education and knowledge-sharing among new and existing developers. These dedicated mentors are available to new members of the team throughout their onboarding, offering them support and validating their tasks.

Even with such a well organized system, the training of new employees lasted from 3 to 6 months or more; but, in order to provide our customers with experienced Drupal developers, we had to find suitable long-term projects where they could improve their knowledge and skills to the level where we were confident they would meet all the expectations of our clients.

Besides onboarding new team members, the process of improving the knowledge of existing developers is constantly in progress and Agiledrop's investment in education is quite substantial. This helps us maintain the high standards we have set and it has proved to be crucial to maintaining a strong company culture based on personal growth and professional development.

One of the most prominent advantages of our investment in training and education is maintaining top-notch results despite the number of developers increasing rapidly. This has a double positive effect: the clients are satisfied and the developers are able to take pride in their work.

Of course, this was not the only challenge we had to deal with, as pointed out earlier. The next post of this series will talk about ensuring the long-term satisfaction of our clients by continuously involving ourselves in the projects and helping with their maintenance even after their launch. 

Check back early next year for chapter 3 of Agiledrop’s story!
 

Dec 20 2018
Dec 20

First one up is a post that is concerned with an unpatched Drupal vulnerability. In this post, Lindsay O'Donnell of Threatpost reveals how the bug dubbed Drupalgeddon 2 was exploited in a cryptojacking attack that targeted a Make-A-Wish Foundation site and likely a number of other sites as well. Apparently, hackers were successfully leveraging this bug along with an unpatched instance of the Drupal publishing platform to mine the Monero cryptocurrency. 

Next up is Aleksi Peebles’ blog post about Drupal's Layout Initiative and component based theming. He explores the notion of an alternative non-visual UI for Layout Builder, while also reminding that experimental core modules should be limited to experimentation and not find their way into production.

Moving on, we have an extensive post by Hook 42's Ryan Bateman which is in fact a kind of GatsbyJS tutorial for Drupalers. It is intended for people who are already familiar with Drupal, but want to see how GatsbyJS can help with decoupling their Drupal site. It even has a super-short React tutorial hiding within it! (But you’ll most likely need some prior knowledge of React to be able to follow the entire tutorial.)

The fourth blog post that was the most memorable is Samuel Mortenson’s presentation of Tome, a static site generator for Drupal 8. He delves into the challenges he faced while creating Tome’s beta version, from finding his niche to realizing he needs to cater to diverse audiences. He concludes the post with a list of issues he still has to take into account going forward.

The next post we’d like to point out is the introduction of the Drupal Governance Task Force 2018 Proposal by Adam Bergstein, also known as nerdstein, of Hook 42. Due to Drupal’s increasing success, some level of governance is necessary to ensure a sustainable future for Drupal. According to Adam and other members of the Governance Task Force, there are two crucial things to establish: a new community governance structure and a framework for community evolution. 

We continue with Dries’ thoughts on the end of PHP 5. The godfather of Drupal urges everyone who has not yet upgraded from PHP 5 to do so as soon as possible, as security support for the outdated version will cease with 2019. Not beating around the bush, he concludes by thanking both the PHP and the Drupal communities for all the hard work they’ve been doing.

This next post was again written by Dries. It explains how Paychex used Drupal to double its traffic and managed to beat their launch goals. With the help of Acquia, the payroll services company replatformed on Drupal and beat its original launch goal by a long shot. As a bonus, the post also includes a Q&A video with Paychex’s digital marketing manager, Erica Bizzari.

We’re finishing November’s list with a blog post by Suzanne Dergacheva, co-founder of Evolving Web. Together with a group within the Drupal community, Suzanne has been working on researching ways to improve the user experience of Drupal content editors. In her post, she relates the results of the thorough study on content editors’ interaction with different CMS.

Well, that’s it for our selection of November’s blog posts. Not to worry, though - we’ll be collecting the top posts for December as well. :) So, stay tuned and enjoy the holidays!
 

Dec 17 2018
Dec 17

Agiledrop is highlighting active Drupal community members through a series of interviews. Now you get a chance to learn more about the people behind Drupal projects. 

Meet Kevin Kaland, perhaps more easily recognized by his Twitter handle wizonesolutions, the digital wizard responsible for the FillPDF module. In this interview, he talks about his first interactions with Drupal and reveals his thoughts on the future of Drupal as a decoupled system. 

1. Please tell us a little about yourself. How do you participate in the Drupal community and what do you do professionally?

I’m originally from the US, but I’ve been living in Europe (Norway and Slovenia) for the past 6 years.

I maintain the FillPDF module and run an associated software-as-a-service business called FillPDF Service.

Professionally, I’m a software developer. I develop and maintain websites, usually with Drupal.

2. When did you first come across Drupal? What convinced you to stay, the software or the community, and why?

I first encountered Drupal when volunteering on a nonprofit’s web team. I got familiar with it, and when I started WizOne Solutions, I did a good amount of work with it. I didn’t get involved in the community until Autumn 2010, a little over a year after. The community was welcoming enough that I began attending meetups and conferences regularly.

3. What impact has Drupal made on you? Is there a particular moment you remember?

Learning Drupal 8 was fairly difficult at first, but I was impressed that the community managed to release it. It took a long time to come out.

4. How do you explain what Drupal is to other, non-Drupal people?

I usually avoid trying, haha. But seriously, if they don’t know what it is, I just describe it as a tool for making websites.

5. How did you see Drupal evolving over the years? What do you think the future will bring?

It’s always hard to say. I have a couple thoughts, though:

  • It will become more and more of a content administration backend coupled with single-page applications on the user-facing side that simply exchange data with Drupal. This is typically called “decoupled Drupal.”
  • If the Promote Drupal initiative is successful, it will be marketed as compliant with legal accessibility guidelines.
  • As ready-made Drupal distributions become better, it will become faster to build effective sites.

6. What are some of the contributions to open source code or to the community that you are most proud of?

Code-wise, the FillPDF module :) the Drupal 8 version was released on the same day Drupal 8 came out.

Community-wise, probably my DrupalCon Vienna session. It was my first DrupalCon session, and it went alright. I also made a diagram for it that is now in the Drupal Commerce migration docs.

7. Is there an initiative or a project in Drupal space that you would like to promote or highlight?

The Promote Drupal initiative! Everything else is dependent on there being enough Drupal projects to pay the bills!

8. Is there anything else that excites you beyond Drupal? Either a new technology or a personal endeavorment. 

I like traveling, hiking, and learning languages. I’m currently studying Romanian on Duolingo in preparation for DrupalDevDays Transylvania.

Dec 14 2018
Dec 14

We want to get you better acquainted with the kind of company Agiledrop is, the practices we employ and the team spirit we cultivate. So, we’ve decided to start a series of blog posts that tell the story of how the company has managed to make a name for itself and form a team that major global agencies can trust and depend upon. 

In the first post of the series, we’ll present our workflow and the advantages such an approach brings, both in producing satisfied clients and in motivating our team to help each of us with our personal and professional growth.
 

The nature of the work at Agiledrop dictates a different approach to resource management. With the help of online tools and at least 2 hours of overlap for daily standup meetings, we have been working successfully with customers from all over the world.

Our clients are mostly Drupal agencies who need to expand their existing teams with experienced Drupal developers or agencies who don’t have their own development department but would like to manage their projects entirely in-house. 

After onboarding, our developers adopt the client’s best practices, tools and workflows. They are present at meetings and daily standups, and work alongside existing teams while being entirely managed by the client’s project managers. As such, they essentially become members of the client’s team for the duration of the project. 
 

What This Means for Our Team ...

The opportunity to work on a variety of projects with teams from all over the world helps our employees with their personal growth and development. It emphasizes their knowledge, experiences, confidence, and, most importantly, it helps them grow professionally.

They have the opportunity to encounter environments with a variety of different workflows, practices and skill sets, and the chance to work with people outside our company makes their work interesting and never boring or monotonous.
 

… And for Our Clients

From the clients’ perspective, they are able to fulfill their resource capacities at any given time without a long and costly recruitment process, which means the pipeline for new projects can be more adaptive. 

The stress typically caused by catching deadlines or by unpredictable events, such as sick leaves of your in-house developers, can be managed more easily or even eliminated entirely. 

Most importantly, the clients can always rely on the collective knowledge and skill sets of the entire Agiledrop team working side by side with the developer they’ve hired.
 

Granted, such an approach is not without its unique challenges. In the next post of the series, we’ll deal with the first major obstacle that arose from our desire to provide only the best for our employees and our clients, and how we managed to very efficiently solve it, even turning it to our advantage. 

Be sure to check back for the next chapter of the series!
 

Dec 11 2018
Dec 11

Drupal 8 brought along with it many notable features which have made it easier to use and develop for the platform. One such feature was the incorporation of RESTful web services in Drupal 8 core for API calls. Using RESTful web services, a host of possibilities for customization of the platform open up; not to mention that these web services are the underlying principles which enable the concept of ‘headless Drupal’. In this post, I’ll start by performing a very basic Drupal function using these web services, i.e. creating a node.

Enable Modules

Start by enabling the following 4 core modules in Drupal:

  • HAL;
  • HTTP Basic Authentication;
  • RESTful Web Services;
  • Serialization.

Download the REST UI module as well, since it allows changing permissions and settings through a simple GUI, negating the need to go into the rest.settings.yml file in order to do the same changes.

Create User and Set Permissions

I’m now going to create a new authenticated user for the site. I’ll be doing this to teach you the kind of permissions that need to be set. Note that if you log in as an admin, all the following permissions will already be enabled.

Now, create a new user and navigate to admin/configuration/web services/REST. Click edit for the content row, since that’s what we will be doing in this article, and then set the permissions as shown in the screenshot below:

Now I’ll set proper permissions for our new authenticated user in order to let the user create, edit and delete content. I do this by navigating to admin/people/permissions. Set the following permissions:

  • Basic Page: Create new content
  • Basic Page: Delete own content
  • Basic Page: Edit own content

Get User’s Token

Before we start creating a node, we need to get our new user’s token in order to pass authentication. This can be done by testing API calls. For testing API calls, I’ll use the Restlet Client – Rest API Testing extension for Chrome. Of course, if you prefer some other method, feel free to use that one instead. 

Now, to test my API calls and get the new user’s token, I’ll first log out of my site as an admin and log in with the new user account. Now, I’ll simply copy the URL of my site, add rest/session/token at the end of it and paste it in the Restlet client’s URL field. Next, I’ll select the ‘GET’ method from the dropdown and send the URL to get the token from the body field. Here’s a screenshot from an earlier call:

Create Node and Test API Call

Now that I’ve got my unique token, I can start creating a node. To do so, the POST method is used to POST the entity/node, and the content-type should be set to application/hal+json. The title and type fields should be declared in the body field like this:

{

 “_links”:{

   “type”:{

     “href”:”http://example.com/rest/type/node/page

   }

 },

 “title”:[

   {

   “value”:”My first page”

   }

   ]

}

The following headers have to be added for this call:
Content-Type : application/hal+json
X-CSRF-Token : ‘The token that we got from the previous step.’

Click ‘Add authorization’ and enter the credentials of the authenticated user to add authentication if required.

This is what it should look like before firing the API call:

Next, go to your Drupal site and navigate to admin/content. Check to see if the node you created is visible on your site. If it’s there, your API call works.

Conclusion

That’s it! You’ve successfully created your first Drupal node using RESTful web services. Note that this is a very basic function of RESTful web services intended to give a demo of the feature.

Having trouble with your Drupal project? Stuck with customizing your Drupal site to your own liking? Lay aside your worries and hand them over to us at Agiledrop. 
 

Dec 07 2018
Dec 07

We’ve collected all of our blog posts from November 2018 to make them even more easily accessible to you! Check them out below.

Our first post from November was a detailed, step-by-step description of creating custom blocks in Drupal 8. It explains what ‘blocks’ are and provides the reader with thorough instructions for both creating blocks through Drupal’s own GUI and for doing it programmatically. Since blocks are a key component of a Drupal site, this post is a useful read for anyone who is just now getting familiar with Drupal as well as for those more experienced developers.

The next blog post was an interview with Agaric’s David Valdez. In this interview, he talks about his mixed early experiences with Drupal and presents Drutopia, Agaric’s project for nonprofits and other low-budget groups. To him, Drupal presented the perfect opportunity to learn a ton of new things, which made him eager to give back to the community. Discover what motivated him to become an active member of the Drupal community and which contributions he is proudest of.

The interview with Adam Bergstein aka Nerdstein provides a very personal aspect, which makes it extremely easy for the reader to relate to him. You can truly feel his passion and get genuinely excited reading about his achievements, and you can’t help but smile at his honest display of love when he talks about his family. In his view, Drupal core should put a greater emphasis on stability than on adding new features. He believes the future of Drupal depends as much on the community as it does on the technology and invites anyone interested in participating in his projects to reach out to him. 

Last but not least came our interview with John Piccozi, co-host of the weekly podcast Talking Drupal. As the Senior Drupal Architect at Oomph, he’s known in the company as the  resident Drupal enthusiast. He kicks things off with an impressive roster of Drupal projects that he’s currently involved in or that he’s worked on in the past, and spices things up with a personal anecdote or two. He concludes with a powerful quote by American scientist Margaret Mead that feels like it was written specifically about the Drupal community. Curious about what it is? Read the interview and you’ll see for yourself!

Well, that’s it for our November blog posts. Keep checking back to never miss an update or a new post!
 

Nov 28 2018
Nov 28

Meet John Piccozi, co-host of the weekly podcast Talking Drupal and co-organizer of the Drupal Providence Meetup and the New England Drupal Camp. John met with Drupal about 10 years ago, and he is looking forward to what will the next 10 years bring.

1. Please tell us a little about yourself. How do you participate in the Drupal community and what do you do professionally?

I’m an Acquia-certified Site Builder, Drupal podcaster, and co-organizer of a camp and meetup. I’m the Senior Drupal Architect at Oomph, my claim to fame is being our resident Drupal enthusiast. It's important to me that Oomph be part of the Drupal community here, and at-large, in every way we can. Sharing knowledge, staying curious, and trying new things is definitely the name of the game. My Drupal work includes projects for CVS Caremark, Leica Geosystems, Blue Cross Blue Shield, and Marriott International. I am a co-organizer of the Drupal Providence Meetup and the New England Drupal Camp. I also co-host the weekly Talking Drupal podcast with Stephen Cross, and Nic Laflin.

2. When did you first came across Drupal? What convinced you to stay, software or the community, and why?

Neither, it was my job. Shortly after graduating college I worked for a company that was “building websites”. I put this in quotes because I knew nothing of Drupal or it’s capabilities at the time, I thought I was going to be coding HTML and CSS. After getting hired, I was told they used this content management system called Drupal. At that point it was “sink or swim”. Luckily, Mark Ferree (our senior developer at the time) was an amazing mentor and Drupal coach. After getting a few sites under my belt I was hooked. In looking back at that experience, I would say it was both the software (not having to build it from the ground up) and the community. Fun fact: I worked with Oomph’s current Director of Engineering, Rob Aubin, at that job, pretty sure it was his first interaction with Drupal too!

3. What impact has Drupal made on you? Is there a particular moment you remember?

I would have to say my first real exposure to the Drupal Community made a huge impact on me. I remember it like it was yesterday. It was DrupalCon Austin and, unlike more recent DrupalCon’s, travelling with members of the Oomph team, I was flying solo. Lucky for me, I was in a city full of fellow Drupalers and a friend (and former boss) Jason Pamental. I reached out to Jason and he quickly filled me in on all of the social events happening after sessions. He introduced me to people I had only heard about or talked with in the issue queue. We went to the various social events and he even brought me to a few invite only events. It was a whirlwind trip and the experience has stuck with me all these years. So much so that I have been to DrupalCon every year since I made that first trek to Austin and every year it’s amazing to reunite with Drupal Friends and learn from the community.

4. How do you explain what Drupal is to other, non-Drupal people?

Well, most of the time when people ask me what I do, I tell them I’m a Web Developer. Sometimes when I wear one of my many Drupal shirts, someone will ask “What is Drupal?” to which I will tell them it’s a Content management system for their website. Usually, I will get some confused faces, but once in a while someone’s eyes will light up and they will want to know more. I’ll never forget once being in a mall in Massachusetts, going up an escalator, and someone on the opposite escalator said “Nice Shirt.” I nodded and didn’t think much of it at the time. A few minutes later I realized what the person said and what shirt I was wearing (a Drupal shirt of course). It brought a smile to my face. Drupal Rocks!

5. How did you see Drupal evolving over the years? What do you think the future will bring?

Drupal has evolved greatly in my 10+ years working with it. I started on Drupal 4.7 with Ubercart and saw the release of Drupal 6. More memorable was Oomphs Drupal 7 release party. I remember being excited for the release of Drupal 7 and the improvements that brought. However, all of that excitement and improvement pales to now working on Drupal 8.6 with Commerce 2.x, Core Translations, and the newly added Configuration Management system in core. With the release of Drupal 8 and a firm and frequent release schedule, Drupal keeps improving year after year. Like a fine wine, Drupal gets better with age. I look forward to the coming releases, a finished media system, layout builder, and improvements to the core. Drupal’s future is bright and I look forward to the next 10+ years!

6. What are some of the contribution to open source code or community that you are most proud of?

I found a core bug last week, that was pretty cool! I spoke at DrupalCon for the first time in Nashville. I co-founded and co-organize the New England Drupal Camp, which is a camp that aims to bring the New England Drupal community together in one place each year. I also co-organize the Providence Drupal Meetup each month at the Oomph, Inc. offices. Oomph is working on a helper module for Paragraphs called Oomph Paragraphs. It’s all pretty exciting and keeps me coming back for more!

7. Is there an initiative or a project in the Drupal space that you would like to promote or highlight?

Well, I work with commerce and translation quite a bit. The advances to those two systems in Drupal 8 has been amazing. I’m looking forward to kicking off a project with the commerce guys in the next few weeks. I have a feeling that will lead to some enhancements to commerce 2.x. On Talking Drupal we talked to many maintainers and co-maintainers in the Drupal community. Recently we talked with  Adam, one of the co-maintainers of the media initiative. In the last few weeks, I have been excited about the improvements to that system over Drupal 7. I also think that the work Jacob Rockowitz is doing, maintaining the Webform module, is inspiring. He is providing great documentation and training, as well as frequent updates to the module. So many cool projects and initiatives in the Drupal space, I couldn’t possibly name them all. 

8. Is there anything else that excites you beyond Drupal? Either a new technology or a personal endeavorment.

Watching my kids grow and learn is very exciting. My oldest just turned 6 and is turning into a very skilled Lego architect, as well as a soccer star. Then his brother (my one and a half-year-old) is just learning to walk and has some choice words he likes to use – “More More!”. In the tech space, I think we are moving ahead with some very interesting ideas and technology. The internet of things is always amazing to me. The new Apple watch has got me thinking it’s time to replace my analog version. The idea of wearables is great. I am really looking for Apple to come out with glasses. As a lifelong wearer of glasses. It would be amazing to have Siri, headphones, and a phone built into the glasses I wear every day.

In closing when thinking about the Drupal community and answering these questions. This quote from American Scientist Margaret Mead kept coming to mind. I leave you with this: “Never doubt that a small group of thoughtful, committed citizens can change the world; indeed, it's the only thing that ever has.”.
 

Nov 26 2018
Nov 26

We’ve gathered all the blog posts we’ve written in October 2018, take a look. 

The first blog post was Tips to Speed Up Your Drupal Site. While Drupal isn’t considered a slouch when it comes to performance out of the box, there are some factors which can slow it down and some basic practices which everyone should implement, in order to squeeze more speed out of their Drupal sites. In this post, we highlighted some tips which can help to speed up your Drupal site. 

The second was an interview Jonathan Hedstrom: Drupal is like Lego for adult professionals. He tells us what he thinks has been the biggest evolution for Drupal, what contribution is he the proudest of and what he thinks is the most important about Drupal today.

We continued with a blog post Drupal events in the 4th quarter of the year 2018. We've made a list of Drupal camps and summits that you can attend in the last quarter of this year. There are still a few left until the end of a year.

The fourth blog post was interview Janne Kalliola: Organising CEO dinners, Drupal Business surveys and local and regional DrupalCamps. Janne does not code, but he is a very active Drupal community contributor. Read about CEO dinners he helps to organize, and what would he be working on, if he had an extra day between Thursday and Friday.

The next one was Agiledrop presenting Drupal at the Faculty of Computer Science. We’ve organised a Drupal meetup in Maribor (the second largest town in Slovenia, where Agiledrop has the second office) in cooperation with Student Council of Faculty of Electrical Engineering and Computer Science in Maribor. As a member of Drupal Slovenia, we organised two presentations and sponsored a reception with networking after the event. The event was well received, as was attended by more than 50 people, mostly students of the faculty, interested in starting their career in web development and Drupal. This blog post sums up what those two lecturers were about. 

The last one was Top Tips for Aspiring Drupal Developers. If you’ve decided to join the Drupal community and want to know what are some development tips you should know beforehand, we went through some things you should be familiar with, to get started on your Drupal journey.


Those were our blog posts from October 2018. Looking forward to continuing having you as a reader! 
 

Nov 12 2018
Nov 12

Agiledrop is highlighting active Drupal community members through a series of interviews.

Adam Bergstein is the maintainer of SimplyTest.me, runs the Drupal Coffee Exchange and participates in the Governance Task Force that just released its community proposal. Learn how Adam, aka Nerdstein, feels about Drupal 8 core development.
 

1. Please tell us a little about yourself. How do you participate in the Drupal community and what do you do professionally?

I go by [the nick name] Nerdstein and have been a part of the Drupal community for quite some time. My main contributions are porting/supporting Drupal 8 modules, giving talks at events, maintaining SimplyTest.me, running the Drupal Coffee Exchange and recently participating in the Governance Task Force.

I live in the United States with my wife and two daughters, whom I adore. I currently serve as the VP of Engineering for Hook 42 but had previous roles at CivicActions, Acquia and Penn State University. I have a masters in Information Security, and love working with teams, mentoring/enablement, architecture, security, Agile and DevOps.

2. When did you first came across Drupal? What convinced you to stay, software or the community, and why?

I started looking at Drupal during an evaluation of a project. This was right around the time that the business/agency ecosystem was just starting to take shape. While I was a bit intimidated by all of the new terminology and my lack of understanding open source communities, we selected Drupal. A vendor and I were impressed by how much progress was able to be made thanks to both core and contrib. 

While that piqued my interest, it still took me a long time to understand the community and to contribute. I attended Drupaldelphia back in 2014. I learned a lot, made several community connections, and really enjoyed it. At that point, I knew I wanted to participate and got the confidence to do so. 

I’ve always valued both, the people and the efforts of our vast community. We have some incredibly unique, fun and talented people that contribute in meaningful ways. I’m routinely impressed by how we face and solve hard problems. There is an incredible impact when we add up our collective efforts. I look at what we do each day and I’m proud to even have a small part in it.

3. What impact has Drupal made on you? Is there a particular moment you remember?

It’s made a huge impact. It’s allowed me to grow professionally and provide for my family. All of this while maintaining a feeling that I’m serving clients and for a greater good through the community efforts.

I remember the moment I went to Boston to the interview with Acquia, which was my first Drupal-centric position. I had not travelled much professionally, rarely attended community events, and generally had a sense of imposter syndrome (I shouldn’t even be here, sort of thing). I was surprised at how relevant my Drupal experience was, and knew this was the start of something much larger. 

4. How do you explain what Drupal is to other, non-Drupal people?

Basically a bunch of really cool people building technology together. People are shocked to learn how a significant number of (mostly) volunteers across the globe are able to come together to build software that is widely adopted. It seems a bit far-fetched at first, but I think people understand there is something larger and impactful happening in our community. I often compare this to proprietary efforts, like Microsoft, and the analogy is better understood. 

5. How did you see Drupal evolving over the years? What do you think the future will bring?

I actually have a blog post I’ve been drafting for several months on this very topic. I feel like we need to evolve both, the technology and our community. It is non-trivial to answer, and I need to state that this is my opinion. 

Technically speaking, I’d like to see Drupal core slow down on adding new features and focus on stability. The recent additions of Unami, media, layout builder and a stable migrate is incredibly impactful for Drupal as a product. I’d much prefer if we pause, reflect on what we’ve learned and polish what we have. Prioritizing and resolving already known open issues would stabilize Drupal and clean up a lot of the small things people find frustrating. The initiative around Composer-related improvements is a great example of something we learned and need to prioritize. And I sense there is a lot we can clean up in the core, like View Modes and the Block system, that could be incrementally improved to promote usability and consistency between features.

Community-wise, I would simply reference the proposal we have now released from the Governance Task Force. We proposed recommendations to several aspects of the community. A lot of work and deliberation went into the recommendations, and do a much better job communicating them than I ever could myself. 

6. What are some of the contribution to open source code or community that you are most proud of?

I am very proud of the opportunity I had to serve on the Governance Task Force. I see so much potential to help the community from the work done by the task force. I was so overwhelmingly impressed by my peers on the task force. It was a dream team of some of the most thoughtful, smart and easy-to-work-with individuals I’ve ever collaborated with. 

7. Is there an initiative or a project in Drupal space that you would like to promote or highlight?

I’ll take the time to highlight three things and would ask anyone who is interested in participating to reach out to me.

  1. SimplyTest.me will be going through some technical modernization that includes a new Drupal 8 front-end and the underlying tools that provision instances.
  2. We’re expanding the Drupal Coffee Exchange to better support international audiences. If you and others in your country enjoy coffee, please sign up! It’s a lot of fun for people.
  3. As part of the Governance Task Force, we publicly released a proposal and created issues for an open commentary period for the community. Get involved. You may have better ideas to contribute or be able to provide additional context to help move the efforts forward. 

8. Is there anything else that excites you beyond Drupal? Either a new technology or a personal endeavorment. 

I always rave about my two beautiful kids, my love for craft beer and my foodie tendencies. But lately, I have been trying to prioritize my physical health by running. Over the last two years, I have participated in over ten races and very recently was able to run a ten-mile run (~15K). For several years I focused on my education, jobs and family needs, while my physical health was not as good as it should have been. I have enjoyed running routinely and shocked by how much it helps relieves stress, gives me some fresh air and helps me remain balanced.
 

Nov 09 2018
Nov 09

First one on the list is Why I am one of the top contributors to Drupal? by Jacob Rockowitz. This blog post was inspired by Dries’ annual Who sponsors Drupal development? (2017-2018 edition) report. Jacob is one of the developers, who contributes the most to the Drupal community. In this blog post, he wants to go a little bit further from the question, who contributes the most - he is answering why is he contributing to Drupal. 

We continue our list with a blog post How Marketers can Benefit from Drupal 8 by Tim Cruse from Duo Consulting. Tim explains that we are witnessing increasing interest in Drupal 8, especially from the marketing department, and that is with a good reason. In this blog post, he looks at the facts that make Drupal so valuable to marketers. 

The third spot is reserved for a blog post Decoupled Drupal Authentication with OAuth 2.0 by Preston So, Director of Research and Innovation of Acquia. Preston explains that the most critical component of the decoupled Drupal architecture is a robust authentication mechanism that protects data transmitted between a Drupal site and API consumers. Drupal contributed ecosystem contains several highly useful modules that leverage more recent authentication standards, like OAuth 2.0, at which he takes a closer look in this blog post. 

Let’s continue with Drupal Strategies: Landing Pages by Cindy McCourt from Promet Source. In this blog post, Cindy looks at five recipes for building landing pages in Drupal: Node page, Node Plus View Block, A View Page Plus a Block, Panel Page and Custom Theme Page, and for each, she is answering how and why.

Our fifth choice is How we are improving Drupal's configuration management system by Dries Buytaert. He explains that configuration management is an important feature of any modern content management system. What will the future bring for Drupal in that area?

The sixth blog post we would like to highlight is End to End Testing With Drupal and Cypress by Edward Allison from Sevaa Group. At Sevaas they started to use Cypress to handle End to End tests for their Drupal sites. The experience was great, thus the process has not been complete without hurdles, therefore Ed finds a few concepts that have been helpful specifically for Drupal sites, he is walking us through. 

The next one is 9 Drupal Websites that Change the World by Vergiliu Hachi from Sooperthemes. In this article they talk about some of the world’s biggest organizations and NGOs who are dedicated to making the world a better place - NASA, Tesla, Doctors without Borders etc. Besides changing the world, all these websites have another thing in common: they all use Drupal.

And the last but not least is a blog post Atomic Design in Drupal with GraphQL & Twig - Webinar Recap, the recap of Philipp Melabs webinar by Daniel Lemon, both from Amazee Labs. Daniel gives us an insight of the webinar, where Philipps focus on building a real-world example website for a fictional web agency called Amazing Apps.

These are our top blogs from October… We will be collecting best Drupal blog posts in November too. Stay tuned.


 

Nov 06 2018
Nov 06

Agiledrop is highlighting active Drupal community members through a series of interviews. Learn who are the people behind Drupal projects.

This week we talked with David Valdez. Read about what impact Drupal made on him, what contribution is he the proudest of and what Drutopia is.

1. Please tell us a little about yourself. How do you participate in the Drupal community and what do you do professionally?

I’ve been doing web development for fourteen years and Drupal the last eight.

I currently work for Agaric which is a worker-owned cooperative. This allows us to make decisions about the cooperative democratically. Equally important is that we support one another, not just professionally but personally as well. 

Agaric is involved in several Drupal Projects, including Drupal Training Days, Sprint Weekends, and other local events. You can learn more here

2. When did you first came across Drupal? What convinced you to stay, software or the community, and why?

The first time I used Drupal, I faced the well known steep learning curve. In the beginning, I disliked how difficult the CMS seemed, but later when I started to understand why things were done the way they are, I began to appreciate all the cool things you can do with it, how well thought the subsystems were and how Drupal dramatically improves between one version to the next.

And later, when I had questions about specific problems or bugs, I found many talented people working on the project and giving support. It was amazing and I felt motivated to also contribute back to the community. In this way, I learned a ton of new things, and at the same time, I was helping other people.

3. What impact Drupal made on you? Is there a particular moment you remember?

Drupal gave a new direction to my career. At the time I was working on several different technologies and frameworks. Drupal motivated me to become a specialist, so I left my job and sought out an opportunity to work in a Drupal shop, where I could spend more time improving my Drupal skills.

Having that in mind, I travelled to DrupalCon Austin at 2014 (it was my first time in the USA), and I was convinced, that I wanted to work in a Drupal shop to be more involved in the project.

4. How do you explain what Drupal is to other, non-Drupal people?

Firstly, I usually try to explain what Free Software is about, how this allows projects like Drupal to become so good and how it helps many people.

5. How did you see Drupal evolving over the years? What do you think the future will bring?

Drupal has always been considered as a Content Management Framework, and I believe Drupal 8 is following this path to become one of the most solid options to build any project.

6. What are some of the contribution to open source code or community that you are most proud of?

There are a few contributions at the Core which allowed me to interact in the whole process to fix a bug on Drupal 8. 

For instance, at Drupal 8.1 the permalinks were broken on the comments, so I helped to write the patch, discuss changes and wrote the tests, to make sure this bug won’t happen again. 

I learned by reading the feedback from other, more experienced developers, and at the same time, I understood how Drupal works (at least in the parts related to the bug).

The same happened with a bug in the migrations and the REST module.

And learning from those issues helped me to contribute in fixing other smaller core bugs and fixing bugs in a several contributed modules, from porting small modules as Image Resize Filter, to contribute to well-known modules as Migrate Plus.

7. Is there an initiative or a project in Drupal space that you would like to promote or highlight?

Yes, we at Agaric have been working on Drutopia (https://www.drutopia.org), which is a series of Drupal distributions for nonprofits and other low-budget groups. 

8. Is there anything else that excites you beyond Drupal? Either a new technology or a personal endeavorment. 

I live in Mexico and I’m a member of a PHP Group (https://phpmexico.mx), where we talk about good practices, help each other improve our skills and keep informed of other cool technologies. 
 

Nov 02 2018
Nov 02

‘Blocks’ in Drupal are pieces of content that can be placed anywhere throughout the site. They are an integral part of Drupal and the way it displays information. While Drupal has a variety of useful blocks out of the box for most scenarios, there might be times when custom blocks are required. That is what I’ll be addressing in this post, by going through how to create a custom block in Drupal 8.

There are two ways in which you can create a custom block:

  • Through Drupal’s own GUI, or
  • Programmatically.

Via Drupal GUI

This method is pretty straightforward and easier than creating a block programmatically. However, it also is less flexible and customizable than programmatically creating a block.

  • Go to admin -> structure -> block layout -> custom block library.
  • Click ‘block types’ tab. Once here, click on the ‘Add custom block type’ button.
  • Enter block label and description.
  • Now, you can add fields, manage display type, manage display etc. for your custom block. Customize the block to your liking and click save.
  • Now, go back to custom block library and click the blue ‘Add custom block’ button, to add the block to your library.
  • The next step is to simply place the block into your desired region by navigating to admin -> structure -> block layout.

Programmatically Creating Block

This method requires a little more understanding of the way Drupal works, however, once you get the hang of it, it gets pretty easy.

Create a module

In Drupal 8, it is necessary to create an info.yml file that contains the metadata for every custom module, theme or plugin you create. Similarly, for our custom block, we will need to create an info.yml file in the ‘modules/custom’ directory. Note that if the custom folder isn’t already created, you will need to create it. For creating a custom block, we will need to make a custom module.

Now create an ‘info.yml’ file such as ‘custom_block_example.info.yml’. Inside this file enter following:

name: Custom Block Example
type: module
description: Define a custom block.
core: 8.x
package: Custom
dependencies:
  - block

You can now go to your Drupal dashboard and enable the custom module we have just created.

Create Class

Now, in order to define the logic of the block, we need to create a class which will be placed under the modules/custom/custom_block_example/src/Plugin/Block directory. 

The class file should contain annotation as well. The annotation allows us to identify the block. Apart from the annotation, this class will contain 4 methods:

  • build() - Returns a basic markup by rendering a renderable array.
  • blockAccess() - Defines a custom user access logic.
  • blockForm() - Defines a custom block configuration form using the Form API.
  • blockSubmit() - Used to save a configuration, defined on the blockForm() method.

Now, this is what the class file should contain in the end:

<?php

namespace Drupal\my_block_example\Plugin\Block;

use Drupal\Core\Access\AccessResult;
use Drupal\Core\Block\BlockBase;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Session\AccountInterface;

/**
 * Provides a block with a simple text.
 *
 * @Block(
 *   id = "my_block_example_block",
 *   admin_label = @Translation("My block"),
 * )
 */
class MyBlock extends BlockBase {
  /**
   * {@inheritdoc}
   */
  public function build() {
    return [
      '#markup' => $this->t('This is a simple block!'),
    ];
  }

  /**
   * {@inheritdoc}
   */
  protected function blockAccess(AccountInterface $account) {
    return AccessResult::allowedIfHasPermission($account, 'access content');
  }

  /**
   * {@inheritdoc}
   */
  public function blockForm($form, FormStateInterface $form_state) {
    $config = $this->getConfiguration();

    return $form;
  }

  /**
   * {@inheritdoc}
   */
  public function blockSubmit($form, FormStateInterface $form_state) {
    $this->configuration['my_block_settings'] = $form_state->getValue('my_block_settings');
  }
}

Now, go back to your site, and you should be able to see the block you have just created. Simply assign the block to a region of your choice and it should become visible.

Conclusion

As mentioned earlier, blocks are an integral part of a Drupal site. Learning to customize and play with the blocks in your own way can be a very useful skill.

Having trouble with customizing your Drupal site? Contact us, here at Agiledrop, and forget about having to worry about getting stuck with your Drupal site ever again.
 

Oct 29 2018
Oct 29

So, you’ve decided to join the Drupal community and want to know what are some development tips you should know beforehand? You are in the right place. Firstly, I’d like to welcome you to the most awesome development community out there.

Starting out with Drupal can be a bit daunting, after all, it is quite a bit more complex than other popular CMSs, but it’s also a lot more rewarding, powering all kinds of websites out there.

So, let’s go through what are some things you should be familiar with, to get started on your Drupal journey.

Languages

While you could create a Drupal site without any prior programming languages knowledge, to make anything more than a simple website would most probably require delving into Drupal’s back-end. For that purpose, it helps to know beforehand what technologies Drupal is using and what you’ll be dealing with. To keep this section simple, Drupal utilizes the following:

  • PHP 7 (Symfony Framework)
  • HTML5, CSS3 (Sass) and Javascript (jQuery and recently React)

Getting familiar with core PHP as well as Symfony framework plus front-end skills should get you in a pretty good position for Drupal development.

Front-end frameworks

This point ties into the point above. Read about frameworks, what they are, as well as how they are used. Frameworks are also going to become a lot more important for Drupal, due to the emergence of headless or decoupled Drupal (a concept that allows integration of various front-end technologies such as React, Angular etc. with Drupal’s back-end). This further enforces the importance of familiarity with JavaScript since all of these front-end technologies are built on it.

Twig Templating Engine

Drupal 8’s move to the Symfony framework has resulted in the Twig templating engine being used throughout. Learning Twig templating is an absolute must for any aspiring Drupal developer. The great thing about Twig templating is that it is easy to learn and use.

Command Line Interface (CLI)

Developing on Drupal will require quite a lot of time spent on Command Line Interfaces, in fact, it’s so essential that Drupal has its own CLIs, named Drush and Console. Also with tools like a Composer, you can make it a lot easier for your Drupal development efforts by learning it to get a grip with CLI.

Debugging

Ah debugging. This is an essential skill for any developer. While Drupal has a great built-in error reporting tool, there will be many scenarios where it won’t be able to catch on to problems, and that’s where your debugging skills will come in handy. Any Drupal developer worth his salt should be a good debugger. At AGILEDROP we use XDebug.

How Drupal works

Learning how Drupal works is a crucial step in your Drupal development journey. Learning the ins and outs of the CMS keeps a clear picture in your head and provides a good high-level view of what goes on behind the scenes of a Drupal site. The official Drupal site has a great in-depth section on its working.

Theming

Themes are a basic component of Drupal. They give Drupal site’s their looks and turns them from boring and bland sites to pretty and visually appealing sites. Learning how Drupal handles themes and how they are implemented should be a part of every Drupal developer's arsenal.

Version control

Version control is a form of keeping revisions for your code. This is a skill that every developer should have, regardless of the technologies they work on. Version control also acts as a gateway to collaboration with other devs and the Drupal community. As in many other open-source communities, Drupal developers mostly use Git.

Contribute to the community

Speaking of Community, Drupal is a CMS that thrives on it. Being an open-source software the community is what keeps it thriving. Drupal’s community is widely known as being one of the greatest of all open-source software. Contributing to the community doesn’t only help Drupal to grow, it also helps you to know great people while simultaneously increasing your Drupal development knowledge!

Are you starting a Drupal site and coming across hurdles? Our extensive experience with Drupal here at Agiledrop can be of great use to you! Feel free to contact us.

Pages

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