Web Profiler in Drupal 8
Profiling your site is extremely useful not only for debugging and performance testing but also for learning about how your site handles requests.
Symfony 2 comes with a bundle (like a Drupal module but for Symfony) called WebProfiler Bundle which collects information about each request made to your application and allows you to visualize it in the browser.
Drupal 8 doesn’t include the Web Profiler bundle in core. However, there already is a contrib module for it. Make sure to install any dependencies before enabling the module.
The module will render a fixed bar at the bottom of each page for users with the View webprofiler toolbar permission. The bar provides a summary of the collected data from the profiler.
How to get the community to write your documentation
In the Drupal community we excel at sharing code, but we are terrible at sharing documentation. I’ve been trying to rally the Drupal community around a standard for reusable documentation for a few years now. But to get people to collaborate we needed to invent a new tool that makes it easy to create, reuse and share documentation between sites and the Drupal project at large. We have built that tool, it’s called WalkHub.
Drupal.org User Research: stakeholder workshop outcomes
At DrupalCon Austin 2014, we officially kicked off the reimagination of Drupal.org with a full-day workshop with Drupal Association staff, Working Groups, select board members and advisors, facilitated by our user experience coach Whitney Hess. In the morning, we did the serious business of defining our objectives, target audiences, metrics for success (KPIs), partners and competitors, and then in the afternoon broke out into teams to brainstorm provisional personas, use case scenarios, and a blue-sky set of features. These are the hypotheses that we will now test in our user research.
Here are a few outcomes of the day:
Objectives for the Drupal Association:
- Grow Drupal community engagement
- Grow adoption of the Drupal project
- Make it easier to build Drupal
Objectives for a new Drupal.org:
- Be the home of the Drupal community and primary destination for collaboration, education and relevant information and answers
- Provide tools to help coordinate community development of Drupal and related projects by removing barriers, retaining resources and more
- Demonstrate Drupal’s capabilities and advantages, and promote it as an organizational solution
- Encourage and enable people to develop themselves and their careers over time
Metrics for success (in no particular order):
↑ % completion of user profiles ↑ # Drupal sites ↑ # Authenticated user logins (globally) ↓ Average issue lifetime ↑ # site visitors (globally) ↑ Traffic to marketing content ↑ Prospect captures ↑ $ received / product category ↑ $ spend by partners y/y ↑ # contributors ↑ # code contributions / contributor ↑ # doc edits / contributor ↓ time issue has 'needs review' status ↑ # project downloads ↑ self-reported community satisfaction ↓ single-time logins ↑ # vendors in Drupal marketplace ↓ #/% inactive accounts ↓ #/% inactive projects ↓ # former Drupal.org users ↑ Drupal 8 effect ↑ # sites using specific projects
Despite how busy everyone is at DrupalCon at sessions and in the hallways, we were also able to conduct 11 user interviews with a wide variety of community members. Our user research continues until mid-July, as we interview developers, designers, site-builders, business decision makers, technical leads, content strategists, sysops, marketing managers, evangelists, students, agency heads and more, learning everything we can about what the Drupal community needs to do its best work and what Drupal.org can provide to make that happen.
We are very excited to share the results of our research with you soon.
Thank you for participating in this process with us,
The Drupal Association Staff
--
Flickr photo by 3oheme
111 Backup and Migrate 3.x with Ronan Dowling - Modules Unraveled Podcast
![Photo of Ronan Dowling](http://web.archive.org./web/20140624151418im_/http://modulesunraveled.com/sites/default/files/styles/podcast_default/public/podcast/image/Ronan%20Dowling.jpg?itok=AB-xYKa3)
- Let’s start out by getting a quick overview of what Backup and Migrate is.
- What are some of the new features in version 3.x?
- Files
- New UI
- Notes about backups
- Backup to two places at once
- Elysian Cron
- Smart delete
- One list for all backups instead of a list for each schedule
- Restore from stored backup or upload
- Ctools exportable
- What are some of the limitations of the module?
- How does this work in conjunction with Git?
- Since your the lead developer of NodeSquirrel, give us the pitch :)
- modulesunraveled.com/easybackups
Core Sprint: Drupal 8 at the Jersey Shore
http://jerseyshoredrupal.github.io
Join members of the NJ Drupal Community at our upcoming sprint: Drupal 8 at the Jersey Shore. The event will be held in Asbury Park, NJ and run all day on Saturday, July 12 and Sunday, July 13.
Join like-minded Drupal contributors for two full days of core and contrib sprinting to further advance Drupal 8. We'll have a list of approachable Drupal 8 critical tasks for participants to work on (thanks to remote help from xjm).
Get a ticket on Eventbrite. Attendees will be provided with breakfast, lunch, and snacks throughout the event. Further details about the event can be found at http://jerseyshoredrupal.github.io.
All attendees should have previously participated in a core sprint and/or have a fully working local environment for developing patches.
We look forward to seeing you at the Jersey Shore!
The Drupal jack of all trades
Last week I was very fortunate to not only attend, but be the keynote speaker for DrupalCamp Singapore! Here are my take aways and keynote slides.
Top 6 things to do while your cache clears on its own
Caches are a great tool, they store your website's database and code information in a way that loads much faster. But they DO mean that your changes don't appear right away.
Where are my changes?One of the things we here at Stanford Web Services get emailed about most frequently is, "Why did my changes disappear when I logged out?" The answer is that the site caches haven't yet been updated, but they will if we wait a little bit (sometimes a few hours or so).
Improving the ROI of your Drupal Website
![](http://web.archive.org./web/20140624151418im_/http://www.mediacurrent.com/sites/default/files/styles/thumb_blog_spotlight/public/roiofcontentmarketing.png?itok=XHwAc4pn)
Companies are seeing lower success rates on social media and diminishing conversion rates on the web - a trend that has put us all, especially content marketers, in the position to prove the ROI or face severe fiscal cuts. Unfortunately, reporting metrics like “increased impressions” and “better brand awareness” won’t be enough because companies are looking for hard before/after numbers.
Open Atrium: The Open Source Enterprise Collaboration Solution for Government
In today’s digital world, government agencies are faced with the challenge of determining how best to connect not only internally, but externally with citizens and shareholders. At the federal, state, and municipal levels, agencies coordinate and share information with other agencies, with external communities, and across different levels of government.
As they attempt this coordination, government agencies must meet the collaboration needs of specialized projects, while operating within budget allocations and resource constraints.
“Challenge” may be an understatement. Luckily, a robust and secure toolset exists to successfully connect disparate government systems and constituents.
On Tuesday, June 24th we will be leading a discussion about collaboration in government and how Open Atrium can provide an open source enterprise solution to connect actors and engage citizens in the public sector.
Open Atrium provides an open source, enterprise-grade collaboration platform for government that:
-
Engages constituents with a modern, mobile-friendly experience
-
Streamlines communication and workflows across groups
-
Integrates with enterprise systems
-
Provides the security that allows agencies to restrict access to information on both sides of the government firewall
Mike Potter, Open Atrium’s Lead Architect, and Greg Wilson, Director of Government Practice at Phase2, will discuss some of Open Atrium’s key features that make it a great fit for collaboration in government, including:
-
Secure document sharing and collaboration: Securely keeps information in one place, unlike email.
-
Time management tools: Manage and monitor project activities with calendars and project tracking tools.
-
Security and access control: A robust access control system that outperforms any other open source solution.
-
Online communities and communication: Launching open or private discussions is simple.
-
Citizen and stakeholder engagement: Control the content the public sees.
Be sure to grab a seat at tomorrow’s webinar on Tuesday, June 24th at 12 PM EST to learn what Open Atrium can do for your agency!
Admins: The Sometimes Forgotten User of Drupal
Last week a client asked us to build an image gallery for her website. There wasn’t anything super complex about this gallery, but it needed to have the images categorized via taxonomy and it she needed the ability to reorder the images. So off to the interface to create a content type, view, and pages associated with this gallery.
One thing that I got hung up on was on how to make it so she could reorder the images. This is not an unusual request, and I’ve used almost all of the re-ordering modules there are, yet for some reason, I started off by adding a text field for a “weight” and then figured she could adjust them from there.
I’m not sure why I thought that was a good solution, after all, as a company we pride ourselves on making Drupal as user friendly as possible. Thankfully I realized the error of my ways, and proceeded to promptly scrap the idea. The solution I ended up with was using Draggable Views for her to re-arrange the order of the images, a link in the header of the view to add an image directly and a small (<10 line) module to redirect to the draggable view page after she added a gallery image. What she ended up with was a single interface to manage her gallery, and something that both myself and the client was happy with.
So why do I tell you this story? Because with all of the great flexibility that comes with Drupal, it’s easy to forget about the administrative aspect of a piece of functionality. I think it’s important for everyone to put some thought into how something should work from both the administrative side and the visitors side, and be sure to add some time for that into your budget. The back-end of your site should be as beautiful and easy to use as the front-end and if its not you are doing your clients a huge disservice. I’m glad to see the default Drupal 8 admin interface had a lot of thought regarding usability put into it, but I will save that for a later post.
For more tips like these, follow us on social media or subscribe for free to our RSS feed and newsletter. You can also contact us directly or request a consultation.
Drupal 7: Relationships, Contextual Filters and Field Rewriting in Views 3
In this article we will continue exploring the powers of Views and focus on how to use relationships, contextual filters and rewrite field outputs. In a previous tutorial I showed you how to create a new View and perform basic customizations for it. We’ve seen how to select a display format, which fields to show and how to filter and sort the results.
In this article we will go a bit further and see what relationships and contextual filters are - the two most important options found under the Advanced fieldset at the right of the View edit page. Additionally, we’ll rewrite the output of our fields and combine their values into one.
To begin with, I have a simple article View that just shows the titles. Very easy to set up if you want to follow along. And there are three things I want to achieve going forward:
- Make it so that the View shows also the username of the article author
- Make is so that the View shows only articles authored by the logged in user
- Make it so that the author username shows up in parenthesis after the title
First, let’s have the View include the author of the articles. If the View is displaying fields (rather than view modes or anything else), all we have to do is find the field with the author username, right? Wrong. The problem is the following: the node table only contains a reference to the user entity that created the node (in the form of a user ID - uid
). So that’s pretty much all we will find if we look for user related fields: Content: Author uid
.
What we need to do is use a relationship to the user entity found in the user
table. Relationships are basically a fancy way of saying that table A (in our case node
) will join with table B (in our case user
) in order to retrieve data related to it from there (such as the name of the user and many others). And the join will happen in our case on the uid
field which will match in both tables.
So let’s go ahead and add a new relationship of the type Content: Author
. Under Identifier, we can put a descriptive name for this relationship like Content Author. The rest we can leave as default.
Now if you go and add a new field, you’ll notice many others that relate to the user who authored the content. Go ahead and add the User: Name
field. In its settings, you’ll see a Relationship select list at the top where the relationship identifier we just specified is automatically selected. That means this field is being pulled in using that relationship (or table join). Saving the field will now add the username of the author, already visible in the View preview.
You can also chain relationships. For instance, if the user
entity has a reference to another table using a unique identifier, you can add a second relationship. It will use the first one and bring in fields from that table. So the end result will be that the View will show fields that relate to the node through the user who authored the node but not strictly from the user
table but somewhere else connected to the author. And on and on you can join tables like this.
Contextual filters are similar to regular filters in that you can use mainly the same fields to filter the records on. Where contextual filters differ greatly is that you do not set the filtering value when you create the View, but it is taken from context.
There are many different contexts a filter value can come from, but mainly it comes from the URL. However, you can instruct Views to look elsewhere for contexts as well - such as the ID of the logged in user.
Continue reading %Drupal 7: Relationships, Contextual Filters and Field Rewriting in Views 3%
DrupalEasy Podcast 133: Top Secret Drupal (Capital Camp and Gov Days)
Jessica Dearie (jdearie) and David Stoline (dstol) join Andrew, Ryan, and Mike to talk about the upcoming Capital Camp and Gov Days, taking place on July 30-August 1, 2014 (free for attendees!) We also learn about two top-secret Drupal groups, do a DrupalCon Austin review, and say “Morten” more times than anyone should be allowed to. Not enough for you? How about some Picks of the Week and 5 questions?
5 PHP Components every Drupal 8 Developer should know: Part 1 -- Composer
Drupal 8 has made a lot of changes. Architectural and technical changes abound, but Drupal 8 has also brought social changes. We’re not really feeling the full effects of those changes quite yet, but with time, I believe the implications of Drupal 8’s new direction will have an amazing impact for the good of our community. A big part of those changes was the decision to adopt outside code. The 180 degree turn from a primarily NIH (Not Invented Here) culture to a PFE/PIE (Proudly Found Elsewhere/Proudly Invented Elsewhere) culture has been shocking and dramatic.
Ultimate Guide to Drupal 8: Episode 5 - Front-End Developer Improvements
Welcome to the 5th installment of an 8-part blog series we're calling "The Ultimate Guide to Drupal 8." Whether you're a site builder, module or theme developer, or simply an end-user of a Drupal website, Drupal 8 has tons in store for you! This blog series will attempt to enumerate the major changes in Drupal 8.
12-Week Live Online Web Developer Training Starts August 19
Becoming a web developer opens doors to a lot of opportunity, and the path to proficiency just got easier! DrupalEasy Academy's intensive 12-week Drupal career training program is available live and online, with classes beginning in August!
-->Redesigned Drupal.org profile page: your feedback needed!
Hi everyone! We're in the process of redesigning the profile page on Drupal.org, and we need the community's feedback! You can find the issue at: https://www.drupal.org/node/2281763.
Specific feedback needed:
- Assuming that we're keeping the current theme, does the organization of information make sense on the page?
- Is there any new information we should be collecting on profiles? Since this will require refactoring several of the data elements in profiles, we have a great opportunity to allow users to show/share more about themselves.
- Are there any things you've been DYING to see on user profiles that you haven't seen yet? Now's a great opportunity to share them!
Feedback will be collected until August 1st, and the layouts will be iterated over the next month and a half. Thanks for your feedback!
Observations and Hopes From a Female Techie’s Perspective
Google is on a mission to inspire girls to learn to code. The company’s new initiative, Made w/ Code, is an encouraging example of the way the computing community is pulling together to not only start a conversation about gender issues, but begin to make a change. And a change is definitely needed. Despite the company’s efforts to create more gender equality within its ranks, Google’s recent release of its rather disheartening diversity numbers wasn’t particularly surprising. Men continue to dominate our profession. Even so, as a woman who has worked in tech for ~15 years, I do think change is coming. Here are some observations and hopes…
They’re actually called jerks, and jerks are everywhere. I refuse to unfairly credit the tech sector with behaviors that unfortunately have been around for decades, but as a feminist who is a developer, I hope we’ll dump those behaviors faster than other industries. It speaks to the vitality and vocal nature of tech workers that we’re trying to call attention to, and do something about, the jerks in our midst. It’s not tech culture, it’s not male culture, it’s jerk culture that we need to eliminate.
2. Difference is a change motivator.Speaking of the jerk culture, years ago, a colleague told me he was glad when I was hired as the company’s only female employee because it finally gave him the courage to stand up against the team’s brogrammer culture. I didn’t – and still don’t – know whether to be appalled, honored, dismayed, or bemused. It was a novel use of womanhood, that’s for sure. And, it worked. No one should have to face this kind of blame, separateness, or humiliation. But change comes in all forms.
3. Estrogen transforms.Over the years, I’ve often had fun being the only woman in the company or the room – I’ve gained insights and access by being “one of the guys.” And at times, the very fact of my being a female developer has defused tensions or changed the tenor of tough conversations. I was able to bring a new perspective that they hadn’t considered before.
4. The more the merrier.When WebLogic was released, I thought I’d have to find a new job because it looked like a 6-year-old would be able to develop a web app without knowing a lick of Java. Ha; that didn’t happen. When the dot-com bubble burst, it seemed like all the tech jobs would dry up. But they didn’t. Then, it seemed like all our jobs could be shipped overseas. Still the tech sector thrives, and jobs for developers are bountiful. Despite all the potential for scarcity thinking, there is abundance in this field. There are so many challenges we can solve, and so many minds needed to solve them. Multiple backgrounds, personalities, and perspectives expand our creativity and our ability to question why we’re doing things, and how. Multiplicity matters. Scratch that – it’s required. Insert all your diversity tropes here – because they’re true.
5. Adults only, please.Corporate cultures that eschew brogrammer culture really just expect that employees be adults. Companies like Netflix and Phase2 thrive by holding this reasonable expectation. Assuming your colleagues are adults means you can trust each other, call each other on your shit, expect and achieve valuable results, and revel in the power unleashed by vulnerability, dependency, and collaboration. Our “open source, open minds” viewpoint allows us to expand beyond the usual definitions – from technical agnosticism to multifarious developers to creative collaborations, we are open to what’s offered in our worlds and in our midst. At Phase2, we have all that, and game nights too.
6. Lend a hand.Even though the industry lends itself to attracting all types of people, the Google numbers are still depressing. A measly 17% of women are counted in their technical workforce, which is also 83% male. Industry-wide, only 25% of developers are women, and even in these days of smartphone ubiquity, that number is declining. Men are seven times more likely to take engineering classes than women. We owe it to ourselves, as individuals, as tech workers, and as members of society, to change this. I teach a “computer club” at my kids’ elementary school to encourage kids to know more about technology than that it’s how you play Minecraft – it’s my small way of helping to inspire the next generation, the next wave, of great developers. Whether you extend it to a child or your newest colleague, magnanimity among tech workers improves ourselves, our teams, and our work.
7. Talk back!It’s time to have an open and honest conversation. I’d love to hear your thoughts on being, or experiences as, a woman or minority in tech. And no matter your stripe, I’d love to have you be my next superstar adult colleague here at Phase2. Comment below or apply to work here.
Learn More! Spread The word!
- http://girlswhocode.com
- http://www.blackgirlscode.com
- http://www.hackthehood.org
- http://www.girldevelopit.com
- http://www.girlsteachinggirlstocode.org
- http://www.ted.com/talks/mitch_resnick_let_s_teach_kids_to_code
- http://www.ted.com/talks/jay_silver_hack_a_banana_make_a_keyboard
- http://code2040.org
- https://medium.com/@triketora/where-are-the-numbers-cb997a57252
- https://github.com/triketora/women-in-software-eng
Holly Ross in conversation at NYC Camp 2014
The Executive Director of the Drupal Association, Holly Ross, and I sat down to talk at NYC Camp 2014 at United Nations Headquarters. Roughly one year on from her appointment to the Drupal Association job, I got the chance to ask her about her Drupal "origin story", what she thinks about the community now that she's in the thick of things (we're a welcoming and diverse bunch), and the role of technology and especially Drupal in making the world a better place.
Cocomore employee Jesús Sánchez Balsera is the new president of the Drupal Spanish Association
Drupalcamp Colorado 2014
The Camp is Coming!
Drupalcamp Colorado 2014 is on it's way, August 1-3! Planning has been going on for months and the camp site is now live and ready to take session proposals and donations.
Sessions and Keynotes
We'll be having a training day on August 1st. If you want to do a little bit of a boot camp, there will be "Build A Module" curriculum as well as several other day-long trainings. Saturday and Sunday will be chock full of sessions.
Michael Meyers of Now Pubic and Examiner fame - currently VP of Large Scale Drupal for Acquia - will be presenting one of our keynotes. An exciting second keynote is being lined up right now and we'll be able to talk about that in the very near future. Both speakers will talk about how Drupal is being used in giant ways.
drupaldrupalcamp colorado2014