Subscribe to feed Planet Drupal - aggregated feeds in category Planet Drupal
Bijgewerkt: 11 uur 5 min geleden

Nextide Blog: Standalone Drupal 8 script using Guzzle

ma, 2015/01/05 - 11:24pm

Drupal 8 will have web services as part of core which will provide native support for all entity types including custom entity types. Drupal 8 will have support for different serialization formats like HAL+JSON, XML and JSON.

A couple good article references:


Pivots recommendations: Drupal Recommender API: Roadmap for 2015 and beyond

ma, 2015/01/05 - 6:54pm

I have seen slow but steady adoption of the new release of Drupal Recommender API module over the past few weeks after the announcement. This post will explain my plans about future development of Recommender API in order to help the audience make informed decisions. This is also an update to an older post on 2012-2013 roadmap.

I will categorize all my development plans into three tiers.

Read more

Lullabot: Lullabot's 2014 Year In Review

ma, 2015/01/05 - 6:43pm

Wow! What a Year!

As we throw away the empty champagne bottles and start retraining ourselves to write a different year on our checks, it’s always a good time reflect upon the past year. 2014 was Lullabot’s 9th year in business and it was our biggest year ever. We contributed to projects for MSNBC, Pac-12,, Bravo TV, Saturday Night Live, Tesla Motors, NAMM, CNBC, Hotwire, Harvard University, American Booksellers Association, Intel, Comcast, GE, Qualcomm, and Teach For America, amongst others.

Our project with The Tonight Show Starring Jimmy Fallon won a Creative Arts Emmy for Outstanding Interactive Program.

Next month’s GRAMMY night will mark Lullabot’s 5th year as part of Over the years, we have been responsible for development and site performance. This year, however, Lullabot's design team takes charge of the GRAMMYs' site design and UX. It’s been really rewarding to work with the Recording Academy for so many years on such a high-profile project.


Blink Reaction: Virtualizing your Drupal Dev Environment for Cleanliness and Consistency

ma, 2015/01/05 - 5:52pm

Too many versions of PHP on your system? MAMP got you down? Can’t find that .ini file? Don’t fret, go Vagrant! Many Drupal developers use a web developer stack such as WAMP, Acquia Dev Desktop, or MAMP to host their projects locally. When working with multiple clients, your hard drive can turn into a dorm room nightmare of multiple copies of PHP, MySQL, and Apache in order to assure compatibility with the client. Instead, simplify and standardize your workflow — and your team’s — by using freely available virtualization tools.


Tyler Frankenstein: DrupalCamp Michigan 2015

ma, 2015/01/05 - 5:43pm

Let's get together for DrupalCamp Michigan 2015. This year the camp will be hosted at Henry Ford College in Dearborn, MI on Saturday January 31st. Please visit the camp's website for more details:

Tickets are only $15.00, The deadline for session proposals is January 11th, and sessions will be chosen on the 12th. JetBrains will be giving away 3 personal PHPStorm licenses at the camp, so be sure to attend for a chance to win.

We hope to see you there, cheers and happy coding!


Appnovation Technologies: Understanding Personalization

ma, 2015/01/05 - 5:32pm

In recent weeks I have had the opportunity to work closely with some great opportunities along side our sales team allowing me time to explore some potential solutions way ahead of any full blown development cycle can kick off.

var switchTo5x = false;stLight.options({"publisher":"dr-75626d0b-d9b4-2fdb-6d29-1a20f61d683"});

ThinkShout: The Power of a Collaborative Community

ma, 2015/01/05 - 5:00pm

Originally published on on December 10th, 2014.

My Year in Drupal

I’ve been fortunate to attend some of the biggest Drupal events in the U.S., and I always walk away from them with plenty of food for thought. Months ago, NTEN afforded me the space here to sing the Drupal community’s praises and I haven’t stopped since. I’m constantly reminded of how much I value its existence. More recently, I flew down to San Francisco to take part in the Nonprofit Summit at BADCamp that I’d co-coordinated, where I got to hear from the Bay Area folks about Drupal and nonprofits in their neck of the woods.

Once Again, The Drupal Community is Awesome

Events like BADCamp remind of the value of discussion and the exchange of ideas. Struggling to find a solution? Look to your community. One of the reasons I so appreciate the Drupal community specifically is how wonderfully they collaborate. Out of resources? Speak up in your discussion group or start a thread on a forum and watch the outpouring of support and ideas. The next thing you know, you’re looking at a list of new modules and tools that you’ve never heard of, and they might be exactly what your site needs.

