Exploring the Drupal Universe: A Conversation with Oskar Calvo
Oskar Calvo, a Software Architect at Hiberus Tecnología, is a keen explorer of the Drupal world.
For Oskar, Drupal is more than just a tool; it's a continuous learning and innovation journey. His enthusiasm for Drupal led him to present workshops at DrupalCamp Spain, where he shared his insights and expertise with the community.
In this exclusive interview, Kazima Abbas, the sub-editor of The Drop Times, delves into Oskar's experiences with Drupal, his recent workshop, and what drives his dedication to this open-source platform.
Join us as we uncover the story of Oskar Calvo and his fascinating journey through the world of Drupal.
TDT : Can you tell us about your recent workshops at DrupalCamp Spain, specifically "Boosting quality in Drupal: Kernel"? What were the main objectives and takeaways for attendees?
Oskar Calvo: First of all, the goal was not just to deliver my workshop but to create a track of workshops related to testing in Drupal. That's why three workshops were organized at Drupalcamp:
- Testing with Behat
- Unit Testing
- Kernel Testing
When I proposed this track of workshops, what I had in mind was that workshop attendees would leave with a working Drupal instance and tests running so that they could replicate the configuration in their projects in the future.
In addition, it was important for them to understand the significance of testing in any software development project and be motivated to test the applications they develop. Sometimes, I can be a bit idealistic.
TDT : What inspired you to choose this topic for your workshop? Are there any specific challenges or trends in the Drupal community that motivated you to address these areas?
Oskar Calvo: My relationship with testing has various aspects. On the one hand, I believe it's something I've been neglecting for a long time. Even though I gave a talk about testing with Selenium at DrupalCamp Sevilla in 2011, my relationship with testing has been a long-distance one, and that's not healthy.
A university colleague used to tell me, "Amores de lejos amores de pendejos" (long-distance loves are for fools).
My curiosity for well-executed work and code quality has led me to become more interested in code analysis tools on the one hand and, on the other, to revisit the testing aspect. That's why I've started a course at https://testautomationu.applitools.com/, which is dedicated to front-end testing. Additionally, I'm currently working on several projects that have required me to delve into Drupal's kernel testing.
The best way to put it is that life has ultimately led me to testing.
TDT : Could you share some highlights or key insights from your workshops? Were there any interesting discussions, questions, or interactions with participants that stood out to you?
Oskar Calvo: The idea with the kernel testing workshop was to divide it into two parts. The first part would involve explaining what tests are, their purpose, the perspective one should have on testing, and how it impacts projects. The second part would allow the students to create straightforward tests, as basic as possible, to help them become familiar with kernel testing and gain confidence in creating them.
There were interesting questions. Many times, it's more engaging to work with people who come with no prior knowledge and without preconceptions because they ask questions you might not have even considered, and they can catch you off guard. The most recurring question is always, "Do tests have to cover 100% of the code?"
TDT : DrupalCamp Spain is an important event in the Drupal community. What was your experience like presenting at this event? How does it compare to other Drupal-related events you've attended or presented at?
Oskar Calvo: I honestly can't say much because I have never been to an international event except for a Drupal Developers Day in Barcelona. However, I would like to attend one.
In Spain, we typically have DrupalCamps, and in the one held in Seville this year, more than 300 Drupal professionals from Spain—and we also had "visitors" from Germany and Belgium—attended. We always aim to have at least one track of talks entirely in English to encourage people outside Spain to attend DrupalCamp Spain.
In DrupalCamp, you can find discussions of all kinds. Unlike the Camps, we also have DrupalDays, which are single-day events with more code-focused talks.
The first DrupalCamp in Spain was held in 2010, and apart from the years 2020 and 2021 (due to COVID), events have taken place every year, with participation ranging from 250 to 350 attendees. For the Spanish Drupal community and the Spanish Drupal Association, it's very gratifying to see that we maintain these numbers. Although many veterans return yearly, we always see new faces, starting with Drupal.
TDT : As a Software Architect at Hiberus Tecnología, could you tell us more about your current role and responsibilities? How does your experience with Drupal come into play in your daily work?
Oskar Calvo: As a Software Architect, my responsibilities are diverse. I'm assigned to a series of projects. I have to work on these projects as a Tech Lead, assisting my colleagues and emphasizing the importance of quality, continuous improvement, and integrating new work methodologies. One of the latest methodologies we've adopted is using Conventional Commits in our daily work.
I'm also responsible for a squad of colleagues (who don't necessarily need to be from the same team). We hold 15-minute meetings three times a week to address any questions or share interesting findings. We also prepare talks related to our work, and the squad I'm currently part of recently presented a talk on Hexagonal Architecture + DDD applied to Drupal.
I often receive inquiries from colleagues with technical doubts or questions about completing certain tasks. My responsibility as a Tech Lead is to ensure things are done correctly, encourage finding the best possible solutions rather than quick fixes, and help junior developers understand work methodologies, technologies, and more.
As a Tech Lead, another one of my responsibilities is to encourage junior colleagues to contribute to the community, whether it's by motivating them to write modules for project use and then sharing these modules, creating issues, publishing patches/forks for them, and so on.
Lastly, I frequently post articles in a team channel about interesting topics related to Drupal, PHP, courses, technologies, etc. In our work, continuous learning is paramount.
TDT : Could you give us an overview of Hiberus Tecnología and its role in the technology industry? What are some notable projects or achievements the company has been involved in recently?
Oskar Calvo: Regarding Hiberus, I must first mention that it's a company with over 2,500 employees specializing in niche markets. There are no jack-of-all-trades; instead, there are several departments, and each department is focused on specific technologies and business niches.
As for projects, we've worked on a wide range of them. Here's a brief list of some examples.
- Ministry of Transport, Mobility, and Urban Agenda is a project with a portal featuring over 86,000 nodes, 30 content editors, 20 developers, and more than 30 custom modules; it operates on Azure DevOps.
- Madrid Digital, a project for managing, evolving, and developing some of the websites of the Community of Madrid, is responsible for maintaining 6 web portals.
- Castilla la Mancha is a project that involves managing/maintaining over 400 websites built with Drupal and developing 30 new projects.
- DKV Involves the creation of a foundational template for all DKV Drupal portals and the evolution of the insurer's digital ecosystem toward a unified and personalized pricing experience.
- Liberty Seguros Involves upgrading the portal to Drupal 9 for enhanced performance and portal optimization. It also includes creating a new Ireland website and upgrading up to 8 European sites for Liberty Insurance and its subsidiaries, improving site-specific configuration within a single installation, Single Sign-On for private area access, and adapting new corporate colors to current trends. It is managed on a specialized Drupal Acquia Cloud platform with multisite development to enhance workflow.
- Santander Bank Encompasses the digital transformation of the public web and the maintenance of the digital platform for corporate banking business proposal processes.
Hiberus also supports more than 40 modules in Drupal.org
TDT : How has your journey with Drupal evolved over the years? What initially drew you to the Drupal ecosystem, and how has your involvement and expertise developed over time?
Oskar Calvo: This is a question that often surprises people when I answer it. I have a Bachelor's degree in Modern and Contemporary History and completed a Master's degree in Libraries and Archives. During the Master's program, Professor Jesús Tramullas introduced us to the CMS Drupal (around the time of Drupal 4.7 or 5.0) and highlighted its capabilities for organizing information, thanks to the ability to define and assign multiple taxonomies to nodes.
Subsequently, with the patience and guidance of my friend Preiddy Garcia, I installed Apache on a Windows machine and began experimenting with it. As the saying goes, "The rest is history."
Professionally, during one of my jobs as a documentalist, the company that employed me informed me that after the project was completed, I would either be let go or, if I were interested, they would teach me programming. That's when I started working as an ASP 3.x developer. Meanwhile, I continued to experiment with Drupal at home. As soon as the opportunity arose, I transitioned to a Drupal project, even though it initially paid less than my previous job.
In 2009, we began organizing the Drupal community in Madrid, taking advantage of events like "Medialab-Prado." We started hosting monthly talks, and these meetings led to significant moments and lasting friendships.
The rest of my journey has been an incredible adventure of learning and expanding my knowledge. Thanks to the Drupal community, I've collaborated on various projects, provided assistance, and shared experiences with others.
TDT : In the context of Drupal and web development, what emerging trends or technologies do you find particularly exciting or promising for the future?
Oskar Calvo: At this moment, making predictions at a technological level and discussing how the future will unfold is a risky endeavor. The emergence of AI has indeed had a profound impact, but it's essential to exercise caution and see how these technologies develop. Similar excitement and speculation have surrounded other technologies like cryptocurrencies and blockchain, NFTs, the metaverse, smart speakers, etc.
The only thing I'm certain of and quite pleased about is the evolution of PHP as a programming language. The possibilities for delivering high-quality, professional work are truly impressive in the latest versions (PHP 7.x and 8.x). It isn't solely due to the language but also the PHP community, which has managed these changes remarkably well with projects like Composer and PHP-FIG (PHP Framework Interoperability Group). Few programming languages have an organization like PHP-FIG. This evolution has brought forth a range of quality tools and testing capabilities and numerous open-source products that can be used and improved.
Throughout this evolution, the Drupal community and Drupal itself have kept pace and continued to grow. Drupal has positioned itself effectively, and today, its competitors aren't just limited to platforms like WordPress but also encompass products like Liferay. I'm delighted about the journey and evolution of PHP, the PHP community, and, of course, Drupal and its community.
TDT : What advice would you give to developers and organizations looking to improve the quality of their Drupal projects, especially in kernel and PHPUnit testing?
Oskar Calvo: Quality and testing should not be considered as add-ons or secondary aspects of a project but as essential components. They are crucial to ensure that the software functions as expected and to provide confidence in its operation. However, it is true that in the first project where tests are implemented, there may be an additional cost and time required to learn. Once the process is mastered, it becomes a natural part of software development. It's like learning to ride a bicycle: it may be challenging at first, but once the skills are acquired, it becomes an integral part of the experience. Investing in quality and testing often results in fewer errors, better maintainability, and, ultimately, a more solid and reliable product.
https://testautomationu.applitools.com/ is a good starting point for the most basic test.
TDT : Finally, what are your plans and goals within the Drupal community, and how do you see Drupal's role in the broader landscape of web development and content management systems?
Oskar Calvo: My objectives with the community are the same ones that all technological communities have. Since I started programming, technologies, projects, and languages have multiplied. However, the number of professionals has not grown at the same level. So, all the technological communities seek to bring young people who want to work in those technologies to the community. I know it sounds a bit like a sect ':), but we have to find new ways of communicating to attract young people, to create other types of events that do not have to be precisely in person, to open ourselves to new forms of dissemination such as TikTok or Instagram…
Drupal is in an excellent position. It's neither a closed product nor part of a closed social network. It should continue to be one of the cornerstones of the open web, promoting diversity, freedom, and the absence of monopolies. The challenges are significant, and the path won't be easy. I believe there's nothing more concerning than a future dominated by closed social networks like Facebook, TikTok, Instagram, Twitter, and so on, where interactions are limited. You're subject to the whims of a capricious CEO.
Note: The vision of this web portal is to help promote news and stories around the Drupal community and promote and celebrate the people and organizations in the community. We strive to create and distribute our content based on these content policy. If you see any omission/variation on this please let us know in the comments below and we will try to address the issue as best we can.