Salsa Digital Drupal-Related Articles: Celebrate the launch of Drupal 10 with Salsa
Opensource.com: 16 reasons DDEV will be your new favorite development environment
What's so different about DDEV? It's a container-based local development environment. Here are a few reasons you should give it a try.
In 2022, you have a wide variety of local development environments to choose from, whether you're a designer, developer, tester, or any kind of open source contributor…
Mike Herchel's Blog: Using ECA to Send Emails When a Field’s Value Changes
PreviousNext: 5 simple tips to increase your Drupal contributions without gaming the system
How and why we contribute influences our impact on the Drupal community and ecosystem. So, how can we become positive, long-term contributors?
by lee.rowlands / 7 December 2022Ok, so joke link-bait titles aside, this is actually a pretty serious topic. There was a Talking Drupal podcast episode about it and a lot of chatter on Twitter that was nicely summarised in this Drop Times article.
As someone with a long history of contributing to Drupal, I want to wade in on the topic in a constructive fashion to try and help achieve the best outcome for the project and contributors. So, here's some advice from a long-time contributor. Feel free to take it with a grain of salt.
Tip 1 - Work out why you want to contribute
Source: https://drupalsouth.org/news/2022/drupalsouth-2022-videos-and-photosBoth individuals and companies need to determine their reasons for contributing. If your reason is to increase your contribution credits and improve your position in the marketplace, then stop. You're doing yourself and your employees a disservice and likely creating additional work for others.
For organisations
If you're an organisation, your motivations should be something like this:
- To improve your reputation in the Community
- To ensure Drupal's long-term livelihood
- To align Drupal with you and your client's strategic goals - Drupal is a do-ocracy
- To improve your staff members' reputations in the Community
- To grow your staff skillsets with mentoring from the brightest Drupal minds in the world
- To enhance your reputation as an employer of choice for members of the Community
Co-founder of PreviousNext, Kim Pepper, gave an excellent presentation on the benefits to an organisation that encourages contribution. His talk might be four years old; however, it's still relevant.
PreviousNext has always encouraged contribution, making us an attractive employer for developers. Our average staff tenure is more than five years, which is unheard of in the tech industry. Additionally, it helps when you're pitching for new projects if you have RFQ line items asking you to demonstrate you understand a feature and someone in your team is a maintainer or significant contributor to that feature.
For individuals
If you're an individual, your motivations should be something like:
- To improve your skillset or learn a new concept. You will be amazed by how encouraging and helpful our community is for people who are helping move issues forward. If you come to an issue without an ego and with a willingness to ask for assistance, you are more likely to leave with a new concept/skill under your belt.
- To increase your reputation in the community. People follow Drupal.org issues and get emails of activity. They may not have time to participate in every issue they follow, but they keep abreast of what is happening and who is driving the issue forward. Your username is your individual brand. If folks see a name popping up time and again, it builds recognition of your individual brand.
- To widen your professional network. This gives you the ability to approach community members to ask for help. If you've worked on an issue with someone who maintains a key module and you have trouble with that module, that individual is more likely to be receptive to a request for help. The shared experience of working together to improve Drupal builds that relationship. Karma is something you can spend as well as earn.
- To make friends all over the world. One of the true joys of contribution is the ability to work with amazing people all over the world. You will hear many tales of lifelong friendships people have formed with people on the other side of the world through contribution
- To improve your resume and employment options. This one is kind of obvious, but if your personal brand value is on the ascent, this obviously makes you a recruitment or promotion target, or perhaps it gives you some justification for a pay rise. And employers shouldn't fear this. You want your people to be their best because when their value rises, so does yours.
- To have fun. Because if it's fun, everything else is easy.
Whether you're an individual or an employer, it helps to define your contribution goal. Use it to guide your contributions and view each contribution through the lens of your goal. If it doesn't bring you closer to your goal, is it worthwhile? Is there some other way you could contribute?
Tip 2 - Treat contribution as a long-term investment
Source: https://commons.wikimedia.org/wiki/File:Gfp-wisconsin-madison-sunset-over-the-train-tracks-by-the-lake.jpgSome forms of contribution are like a sugar hit. Sure, you get a credit, but do you get anything else out of it? Does it bring you closer to your goal? Some examples here include:
- Rerolling an issue that doesn't apply. Then not sticking around to help address remaining tasks, like getting tests passing.
- Fixing coding standards violations and nothing else.
- Adding a README to a project.
- Fixing the capitalisation of a module name in an info file.
- Attaching screenshots to an issue that already has them.
Now don't get me wrong. I'm not saying that all of these aren't valuable contributions. Some of them are valuable contributions and move the project forward. The reroll might breathe life into a stale issue, the coding standards violation fix might result in the issue passing tests for the first time, and a new README improves our documentation.
These are useful contributions for a new contributor getting used to the mechanics of creating patches or merge requests. However, once you have mastered that skill are you advancing your contribution goals from above if you continue to do it? Are you learning anything new? Are you robbing other newcomers of an opportunity to get started contributing?
So if you're beginning, these type of tasks could easily be what helps you achieve your first contribution goal–but set a limit, acknowledge that you've achieved that goal, and then set a new goal and leave this to other newcomers.
Core committer, security team member and release manager Jess (xjm) (side note, she's looking for work, you should consider hiring or sponsoring her to continue her work on core) once wrote
Even if I ... never visited Drupal.org again, and threw my laptop in Lake Monona, I would continue to get commit mentions for work I did in the past.
And she is 100% right. For the last 11 months, I've been busy on a major client project, but I've continued to receive commit mentions for investments I made in issues in the past. Contribution is a long-term investment, and so you need to wait for that investment to mature. Things can happen slowly at times.
Drupal is a huge and complex project run mostly by volunteer effort. It has a reputation for stability, which sometimes means things take a bit longer in order to consider all the possible side-effects, which leads me into my next tip.
Tip 3 - Get into a regular habit
Source: https://flic.kr/p/D2n1NqThe best way to improve your contribution 'investment' yield is to get into a regular habit. Set yourself a target for regular contribution. But to be 100% clear, the target should be for 'acts of contributing' rather than 'contribution credits'.
Back when Drupal 8 was nearing release, I started the patch a day challenge. Little did I know it would be a further two years until Drupal 8 came out. But I kept up the challenge and uploaded at least one patch a day on average for those two years. When Drupal 8 came out, I wound up close to the top ten contributors. To further illustrate xjm's point above, some of these investments continue to result in commit mentions even now, nearly seven years later.
Now, I realise this isn't something everyone can do. At the time, I was working part-time and caring for two school-aged children, so I had some spare time every afternoon as well as an employer willing to give me sponsored contribution time of around 6 hours a week. The luxury of time is something only some have. But getting yourself into a regular habit lets you build up an investment that will mature with time.
Former colleague Donna Benjamin (@kattekrab) once said something along the lines of, "A website is like a garden, not a house, you need to continually tend to it" (sorry if I'm paraphrasing incorrectly, Donna). Contribution is similar; a little bit each day or week, and your investment will bear fruit.
Tip 4 - Find your niche
Source: https://flic.kr/p/y89qMjThe Drupal mentoring team's website slogan was once 'We've got issues'. It's a fun play on the number of tasks in the Drupal issues queues that's still true today. There are over 60,000 open issues for Drupal core alone (9 and 10 only). And the number of open issues for contrib would easily be just as many. So, there are plenty of opportunities for contribution.
My advice would be to find your niche. You could:
- Find something you care about.
- Find something no-one cares about.
- Find something to fix/change that would make your day job easier.
For me (@larowlan), my introduction to core development was to find something no-one cared about: the forum module.
For my colleague Mohit Aghera (@mohit_aghera) it was the Needs tests tag (2500 issues in core alone). Through this effort, Mohit gained a deep understanding of writing tests for Drupal core, a highly valued skill–so much so that we asked him to come and work for us.
For Stephen Mustgrave (@smustgrave), it is the Needs review queue status (2700 issues in core alone). By reviewing other people's work, Stephen achieves his contribution goal of learning the inner workings of Drupal and gives back to something he uses every day. Reviewing is an under-appreciated contribution task that allows you to learn from and teach other developers by reviewing and suggesting changes to their code, all whilst steadily increasing the areas of core you understand. Stephen is now a maintainer of the Block Content module in core and (at the time of writing) proposed as maintainer for both the Telephone and Text modules. In addition, he has built relationships with several core contributors who know him by name and recognise his value to the community.
Tip 5 - Contribute in ways that help the ecosystem
Source: https://flic.kr/p/2kBZB1VThe health of Drupal relies on contributions from the community. If contributions don't benefit the long-term health of the ecosystem, does Drupal continue to be relevant and innovative? Contributions that actively move the project forward are more likely to have a greater velocity.
Think of helpful contributions like:
- Contributing to the readiness of the next major release - (Drupal 10 readiness at the time of writing) issues in this space get a lot of focus as we're working towards a given release date with set objectives. These issues move faster. They're also where innovation occurs, which keeps your skills up to date. Helping port contrib modules to the next major version also applies here, as you keep up-to-date with new changes, help the ecosystem and get faster results.
- Joining an initiative - groups working towards a common goal generate a much faster turnaround on issues. There's nothing worse than working on an issue and uploading a patch only to see it sit in 'needs review' for a long time. Working in a team will increase your network in the project (see goals above) but is also more likely to lead to a faster outcome. If you need help determining where or how to contribute, folks in these teams will definitely be able to point you towards places to help. There are strategic initiatives and community initiatives to choose from.
Tip 6 - Bonus tip for organisations
Source: https://flic.kr/p/8pheyTSuppose you're an organisation looking to increase your contribution but are unsure how to start. In that case, one approach could be to sponsor an existing experienced contributor to establish, grow or maintain your team's capabilities. As mentioned above, Core committer, security team member and release manager Jess (@xjm) is looking for work, as is Core Javascript Maintainer Théodore Biadala (@nod_).
Here at PreviousNext we sponsor V Spagnolo (@quietone) to work on Drupal core. When announcing this sponsorship, we described it as a new and exciting way for PreviousNext to give back to the project as well as the community.
In this scenario, @quietone works solely on Drupal contribution, but there are other models where organisations can bring in an experienced Drupal contributor for a mix of contribution and client work. For example, Kristen Pol (@Kristen Pol) is employed by another Australian agency to work on client projects and to help turbo-charge company Drupal contribution efforts. With her existing network of contacts and experience contributing to Drupal, Kristen can help her colleagues navigate the issue queues and contribute. With Kristen on the team, they get the dual benefit of Kristen applying her expertise on client projects and her contribution experience to help their team maximise the impact of their contributions.
Thoughts and comments?
What do you think? Let me know in the comments, or feel free to reach out to me on the shiny new Drupal Community Mastodon Instance. And of course, if you want to get more involved with contributing to Drupal, say hi in the Drupal community slack on any of the many general or specialist channels we have dedicated to co-ordinating contribution such as #contribute, #d10readiness or #bugsmash.
Tagged
ContributionPromet Source: The Next Frontier: Top 10 New Features of Drupal 10
Evolving Web: How I Discovered Open Source and Drupal
A Chance Encounter with an Exciting Community
It all started with COVID-19. As someone with both personal and professional aspirations to travel abroad, the onset of the pandemic first came as a major setback. However, I was still determined to do whatever I needed to do to achieve my goals, so I started looking for a remote job. One that would help me gain experience in a global, multicultural context without the need for physical travel.
Soon after, I was offered an interesting position mixing marketing and relationship management to bridge the gap between an agency and the Drupal community. Back then, I had heard of Drupal as a content management system, but I had no idea about the open-source world behind it.
Since that first remote job, I’ve continued to advance my career and I accepted a position as a Drupal Community Manager at Evolving Web in 2021. I make many connections and get to learn from experts from around the globe, and to this day, I am continually amazed by the Drupal community's openness.
I'll celebrate my 1st anniversary working at @evolvingweb in a couple of weeks 😲! It's just amazing how much I've learned so far. I guess time flies by when you're having fun...proud to be part of this world-class team <3 pic.twitter.com/GOoYeINVOZ
— Pieri (@pieriwww) April 12, 2022
Community Building at Evolving Web
Communities start with conversation. They are built when people can collaborate and share inspiring stories without constraint.
Evolving Web was born from the open-source community, and since day one has sought to create a community where members can learn from experts and share that knowledge with others. Our roots in Drupal’s open-source community teach us how to disseminate its values to grow as a team and as a full-service digital agency, centred on the values of openness, innovation and diversity.
Being Makers in Open Source
One of the greatest features of Drupal is that it’s free from lock-in and licensing fees. It’s free to use by everyone, and you can access its code and customize it to your needs. However, the open source nature of Drupal is only sustainable through agencies like ours understanding the value of giving back “product” contributions to innovate and improve the platform.
This year alone, we support 16 projects, and have been credited over 200 times for a wide range of tasks, from reporting bugs to event organizing. We also encourage all our team members to get involved and contribute while making sure to assign fixed time for key team members to invest exclusively in contributions. Additionally, we support the Drupal Association, the non-profit organization in charge of fostering the Drupal community through various initiatives.
All of this earned us the badge of Platinum Drupal Certified Partners, and we’re proud to be makers in the community.
“If you are an [Drupal] end-user looking for a company to work with, Platinum Drupal partners are some of the companies I'd work with first. Not only do they know Drupal best, but they also help improve your investment in Drupal. If you are a Drupal developer looking for work, these are some of the companies I'd apply to first” – Dries Buytaert, Drupal Founder and Acquia’s CTO
If you want to learn more about the contribution and credit system behind the Drupal community, check out Dries’ blog post Who sponsors Drupal development? (2020-2021 edition)
Open Source Marketing: the Promote Drupal Initiative
Most people associate open source projects with software and developer communities. There are, of course, other fields where this or similar kinds of collaborative networks get organized, but open source marketing stays mostly in uncharted digital media territory.
The “Promote Drupal Initiative” has been an ongoing project within the Drupal community since 2019. The project brings together a group of marketers working for Drupal agencies who combine their marketing intelligence and industry insights to develop business materials targeted at the decision-makers who adopt Drupal for their business.
Suzanne Dergacheva, Evolving Web’s co-founder, is the project lead for this initiative, and other marketers and designers from our team regularly contribute to this group. I’m personally involved, and right now, we’re working on several exciting projects, including a complete redesign of Drupal.org, which encompasses UX and content strategy work.
Last Friday we had a #DrupalFest event for @DrupalBA
3-hour long conversation about tools, best practices, recruiting and business.
23 people from 5 countries in LatAm 🙇♀️💙
I'm still smiling.
Check the upcoming events in your timezone & #CelebrateDrupalhttps://t.co/PiniT0NtXe pic.twitter.com/pNZ8Xb3mff— Pieri (@pieriwww) April 13, 2021
For me, it’s been a great opportunity to fast-track my learnings on the latest trends in promoting Drupal, its competitive landscape and value propositions, which is valuable knowledge I bring back to my team.
If you’re reading this and want to contribute to open source without having to write code. It is an excellent opportunity to learn from expert marketers. Volunteers are always welcome, you too can be part of this initiative.
Onboarding New Members From Diverse Backgrounds
At Evolving Web, we strive to offer inroads to the project. This is one of the reasons why our training program was developed in the first place. In the past 15 years of experience teaching Drupal, we’ve put together a course catalogue that caters to all roles needed in a web team, from content editors to developers. During the pandemic, we pivoted to a virtual environment, which has enabled us to reach a broader audience than before. Our classes help veteran Drupal users refresh their knowledge and support freelancers and career-changers in acquiring tangible skills to help them advance their careers.
For two years in a row now, Evolving Web has been a sponsor and training partner for the Discover Drupal program, a Drupal Association’s talent growth initiative . This program provides full scholarships to members of groups historically marginalized in the tech industry, to close the “talent gap” through access to resources, skills, and connections.
I’ve been lucky enough to see two cohorts of Discover Drupal students progress from complete newbies to landing their first Drupal jobs. I’ve seen students express infinite gratitude to our trainers and make friends in the process.
If you or your agency is interested in supporting this initiative or would be interested in hiring from our alumni, find out how to get involved.
Empowering our Team through Knowledge Sharing
As I said previously, open source communities rest on two pillars: people and knowledge. Altruistic knowledge sharing is the fuel that powers this movement, creating a virtuous cycle where teachers, learners, and the community all win.
For the team at Evolving Web, sharing valuable content is key. From training to blog posts, webinars and conference sessions, we strive to give back, sharing what’s worked and what we’ve learned.
We have presented at countless Drupal conferences, community camps and other events in the higher education, government and technology spaces. We all start with internal activities, such as our “Weekly Watercooler” sessions. During these sessions, anyone can share their experience on a given topic to empower others in their career. These evolve into opportunities to write blog posts or host webinars, and, eventually, submit presentation proposals for a conference.
Those who get selected as speakers are sponsored to travel and attend the event, with all the exciting opportunities that come with that. Last year, members of our team presented at DrupalCon Portland and DrupalCamp New Jersey in a slow post-pandemic return to in-person events. And for the year to come, we have already submitted over 20 sessions to events in 2023 and are excited for what is to come.
These week at #DrupalConPortland I finally dared to speak and go talk to people I admire! I'm glad I did because I got the chance to meet @TearyneG and @sugaroverflow, it was super exciting, they were super kind and sweet! Thank you so much for everything! ❤️ pic.twitter.com/4MuXq8MttF
— Dharizza Espinach B (@Dharizza) April 29, 2022
Giving back, as a Growth Strategy
As someone who studied Political Science, I’d never imagined I would end up in STEM. Neither would I have dreamt I would experience such a sense of belonging from being part of a worldwide community of people building a safer web for all.
Being part of a thriving industry while finding a sense of purpose is not a combination you find in most jobs. I recently celebrated my second anniversary as part of the Drupal community, and I know it’s just the beginning. The opportunities to learn and build connections are simply endless.
If what you’ve read here resonates, then we want to hear from you!
//--> //--> //--> //--> //--> + more awesome articles by Evolving Web
Annertech: Drupal 10: This is what we’re so excited about
In this blog we answer some of your Drupal 10 questions, and also tell you what new features we are looking forward to the most.
Specbee: Starterkit Theme in Drupal 10: Implementing a Better Starting Point for your Theme
Frontend developers and themers have some exciting news coming up with the release of Drupal 10. The new starterkit theme is almost here! Although it has been available for testing since Drupal 9.5.
Starting with the basics, let's talk about themes. Themes are basically the foundation of the entire layout and design of your Drupal website. It is the layer of the website which is seen by end users and it comprises design components like color palettes, font, headers, footers, and other aesthetics of the site.
Now, sub-theming has been a core part of Drupal for a very long time. Sub-theming is the process of inheriting a parent theme’s resources. Creating a sub-theme in Drupal has generally been a manual process by typically inheriting from a core theme (Classy) or any contributed theme to use readily available markup and styling. Drupal Starter kit will completely change the perspective of sub-theming for developers. Read on to find out how and also learn to implement the new Starterkit theme.
Why use the Starterkit Theme
Drupal has been providing the ability to subtheme for a while now. But recently we all have noticed that the Classy theme has not been receiving any updates since Drupal 8.0.0 because it needs to maintain backward compatibility and any changes made might break it.
When you sub-theme a core theme, it uses the common markup and CSS of the parent theme. And if your Drupal site is dependent on a base theme like Classy, you will not have very few options to make any changes because Classy needs to retain backward compatibility. For that reason, the new concept of a Starterkit theme has been introduced in Drupal 10 core.
Features of the New Starterkit
Drupal has introduced Starterkit in branch 10.0.x and the version is 10.0.0-beta1. It has replaced Classy which is now a contributed project.
- As the name suggests, Starterkit will act as a starting point to generate themes. It does not need to be extended as a base theme but rather copied onto the new theme.
- Drupal will provide frequent updates on the default markup and CSS in core so that these features will help Front-end developers.
- Sub-theming will still be an existing option to create subthemes. This is important in cases where themes are inheriting some common CSS and markup from the base Drupal theme.
- If a theme is already using the classy theme, it can continue doing so with the contributed classy theme, which will be the same as using the core Classy theme.
- You can generate a new theme using the command line interface tool.
Generating a new theme using CLI
Run this command in the respective (Drupal, docroot, web) folder to create a theme inside the theme folder.
php core/scripts/drupal generate-theme my_new_theme
Add your theme name in place of my_new_theme.
Example:
php core/scripts/drupal generate-theme test
On running this command, the theme is generated outside of the custom folder.
So to generate themes inside the custom folder, you will need to add the path of the file folder like so:
php core/scripts/drupal generate-theme test --path themes/custom
The output will look like this:
To see all configuration options, you can reference the help:
php core/scripts/drupal generate-theme --help
Customizing the Starterkit
Starterkit tools provide the freedom to use a contributed or custom theme as the parent theme. For this, you need to add source_theme_name in the command line (which can you get from --help) and then add starterkit: true; in the theme in which you want as create a starter theme or sub-theme. (Remove starterkit: true; after generating the theme)
So finally, the command will look like this:
php core/scripts/drupal generate-theme my_new_them --path [path_of_file_folder] --starterkit source_theme_name
Example:
php core/scripts/drupal generate-theme demotheme --path theme/custom --starterkit bartik
And the theme will look like this:
This theme is generated using Bartik theme and can be checked in the info.yml file of the theme
You can change the generated theme name, code, files, etc according to the requirements.
Tracking upstream changes
When the theme is generated, you need to check for any upcoming changes in the Starterkit core, especially about features, bug fixes, etc. This is also important when you are using starterkit as your base theme
- Check the version of the core Starterkit theme
When you have generated a theme from Drupal core you need to check the version of the starterkit. You can check for it in the info.yml file in the generator key.
generator: starterkit_theme:9.3.0
With this you can now compare the version of the theme using Git or Drupal core repository.
Syntax
git diff
Example:
git diff 9.3.0 9.4.0 core/themes/classy/
- Check the list of theme changes by issue
If you find too many issues then you can review the changes from the list. Check the list of issues by using the below command:
Syntax
git log
Example:
git log 9.4.0 9.3.0 core/themes/classy/
Final Thoughts
There’s so much to look forward to in Drupal 10 with the Starterkit being a significant enhancement, especially for frontend developers. Enhancements and problem-solvers like the Starterkit proves that Drupal is a truly continuously evolving CMS and is on the right path to making it easier to adopt. As a purely Drupal development company, you can trust our experts to implement Drupal in the best way possible for your next project. We’d love to talk!
Author: Ashutosh Ahirwal
Meet Ashutosh Ahirwal, a Drupal Front-end Developer who is a big-time foodie and a travel enthusiast. Ashutosh is a night owl who fancies going on a long bike ride to Leh-Ladakh, admiring the nature around. He strongly believes there is no such thing as “too much cheese” :)
Drupal Development Drupal 10 Drupal PlanetLeave us a Comment
Recent Blogs
ImageStarterkit Theme in Drupal 10: Implementing a Better Starting Point for your Theme
ImageThings you need for a Drupal 8 to Drupal 9 Upgrade - A Checklist
ImageGetting Started with Layout Builder in Drupal 9 - A Complete Guide
Want to extract the maximum out of Drupal? TALK TO USFeatured Success Stories
Upgrading and consolidating multiple web properties to offer a coherent digital experience for Physicians Insurance
Upgrading the web presence of IEEE Information Theory Society, the most trusted voice for advanced technology
Great Southern Homes, one of the fastest growing home builders in the United States, sees greater results with Drupal 9
View all Case StudiesSystemSeed.com: Upgrade to Drupal 9 before Drupal 7 goes end-of-life
If your websites still use Drupal 7, you should be planning to upgrade to Drupal 9 as the end of life for Drupal 7 is drawing near
Lilian Ochieng Mon, 12/05/2022 - 17:59