A pile of colorful Lego bricks with some of the bricks being assembled into an unfinished house. The house should be partially built, showing an incom Large.
29.02.2024
Tuukka Turu

Building Blocks of Modern Web Development – Web Components

The rapid pace of web development demands continuous innovation and efficiency. Developers are actively seeking new ways to streamline their workflow and enhance user experience. A significant step forward has been the emergence of web components. These compact and versatile elements offer developers a fresh approach to building web applications and a powerful toolkit for creating modular and maintainable user interfaces.

What are web components?

At their core, web components are a set of standardized technologies that enable developers to define their own HTML elements. Comprising three main technologies – Custom Elements, Shadow DOM, and HTML Templates – web components allow for the creation of encapsulated, reusable components that can be seamlessly integrated into almost any web application.

How are web components created?

At its simplest, custom elements can be created with Vanilla JavaScript. However, this is not the most efficient or appealing way to create components. Fortunately, there are libraries available that enable an efficient and user-friendly way to create components.

Lit.dev, supported by Google, is gaining popularity and offers an excellent starting point for developing your own components. StencilJS, developed by the Ionic organization, is another library for web component development.

Where can web components be used?

Web components can be used in many different contexts, from simple websites to complex single-page applications (SPAs). They are particularly useful in situations where modular, reusable elements are needed across different parts of an application or when building component libraries for widespread use.

Web components and design systems

Design systems have gained popularity among larger organizations, where the need for a consistent visual style across multiple services is important. Web components offer an ideal tool for their implementation.

Design systems are a collection of defined components, styles, and guidelines that enable a consistent appearance and behavior across all parts of an application.

Web components fit naturally into design systems, offering clear, modular, and easily reusable building blocks that support the correct visual style and, most importantly, are functional and accessible elements. In this way, they promote consistency and efficient design implementation in different use cases. Additionally, the use of web components allows for effortless updating and maintenance of components, making design systems more dynamic and flexible.

Why use web components?

There are several compelling reasons to adopt web components in modern web development:

  • Reusability: Web components enable the creation of reusable elements, reducing unnecessary repetition and promoting code efficiency.
  • Modularity: Encapsulating functionality in separate components allows for greater modularity, making code management and maintenance easier.
  • Compatibility: Web components are compatible with different framework and library environments, offering flexibility and compatibility in various development contexts.
  • Encapsulation: Shadow DOM ensures encapsulation, preventing style and behavior conflicts between components and the surrounding page.
  • Standardization: As a W3C standard, web components enjoy broad support in modern browsers, ensuring consistency and reliability in web development projects.

What challenges might arise?

While web components offer numerous advantages, they also come with challenges:

  • Browser support: Although support for web components is extensive, older browsers may lack full compatibility, requiring polyfills or alternative arrangements.
  • Complexity: Developing and managing web components can be complex, especially for teams not yet fully familiar with the technology.
  • Performance load: Depending on implementation, web components can cause performance load, particularly in large component counts.
  • Potential SEO challenges: Depending on the implementation approach, SEO can be a challenge. Search engine crawlers may have difficulty reading Shadow DOM elements, as they require JavaScript processing. However, this challenge can often be resolved, for example, through server-side rendering if the application architecture allows it.

Advantages and Disadvantages of Web Components

Advantages:

  • Reusability and modularity promote code efficiency.
  • Compatibility ensures application functionality across different framework and library environments.
  • Encapsulation prevents style and behavior conflicts.
  • Standardization promotes consistency and reliability.

Disadvantages:

  • Browser support may vary, requiring polyfills or alternative arrangements.
  • Development and management can be complex, especially for beginners.
  • Performance at the browser level can pose challenges in extensive setups.

This is a concise, high-level overview of web components. In the next part, we will delve deeper and examine the more technical side.

Author

Tuukka Turu

Front-end Developer
Embracing Connections at Druid and DrupalCamp 2023
17.05.2023
Sabina Halkic

