Planet Drupal

Subscribe to flux Planet Drupal
Drupal.org - aggregated feeds in category Planet Drupal
Mis à jour : il y a 19 min 24 sec

Acquia: 5 erreurs à éviter pour votre site Drupal - Numéro 2 : la Sécurité

ven, 30/05/2014 - 14:57

Les bonnes pratiques en matière de sécurité sont essentielles pour protéger votre site contre les attaques des hackers. Dans cet article, nous examinerons quelques méthodes destinées à réduire les risques pour votre site.

Les meilleures pratiques pour la sécurité de votre site Drupal

Drupal intègre un haut niveau de sécurité lorsqu’il est utilisé correctement. Toutes les interventions visant à configurer votre site peuvent toutefois introduire de nouveaux risques. Il est donc important de n’accorder des autorisations de configuration qu’aux utilisateurs de confiance.

Catégories: Elsewhere

DrupalCon Amsterdam: Initial results of the Drupal Business Survey and what that means for the DrupalCon Amsterdam Business Track

ven, 30/05/2014 - 14:32

This week we got the results of the Drupal Business Survey. Detailed analysis will be posted over the next few weeks, but in this blog post I wanted to set out the headline findings. I also want to draw initial conclusions to guide people preparing to submit sessions for the DrupalCon Amsterdam Business Track.

The survey comprised 3 questionnaires — one for leaders of Drupal businesses, one for staff, and one for clients. We got the most responses to the leaders survey. Unfortunately there were fewest responses to the client survey. This is the data I’d be most interested in for assessing how we as a community fare at running our businesses, so I’ll look into other ways to gather this feedback more proactively.

I’ll provide more analysis in the coming weeks on my blog http://www.wunderroot.co.uk/blog.

The Initial Findings

The client responses we did get were generally favourable to Drupal businesses, with the only consistently weak area being marketing and promotion. Clients praised Drupal businesses in comparison with other agencies they’ve dealt with as having “Less ego, more agility”, being “less pushy” and having “management teams that understand web development”.

The staff responses were also generally positive. 100% of respondents rated their company as ‘nice to work with’. The weakest area was again marketing and promotion, with sales and pitching close behind. General business management, and project management were only thought to be ‘ok’.

What was interesting was that these findings matched almost exactly to the Leaders survey, showing that those in charge of Drupal businesses have a pretty good awareness of the strong and weak points of their companies.

Interestingly, both the leaders and staff of Drupal businesses complained about clients having ‘unrealistic expectations’, ‘unrealistic budgets’, and even ‘being out of touch with their real needs’. This suggests a need for Drupal agencies to become better at helping clients scope and plan projects during the sales and initial discovery phases.

Guidance For DrupalCon Business Track Sessions

From these initial findings I’ve drawn some very broad conclusions to help give some guidance on the kind of sessions it would be good to see at DrupalCon Europe this autumn.

I’d really like to encourage sessions in these areas:

  • Strategies and tactics for marketing Drupal businesses and their services to take advantage of the opportunities that are coming in this golden age for Drupal - identifying potential clients, contacting them, attracting them to find out more about your business and Drupal, and educating them about the benefits.
  • Techniques and tools for setting up projects for success during the sales and discovery phases - by making sure the project is defined well, everyone shares the same expectations, everyone knows what success will look like, and there’s a much higher chance of the project going well and the client being happy.
  • Good communications during a project so that it continues to run smoothly
  • Good management practice tips and tools for agency-style businesses so that they are stable and able to grow quickly

So - if you run an agency, what do you do in these areas that you should share with other Drupal businesses? If you’re a client, would you like to share your feedback and wish list for Drupal suppliers to follow? if you have experience of agency businesses outside of the Drupal space what can you share from that?

These areas are just guidance, and all submissions are welcome, but these areas will be reviewed particularly favourably as we have identified these needs in the target audience for the business track.

Make your submission

You can submit your session proposal via the DrupalCon Amsterdam website

If you have any questions, I’d be happy to help. Email me at steve.parks@wunderroot.co.uk.

Thanks

Thanks go to Janne Kalliola of Exove and Stephanie El-Hajj of the Drupal Association for help in running the business track and feedback on the survey design. Thanks also to Vesa Palmu for feedback on the survey. And of course, thanks to everyone who responded.

--
Steve Parks, Wunderroot
The DrupalCon Amsterdam Drupal Business Track Lead

Catégories: Elsewhere

Code Karate: Drupal 7 Multiblock Module

ven, 30/05/2014 - 13:26

In this episode, we are taking a looksie at the Drupal 7 Multiblock module. This gem, allows you to create separate instances of your site blocks.

Catégories: Elsewhere

Acquia: Cathy Theys: Give and get good patch reviews session AND SymfonyCon interview!

ven, 30/05/2014 - 09:09

In a massive Cathy Theys double-header this week, hear parts rescued from our conversation at SyfonyCon Warsaw, which was plagued by technical difficulties and check out Cathy's insightful session, "Patch Reviews: Get good reviews, give good reviews. Faster." It is full of practical advice to take your contribution to Drupal and open source software to the next level. In the podcast interview, we talk about the opportunities Drupal has given Cathy; some of the benefits of the refactoring that has gone into Drupal 8; joining up with the Symfony community: mutual learning, different styles of contribution, Drupal's new relevance; and the business case for open source contribution and sustainability.

Catégories: Elsewhere

Drupal Media Team: Media Team Sprints at DrupalCon Austin

ven, 30/05/2014 - 09:05


The Drupal Media team will be sprinting all week at DrupalCon Austin!

