Note: Feedback has been collected, and the prototype at http://gfx6wx.axshare.com will serve as design documentation for implementation. We have volunteers lined up to implement the profiles, both from a field migration standpoint and a theming standpoint. More details will come in fall.
The Drupal.org user profile is, essentially, a user’s identity on Drupal.org. It lists not only biographical information about the user’s work profile, interests, and location, it also lists all of the user’s activity in the Drupal project that can currently be tracked, including:
- Projects (modules or themes) on which the user was given git attribution for, or on which they committed work by others. Listed as (commits) in the section: "Projects"
- Approximate number of edits made to documentation on Drupal.org
The user profile is divided into three major sections, all of which are currently presented stacked on top of one another:
- “Drupal” - this is the user’s relationship to the Drupal project. It includes the user’s various assumed roles within the project, their contributions (if they list them in a text area), and allows users both to list their mentor(s) within the Drupal community and to identify things they have done by attending one of the DrupalCons or by contributing in various non-code ways, e.g. by checking a box that says “I contributed to the Drupal.org issue queues.”
- Personal Information: this is focused on demographic information, including the user’s gender, bio, interests, etc.
- Work: This section is focused on the company they work for, past companies, user’s work title and/or experience.
The current presentation, style, and organization of this information is not nice. It is also missing some key elements. (And has some information not needed.)
People rely on this d.o profile to present themselves, and we need to make it better.
This is the result of many discussions among the Community Tools Team, as well as work from @danigrrl, @bojhan, @tvn and others at the Drupalcon Austin contrib sprint. The most important changes to the profile:
- New organization of information focuses on work/contact information first (since most users will have that, and most users will need it)
- Overall layout is more organized;
- Macro contributions (e.g. "I contribute patches, I write modules, I run events) will be prioritized and made visual through the use of icons in front of the links (that as in the past) list all the other people who also checked off those things.
- The user should be able to prioritize their macro contributions in the order in which they focus their energy, i.e. if I wrote one patch, but I spend half my year organizing a Drupal Camp, I can prioritize "I run Drupal Camps" over "I contributed patches."
- High-volume code contributors will still have a list of projects they contribute to; however, the list will be truncated, with the ability to list all projects using a "+ XX more.." link.
To reiterate: Feedback has been collected from the community regarding several iterations to the profile design. Technical implementation of the profile has begun as of 8/20/14, and will continue over the coming months.
A working prototype is available at the following link: http://gfx6wx.axshare.com. The prototype includes a base 960 layout based on the current Bluecheese framework, as well as adaptive layouts for 320 and 768 widths. Please resize the browser in the prototype to see these layouts.
Screenshot of Profile: Non-Code contributor (updated 8/25/14) - also serves as owner of profile
Screenshot of Profile: High Code Contributor (updated 8/25/14) - also serves as viewing someone else's profile
Screenshot of Profile: Low Info Contributor (updated 8/25/14) - e.g. people who don't have a lot of information in the system, but have automatically generated badges and lists.
The following is a preliminary list of tasks required to implement the new layout.
- Migrate all social links on profiles to fields and represent as icons
- Decide on list of macro checkbox-y "contributions"
- Make icons for the list of macro contribution types
- Add "Git Attribution" field to User Profile
- Link "IRC Nick" field to https://www.drupal.org/irc
- Add new "Projects Maintaining" (and just show the projects the user is currently a maintainer for)
- Add new "Projects Contributed to" section to profile, which shows projects the user has contributed to (NOTE: can we also track bug reports, issue discussions, as well as patches/commits?)
- Remove the old "Projects" section from the profile after the "Projects Maintaining" and "Projects Contributed to" are added.
- Documentation section needs and and
- SUGGESTED: Add stats for forum posts, issue queue comments, etc. under "community involvement"
- Separate "badges" from events attended
- Update help text for "Drupal contribution" field to give guidance on describing contributions
- Create icons for user "badges" (alternately, use an icon font from the IcoMoon library)
- Add link for Google + to profiles
User interface changes
- New layout for all profile pages
- SUGGESTED: Layout changes if no projects are listed
- Change user social links to icons
- Make Drupal Association badges smaller
- Create visual representation (icons) for contribution "badges"
None that I know of.
The following features have been suggested by members of the community, but are not in the prototype. Most are currently out of scope, but they should be kept for later discussion.
- Show on profile whether someone is available for new opportunities
- Show events other than Drupalcons (note: the Events listing on profiles is worth discussing in a separate issue, as it's a biggie)
- Create an "activity feed" that allows users to create a timeline of their favorite Drupal milestones (very out of scope, but worth preserving for later discussion)
- Link Git attribution to comments in Issue Queue for patches (out of scope for this project)
- Find ways to create "badges" that are transferable to other venues, e.g. LinkedIn or Twitter profiles.