Embracing Connections at Druid and DrupalCamp 2023

It has been over a year now since I started working together with Druid. Little did I know that this partnership would take me on a trip from my hometown of Ljubljana to the vibrant city of Helsinki, where I met my colleagues from Druid in person for the first time and attended the highly anticipated DrupalCamp Finland 2023. The experience was nothing short of transformative, allowing me to deepen relationships, expand my professional network, and immerse myself in the vibrant world of Drupal.

Feeling the Druid Spirit

Meeting colleagues from Druid for the first time face-to-face was an exciting experience. While we have been working together for quite some time, it was a unique experience to finally meet each other in person. We had built a strong professional relationship, but meeting in person helped to build a more personal connection that goes beyond just work. My Finnish colleagues were all friendly, accommodating and hospitable. They all made me feel very welcome.

Druid’s laid-back spirit was embodied at the office. The working environment was nice and I loved seeing the physical space that houses all the Druids. The office “no shoe” policy was awesome and there was also a cosy room filled with soft cushions, designed to provide a relaxing environment for employees to unwind and destress.

Finnish Cultural Experience

After work, my colleagues took me on a tour of the city centre. We did some sightseeing and we visited some of the top tourist attractions. My favourite was the Ferris wheel where one of the cabins was a sauna. That stood out and I remembered that I was told how much Finnish people love to go to the sauna.

I also had the pleasure of sampling some of the local cuisine, such as munkki and tippaleipä. Munkki’s sweet and fluffy texture was a true delight, while tippaleipä, though its appearance resembled a tangle of threads, surprised me by being also tasty.

DrupalCamp 2023 – A Meeting of Minds

The next day, I attended Drupal Camp Finland, which was an incredible opportunity to learn more about Drupal and meet fellow Drupalists. The event was packed with interesting presentations, and I gained new valuable insights into the field.

I also participated in the after-party – where there was of course a sauna. We were talking about the differences between Finnish and Swedish and I made some comparisons from Slovenia. My colleagues also told me how it is to live in Finland, the different cities and dialects. 

After the first after-party, we had a second after-party where we went to have some drinks. I saw some busy Helsinki nightlife and truly enjoyed myself. 

Until We Meet Again

In this age of digital communication, where virtual interactions have become the norm, there’s something uniquely special about meeting colleagues face-to-face and connecting with like-minded individuals. Thus, I am grateful for this experience. 

Finland, its culture as well as its people were unique and fascinating. I left with a greater appreciation for the country. I gained a lot of knowledge from Drupal Camp Finland, and I was able to experience a new culture and meet my colleagues. I hope to visit again soon and experience more of what Finland has to offer.

Author

Sabina Halkic

Back end developer
25.05.2021

Acquia Certification – the benefits of Drupal developer’s ultimate test

During the last year several Druids (myself included) have gotten certified by Acquia – sponsored by Druid, of course. Acquia Certification is the professional certification program for Drupal developers. Being a current benchmark in the technology, it verifies that the developer meets the standard and has an extensive expertise in the field.

I interviewed our recently certified developers, Sebastian, Markus, Robert, and Simo about their thoughts on the certification programs – Acquia Certified Developer and Acquia Certified Front End Specialist.

The Acquia Certified Developer certification is considered to be a more general exam that validates skills in the areas of Fundamental Web Concepts, Site Building, Front End Development (theming), and Back End Development (coding). The latter is more oriented on front-end technologies and the Drupal principles in this area.

Is the certification worth it?

If you ask us, the answers is yes, it’s definitely worth the effort. Everyone found the certification useful both for extending the knowledge and for demonstrating the level of expertise to customers and employers alike. Today, it’s very important to stand out in a competitive marketplace. In my view, this certification is an easy way to verify that your knowledge matches a certain standard. 

“Now I’ve got a better understanding of my stronger and weaker points,” Robert said. “This exam became a good opportunity to get the broadest view of the technology and also to identify areas where I can improve.”

