Planet Drupal

Subscribe to Planet Drupal feed
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 28 min 24 sec ago

Drupal Watchdog: VIDEO: DrupalCon Amsterdam Interview: Holly Ross

Tue, 14/04/2015 - 15:58

On a beautiful summerlike day at DrupalCon Amsterdam, we stop at the Drupal Association table, where we are introduced to DA Staff Members JOE SAYLOR, LEIGH CARVER, and RUDY GRIGAR. Then it’s on to HOLLY ROSS (Executive Director, Drupal Association). Erudite cameraman BOB WILLIAMS (Financial Manager, Tag1 Consulting) works the GoPro.

HOLLY ROSS: Yep, so we had a BoF for people who like to knit and are at DrupalCon and it was really great because we all worked on our projects, and we all talked about how we learned to knit. And what I love the most about the fact that there are so many knitters in Drupal is that – I love the relationship between knitting and coding – right? -- like pattern discernment and building – and all the things we talk about that we love about Drupal – it’s all there in knitting, too.

This one is really interesting to me because – well first of all, I’ll just share that we have 2,300 people here – 500 more than Prague. That’s a lot bigger.

What I am reading right now actually is a book called The Last Ship. I don’t recommend it – I hate it – it’s taking me months to read. I’m also concurrently reading a couple of Cory Doctorow books, because I was getting ready to come here and see Cory speak, so I’m reading Little Brother, which is a young adult novel he wrote, which is really really good. And I’m also reading right now, the uh – oh, what’s it called when all the people go to heaven except the bad people that are left on Earth?

RR: Left behind?

BOB WILLIAMS: The Rapture.

HR: The Rapture of the Nerds, that’s it, The Rapture of the Nerds, yeah.

Tags:  DrupalCon DrupalCon Amsterdam Video Video: 
Categories: Elsewhere

ERPAL: 3 things to consider when creating project specifications

Tue, 14/04/2015 - 12:45

In the last part of our series, we talked about "Agile work at a fixed price". We realized that detailed requirements in terms of a project specification are the key to agile management of fixed-price projects. Today, we’ll deal with those project specifications.

A “specification” describes the results or certain milestones of a project. Thus, it defines what we have to measure in order to find out whether the project is finished, that is: either the requirements are fulfilled – or they’re not. This point harbors the greatest potential for conflict! Neither restrictive contracts nor other contractual pieces of art can help here. Only when both parties know exactly what has to have been implemented by the end of the project, can you:

  • Show, prove, demonstrate and understand that everything that should have been done has actually been done
  • Check whether a new request is indeed new during the project
  • Find out whether changes have negatively affected the software (change management and risk management)

Using some negative examples of a specification, I’ll try to demonstrate what to avoid during a project.

1) Avoid ambiguous wording in your specifications

"We integrate social media functions." What does that really mean? The developer may understand this to include a Facebook Like button, a Google +1 button and a Tweet this button. In fact, what the customer would like is to have a portal for his Facebook app. It’s purely a matter of interpretation what social media functions really are and how they should be integrated. Always check that your requirements are clear and without ambiguous wordings.

2) Avoid comparisons

"We implement web pages with the same functions as those of awesome-competitor.com." No one knows exactly which functions the competitor’s websites possess in detail. Here again, two different expectations would collide at the end of the project. As provider, you don’t know for sure what features are implemented in the backend. However, if you agree to the statement above, then you must provide these functions. Arguing after the fact with statements like "But I didn’t know that..." doesn’t suffice. The extra costs can be enormous! So, avoid comparisons with other systems in your specification. This might save time in the beginning, but at the end of the project one of the parties could have over twice the expected expenses, which would no longer be controllable.

3) Write clear definitions

"We import the current data of the previous software." The data format for new software is usually not the same as for the previous version. Here, it’s important to clarify how the import should take place. Which old fields should be mapped to which new fields? Which validations should be processed, and, most importantly, what does the data format of the previous version look like, exactly, and how can you get this data and map it to the new structure? Clarify these points up front in order to avoid explosive increases in the effort required. In this case, it’s hard to argue using experience from past projects, because it implies that imports in previous projects are similar to the case at hand, which may be true – but usually isn’t. "We implement ... according to the usual ..." What’s usual here and who defines what’s normal? Make absolutely clear that both parties are talking about the same thing. Otherwise, two worlds will again clash over their differing expectations, which can be difficult to reconcile. Instead, refer to or quote the text that clearly defines "... the usual ..." and the requirements. Then everyone involved knows what the wording means.