Sprint Days Resources

All of the sprint tasks are visible in our DrupalCon Austin Trello board which we and all the sprinters will be using to coordinate efforts and progress all week. If you would like access to this board, see Dave Reid (and make sure to sign up for an account on Trello).

Sprint Areas Drupal core issues

Leads: Dave Reid (davereid), Janez Urevc (slashrsm)

This team will be working on any Drupal core issues tagged with "Media Initiative".

Some specific issues we'd like to tackle in Austin:

  • #1399846: Backport the make unused file cleanup configurable to Drupal 7.
  • #2128791, #2148353, #2078473: Ensure that file entities use a proper access controller and is used for hook_file_download().
  • #1308152: Add module://, theme:// and profile:// stream wrappers to access system files
Drupal 8 contrib module development

Leads: Dave Reid (davereid), Janez Urevc (slashrsm)

The modules we are working on:

Drupal 7 contrib module beta blockers

Leads: Devin Carlson (devincarlson), Brant Wynn (brantwynn)

This team will be working on the following in the hopes to be able to release 7.x-2.0-beta1 versions of the primary Media and File entity modules.

DrupalMedia.org website

Leads: Brandon Neil (bneil), Willy Karam (willyk)

We use a Trello board to organize the tasks for DrupalMedia.org.

Sign up!

Make sure to sign up on the Sprint attendance availability Google spreadsheet under the 'Drupal Media Initiative' section, if you plan on attending any of the days.

Not going to be in Austin?

No problem! There are still several ways to participate. We will all be in the #drupal-media IRC channel during the sprints and would be more than happy to help assign issues to work on or point people in the right direction.

We also will gladly accept your Drupal Media user story submissions as we start to finalize our plans and development for Drupal 8.

Tags:
Catégories: Elsewhere

ThinkShout: Meet the ThinkShout Team at DrupalCon Austin

ven, 30/05/2014 - 09:00

Next week, ten members of the ThinkShout crew will ship out to Austin, Texas for DrupalCon 2014. This is our largest delegation yet and we couldn’t be more excited about it! We’ve got Drupal 8 on the brain and we’re sure you do, too.

If you plan on attending DrupalCon in Austin, we’re always down to talk shop - or not shop. We’ll be all over the place during those four days, but here’s where you can find us:

Exhibit Hall

We’ll be sharing booth 508 with our partner and preferred nonprofit payment processor, iATS Payments. Stop by! We’d love to talk to you about the exciting work we’re doing with the iATS Drupal Module. Dan Ruscoe himself will be available to discuss his work.

Official Sessions

“Student, Counselor, Advocate: The Many Hats of Content Strategists ”
Wednesday, 1:00-2:00pm,
Room: 16 - Pantheon, 4th Floor

Brett Heckman and Brett Meyer will will provide you with some valuable techniques to help you facilitate a great discovery process.

Birds of a Feather (BoF)

The ThinkShout team will be leading a great variety of BoF sessions next week. Join in the conversations - we want to hear from you!

TUESDAY:

Title: Leveraging Salesforce with Drupal with Tauno Hogue
Room: 8A - JustDigital | 3rd floor
Time: Tuesday, 2:15-3:15pm

Title: Unmoderated Small Sample User Testing with Brett Meyer (@brett_meyer) & Sean Larkin (@sean_larkin)
Room: 10A - Ashday | 3rd floor
Time: Tuesday, 2:15-3:15pm

Title: Static Site Generators & Wireframes with Eric Paxton & Brett Heckman
Room: 8A - JustDigital | 3rd floor
Time: Tuesday, 3:45-4:45pm

WEDNESDAY:

Title: Building Your Drupal-Based Business: What Keeps You Up at Night? with Sean Larkin (@sean_larkin) w/Chris Wolz (@cwolz) of Forum One (@forumone)
Room: 8B - Unicon | 3rd floor
Time slot: Wednesday, 10:45-11:45

Title: Email Marketing with Drupal with Lev Tsypin (@levelos)
Room: 10A - Ashday | 3rd floor
Time: Wednesday, 3:45-4:45pm

THURSDAY:

Title: Nonprofit Fundraising with Drupal with Lev Tsypin (@levelos)
Room: 8C - VLM | 3rd floor
Time: Thursday, 10:45-11:45am

Title: Leveraging Drupal Commerce for a Nonprofit Payment Provider with Dan Ruscoe (@danruscoe) and Stephen Bestbier of iATS Payments
Room: 8A - JustDigital | 3rd floor
Time slot: Thursday, 1:00-2:00pm

Title: Discovery Workshop with Brett Heckman & Brett Meyer (@brett_meyer)
Room: 10A - Ashday | 3rd floor
Time: Thursday, 1:00-2:00pm

If you can’t make it, no worries. Get in touch with us and we’ll be happy to fill you in one what you missed. Twitter, email, carrier pigeon, whatever works for you. To those of you Austin-bound, we’ll see you there. Bring on the breakfast tacos!

Catégories: Elsewhere

DrupalCon Austin News: An Offer of Free Rides for DrupalCon Attendees

ven, 30/05/2014 - 01:24