Simo added: “I’ve been working with Drupal for a very long time starting with Drupal 5, then 6, 7, 8, and now Drupal 9. The preparation for the exam helped me to check out the current best practices and to get away from the old ways of writing code used in earlier versions of Drupal.” 

“This exam was more about the verification of what I actually know,” Markus said. “But it was a good experience.” Sebastian concluded that it was a good opportunity to demonstrate our proficiency to our customers. Indeed, some of our customers highly value this kind of confirmation about the level of Druid developers. 

About the exam questions

The questions were based on real work experience and thus they were relevant to daily work, which everyone thought was great. Working with a wide range of projects, you bump into different kinds of problems and should quickly come up with solutions. If you’ve solved some problem before, you can easily find the correct answer in the exam. If not, it’s a good opportunity to learn more about the subject so you know how to approach the problem when you face it.

“There were some tricky questions at first glance, but if you’re to be qualified as an expert in the field, you should know the precise answer to it,” commented Sebastian.

Simo pointed out that coding standards are quite often neglected, and the exam questions remind you about them. Markus found it important that the security related knowledge was tested thoroughly. 

Personally I like that an essential part of each Acquia exam is Fundamental Web Technologies where your knowledge of JavaScript and other underlying techs is tested.

Boost in professional development

I think the exam preparation provides you with a comprehensive overview. You start seeing the big picture and you can find out some details you might have missed or have not worked with before. It’s also some source of motivation to explore more, to step beyond the theory and apply the learnings in the code. So in that sense I think the certification can help you become a better developer. 

Both Sebastian and Robert thought that studying for the exam was probably the most beneficial part of the certification program. You can learn entirely new things. For example, I was surprised how much the Layout API and Layout Builder were improved in Drupal 9, and how much attention the Drupal community is now paying to accessibility.

“I’ve got a deeper understanding about caching systems in Drupal. Also the comprehensive study of Drupal API in general and in-depth look at backend concepts should be beneficial,” said Robert.

Markus pointed out that sometimes you’re more influenced by your peers than by any test as you learn from the actual building of the software, not from reading a book. But in both cases you promote yourself by applying new knowledge in your projects.

So if you’re into measuring your Drupal expertise…

We all definitely recommend the certification. If you’re planning to get certified, the tips from the study guides provided by Acquia come in handy. 

Basically, you have two main ways of measuring your expertise – via experience and real life projects, or via certifications. According to the guys, there are often debates over whether IT certifications have some value or not, but in this case they admit the test is useful, especially for Drupal CMS where the learning curve is quite steep. They suggest pursuing something similar for Vue or React if you’re more focused on frontend for example, as this certification is naturally mostly focused on Drupal.

“While it’s good to verify your expertise by passing the exams, you should not forget about contribution to the community which is also one way to show your knowledge,” added Markus. “If you don’t contribute that much, certification is a good way.”

The certifications themselves do not prove that you’re the most talented developer in the world, but they definitely help your career, especially if you’re just in the beginning. They’ll also help you to get noticed by big companies who pay a lot of attention to your education and certifications. Besides, it never hurts to learn something new. So, I encourage you to just go for it!

Useful links:

General information about the certification:
https://www.acquia.com/support/training-certification/acquia-certification

Study guides for Acquia Drupal certifications:
https://docs.acquia.com/certification/study-guides/

You can find our certified developers in Acquia Certification Registry:
https://certification.acquia.com/?org=druid&exam=All

DrupalCon Seattle group photo
29.05.2020

Drupal 9 is soon here – the upgrade may be a breeze or a great undertaking

A new version of the Drupal content management system will be released on June 3rd 2020. You will have to migrate to Drupal 9 by November 2021, if you are now using Drupal 8. Drupal 7, on the other hand, will have a longer transition period until November 2022. After these deadlines, support for the earlier Drupal 7 and 8 versions will cease and security updates will no longer be provided for them. What will change with the new version 9? How much work is it to upgrade the system?
 