There’s something wonderfully exciting about being in a room full of people with the same idea: let’s create and use technology to help people. This kind of collaborative atmosphere can make even the tallest of technological hurdles seem surmountable. If you enjoy events like BADCamp for networking and learning about nonprofit tech, then there are a couple of other events you'll want to put on your calendar.

NYC Camp

If you are a fan of BADCamp, then NYC Camp is just your speed. It's a free, week-long Drupal conference in New York City from March 16-22, 2015. There's also a nonprofit summit on the Friday of that week, which you definitely won't want to miss.

Drupal Day at NTC

For the last three years, we've been coordinating Drupal Day at NTEN's Nonprofit Technology Conference, so I may be a little biased when I say this is an excellent opportunity to learn more about Drupal for nonprofits. You'll hear from Drupal experts as well as nonprofit technologists sharing their Drupal stories and successes. This is a chance to learn about what exactly goes into building a Drupal site and how you can leverage it to further your organization’s mission with case study-style presentations throughout the day. But it’s not just about code - it’s about everything else that goes into making a successful website: content strategy, user experience, responsive design, infrastructure, the whole nine yards. If you’re curious about taking that first step toward Drupal, this event is a great place to start - and get ready for a whole lot of excellent information.

This year, join us on March 3rd, the day before NTC, in Austin, Texas. Registration for Drupal Day is free when you purchase a ticket to NTC. If you’ve already registered for the NTC, but didn’t sign up for Drupal Day, never fear - just contact NTEN event staff and ask to be put on the registration list.

Never Stop Learning

I never cease to be amazed at how much I still have left to learn. I know I’ll never truly be done learning, as is the nature of technology. It’s always in motion, always evolving with us and our ideas. I’m constantly surprised by even the simplest of tools. For instance, if you’re organizing a meetup or hosting a summit of your own, it’s a great idea to provide attendees with a site for collective notes, like and etherpad. This is especially helpful if you have multiple sessions happening concurrently. That way, even if your attendees can’t attend every session, they can read their peers’ notes. One of the most rewarding parts of the BADCamp Nonprofit Summit for me was opening up our once-blank etherpad after the summit and finding pages and pages of notes, tools, and URLs from discussions throughout the day. In a matter of hours, we created an amazing nonprofit tech resource.

I really hope you’ll take the time to immerse yourself in a Drupal Camp or Drupal-themed event and really immerse yourself in this community. These camps are often highly affordable (or free, in the case of BADCamp and NYC Camp), so it’s just a matter of finding one near you. Need help with that part? Build-a-Module’s got you covered. Yes, that same site I mentioned months ago offers online Drupal training as well as a calendar of Drupal events all over the world.

I also hope those of you who are NTC-bound will consider adding Drupal Day to your schedule - it’s a wonderful introduction to the Drupal Community. Even if you can’t make it to NTC or Drupal Day, take a chance on a Drupal Summit. Meet new peers, exchange ideas and concerns, and join in on this ongoing conversation. When you speak up, you become part of the change we all need to make this community, and Drupal, even better.


Code Enigma: Google Analytics Custom Events

ma, 2015/01/05 - 4:23pm
Many Drupal sites use Google Analytics to capture statistics on page views, but often, that's as far as it goes. That's fine if the only events that you're interested in are page loads, but what about all the other user interactions that happen on pages? With a bit of extra work, we can capture statistics on those too using the custom events feature built into the Analytics API.

Drupalize.Me: The Creative Process is Scary and That's Ok

ma, 2015/01/05 - 4:00pm

Staring at a blank screen, notebook, or any other space flooded with emptiness can conjure feelings of worry, confusion, and definitely fear. Yet this is a ritual anyone who considers themselves a creative willingly puts themselves through on a regular basis. Some may dread these less than pleasant feelings, but I am sure there are also many who embrace them, and I am one of them. Full disclosure, creating something is a scary process for me, and that's ok. From beginning to final product there are plenty of uncomfortable moments that I find extremely beneficial and rewarding to a successful creative process. Hopefully after I share how these often referred to as negative emotions are helpful, you, too, will see how essential they are to your creative process, and why they should be embraced and not avoided.


Drupal core announcements: No Drupal 6 or Drupal 7 core release on Wednesday, January 7

ma, 2015/01/05 - 3:30pm

The monthly Drupal core bug fix release window is scheduled for this Wednesday. However, the last bug fix release was two months ago, and there haven't been enough changes to the development version since then to warrant a new release.

Upcoming release windows include:

  • Wednesday, January 21 (security release window)
  • Wednesday, February 4 (bug fix release window)

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.