The new rideshare platform Lyft is offering a special deal for DrupalCon Austin attendees. Conference attendees can download the Lyft app and get 2 weeks of free rides up to $25 per ride. If you enter the code "DRUPALCON" before your first ride, you will receive an additional free ride up to $25 (which can be used in any of Lyft's 60 other existing cities).

Catégories: Elsewhere

Propeople Blog: Propeople at DrupalCon Austin 2014

jeu, 29/05/2014 - 23:05

DrupalCon is an international gathering of the most influential developers, designers, business owners, and decision makers in the Drupal world. This year, the US event is bringing the Drupal community to Austin, Texas. It’s going to be a hot one, but there will be plenty to do, see, and learn during the days in the air-conditioned Austin Convention Center. 

We’re proud to be a Gold Sponsor of DrupalCon Austin, and will be setting up shop at Booth 310 for the week. So, drop on by to enter a contest, pick up some freebies, chat with our Drupal experts, learn about what we have to offer, and participate in the Propeople BoFs.

Propeople BoFs

This year, the Propeople booth will feature an area dedicated to our own BoFs. We invite everyone to stop by and take part in discussions about Drupal with Propeople’s Drupal experts, who will be representing our offices from around the US and Europe. BoF topics are listed below. Be sure to stay tuned for additional topics that come up during the conference by checking back here or following us on Twitter.

Regression Testing with Drupal/PhantomJS
Tuesday, June 3 | 2pm to 2:30pm

A discussion on how to use Drupal/PhantomJS to perform automated regression testing, demonstrating a quick proof of concept (POC). Led by Chang Xiao, Propeople’s East Coast Director.

The City of Copenhagen
Tuesday, June 3 | 3pm to 3:30pm (Tech focus)
Wednesday, June 4 | 3pm to 3:30pm (Business focus)

The City of Copenhagen and Propeople are working together on the biggest Drupal setup in northern Europe. Martin Kristensen (from The City of Copenhagen) and Jens Beltofte (CTO, Propeople Denmark) will be discussing the unique challenges and opportunities presented by the use of Drupal on a large scale - particularly as it relates to a municipal government application.

Drupal UX Improvements with the PP Profile
Wednesday, June 4 | 2pm to 2:30pm

Yuriy Gerasimov, Senior Drupal Architect, will lead a discussion about PP Profile (https://drupal.org/project/pp) and the ways that improves the user experience for Drupal site adminsitrators and editors.

 

 

 

Tags: DrupalConCheck this option to include this post in Planet Drupal aggregator: planetTopics: Community & Events
Catégories: Elsewhere

Phase2: San Mateo County- Raising The Bar For Local Government With OpenPublic

jeu, 29/05/2014 - 21:32

We recently celebrated the launch of San Mateo County‘s new and improved web platform using Drupal and OpenPublic. The San Mateo County digital team had a vision of a new web platform that would accommodate all departments with intuitive administrative functions as well as a well designed end user interface to efficiently deliver information to the County’s citizens. We new we could deliver this with our Drupal distribution OpenPublic.  OpenPublic is an open source distribution built with Drupal, developed to address commonly recurring challenges faced by Government agencies when managing their web content.  With the successful launch of the San Mateo County platform, I finally got the chance to sit down with Beverly Thames, Content and Collaboration Manager at San Mateo County to chat about the web platform redesign and OpenPublic, here is out Q&A:

Q: What was is the goal or mission of the San Mateo County digital presence and why did you need a redesign?

A: Between departments and central IT, the website was a multi-million dollar per year enterprise, and yet, County leaders were dissatisfied. The site failed to meet their needs or the needs of the public. Two goals of the redesign were to lower costs and provide better service to our departments and site visitors. We wanted to improve communications and to reduce or streamline in-person office visits.

We had major challenges with our old proprietary content management system’s inflexibility and highly technical nature. This made it difficult for departments to produce content and to organize that content in a meaningful way. The result was that much of the content grew stale while vital “evergreen” and fresh content was difficult for visitors to find via search or the site’s menus. Beyond these functional shortcomings, the frustrating user experience on the CMS was made worse by the outdated visual design, which displayed poorly in most modern browsers–especially when viewed on mobile devices. Overall, the sites did not communicate the San Mateo County or department brand very well, a situation compounded by the sites’ outdated content features. It was time for a change.

Q: What were the challenges and needs for San Mateo County’s digital presence and how did OpenPublic address them?

A: We chose to build our site on OpenPublic because it is tailored to the needs of government. County leadership could only be convinced to adopt open source if they were assured the system was secure and accessible. OpenPublic delivered both.

Each department’s identity and requirements are tied to their lines of business and the communities they serve. The County departments wanted to maintain their unique identities within the overall County brand. OpenPublic allowed the County to maintain a strong central brand while meeting user demand for autonomy and flexibility.

Q: Was using an open source platform an important factor in choosing a new content management system? If so, why?

A: San Mateo County was spending too much on annual licensing fees for a proprietary content management system that no one liked. There was little user support, and few developers knew the CMS, so when you could find one, their rates were high. Open source comes with a global community of support and many talented developers.

Open source is a natural solution for the government sector because we are constantly sharing our work with our peers and the public. Adopting an open source CMS allows the County to benefit from and contribute to the continuous improvement of the platform within the context of a larger user community.

Q: What is next for San Mateo’s digital presence?

A: Now that the site has been up for a few months, we will start digging into the analytics to see where we need to tweak search and to help us identify topics for curated pages.  We’re also excited about exploring potential integrations with our Open Data portal, GIS mapping and enterprise content management.

—————————

Learn more about San Mateo County’s new Drupal platform in our Portfolio, and get a deep dive look at how we developed an improved search functionality to better serve the County’s constituents.  If you are heading to DrupalCon Austin next week, don’t miss our session “Drupal For Gov- Raising The Bar With OpenPublic.”

 

Catégories: Elsewhere

Lullabot: MSNBC Video and DrupalCon Case Study

jeu, 29/05/2014 - 21:28

In the past 8 years, we've had the privilege of working on some amazing high-profile projects. We helped extend the reach of Drupal, building some of the earliest household name Drupal websites including projects for MTV, Sony Music, FastCompany, WWE, Martha Stewart, Harvard University, and many more. Late in 2012 we were approached about what would become one of the most ambitious projects we've ever launched.

Catégories: Elsewhere

Mediacurrent: Mediacurrent Launches New Website

jeu, 29/05/2014 - 21:03

Today, I am ecstatic to announce the launch of our new, Drupal 7 Mediacurrent.com site. It has been a long time coming, and I am incredibly proud of the team for building a website that reflects our strengths and new direction.

Buyer Personas Influenced our Strategy

To start the process, we reviewed our buyer personas. Frankly, some of our messaging and positioning had become outdated. Once we updated our personas, we built our content strategy, wireframes, and visual design around the needs of our target audience.

Catégories: Elsewhere

Drupal core announcements: This Month in Drupal Documentation

jeu, 29/05/2014 - 19:01
Introducing... This Month in Drupal Documentation (TMIDD)

Similar to "This Week in Drupal Core", the relatively new Documentation Working Group (DocWG) is trying out a new communication strategy: an approximately monthly post on what is happening in Drupal Documentation. We'll be posting this both to the Core and Documentation groups on groups.drupal.org, and because it is posted to Core, comments will be disabled by policy.

If you have comments or suggestions, please see the DocWG home page for how to contact us. Thanks!

Notable Documentation Updates

See note above on Suggestions if you'd like to be listed here in our next post!

Thanks for contributing!

Since May 1st, 206 contributors have made 783 total revisions to Drupal documentation pages on Drupal.org. Wow, thanks everyone! 7 people made at least 30 page edits each:

In addition, there were many many commits to Drupal Core and contributed projects that improved documentation -- these are hard to count, because many commits combine code and documentation -- but they are greatly appreciated too!

Documentation Priorities

The Current documentation priorities page is always a good place to look to figure out what to work on, and has been updated recently.

If you're new to contributing to documentation, these projects may seem a bit overwhelming -- so why not try out a New contributor task to get started?

Upcoming Events Report from the Working Group

The DocWG was formed in April, and has been having meetings every two weeks to define how we'll work, and our Goals, Priorities, and Policies. In our first two months of meetings:

  • We decided to meet for an hour every two weeks, for the time being.
  • We set up communications procedures, which are listed on our DocWG home page.
  • We made a definitive list of Goals, which are posted on https://drupal.org/governance/docwg-goals
  • We're looking carefully through all of the suggestions and ideas the community has had in the past for how to improve documentation policies, procedures, and tools (and achieve our goals). We will eventually make a list of priorities. This is in progress.
  • We've been talking to other individuals and working groups where our goals and responsibilities overlap, such as talking to representatives of the International Drupal community to figure out what our goals and priorities should be in the area of translating documentation.
  • We've been updating the section on how to contribute to documentation at: https://drupal.org/contribute/documentation (there is more to be done there)
  • We decided not to have a single "documentation team leader", and instead let the DocWG provide leadership
  • We are deemphasizing the concept of the "documentation team" (which sounds like you have to be a docs expert or special team member to help out), and are instead trying to promote the concept of having the Drupal community as a whole take ownership of the documentation, and individuals take "maintainership" of parts of the documentation (more coming on that in the future).
  • And... We decided to make these monthly TMIDD posts, which I'm putting into action today!
Catégories: Elsewhere

Last Call Media: Drupal's Pipeline for the Soul: See ya in Austin!

jeu, 29/05/2014 - 18:21
Drupal's Pipeline for the Soul: See ya in Austin!

I’ve always loved Open Source. As a college student, studying philosophy and reading Emma Goldman and Mikhail Bakunin, discovering the Debian/Linux community was an affirmation of the ideal collaboration possible between humans. I made Debian my chosen distribution of Linux and ran off of the Sid repository because I had newer hardware which needed experimental drivers at the time. Sid is the codename for the unstable distribution of Debian where the initial heavy development happens, where packages are released first. I watched with every apt-get dist-upgrade as a tireless open source community labored to make it all work. New features every day, new fixes and sometimes new bugs, only to be followed again by new fixes.

Nobody had to be doing it. They just did. They just wanted to. They were making it work for them and it was working for me. It was beautiful.

There is something about solving problems that is really enjoyable. Solving them in collaboration with other people is even better. It is a mode of being that is truly rewarding and intrinsically valuable. In software development, there is a solvable problem at every turn and instant gratification when the 1s and 0s align. Doing this in collaboration with others is more than just gratifying. As if the strategy of collaborating to survive and thrive is innate to us; it triggers a sense of belonging to something greater than ourselves.

As I later fell into a career as an IT consultant, I stayed very close to open source. There was no doubt in my mind that whatever the answer was going to be, it was going to have open source in it. This was when Drupal started taking off like a wild fire. As if designed for collaboration, it seemed the entire open source community was looking to Drupal as its solution to the world’s content management problems. Drupal code was easy to share, fix and contribute back. As the community grew, so did the collaboration. My company started doing projects in Drupal and contributing our work back to the community. Not only was this rewarding to everyone involved, it also rewarded my company with new incoming billable projects. It was basically a “Pipeline for the Soul.”

***

Running a business can be hard. There is no promise that anyone will need your help ever and you only stay in business as long as you are needed. The upcoming batch of work is your “pipeline.”  While waiting for people to call for help leaves too much to chance, keeping that pipeline full while doing your current work can often seem an impossible task. In the web development business, one option is to respond to as many formal Requests for Proposals as possible. You win a few here and there and hopefully stay in business. It is a well known fact that responding to Requests for Proposals is time consuming, demoralizing, and it basically completely sucks to do. With Open Source, there is another beautiful dynamic that makes for a truly healthy pipeline of upcoming work.

A healthy pipeline is not only one that is full. A healthy pipeline is one that fills in naturally.

Consider the current state of Drupal as an open source community. There are community organized elements within it that create the kind of pipeline I am describing. These are Camps, Conferences and Community Involvement.

Rob and I are starting to prepare for our trip down to Austin, Texas for the 2014 North American DrupalCon. It is here we will be looking forward to getting some face time with people we’ve been collaborating with, solving Drupal problems with, over the internet on a regular basis. For us, the primary goal of conferences is not lead generation. That’s not how this works for us. We go to the conferences for the community and for the in-person collaboration and community presentations (sometimes given by us). We know from experience that our involvement here will help take care of our lead generation on its own.

Here is the path we've watched our clients follow on their way to engaging their first project with us:

  1. Seeing us at Camps and Conferences
  2. Seeing our Community involvement
  3. Finding our Drupal Marketplace page
  4. Visiting our Website
  5. Downloading our Sales-y brochure thingy
  6. Contacting us by phone, form, or email

We’ve realized that the first two stops on that list are who we really are. We love the collaboration and the learning and sharing of knowledge at the Camps and Conferences. We love the involvement of contributing back work to the same community pool of code we benefit from. It simply just feels good. While the next three are a presentation of who we are (with the last one being engagement), the beautiful part to us here is the experience that we stay in business to the degree in which we stay authentic to who we are. Doing the things we love and being ourselves fills our pipeline.

We’ve also realized that these first two steps to engagement are not only self-sustaining but have a strong positive impact on the health of our team. This is due to the personal motives in play in the type of participation involved. Open Source software is inherently inclusive and collaborative. The vast majority of participation is driven by intrinsic motives for personal growth, relationships, and helping others. It is an endeavor that creates actual happiness, dedication, and community. To do this as a team is invaluable. Doing this as a society is our best work.

So... See ya in Austin! You will find us in a great session, at an after conference event, or participating/mentoring in a code sprint.

Catégories: Elsewhere

Acquia: Ultimate Guide to Drupal 8: Episode 4 - Multilingual Improvements

jeu, 29/05/2014 - 18:15

Welcome to the 4th instalment 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. Successive posts will gradually get more technical, so feel free to skip to later parts (once they're published) if you're more on the geeky side.

Catégories: Elsewhere

Drupal Association News: The Business Side of Drupal: A Research Journey

jeu, 29/05/2014 - 17:58

Jonathan Sims is Assistant Professor of Strategy at Babson College. A 2013 PhD graduate from the University of Texas at Austin, he wrote his dissertation on entrepreneurship within Drupal.

Over four years ago, as a 3rd year PhD student at the University of Texas at Austin, I made a risky move. I asked my advisors, all hard-core researchers, to foot the bill to send me to SXSW Interactive. I told them that “Interactive” was the future of SXSW, a conference that at the time was known far more for music and film.  I needed a dissertation topic, and argued that the conference that birthed Foursquare and Twitter was a great place to look.  They took the bait.

At the conference, I attended a session entitled, “Selling the Milk when the Cow is Free.”  Several of you were there. It was my first introduction to open source business models.  The panel spoke eloquently about the business benefits of “giving back” and “riding the community wave.”  For a student of strategy, these were almost heretical ideas.  Dominant strategy theories emphasized the “resource based view,” arguing that companies should protect, even at great cost, whatever resources they had that were valuable, rare, or difficult to imitate or substitute.

Here was a room full of entrepreneurs succeeding by doing the opposite.  I’d found my dissertation topic, and a new friend – for on that panel was Palatir’s Tiffany Ferris, who told me I “must go” to my first DrupalCon in San Francisco. Four DrupalCons and a Drupal-themed dissertation now behind me, I continue to research the novel business ideas that make Drupal firms so successful.

Over the next several weeks, I’ll be sharing those research findings in a series of posts.

In the next post, I’ll reflect the main findings of my dissertation, which was made possible thanks to the support of the Drupal Association and the 250 organizations that completed the Drupal Business Survey.  If you’re interested in reading more about the results of that survey, I’ve worked with a talented team at Palantir to make a formal report available for download.

Later this year, I will be launching another Drupal Business Survey in partnership with the DA.  We’re still putting on the finishing touches… and in the spirit of Drupal, we’re asking what you would like to know.  What research questions do you have for entrepreneurs in the Drupal community? Send you suggestions to me at jsims@babson.edu or tweet me @jonsims.

Next Up: Four “So What” Research Findings about the Drupal Community

Catégories: Elsewhere

Acquia: Acquia Cloud API Applications: A quick tour

jeu, 29/05/2014 - 13:27

The Acquia Cloud API is a web service and CLI that allows developers to build powerful tools, automate repetitive tasks, and create custom development and testing workflows for sites on the Acquia Cloud platform. Released two years ago, our customers and partners have been building amazing things on Acquia Cloud API and we figured it was time to share some of them.

Catégories: Elsewhere

Shushu's blog: Organic groups API == nicely built architecture

jeu, 29/05/2014 - 08:27

I started to work in Gizra more than 6 months ago. While I did have lots of Drupal experience, I didn't have a lot of Organic groups experience, especially not in Drupal 7 version.
As a developer, I am more interested in the way things are built and less in the way they look. I mean, I know my way around front-end and user interface, but a good looking UI won't make me as exceited as a well developed piece of code.
This is why I enjoy working with OG - since it is well-structured, lots of things works flawlessly, and easy to enhance.

In this post I want to focus on one particular task, and how it was easily done once you know OG API.

Our client decided they want to have a description for each taxonomy term, and to show the description when showing the taxonomy term page. This is easy, considering by default there is a description field. Then they decided they don't want to show the field in all pages, and they want it to be configurable.

The solution seems simple - adding a new boolean field for each taxonomy term, which will define whether the description will be seen or not, and then to use the taxonomy-term.tpl.php to show or hide the description according to this field.

The problem is that since we are working in OG (specifically in OpenSchoalr project), we can't and should not add the field manually, and considering each of the authorized site users can create their own vocabulary, we need to add the field automatically when the vocabulary is being created.

Gladly, OG API is built for those kind of tasks, and with several steps we can achieve what we want.

First, we need to define the field that we need. Once it is defined, it can be exported and then used in code. While it might be possible to define the field manually, I believe it is always better to avoid guessing Drupal multi-dimentional-unvalidatible arrays, and to leave this task for the machine.

  • Create a taxonomy vocabulary via http://example.com/admin/structure/taxonomy/add and then add the field you need via http://example.com/admin/structure/taxonomy/your-vocabulary/fields.
  • Use the features UI in order to create a new feature that includes the new field you just created. We won't use the feature as is, this is just a simple way to export the field configuration (I guess there are other ways as well).
  • Once you download the features file, look for the code inside the hook_field_default_field_bases() and hook_field_default_field_instances() implementations. This is the code we will use later on.

Second, we need to tell OG we have a new field, and to define how OG should use it. This is done using hook_og_fields_info(). What you need to do is to create a new module (or use one of your own modules), and create an implementation of this hook, in which you will add the code exported from the last step (with minor changes). One important issue is the name of the field - it needs to be correct in all places, and it is what you will use later on.
Please look carefully into the comments inside the code in order to see what needs to be changed manually.

Note that the best way to verify your configuration is correct is by using the OG UI in order to manually add this field to your structure via http://example.com/admin/config/group/fields. If your configuration is correct (don't forget to clear cache...) you will see the new field in the fields list.

To be certain, just add it manually to a vocabulary and see whether it is being added properly.

Third, we want to add an action saying "whenever new taxonomy vocabulary is created, add our cool field to it". To do so we need to hook into Drupal core bundle creation (thankfully, vocabulary is an entity, and each new vocabulary is a bundle...), and this is done via hook_field_attach_create_bundle. What you need to do is to create an implmenetation for this hook in your module, and there to use the nicely-structured OG API `og_create_field` with the name of the field you defined in the last step.

Yep, "this is it" !

Is it ?

It is, as long as you build new site. Considering you might handle an existing OG site, that might already have a bunch of taxonomy vocabularies, you must handle all of them as well, and the best way to do it is automatically via the installation or upgrade process.

On how to use the `hook_install`, `hook_update_n`, and when and how to use the Batch API - in another post.

Hope this post helps anyone,

Shushu

Ralates to: DrupalDrupal PlanetOrganic groupsOpenScholarhook_og_fields_infohook_field_attach_create_bundle
Catégories: Elsewhere

Palantir: D8FTW: Unit testing for realsies

mer, 28/05/2014 - 23:54

Code testing: It's like exercise. It's good for you, but most people really don't want to do it. Unless you develop a habit for it and feel the benefit, most people will try to avoid it. And if it's too hard to do it becomes easy to avoid.

That's really unfortunate, as good testing can have a huge improvement on the quality of a system and, over time, even improve how fast a system can be developed because you spend less time finding and fighting old bugs and more time building things right the first time.

Drupal 7 introduced testing to the Drupal world for the first time, but not really unit testing. Unit testing, specifically, is testing one "unit" of a larger system in isolation. If you can verify that one unit works as designed you can confirm that it doesn't have a bug and move on to finding bugs elsewhere. If your tests are automated, you can get notified that you have a bug early, before you even commit code.

The problem with Drupal 7 is that it doesn't really have units. Drupal's historically procedural codebase has made isolating specific portions of code to test extremely difficult, meaning that to test one small bit of functionality we've needed to automate installing the entirety of Drupal, create for-reals content, test that a button works, and then tear the whole thing down again. That is horribly inefficient as well as quite challenging to do at times, especially given the poor home-grown testing framework Drupal 7 ships with. As a result, many many developers simply don't bother. It's too hard, so it's easier to avoid.

Now fast forward to Drupal 8 and we find the situation has changed:

  • That historically procedural codebase is now largely object-oriented, which means every class forms a natural "unit" candidate. (Class and "testable unit" are not always synonymous, but it's a good approximation.)
  • Because most of those classes leverage their constructors properly to pass in dependencies rather than calling out to them we can easily change what objects are passed for testing purposes.
  • In addition to Simpletest, Drupal now includes the PHP-industry standard PHPUnit testing framework.

All of that adds up to the ability to write automated tests for Drupal in less time, that run faster, are more effective, and are, in short, actually worth doing.

Smallest testable unit

Let's try and test the custom breadcrumb builder we wrote back in episode 1 (The Phantom Service). Here it is again, for reference:

<?php
// newsbreadcrumb/src/NewsBreadcrumbBuilder.php
namespace Drupal\newsbreadcrumb;
use Drupal\Core\Breadcrumb\BreadcrumbBuilderBase;

class

NewsBreadcrumbBuilder extends BreadcrumbBuilderBase {
  /**
   * {@inheritdoc}
   */
  public function applies(array $attributes) {
    if ($attributes['_route'] == 'node_page') {
      return $attributes['node']->bundle() == 'news';
    }
  }

 

/**
   * {@inheritdoc}
   */
  public function build(array $attributes) {
    $breadcrumb[] = $this->l($this->t('Home'), NULL);
    $breadcrumb[] = $this->l($this->t('News'), 'news');
   return $breadcrumb;
  }
}
?>

We want to test that the logic in this class works as expected but without testing the entirety of Drupal, or even the entirety of the breadcrumb system if we can avoid it. We just want to test this code. Can we? With good OOP design and PHPUnit, we can!

First, let's create a new testing class in our newsbreadcrumb module. This class does not go in the same directory as our code itself. Instead, it goes in a separate "tests" directory but follows the same file/name pattern.

<?php
// newsbreadcrumb/tests/src/NewsBreadcrumbBuilderTest.php
namespace Drupal\newsbreadcrumb\Tests;

use

Drupal\Tests\UnitTestCase;

use

Drupal\newsbreadcrumb\NewsBreadcrumbBuilder;

/**
* Tests the News breadcrumb builder.
*/
class NewsBreadcrumbBuilderTest extends UnitTestCase {

  public static function

getInfo() {
    return array(
      'name' => 'News breadcrumb tests',
      'description' => 'Tests the news breadcrumbs',
      'group' => 'News breadcrumb',
    );
  }

}

?>

It should look fairly familiar for anyone who's written a Drupal 7 test. The main difference is that we're extending UnitTestCase, which is a very thin extension of PHPUnit's main base class for tests. Now we can define some test methods. As in Drupal 7, a test method is one that begins with test. Rather than assume we have a complete Drupal install and making actual HTTP calls against it, though, we'll just test our class directly.

<?php
  public function testApplicablePage() {
    $node_stub = $this->getMockBuilder('\Drupal\node\Entity\Node')
      ->disableOriginalConstructor()
      ->getMock();
    $node_stub->expects($this->once())
      ->method('bundle')
      ->will($this->returnValue('news'));

   

$attributes = [
      'node' => $node_stub,
      '_route' => 'node_page',
    ];

   

$builder = new NewsBreadcrumbBuilder();

   

Catégories: Elsewhere

Propeople Blog: Challenges and Opportunities in the Upcoming Drupal 8 Upgrade

mer, 28/05/2014 - 21:08

When Drupal 7 reached public release in January of 2011, it made waves for being more accessible and more performant than any Drupal to come before. Drupal 8 is likely to receive similar acclaim in the same vein, but to a much greater degree. Easier to use, better performance, and offering simpler, more flexible development, Drupal 8 is poised to improve the Drupal ecosystem more than ever before.

It’s still around six months until the core change, but this post will run through the challenges and opportunities coming up in Drupal 8.

 

An object-oriented approach lowers the barrier to entry for new developers

Drupal 7 and all previous versions used a procedural approach to scripting. This means that code is executed the same way every time the script is run. Procedural scripts are more reliable, but less customizable. Reliability is good, but in order to capitalize on it, developers must be intimately familiar with exactly what procedures are occurring, and in what order. This depth of knowledge gave Drupal 7 its famous steep learning curve.

The object-oriented approach used by Drupal 8 means that the execution of scripts will be much more dynamic. Functionality is treated like mutable objects, able to be modified programmatically. With object orientation, Drupal will operate more like a true API. Newcomers will appreciate this, since the framework will more closely resemble popular imperative languages such as C++ or Javascript.

Having a lower barrier to entry for new developers means that the Drupal community will grow even faster. This is good news for everyone, since it means more Drupal projects will be created, more Drupal jobs will be available, and the labor pool for Drupal development will be even larger.

 

“Twig” reduces front-end programming, makes it easier to develop site themes

Theming is a huge part of Drupal. It’s what separates the look and feel from the functionality of a site. Previously, Drupal used its own PHP framework for developing and executing theme files. Drupal 8 is integrating the Twig framework from the Symfony library, giving frontend developers a new box full of rich and well-established tools. Twig doesn’t reduce the capability of Drupal’s theme engine, but instead makes it easier to accomplish the same tasks with fewer lines of code.

Since Twig is used widely among Symfony developers, the barrier to entry for newcomers will be lower here, as well. More developers creating themes more easily means that we’ll see a real surge of high-quality themes moving into the future.

 

Streamlined content editing inspired by “Spark”

There are several ways to create content in Drupal 8. The default experience is simple and understandable, but not the most intuitive process. Starting with Drupal 8, the Spark framework will be fully integrated with Drupal core, enabling the following features:

  • True WYSIWYG via drag-and-drop layout tools

  • Powerful save tools: autosaves, drafts, and more

  • Mobile content authoring and administration support

A more streamlined authoring environment means your content creators will spend less time fighting the interface and more time creating great content. Imagine a content authoring system that’s more like Google Docs and less like Facebook Posts. This is the vision of Drupal 8.

 

Redesigned toolbar for centralized navigation

Good user experience begins with intuitive navigation, no matter the framework. Drupal 8 has a redesigned toolbar that appears at the top of the page for any content moderator — not just admins.

 

 

With the new “shortcuts” menu, authors will be able to bookmark popular content. This will be particularly useful during development — both of the site and of content in progress.

 

Accessibility options expand the audience for your site

Drupal 8 has several new accessibility options built into core, such as:

  • Large fonts for the visually impaired

  • Braille export for the severely visually impaired

  • Screen reader export

  • Better multilingual support

In the age of online content, the more markets you can reach with your message, the better. Drupal 8 is bringing content to a whole market segment that very few appeal to — the visually impaired.

In addition, Drupal will have dynamic multilingual capabilities including on-server translation. In areas where Google translate is not available, Drupal will offer to translate pages for users. If you have a dedicated localization team, you can optionally save content for a page in each language and have your team review it.

 

Simpler integration with third-party web applications

Part of the object oriented approach to Drupal 8 is its expanded support for RESTful applications. With the Web Services framework, Drupal will be able to seamlessly communicate with any web platform that uses the REST API. In additional, Drupal content can be serialized between formats such as JSON, XML, binary, and plain text. This enables tighter and more performant integration between different platforms.

Drupal 8’s launch is still half a year away, but the developers at Propeople are already getting excited. Nothing scratches a programmer’s itch like a truly flexible core, and Drupal 8 is all about flexibility. These changes come at the cost of familiarity, however. Instead of a scriptable core, we’ll have a programmable core. Although the transition will take some time to get used to, we agree with Drupal creator Dries Buytaert that the big changes will be worth it.

The upgrade to Drupal 8 won’t be easy, but as Dries Buytaert (the founder of the Drupal project) stated:

The reason Drupal has been successful is because we always made big, forward-looking changes. It’s a cliché, but change has always been the only constant in Drupal. The result is that Drupal has stayed relevant, unlike nearly every other Open Source CMS over the years. The biggest risk for our project is that we don't embrace change.

These words of wisdom apply not just to Drupal, but to any business with a significant online presence. When it comes to websites, the biggest risk in ignoring emerging technologies is the possibility of being left behind. Contact us to learn how Propeople can help you stay ahead.

Tags: Drupal 8Check this option to include this post in Planet Drupal aggregator: planetTopics: Tech & Development
Catégories: Elsewhere

Phase2: Having Drupal Performance Nightmares? Join the Dream Team in Austin!

mer, 28/05/2014 - 19:45

We’re exactly a week away from the start of DrupalCon Austin and I’ve been working hard over the past two months to button up our High Performance and Scalability with the Dream Team training at DrupalCon Austin. I’ve been honored to give this training at DrupalCon Denver, DrupalCon Munich, and DrupalCon Portland, as well as a free version of it at BADCamp 2013.

The Curriculum

In the training, we go from a base Ubuntu LTS machine and go through the process of configuring it first for a basic LAMP stack and then adding in key pieces of the scalability puzzle like Redis, Varnish, and configuration tweaks that help with front-end performance tweaks for Drupal. We also go over MySQL query analysis and optimization, as well as basic profiling with the Devel module and on into advanced profiling with XHProf to dig into performance problems. (A printed copy is also provided.)

This time around, we’ve done a revamp of the Varnish section to talk about exciting new changes in Varnish 4 and are also adding a good amount of new information on MySQL query analysis and optimization, as well as incorporating considerable feedback from previous trainings.

We also typically try to leave a little time at the end of the training to take freeform questions – the combined team has a wide variety of experience with a number of performance, monitoring, and automation tools. In past years, we’ve set up basic automation with Jenkins, talked about ApacheSOLR and advanced Varnish configuration, and distributed filesystems.

The Team

The team here really is a dream team, and I’m humbled to be able to share the podium with the others trainers every time we do this training.

Dan Reif

Dan is a longtime Drupal sysadmin and a member of the Drupal.org infrastructure team. He helped the Drupal project scale its own web infrastructure, and assists with ongoing performance and stability. By day he is the Director of Emerging Technology at BlackMesh, who offers managed hosting and private cloud solutions to help a variety of customers run their websites without worrying about their management. BlackMesh is generously donating the training server environments to participants in the training so you will have a server reference of the work done in class (provided for a limited time after DrupalCon).

Mark Sonnabaum

Mark Sonnabaum is the Senior Performance Engineer at Acquia. He has contributed significantly to projects that make it easier to scale and manage Drupal including the Redis Queue and XHProf modules as well as considerable work on Drush. He is also the maintainer of the cache and queue subsystems in Drupal core and has dedicated considerable time to improving the architecture of Drupal 8. He has also done a good deal of work on optimizing the performance of Acquia Hosting.

David Strauss

David Strauss was a driving force in creating Pressflow 6, a fork of Drupal which made high-performance sites possible in the Drupal 6.x series. He has helped high-profile clients like Wikimedia Foundation, Creative Commons, The Economist, and NBC Universal scale their web infrastructures to handle massive traffic. He is currently a co-founder at Pantheon where he has been pushing PHP performance to its limits using the latest technologies in the Linux kernel and systemd and empowering major clients to run their Drupal (and WordPress) sites without worrying about servers.

Yours Truly

I’ve had the pleasure over the years of working with major media, publishing, and government clients to ensure that their sites would stay up under heavy traffic load, including helping Robin Hood’s small infrastructure handle millions of visitors for information about their 12-12-12 concert for Sandy relief. I’m also a member of the drupal.org infrastructure team where I manage the logging infrastructure that helps us process more than 2 billion logs a month for aggregation and search to track down errors and help keep all the *.drupal.org properties up and stable. I’ve also recently been doing work on helping to make it easy to scale Drupal on Red Hat’s OpenShift Platform-as-a-Service.

Join Us

As of the publication of this blog post, we still have a few seats left. Please join us in Austin if you manage a Drupal site and want to learn how to scale it!  In the meantime check out Phase2′s top 10 DrupalCon Austin session picks.

Catégories: Elsewhere

Pages