Good news first: upgrading will be over in a jiffy if you are running an up-to-date Drupal 8 system. Basically nothing will change. For example, our site here is already running on a beta version of Drupal 9, and the upgrade was done in essentially no time at all. However, every case will not be as straightforward, and especially Drupal 7 based websites will be in for quite an undertaking.

Drupal 8 upgrades easily and without risk

There’s no denying that many of Drupal’s previous major version upgrades have been quite laborious and even somewhat tricky, requiring a complete website overhaul from a technical standpoint.

But now everything is different. This time Drupal hasn’t been completely reinvented, and the version upgrade promises to be the easiest in a decade – provided that your web service is running the latest Drupal 8 version, since Drupal 9 is not that different from it.

From a technical standpoint, Drupal 9 is like the last version of Drupal 8, with deprecated code cleaned out and dependencies for third party systems updated. The migration is likely to be simple and smooth with no need for large overhauls for your website.

A basic web site upgrade to Drupal 9 will take next to no time, as long as the site is up to date and doesn’t use obsolete modules or APIs. If your site uses additional modules, it must be first checked whether they are ready to upgrade. Also custom code should be checked beforehand.

What if you are still running Drupal 7?

Long story short: this is the time you should start considering and planning a website overhaul, since you will be in for quite a big project with a deadline looming on November 28th 2022 when the support for Drupal 7 ceases.

Drupal 7 is still widely used, but updating to version 9 will inevitable be a much more complicated affair, or at least more laborious. The technology of Drupal 7 websites will have to be completely overhauled to be able to migrate to version 9, since the technological changes between versions 7 and 8 were so substantial.

The good news is, however, that in all likelihood this will be the last big migration that your web service will ever need.

This is because Drupal’s product development has shifted from a rather heavy project based model to a more modern and agile continuous development process: instead of tearing down and reintroducing the whole system every few years, new features and improvements will now be released in a faster cycle and with less upgrade effort.

Why should you upgrade to Drupal 9 now rather than later?

Feature-wise, Drupal 9 is a match for Drupal 8. Its purpose is to offer as effortless a migration from Drupal 8 as possible, with revisions done under the hood only to enable security support from November 2021 onwards. That means no hurry, right?

Well, there shouldn’t be a need to panic just yet, but we strongly advise you to upgrade as soon as possible, because, going forward, new features and improvements will be released twice a year through smaller updates. The next such update, Drupal 9.1.0, has been scheduled for release in December this year.

For example, the modernization of the admin interface is on its final stretch at the moment. It will introduce improvements to site administration and content management. When you upgrade your web service to Drupal 9 early on, you will be at the forefront of the system’s development cycle and will be able to reap the benefits of the continuous development process.

We can help you upgrade your Drupal system

We are among the top Drupal experts in Finland, and we know Drupal inside and out. Contact us – we’ll see what it will take to upgrade your web service to the new Drupal 9 version.

With our clients we have already gone through their upgrade needs on a preliminary level at the least. If this post has raised new questions or you have something on your mind, by all means get in touch with us.



Edit June 25th 2020: Drupal 7’s end-of-life has been extended until November 2022 due to COVID-19 impact on budgets and businesses. The text has been updated accordingly.

Image:Preparing for the group photo at DrupalCon Seattle” / Rob Shea / CC BY-SA 2.0

Author

14.10.2016

Druid’s DrupalCon Dublin session digest

Yes, yes, we already wrapped up the event for our part earlier this week. But we just couldn’t quite stop yet. What’s great with DrupalCon is that it really offers something for everyone, so we decided to list some of the sessions we found interesting and useful at the event. Oh the variety! If you were not in Dublin – well, even if you were – you can hopefully find something worth a listen out of these picks.

