Technology and People Make Drupal Happen: Fran Garcia-Linares

Driving Drupal Evolution: An Inside Look with Fran Garcia, Senior Developer at Drupal Association
Dan Lemon

Drupal is not just the technology itself; it's the technology and the people that make Drupal happen, reiterates Fran Garcia-Linares as he speaks to Kazima Abbas, Sub Editor, The DropTimes (TDT). 

Many users and companies can use a technology that "does the job" and never give back (the "takers"). Still, the Drupal community is full of "makers" that help the project progress and where individuals and values are significant. 

Fran Garcia-Linares is a Senior Drupal Developer at the Drupal Association. In an exclusive interview with TDT, Fran delves into the Association’s strategic projects, such as migrating Drupal 7 to Drupal 10 and leading the GitLab Acceleration initiative. As the non-US-based employee hired under the Association's global hiring initiative, Fran shares insights into how this initiative expands the talent pool. 

Fran's journey from teaching to web development, fueled by a passion for Drupal, highlights the symbiotic relationship between his role and the Drupal community. His experiences with the Spanish Drupal Association and significant contributions to Drupal projects exemplify his dedication to fostering collaboration and promoting Drupal globally. 

Fran also provides valuable insights into his sessions at DrupalCon Lille, GitLab CI improvements, and the challenges faced during the transition, emphasizing the Drupal community's evolution and progress. Beyond Drupal, Fran's commitment extends to sports, outdoor activities, and family time.

Join us as we explore Fran's valuable insights and gain a deeper understanding of his perspective within the Drupal community.

TDT [1]: Hi Fran, thank you for taking the time to chat with us. Please start by sharing a bit about your role as a Senior Drupal Developer at the Drupal Association and how it fits into the organization's global hiring initiative.

Fran: Hi, thanks for interviewing me too. I work on some strategic projects, like migrating Drupal 7 to Drupal 10 from the different sites the Association maintains (www.drupal.org, api.drupal.org…). I am also heavily involved in the GitLab Acceleration initiative, working on GitLab CI adoption, issue migration, etc. 

Regarding global hiring, we have a new relationship with a PEO (Professional Employer Organization) that allows us to hire in multiple countries, making the possibilities of hiring international talent endless! I went through that process, and it's working really well.

TDT [2]: We understand you have a background in Computer Engineering. How has your academic and professional journey influenced your role in the Drupal Association?

Fran: Soon after graduating, I started to work as a teacher, where I became more involved in web development and realized that I also liked doing web work myself, not just teaching it. I stumbled across Drupal (6 at the time, moving to 7), I loved it, and I never looked back. 

I've always liked the teaching side of things, so Drupal was a perfect fit because there are local meetups, DrupalCamps, DrupalCons, and Slack… and all of those are places where you can share what you've learned, ask what you don't know, and learn from other people. 

At the Drupal Association, we have a bigger outreach and impact on the community, so the sharing and learning are amplified, and I love it!

TDT [3]: As a member of the Spanish Drupal Association, please tell us about your experiences and contributions within the association and how they tie into your work at the Drupal Association.

Fran: My involvement with the AED has been recent. After some time abroad, I moved back to Spain right before the pandemic, so I didn't know many people from the Spanish Drupal community, and it didn't help that all events were cancelled! 

After a few DrupalCamp Spain editions, I feel more connected to the community. I can better see the great work that the AED is doing to promote Drupal in Spain to work together with the rest of the larger community. 

Their goals are perfectly aligned with the Drupal Association. I think this goes hand in hand with my work at the Drupal Association because I can also act as a liaison if or when needed, and it helps the broader goal of the Drupal Association to promote Drupal across borders.

TDT [4]: What notable projects or contributions have you been involved in within the Drupal community? How do these contributions align with your vision for the Drupal project?

Fran: The first project where I was involved with the community was Project Browser. I needed to work on the "live" endpoint so we could query and filter modules in real-time from www.drupal.org. That turned out to be a big job involving complex migrations, heavy use of JSON API to expose and filter data on the new site, and some code refactoring within Project Browser itself to accommodate multiple sources of information. 