3C Web Services: Introduction to the EntityForm Module for Drupal 7

ma, 2015/01/05 - 1:00pm
The Entityform module allows you to build forms using any available fields from Drupal core or contributed modules. For example, you can create a form using the Address Field module to collect user addresses with properly formatted address fields that change dynamically for each country the user may select.

Code Drop: Test Driving Drupal 8: Writing an Install Profile

ma, 2015/01/05 - 5:43am

Recently I have been test driving some Drupal 8 development to get a feel for some of the new concepts and APIs that have been introduced. I find the best way to learn and get motivated about a new technology is to dive right into a fun side project, where you can be free to experiment and break things at your own leisure. You also have the advantage of selecting a set of features which touch a variety of APIs.

In this post I’ll go over the approach I took to building a Drupal 8 install profile and some of the issues I faced.

Install Profile

I decided to write an install profile in an attempt to keep HEAD up to date. This would allow me to replace core and reinstall my website and be more resilient to upgrade issues.

Categorieën: Hedley Generator - PhantomCSS and UI regression

za, 2015/01/03 - 11:00pm

What's fun about having a tool like Hedley is that every new best practice we acquire can be easily added to our ever evolving, versioned, and codified knowledge base - and it's there for the community to use and improve.

So, as if it didn't have enough of best practices bundled in it already, we've taken another step to get PhantomCSS a "CSS regression testing" tool in.

PhantomCSS in action

Continue reading…

Categorieën: On re-writing drupal contribution analyzer scripts

za, 2015/01/03 - 7:56pm

In the last months I have been incrementally rewriting the scripts behind the stats I weekly publish about drupal core contributions.

This post is about some background on why and how it happened.

tldr; see conclusion below and the link above with produced data.

Why Developer experience

The way scripts worked in past was really different from what a (drupal) web developer is used to.
It used many languages and script tools to be able to produce its output, increasing the difficulty to start modifying it.

Raw data extracted/processed was stored on CSV files, but interacting with it has proven to be tricky and error-prone.

New/better tools available

Since the time I originally wrote this better tools have been created or stabilized enough to be used.


There was some places where the approach was just too fragile and bug prone, specially around the two places where message typos were tried to be corrected by guessing.

Also a Makefile was orchestrating how things were created, but it was just too big to be maintained manually.

How Restructure

This project is about a lot of little pieces working together, a.k.a. glue code FTW, so when I wanted to rewrite several pieces in php, I was needing a way to help structure the code. Also, it is mainly about CLI scripts, so using Symfony Console component sounded like a good idea.
And naturally I also wanted a dependency manager now that I was going to use an external code, I ended up with composer.

The target was then clear: to convert scripts piece by piece to php with a symfony console application containing several commands, one for each piece.

Extracting/processing information form git history was the first step. Doing the same than the python git wrapper library plus extra logic did not look like a good option: it is expensive in general because OS process forking is it as well.
Now I'm using libgit2 library php binding and some git forking for non-trivial operationsvia the library, which improves a little performance given we have mainly C speed there.

After that I wanted to introduce some customization for end user, so I used configuration files in YAML, and used symfony yaml component.
Three configuration files were added: a general configuration file, a mail to username mapping file and a commit message overrides file based on commit hashes.
Overriding commit messages lets fix commits without replacing matching based on the message, but instead relays on commit hashes, making error-prone replacing disappear, mostly.

In early development it was clear automation was going to be a key part for this project to work because of the inter-dependencies during the run.
The makefile orchestrating the run was good enough at the start, but it was really hard to maintain, so it is now dynamically generated, based on configuration files.

CSV files are now replaced with one table in a sqlite database per scenario, so it can be queried easily.

Drupal developers should now see more familiarity in this project: php is the main language used together with a database.


This project has been about drupal core for a while, but the way used to extract information is not drupal core specific, but drupal community specific.
There was not really anything apart from scripts flexibility preventing to use it for non-core drupal projects, so I added missing abstraction pieces in order to do it.

New features

This restructure has proven useful for me: I could add several more pieces relatively easy.

CSV and files with username:score are useful, but html is more natural to show in a browser, so I added variations to generate html files of scoreboards. I started using twig to handle related templates.

Data can be seen in context better when shown in a plot. I added some extra generation code using also the flot library to draw some indicators.

It also adds some inter-scenario comparisons, e.g. core's 7.x vs 8.0.x branches indicators.


This set of scripts historically has been tricky to setup/install.
In the new runner branch I am now maintaining a script to automate the process even more.
It is mainly about calling the right commands in the right environment and hopefully also works as always updated documentation on how to run them.