Let’s start with Angie Byron’s super interesting talk that presented an analysis of Drupal’s competitors, where they are currently outshining Drupal and how we can change that. Definitely worth checking out!

Being Human

The new ‘Being Human’ session track clearly resonated with the community. The track offered some excellent presentations, including:

Project Management

We also recommend checking the panel session about project methodologies (Scrum, Kanban and Waterfall) by Jeffrey McGuire, Shannon Vettes, Ashleigh Thevenet, Jenn Sramek, and a few others. Although the topic itself was already familiar to us, the session was really fun and inventively presented as a dating game.

As a sidenote: It took us slightly by surprise that not so many companies at DrupalCon seem to work with agile methods. Perhaps we should start expanding our agile trainings abroad… 😉

Technical

On the technical side, there were loads of good stuff. A few recommendations here:

Business

And finally, on the business side, these two sessions hit the right note:

Now there’s some food for thought for us, and presumably for many others as well.

What were your favorite sessions? Any must-hears that we missed?

Author

11.10.2016

Diamonds and magic at DrupalCon Dublin

The dust has settled, we’ve recovered from Drupal Flu and had some time to reflect on our experience as DrupalCon Dublin diamond sponsors. It was awesome, no doubt about that! 

Ever since Druid was founded four years ago, our principle has been to actively support and give back to the Drupal community. In addition to sponsoring events, we’re also among the top 30 code contributors globally. 

DrupalCon diamond sponsorship had been on our bucket list since the very beginning, and we wouldn’t have been able to do this without the amazing Drupal community. So our biggest thanks go to everyone who has supported, encouraged, and challenged us along the way. It feels incredible that we’ve come this far in only four years. Believing in our own way of doing things, which may not be the most conventional way, has paid off. Our long-term plan is to expand our foothold outside of Finland, so raising people’s awareness of the company at DrupalCon certainly didn’t hurt.

We also want to thank the Drupal Association, Drupal Ireland and the Convention Centre Dublin for a very well organized event. The venue was great, with stunning views over the river Liffey, and the friendly staff made the event all the more delightful.

Our booth at the exhibit hall drew the crowd quite nicely. Whether it was because of the old school arcade games, our much-complimented swag featuring our recently renewed logo, or pure interest towards our doings, we were happy to see the bustle and make new acquaintances. Thanks to all booth visitors for the great chats and laughs!

Content-wise, Druid was represented by Lauri Eskola and Bart Feenstra who both gave two talks at the event. Special thanks go to our kindred spirit Jonna Tiainen who, as the Product Owner of the project, totally rocked our Restel.fi showcase presentation together with Bart. In the showcase, they described how a complex Drupal 8 site was built from an agile project management aspect – from a human aspect, really. Here’s the recording: 

And here you can check our other presentations:
    •    Drupal 8 theming in depth by Lauri
    •    A cautionary tale for defensive programmers by Bart
    •    Core conversation: Create a new user-facing theme by Lauri

A few of us stayed in Dublin for the sprints which were also very well organized, this time by Rachel Lawson. Bart contributed as a sprint mentor and Druid was one of the sponsors for the sprint mentors’ thank-you dinner.

Needless to say, this fun-loving bunch of Druids felt at home in Dublin in the late hours as well. We hosted some (improvised) (after) parties at our penthouse, and were one of the sponsors of the Women in Drupal get together. We also very much appreciated that we could fit into the amazing Trivia Night venue this year!

Without underrating the learning and networking aspects, one of the best parts about DrupalCon is that we get to hang out with each other as a team. As most of us are working at customers’ premises a few days per week and three of us are permanently abroad, spending time with each other at DrupalCon is pure gold. It wasn’t just about bonding over a pint of Guinness – well, mostly, but not only: we also took the time for a full-day internal training before the event officially kicked off.

A great, memorable week with lots of new friends made, old friends caught up with and Druid’s magic sprinkled around Dublin. See you in Vienna next year, and hopefully many times before that!

Author