There are countless other formulations that you should avoid. However, the above are the most common. A detailed engineering of requirements is always a good investment for both project parties to provide a solid basis for project success. Additionally, relevant user stories with related acceptance criteria can help to clarify the project deliverables.

Incorrect specification happens!

Specifications are wrong if they don’t serve the overall project goal. A short example: the sales manager of a company orders an app to support the sales team. The software is developed according to his requirements. However, it can’t be imported because no one involved the sales team and asked them for their requirements. Take the conditions of each case into account: nothing is more dissatisfying for both sides than fully-developed software that can’t be used because it doesn't deliver value to the users or the company as a whole. You should pay attention to these conditions right at the start of the project, both as a supplier and as a customer. During the analysis of requirements, involve all the stakeholders. Finally, the specification also serves to keep the documentation effort low, because it has already described what the final product looks like. It also provides for good planning and systematic change management to ensure that the software is stable. Imagine you’re building a house and want to combine the kitchen and the living room. For this, you only need to remove one wall. However, if this is a load-bearing wall, the floor above will collapse onto your head as the whole house caves in. This should be prevented at all costs, so be attentive and take all the challenges listed into account!

In the next part in our series, we examine responsibilities and communication in projects.

Other blog posts of this series:

These 3 questions help you to ensure satisfactory project results

Setting objectives in projects with these 3 rules

Agile projects for a fixed price? Yes you can!

Categories: Elsewhere

Steindom LLC: Sorting a view by a list field's allowed values

Tue, 14/04/2015 - 11:52

There's a neat feature in MySQL which lets you sort a result set by arbitrary field values. It's the ORDER BY FIELD() function. Here's how to leverage this in your Drupal views.

Let's say you have a field in your Article content type called Status, and it has the following allowed values:

Draft
Pending Approval
Published
Postponed
Canceled

It can be very helpful to sort the articles by status. You could key your allowed values with alphabetical prefixes, numbers, etc. But let's say you didn't. Or don't want to.

With bare MySQL, the query would look something like this (not an actual Drupal query, but used to illustrate how FIELD() works):

SELECT *
FROM articles
ORDER BY FIELD(status, 'Draft', 'Pending Approval', 'Published', 'Postponed', 'Canceled')

This is now possible in Drupal & Views with the Views List Sort module, which creates a sort handler that populates the FIELD() sort with the allowed values of a given "List (text)" field.

To use it is easy, just add the "List (text)" field to your sort criteria, and set "Sort by allowed values" to "yes".

Submitted by Joel Stein on April 14, 2015.Tags: Drupal, Drupal 7, Drupal Planet
Categories: Elsewhere

J-P Stacey: Safe, performant generation of a unique Drupal username

Tue, 14/04/2015 - 10:53

There are examples out there for generating a unique Drupal username. The usual technique is to continue incrementing a numeric suffix until an unused name is found. There's also a project to automatically generate usernames for new users. All of this makes sense and works, but compared to the existing solutions, I wanted one that focussed on encapsulation and stability; by which I mean it should:

Read more of "Safe, performant generation of a unique Drupal username"

Categories: Elsewhere

Drupal @ Penn State: Install ELMSLN on Digital Ocean in one line

Tue, 14/04/2015 - 01:06

This screencast shows how you can use a cloud provider like Digital Ocean to install a working copy of ELMSLN by copying and pasting the following line into the terminal:

yes | yum -y install git && git clone https://github.com/btopro/elmsln.git /var/www/elmsln && bash /var/www/elmsln/scripts/install/handsfree/centos/centos-install.sh elmsln ln elmsln.dev http email@elmsln.dev yes

Categories: Elsewhere

Gizra.com: Shoov - CI tests on the live site

Mon, 13/04/2015 - 23:00

Shoov keeps evolving, and now has an example repo that demonstrates how we're trying to make UI regression simpler, we took some time to implement the second feature we were missing - automatic testing on the live site.

We saw a very strange situation everywhere we looked: Dev teams were writing amazing test coverage. They were going the extra mile to setup a Travis box with environment as close as possible to the live site. They tested every single feature, and added a regression test for every bug. Heck, every commit triggered a test suite that run for an hour before being carefully reviewed and merged.

And then the site goes live - and at best they might add Pingdom monitoring to check it's working. Pingdom at its simplest form sends an http request every minute to your site. If the answer is 200 - it means that all is good in the world. Which is of course wrong.

Our mission is to change this, and bring functional testing to the live site. One that is easy to setup and that integrates with your existing testing and GitHub flow.