In conclusion, this rewrite:

  • Improves developer experience and maintainability in general: less languages/tools, more unification on overall process with clear points to override data.
  • Generalizes the target to be usable by any drupal project, e.g. contribute modules, so not only core benefits with it.
  • Restructures logic using new/better tools for some tasks: libgit2, composer, symfony components, flot and twig.
  • Stores extracted information in a sqlite database table, allowing new indicators to be extracted more naturally through queries.

This code is far from perfect, but I am glad of how it end up, it's cleaner and easier to develop/maintain/improve.

Hopefully someone else finds this as useful as me. If you want to help/fix/request a feature please use the relevant issue queue, where I try to keep pending stuff, patches there are welcome!


Doug Vann: Why I'm supporting Drupal Camp Karachi 2015

za, 2015/01/03 - 1:03pm

To help out Drupal Camp Karachi visit and Azmat will get back with you promptly!

If I tell you that Drupal is growing like crazy, that's not news. If I tell you that Drupal is growing all over the world at an amazing rate, that also is not news. But, what is news, is this. Sometimes these camps need a little help to keep things going. Unlike so many U.S. based camps where large Drupal shops are expected to sponsor every year after year, some non-US camps are victims of their own success. Many will come and many more want to come, but the per attendee price is too high for many.

DrupalCamp KARACHI is January 9-11 :
The price is $50 US per attendee which covers the the two paid days of the camp. The training day is free.
The venue is the famous Institute of Business Administration in Karachi 
The deal with the venue is that all students get in free. THIS is a serious hit to the budget and THIS is why I'm helping out and blogging.
My buddy, Azmat Shah is one of the chief organizers. He has kept me up to date with the finances, and now I'm blogging to raise some support! :-) Below is some information he put together to wrap this story in some context.


Pakistan is 6th most populous country in the World with a population of more than 180 Million. In Pakistan’s largest City and World’s 7th Largest city by population(23 Millions) named Karachi, Drupak ,a Drupal based web Development and Training company  is spearheading a Drupal Camp on Jan 9,10 and 11 ,2015.  Karachi is home to one of the country’s oldest universities and one of them, Institute of Business Administration Karachi, established in 1955 which remains the oldest business school in South Asia, is the host for Drupal Camp Karachi. Drupak are stationed in Peshawar, a city 1400 miles away from Karachi. First two days of the Camp are full-fledged Drupal Trainings and the third day will be the main camp day with sessions from different speakers. This model is how Drupal Camps should be, as I mentioned them in my recent blogpost. Jibran Ijaz , a favorite son of the Drupal Community in Pakistan is keynote speaker of the Camp. He has ample contributions in D8 and D7.

Drupak has dedicated website for Drupal Camps in Pakistan. They have arranged 4 separate Camps so far. On December 1,2013 in Islamabad, Drupak and Figover arranged Drupal Camp in Abasyn University Islamabad.

In Lahore, at Information Technology University Lahore, Drupak , YASGLOBAL and MughalTech arranged Drupal Camp on May 3rd 2014. Around 105 participants attended the one day Camp.

Drupal Camp Islamabad was held on May 10,2014 participated by 120 plus participants. Figover , a Drupal based firm were partners with Drupak for the Camp. Drupal Association provided grant for these two camps.

Drupak also arranged Drupal Camp in Dubai on October 26,2013, at SZABIST,Dubai Campus, a Pakistani University in Dubai. The camp website is . Drupal Association granted some amount for the Camp which helped some of the expenditures of the CAMP. There have been other camps in Pakistan spearheaded by other companies and we have been part of most of them.

Just recently, as a great move to promote Drupal Culture in Pakistan , Drupak has initiated Drupal Career Development Program in Peshawar Pakistan which will train outgoing students of Universities for free . The program is a move to introduce Drupal to the talented students and increasing the number of Drupal Developers from Pakistan. The DCDP is a 4 months long Drupal Mastery Training program and then two months of paid internships which will be given to 12 Students of Computer Science of Universities. The program has been divided into phases of 3 universities each..Thus 36 students will get Drupal trainings in a span of 4 months absolutely free.

Countries like Pakistan, with so much of Drupal talent, the community must look forward to them and support them. But this is only possible, if these emerging  Drupal communities are sponsored and well backed. This upcoming camp in a hugely populated city will train 120 Students in Drupal and already some of them are narrating problems because of the very nominal fee put in i.e 50 Dollars for two days with Lunch.

View the discussion thread.