I have also been heavily involved in adopting GitLab CI for core and contrib modules, supporting it back to Drupal 7. Working on this was rewarding as we now have a faster and more flexible system to handle all the testing on both Drupal core and contrib modules.

I was also involved in the later stages of getting the Announcements Feed module ready for core inclusion, now enabled by default from Drupal 10.2 in the standard profile. 

Working on these projects gave the Drupal Association and me a great chance to help and collaborate directly with the community, and it was a gratifying experience. And that is exactly my vision of the Drupal project, a group of great minds working together to improve it.

TDT [5]: You led several sessions at DrupalCon Lille, covering Drupal.org updates, Core Initiative Leads, api.drupal.org, and the transition from Drupal 7 to Drupal 10. Can you share some insights into these sessions and the key messages you aimed to convey?

Fran: It was my busiest DrupalCon to date! All these sessions had something in common: they showed that Drupal is advancing, and so are we as a community and within the Drupal Association. We are improving developer experience (GitLab CI update at the Initiative Leads Keynote), updating sites that the community relies on to the latest versions (api.drupal.org transition from Drupal 7 to Drupal 10) and also constantly improving www.drupal.org itself and all the related sites and tools that the community relies on. I was happy to be part of those sessions with the rest of the people who helped make that progress, like the other Initiative Leads and my Drupal Association colleagues.

Presenting at the Initiative Leads Keynote at DrupalCon Lille 2023 (Image credits: Joris Vercammen - DrupalCon Lille Flickr)

TDT [6]: How did your sessions at DrupalCon Lille go? Were there any standout moments or exciting interactions with the audience? What kind of feedback did you receive from the attendees?

Fran: I think the sessions went pretty well. A lot of interest and good feedback was received during and after the sessions. I was chatting with multiple people in the hallway about them! 

One of the highlights for me was to see people's excitement mid-talk (multiple rounds of applause!) during the Initiative Leads keynote when we highlighted some of the outstanding achievements made with GitLab CI. I wasn't expecting it, and I think it shows how thrilled they were!

TDT [7]: Speaking of DrupalCon, could you share your overall experience at the event? What aspects of DrupalCon are most valuable, and how has the event impacted your work and connections within the community?

Fran: This was my fifth in-person DrupalCon, and I love them more and more. The most valuable part is meeting people from other countries and companies because that gives you a taste of how Drupal is being used worldwide. Then you have a little bit of everything, depending on what you want to get from the conference. Contribution rooms are amazing, as are the sessions, BoFs and booths from the different companies sponsoring DrupalCon.

My work has evolved a lot thanks to these events. You get total beginners and core committers sitting next to one another, and you see that both (and everyone in between) are so important to the project and the community. It makes you change your perspective when you are working on something. 

For example, when I started my Drupal journey, I only considered whether the solution was good for a client and their site. Now, I always think community first because I know it benefits the client and their sites in the long run while helping the broader community.

The Drupal Association team (Image credits: Gábor Hojtsy - DrupalCon Lille Flickr)

TDT [8]: Can you elaborate on the specific GitLab CI improvements you highlighted in your DrupalCon Lille session? What are some key features or changes that have made a significant impact on the Drupal CI process?

Fran: The biggest one is speed. DrupalCI core runs would take approximately 1 hour to run. Leveraging GitLab CI features, we managed to get sub-10-minute runs for the same number of tests. Then the second one, which might be more challenging to see, is flexibility. We are providing a template, but people can extend or override sections of it at will just by checking the GitLab CI documentation. Adding jobs like PHPStan and GitLab page generation are now just a few lines of code.

There is support for Drupal core from 7 to 10 and for contrib from 7 to 10, and the amount of underlying code is relatively small compared to the previous system. So maintenance and support are way simpler now. We even created a "Test-only" job that would mirror the test-only patch that was usually required to be made manually when working on issues. You don't need to do this anymore, as the default templates do it for you!

So speed and flexibility are the most significant things that I would highlight, but there are countless more improvements that module maintainers and contributors can benefit from instantly.

TDT [9]: Transitioning from Jenkins servers to GitLab CI is a substantial change. Can you discuss some of the challenges you faced during this transition and how GitLab CI has simplified the maintenance process compared to Jenkins?