The Drupal backend holds the CI build data, including the full log, and status

While Pingdom is wonderful and is alerting us on time whenever a site goes down, its "page is fine, move along" approach doesn't cut it for us. Here are some examples why testing on the production server is a good idea:

Continue reading…

Categories: Elsewhere

Drupal @ Penn State: We stole this site, you should too

Mon, 13/04/2015 - 21:56

Welcome to the new Drupal @ PSU!

We hope you enjoy the site so much that we want you to have it. No really, go ahead, take it. Steal this site. We did, and we’re proud of that fact. This site is actually a fork of the Office of Digital Learning’s new site that just launched recently.

Categories: Elsewhere

Mediacurrent: Drupalcon LA - Mediacurrent’s Gameplan

Mon, 13/04/2015 - 21:02

We’re gearing up for Drupalcon 2015 in sunny Los Angeles and we are looking forward to the exciting plans we have in store. We are Platinum sponsors once again and there are a ton of ways to connect with our team. In fact, here are the highlights:

Categories: Elsewhere

LevelTen Interactive: DrupalCamp PHX Session: Drupal as an Inbound Marketing Platform

Mon, 13/04/2015 - 20:32

A few weeks ago, Brent Bice attended DrupalCamp PHX to host a session on Drupal as an Inbound Marketing Platform. The video of the PowerPoint presentation of the session, along with audio were made available for everyone to visit and listen to this session.... Read more

Categories: Elsewhere

Liran Tal's Enginx: The Drupal Rap song – Everyday I’m Drupalin’

Mon, 13/04/2015 - 19:26

This YouTube video doesn’t need any further explanation beside it’s title: The Drupal Rap song – Everyday I’m Drupalin’

 

 

 

Lyrics:

Chorus
Everyday I’m drupalin

Verse
Where them forms you gettin fapi with I’m the fapi boss/ hookin into edit form and webforms is my specialty sauce/ I’ll hook form alter by form id’s or entities/ put a list on Ajax/ just to keep it callin back/

I got them distrobutions, I’m like acqia/
Check my public repos, I didn’t copy nuttin/ I know dries n webchick, I kno Ryan szrama/ all the commerce guys we hipchat when they got some drama/
Might not be pretty code but it gets me paid/ I’m using rules like php loopin through arrays/ I put it all in features, so the code is stable/ it might take longer, but next time I just click enable/ These dudes clearin caches, on every hook init/ queries by thousands, page loads by the minutes

Verse
No matter the language we compress it hard/ drugs cc all, we just drugs cc all/
Where’s all of the changes, you never saw/ so drush cc all, we just drugs cc all/ I lean heavy on smacss, compass compilin my sass/ you just installed flexslider now you teachin a class/
I seen your content types, I don’t need to kno you/ to know that we ain’t even in the same nodequeue/
I’m on drupal answers, check my reputation/ I’m on my tablet earnin karma while I’m on vacation/ ya girl like a module, she stay hookin n/ you couldn’t code an info file, without lookin in/
Mo scrums, equals better sprints, break the huddle, n the work begins

Thanks to New Valley Media for helping with the video http://www.newvalleymedia.com/
Thanks to Broadstreet Consullting http://www.broadstreetconsulting.net

(adsbygoogle = window.adsbygoogle || []).push({});

The post The Drupal Rap song – Everyday I’m Drupalin’ appeared first on Liran Tal's Enginx.

Categories: Elsewhere

Drupal Association News: Drupal Newsletter: Jobs, Events, News, and Conversation

Mon, 13/04/2015 - 18:58

A long, long time ago—7 years, if you remember—the Drupal Newsletter faded away. On March 26th, the Drupal Association rebooted it. The community does so much that we want to share.

We partnered with TheWeeklyDrop to bring blog posts, articles, podcasts, and more to your inbox. Now, once a week, we’re taking all the effort out of keeping up with the best in Drupal news and events.

The fourth issue hit more than 32,000 inboxes on April 9. Inside it, subscribers from all around the world found Drupal 7.36 and Webform 7.x-3.24 releases, an introduction to D8Upgrade.org (a service offering advice for when you should upgrade to Drupal 8), and more.

To get the newsletter, subscribe via your Drupal.org profile.

The (Renewed) Drupal Newsletter

The Drupal Newsletter will be an opt-in-only thing. Once you’ve subscribed, you’ll get the newsletter in your inbox once a week, every Thursday, at about 06:30 PT / 13:30 GMT.

What kind of content will you get?

  • Drupal 8 progress updates
  • Jobs, so you can find work (or people who get work done)
  • Tutorials, guides, and podcasts
  • Events throughout the community
  • Projects and releases
  • News and conversation

It’s all brought to you by TheWeeklyDrop and us, the Drupal Association. It’s content hand-picked by humans, not bots or aggregators. You’ll get an uncluttered, distraction-free snapshot of the latest from the Drupal community. (Though we could be swayed by community vote to add gratuitous pictures of cats.)

It’s Like the Amazon Dash Button

Ok, no, it’s not. That’s not true. Unless you want it to be, in which case it sort of is.

Subscribe and never run out of the latest news, announcements, and innovations from the Drupal community. We made an animated gif to show you how.

  1. Log in to your Drupal.org profile <www.drupal.org/user>.
  2. Choose Edit.
  3. Scroll to the bottom, to the Subscribe to section.
  4. Check the box next to Drupal Weekly Newsletter.
  5. Hit the Save button.
Keep Up with the Drupal Community

The Drupal Newsletter is the easiest way to keep up with the Drupal community. Don’t already have a Drupal.org account? Create your profile today.

Oh, and two more things:

  1. Please add newsletter@drupal.org to your address book as an approved sender, so the newsletter doesn’t get lost in a pesky spam folder.
  2. Tell us what you think. Comment on this post, or send feedback to newsletter@drupal.org. We’d love to hear from you.
Personal blog tags: Drupal Newsletter
Categories: Elsewhere

Drupal @ Penn State: The year, is 2020.

Mon, 13/04/2015 - 18:46

The year is 2020.

Categories: Elsewhere

Drupal core announcements: Drupal core security release window on Wednesday, April 15

Mon, 13/04/2015 - 16:51
Start:  2015-04-15 (All day) America/New_York Online meeting (eg. IRC meeting) Organizers:  David_Rothstein

The monthly security release window for Drupal 6 and Drupal 7 core will take place on Wednesday, April 15.

This does not mean that a Drupal core security release will necessarily take place on that date for either the Drupal 6 or Drupal 7 branches, only that you should prepare to look out for one (and be ready to update your Drupal sites in the event that the Drupal security team decides to make a release).

There will be no bug fix/feature release on this date; the next window for a Drupal core bug fix/feature release is Wednesday, May 6.

For more information on Drupal core release windows, see the documentation on release timing and security releases, and the discussion that led to this policy being implemented.

Categories: Elsewhere

Darryl Norris's Blog: How To Replace The Title Field To a Term Of Reference (Taxonomies)?

Mon, 13/04/2015 - 16:15

How can you replace the title field to a term of reference (taxonomies)? This is very tricky because the title field is been hardcore written on a content type (in Drupal 7) and by default it cannot be easily replace. In this article I would explain you how I was able to use a term of reference as my title. But first why use a term of reference instead of a title?

These are the reasons why I need it to use term reference instead of title field:

  • Facets - I’m building a system with Search Api + Views + Facets. And I wanted to use the title field on one of the Facets. If you used the title field facets would recognize it as Full Text and it would display it very weird with lower cases and separate words.
  • Standardize – I was building a system where the title is
  • ...Read more
Categories: Elsewhere

Chuva Inc.: Advanced Metadata wrappers

Mon, 13/04/2015 - 15:46
Are you familiar with entity_metadata_wrappers? If you are, take these two tips for your life.
If you’re not read this article to get to know metadata wrappers. Tip 1: with list fields, quickly display what you really want to display

Now, to the juicy stuff.

Suppose you have a list field, named “field_shipping_type”, with two options:

exp|Express shipping regular|Regular shipping

If you use:

<?php print $node->field_shipping_type->value(); ?>

It will print the word “exp”. But I want to display the human-readable value. How to do that? Quick!

<?php print $node->field_shipping_type->label(); ?> Tip 2: with any kind of field, display its label

Suppose I’m again, with a bunch of fields, trying to display them in a page. I need the field’s label to show it. With the magical function ->info() of the wrappers, I can do just that:

<?php print $node->field_shipping_type->info()[‘label’]; ?>

Neat, uh? There are a few more things hidden in this ->info(), actually all the information concerning the field. You may find it useful someday. 

Image credits:  https://www.flickr.com/photos/danielygo/11377205686

Subtitle: Two tips for advanced Entity Metadata Wrapper usage
Categories: Elsewhere

Deeson: Drupal: Setting a higher value for a multi-value field