Fran: The biggest challenge was to get feature parity. Everything that could be done in the old system should be able to be done in the new system. There was a lot of code in the old system that would make everything work, so we needed to ensure that the new system could cope with all the nuances of the Drupal project and its modules.

The hardest part was coming up with the concept of the GitLab Templates and what they are supposed to do. If you use GitLab CI or GitHub actions in another project, you have limited tools to give you a headstart. In Drupal, we always provided a way for project maintainers to turn on testing with one click. We found a very clever solution to use "include files" in the template repository to allow us to set up everyone with a great default configuration that we can update universally for everyone and that they can override for their specific needs.

When we started to work on the transition, we discovered a few minor bugs in the old system, the underlying images, and the Drupal core that needed to be addressed before transitioning. This was challenging as only a few of us were working on it, and it was hard to replicate in the old (current at the time) systems.

The maintenance process now is so much simpler! If you look at the underlying code, it's pretty minimal; there aren't many customizations, so a big part of the maintenance is keeping everything up to date.

TDT [10]: Given that the api.drupal.org site has been a critical resource for the Drupal community, how do you ensure that the migration process to Drupal 10 maintains the site's functionality and continues to meet the needs of developers relying on it for code documentation?

Fran: The initial goal was to have a 1-to-1 page parity with the old (still current) system, even without using Drupal migrations, as the site content is actually generated from code. This parity has been achieved, and all functionality from the old site is available on the new site.

The new site is more resilient as it uses the latest versions of Drupal and the code parsing libraries, so some of the bugs reported in the current Drupal 7 site are not present at all in the Drupal 10 site.

TDT [11]: Can you share key aspects of how the GitLab Acceleration project is easing the process of contributing to Drupal by reducing friction points? How has it personally enhanced your ability to participate in the project?

Fran: Adopting GitLab made contributions processes closer to other communities whilst still keeping the Drupal flavour. The code is hosted on a GitLab instance, which has an API to communicate with, so we can leverage fork creation, granting access, merge request creation and many other features with some integrations on www.drupal.org or by simply navigating the GitLab UI.

We now have GitLab CI, too, which allows for further integration within www.drupal.org via the API. As mentioned before, this is way faster than it used to be, so no long waiting time is required between code changes, feedback, etc. All the above features have been helping people make better and quicker contributions.

With code, forks, merge requests and CI all leveraging GitLab, the next move will be using GitLab issues, which will enhance the whole contribution experience even further. Maintainers will be able to have their own kanban boards to prioritize issues as required by the module, and contributors will benefit from all the features that come with using GitLab issues.

TDT [12]: From your perspective, what makes Drupal unique among content management systems or web development? Are there specific aspects of Drupal that you find particularly exciting or innovative?

Fran: I could go on for hours about how amazing the contrib system is, how many vital and functional modules are included on the core for an out-of-the-box great experience, or how easy you can extend or create your module or theme! But this is not all of it.

It's the catchphrase from Drupal, and it could not be more accurate. It's the community! It's how we all work together toward a common goal, growing and learning along the way.

Many users and companies can use a technology that "does the job" and never give back (the "takers"). Still, the Drupal community is full of "makers" that help the project progress and where individuals and values are significant. Drupal is not just the technology itself; it's the technology and the people that make Drupal happen.

TDT [13]: What passions or hobbies do you indulge in outside of your professional life? Whether it's a favourite pastime or a unique interest, we'd love to learn more about what inspires you when you're not immersed in Drupal-related activities.

Fran: I have always done sports. I played basketball for +20 years and still love it, although I don't play anymore. I started (trail) running around ten years ago, which I still like to do, though I also enjoy cycling to complement training.

Also, one of the things I enjoy the most is hiking with my family and friends. I like going to the mountains as often as possible and just walking and enjoying nature. My two kids keep me busy, too, and I do many things with them, which tend to be outdoors as well.

Disclaimer: The information provided about the interviewee has been gathered from publicly available resources. The responsibility for the responses shared in the interview solely rests with the featured individual.

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.

Related Events

Related Drupal Initiatives

Advertisement Here

Upcoming Events

Latest Opportunities

Advertisement Here