Mon, 13/04/2015 - 15:02

When setting up a multi-valued field in Drupal you have the option of either having unlimited values of a fixed nunber of values. For the fixed number, you only get the option of having between 1 and 10 values.

 

But what if you need to have a fixed value of items higher than 10?

Well there's a hook for that.

Using the hook 'hook_form_FORM_ID_alter' you can override this value for specify a higher range of values.

/** * Implements hook_form_FORM_ID_alter(). */ function MYMODULE_form_field_ui_field_edit_form_alter(&$form, &$form_state, $form_id) { $form['field']['cardinality']['#options'] = array(FIELD_CARDINALITY_UNLIMITED => t('Unlimited')) + drupal_map_assoc(range(1, 20)); }

Now you can select a value between 1 & 20 for any multi-valued fields on your site.

Categories: Elsewhere

Don't Panic: A blog about Drupal: Another 5 Drupal resources you might have missed

Mon, 13/04/2015 - 15:00

When classic Drupal-sites like GotDrupal, YadaDrop, NodeOne and DrupalDude aren't updating their Drupal resource sites and/or pages anymore, there are always new sites around the corner to help you in your Drupal quest. I've listed 5 of them earlier, and here's five more...

ModuleNotes

If you find the information for the different modules on drupal.org too long and hard to get a grip on, ModuleNotes might ease your pain. Written by users for users, in plain English - "this is what this module do, and it's awesome!".
Visit http://modulenotes.com/

Drupalstatus

Do you have a bunch of Drupal sites out there? Tired of getting email messages whenever there's an update available? A rather new, and free, way of keeping track is Drupalstatus.org. Through a module you connect your site to Drupalstatus and get an overview, and a weekly summary of what modules you should update, security information and such. Came along when Droptor was on the slope, and became the savior for all of us who looked for an alternative. (See related post here.)
Visit https://www.drupalstatus.org/

DrupalDump

Slightly older and not so updated anymore, but it still holds a lot of information and tips and tricks. Hundreds of knowledge snippets, sorted into different categories makes this a good place to collect good information about Drupal - at least for a couple of years.
Visit http://www.drupaldump.com/

DrushCommands

If you're an avid Drupal developer or just building one site, one time there's a lot to gain of using Drush. Drush is a bunch of terminal commands that speeds up development and/or theming Drupal. It's like an AddOn-pack for your favourite boardgame. With Drush, your terminal usage will increase but you will also spare a lot development time. Just clearing cache is a dream in Drush, and with that you can skip opening up the Performance page and clicking the button to clear your cache. Anyway, DrushCommands.com offers a comprehensive list of all different versions of Drush available to us as users and which commands that works in which version. Great to have around if you want to start using - or improve your usage of - Drush.
Visit http://www.drushcommands.com/

DrupalShowcase

"I've never heard of this Drupal, I don't like, I don't think anything is built with that Durpel thingamabob..." Ever heard something like that from a client, a friend (ex-friend!) or other. Well, if you want to stick it to them, and show them that there are many beautiful, clever and useful sites out there, running on Drupal - DrupalShowcase is a great way to start. Thousands of Drupal-sites are listed here - and you can easily add your own!
Visit http://www.drupalshowcase.com/

Categories: Elsewhere

Chris Hall on Drupal 8: Responsive Breakpoints in D8, the breakdown

Mon, 13/04/2015 - 14:00
Responsive Breakpoints in D8, the breakdown chrishu Mon, 04/13/2015 - 12:00
Categories: Elsewhere

Web Wash: How to Use WordPress Style Shortcodes in Drupal 7

Mon, 13/04/2015 - 13:02

If you've ever had to migrate a client from WordPress to Drupal, one of the first things they'll ask for is how to add shortcodes in Drupal.

Shortcodes in WordPress are macros that you can drop into content and have it render an object. For example, if you want to embed a gallery in WordPress you simply add [gallery id="123" size="medium"] into the content and when a post is displayed a gallery is rendered.

Implementing similar functionality in Drupal is very easy thanks to the Shortcode module. The module is not an exact copy of the Shortcode API but implements very similar functionality. If your clients are use to shortcodes in WordPress then they'll feel right at home using them in Drupal.

In this tutorial, you'll learn how to configure and use the Shortcode module in Drupal.

Now, you may be thinking to yourself, can't Token do this? The short answer is yes. You can implement similar functionality using Token Filter. The module implements a custom filter which can be added to text formats. If you add [site:name] into the body, it'll render the site name.

Categories: Elsewhere

Pages