Positive at DrupalCamp Bristol 2015
This last Friday and Saturday, the 3rd and 4th July 2015, Positive were in attendance at the first DrupalCamp to be held in Bristol. But not only that, our Head of Tech, Jon Hadley, was on the organising committee, we were an organisational sponsor, and we also had 3 speaker slots during the 2 days (1 on the Friday, 2 on the Saturday).
A long time in the making.
Since we’ve been in Bristol, and making websites with Drupal – there has been talk of a DrupalCamp. Bristol has a vibrant Drupal community – and it was inevitable that there would be a camp. It was just a case of when!
For the last 6 months the committee have been planning, preparing and organising the 2 days, meeting every fortnight to get things ready. There were designs to be created, a site to be built, t-shirts to be printed and speakers to be arranged.
A design to make Brunel proud.
One of the many ways Positive supported the DrupalCamp was through design resource and by creating the DrupalCamp Bristol identity and logo.
Capturing the essence of Bristol and the essence of Drupal in branding that works large or small, on stickers, t-shirts and of course online wasn’t easy – but we love what we came up with.
The Business Day
The business day was based around a single track of events on the Friday from a host of business speakers (full list here: https://2015.drupalcampbristol.co.uk/programme/business-day) kicked off by the ever memorable and charismatic Jeremey McGuire AKA "jam".
Jam waxed lyrical on business and governement really embracing open-source technologies, specifically how European governments and local councils have changed the way they approach ther technlogy sets. Moving towards open source has had a huge effect on keeping investment within their local communities. Open source technologies can help us all keep our data and finance local, and help us all compete with the big boys on a level playing field.
Next up Kit Hunwicks talked about learning to love the brief. His insights on making sure that when tendering for digital products the objectives and goals of a product are specified honestly and clearly were solid advice for anyone on the other side of development from the agency and freelance bods in the room.
The discussion session included Positive's very own Founder and MD Mike Jenkins, alongside Nick Torday from Sift and Dan McNamara from Microserve. This insightful topic session covered everything from team make up, lessons learned from years delivering Drupal and how we can work better together as a community.
Ben Wilding from Cameron and Wilding took us into lunch with a talk based around a the variables of doing business and doing drupal. There was an excellent Q&A session for this talk where Ben asked the audience what they felt were the important variables of their businesses, including some deeper discussion around developing your business for growth or developing for purchase.
Following lunch, Paul Johnson from CTI Digital did a fantastic job giving insight into thir recent work with GOSH and how their processes had to adapt to work with the client. Of particular insight was how they used a highly experienced data planner who was not an obvious hire, but a perfect fit for mapping and translating the content and database records from old site to new.
Matt Connoly took us into the networking session. Currently ruuning a global innovation agency; Tällt, Matt gave an intriguing talk about startups and the traditional agency revenue model, suggesting that a move to partnership and revenue share can often be a far more profitable way to structure agency remuneration.
Going out with a bang! on day 1 we were treated to a talk by the ever wonderful Matt Jukes. Matt has been at the Office of National Statistics for a while now and his brutally honest talks highlight the highs and lows of taking a website that was described as "the worst website in the world" into a beta that people will love. Matt is always excellent value and was currently in the throws of a beta launch of the new ONS site.
The Developer Day
There were some great sessions on the Saturday (there a full list of what you might have missed here: https://2015.drupalcampbristol.co.uk/programme/sessions) and it was all kicked off with a great keynote from Leonie Watson on how accessibility has changed over the life of the web.
It was a real honor to see someone using accessibility tools to use a computer, enabled by technology. The take away being that we’ve done the hard work making things work cross browser, and its down to us to ‘code like we give a damn’ to bring accessibility into everything we do was a powerful way to start the day.
Marek Matulka from Sensio Labs gave a really interesting overview of bridging Drupal and Magento, using Symphony components from a Drupal 7 build. I can see this being a way to smooth the progress to Drupal 8, writing good object oriented code that we can use in Symphony components now seems a great way to lower the cost of entry to Drupal 8.
David Hughes from Cancer Research UK talked us all through the approach they took to theming standuptocancer.org.uk. Namely, a pragmatic use of SMACSS and BEM, designing in the browser starting on Github pages and moving to a Drupal theme when the design was ready.
A real take away was his recounting from the client that ‘it looks just like the design!’ , this approach meant it really was just the design.
Mike Dixon from Computerminds took us through their build pipe, and visual regression testing. Their internal tool ‘jeff’ (codename) looks to be something that takes visual regression testing like wraith to the next level with easy to interpret visual differences.
I gave a talk on our recent project with The Children’s Society – http://toughnbuff.childrensociety.org.uk.
This is a ‘headless’ Drupal site. I talked about the process we went through, the lessons we learned and the problems we overcame.
I touched on the JustGiving implementation – and it turns out lots of people in the Drupal space are looking at this – including CTI Digital, FlowMoCo and us at Positive.
To round out my presentation I gave a few technical demos, and I’ve released that code here : https://github.com/positivestudio/bristol_drupal_camp_demos for anyone to have a look at.
It’ll give you a kick start on angular development with Foundation for Apps as a front end to a headless Drupal back end. Feel free to ask me any questions on that via either @timmarsh, or the issue queue on that project.
Integrating with Drupal
Ringo gave the final lightening case study on the work we did with Mytime Active, using Drupal to vastly simplify their IT infrastructure, integrating their booking system with their website via Drupal Commerce, and much more.
Having the chance to look back at a large site build like that, with commerce, API integration and responsive designs make you realise just how much you can do with Drupal.
Ringo also told the best jokes, and rounded the day of on a high point.
All in all this was a fantastically successful 2 days. Many thanks to the organising committee , and here’s to next years event, and many more.
Every development team and even every developer has a set of ‘go to’ tools.
At Positive, we feel that every Drupal developer should have these 5 in their toolbox. They help monitor site performance and code standards. They help you take on new modules and new approaches. In short they help you be a better developer.
There are a couple of ‘no brainers’ that I haven’t included in this list, because they are just a given.
Namely Drush – the command line for Drupal, it helps us manage maintain and monitor all our sites. And GIT, distributed version control done right. We use Github, and couldn’t imagine any other way of delivering sites.
Without further ado – here’s the list, and some examples of how to use them.
1 / Sitespeed.io
Web performance is important to us, and at Positive we use sitespeed.io to analyze the speed and performance of all our development.
It’s quick and easy to use, and is one of those things - it just works.
We can point it at a site, and get reports like this example one http://examples.sitespeed.io/3.0/2014-12-19-12-18-17/ in minutes. The ‘hot list’ tab getting us our quick wins, the summary giving that feel of how we’re doing. We always turn on the screen shots mode, and do two runs – one for mobile, one for desktop.
These are the commands we use with a native install. It takes all the urls in urls.txt and tests them:
sitespeed.io --sites urls.txt -d 0 --profile desktop --screenshot --name "desktop" -b chrome
sitespeed.io --sites urls.txt -d 0 --profile mobile --screenshot --name "mobile" -b chrome
We also use it via Docker – if you’re going to go that way – after a Docker pull, you can use these commands (more on Docker later):
sudo docker run --privileged --rm -v "$(pwd)":/sitespeed.io sitespeedio/sitespeed.io sitespeed.io --sites urls.txt –d0 –profile desktop –screenshot –name”desktop” -b chrome --seleniumServer http://127.0.0.1:4444/wd/hub
sudo docker run --privileged --rm -v "$(pwd)":/sitespeed.io sitespeedio/sitespeed.io sitespeed.io --sites urls.txt –d0 –profile mobile -b chrome –screenshot –name”mobile” --seleniumServer http://127.0.0.1:4444/wd/hub
2 / PHP_CodeSniffer and phpunit
Every bit of code we write is written to be functional, maintainable and readable.
The code sniffer, allows us to keep an eye on our code standards. We aim for everything to be to the Drupal coding standards [ https://www.drupal.org/coding-standards ]and the code sniffer runs across our code, does static analysis and reports back any violations.
Assuming you’ve got phpcs in your path (that’s the script it provides), this:
phpcs --standard=Drupal --extensions=php,module,inc,install,test,profile,theme,js,css,info,txt ../modules/ > coding_standards.txt
phpcs --standard=DrupalPractice --extensions=php,module,inc,install,test,profile,theme,js,css,info,txt ../modules/ > bestpractice.txt
when run, goes over our modules directory for a site and gives us two reports, one for standards, one for best practice.
Phpunit https://phpunit.de/ is the other tool in our arsenal that helps us achieve quality code. It’s a programmer oriented testing framework, which means we as developers can write tests that tell us our code is behaving.
We find them so useful that we’ve even submitted this pull request to the JustGiving API with an initial set of tests. We feel that by using composer and a phpunit.xml it lowers the barrier to entry, and aids understanding of a complex API like this.
If you check out that repository from GitHub, you can run:
- composer install
And you’ll run the test suite.
Speaking of composer…
3 / Composer
Composer https://getcomposer.org/ is a seamless, flawless package manager for Php.
It can manage the dependencies of a project, and it can manage the installation of tools. Think of it like a cross between Drush and magic for the wider Php ecosystem. For Php libraries it does feel close to magic , when you have an autoload.php created for your project, and it just works , it’s a timesaver.
Every server we commission we globally install Drush with Composer.
- Step 1) This goes into your bash profile.
- Step 2) Then in the terminal (so the path change is applied)
- Step 3) Then you run
composer global require drush/drush:dev-master
You now have Drush in your path, ready to go.
We also use it to install PHP_CodeSniffer. In fact this is the composer.json from our tools project, loading up code analysis tools
"pdepend/pdepend" : "2.0.3",
"phpmd/phpmd" : "@stable",
Running composer install gives us all of those tools in the vendor/bin directory of the project.
4 / Gulp or Grunt
Well, beyond them being awesome and a chance to get into the node-js-a-sphere, they automate things. Boring things. Which in turn makes our lives as developers that much more interesting.
Gulp can also serve content. Whilst building a recent headless Drupal site, the developers working on the front end were able to test against a version served from gulp – making it very light weight and responsive to use.
And did I mention it does file watching – so when the saved a change to a SASS file, the workflows kicked in, and gulp ‘Livereload’ magic kicked in and reloaded the page showing the changes.
One final thing to touch on why a task runner is so awesome!
Browsersync.. http://www.browsersync.io/docs/gulp/ that’s why.
Navigate your site on one browser, all other connected browsers follow it.
When you say cross browser responsive testing, I say bring it on – We’ve got Browsersync on our side. We fire up our virtual machines, connect them all to Browsersync, and test away.
5 / Kitematic (or boot to docker)
Kitematic is a lovely (mac only) tool for managing Docker containers. A container is a bit of a stretch if you’ve never used them before – in short they are environments that last for as long as their command needs them.
That command may be a sitespeed.io test, or it may be running a database server. They are lightweight, easy to manage application holders. So if we need to test something on a different version of Php, we can spin up a container.
Or if we want to test a particular tool – there’s invariably a container on DockerHub https://hub.docker.com/account/signup/ we can use to try out.
If you’re looking for an intro to Docker, this is an ideal starting point: http://odewahn.github.io/docker-jumpstart/introduction.html and can get up and running quite quickly.
I love Docker because it gives us freedom from the operating system and their dependencies / libraries. And it gives us the freedom to break stuff - which is where the interesting / fun stuff happens. If all of a sudden its cheap, and quick to test something – with no risk. Why wouldn’t you?
So there you go; 5 invaluable tools, to round out your toolset and help you have a better, more fun, less stressful life delivering Drupal websites.
Behavioural Economics for charitable giving - Part 2
If you haven’t seen it yet, the best place to start with Behavioural Economics for charitable giving is by reading part 1 of this blog series.
To provide a quick overview of Behavioural Economics, it can be briefly described as borrowing insights from the science of psychology in order to make small and simple changes (behavioural scientists call these ‘nudges’) that encourage supporters to make more of the decisions we want them to make, like increasing donations or taking campaigning actions.
Adding to Part 1 of this series, the following article outlines some more of our favourite behavioural economics techniques for charitable giving.
The power of peers
Using other people’s giving behaviour to set an example can be a great way to increase charitable giving. By displaying the behaviour of others to potential donors, it has a ‘normalising effect’ that can encourage desirable actions from supporters.
This is what behavioural scientists often call ‘groupthink’ or ‘herd’ behaviour, where people have a tendency to do things because many other people have done the same things before.
People are strongly influenced by the actions of those around them, what they see other people doing and the decisions that other people take. Including ‘social norms’ within donation asks can have a huge effect on individual giving behaviours.
Research conducted by The Cabinet Office’s Behavioural Insights Team changed a legacy donation ask in a will writing service to include peer-based social influences, creating a marked change in donation response.
The question was changed from:
- “Would you like to leave any money to charity in your will?”
- “Many of our customers like to leave money to charity in their will. Are there any causes you are passionate about?”
In the second legacy ask the number of people leaving a legacy increased by 42% because they were prompted to conform to the ’social norm’.
Within online donation and fundraising, we can use social proof to take advantage of this peer effect. A simple way to do this might be to add share prompts to the success page of a donation user flow. This allows donors to encourage their network to donate too by normalising donation as an expected behaviour.
Giving more tomorrow
Monthly contributors are some of the most valuable donors to charities. They give more than donors who give irregularly and help stabilise the long-term financial planning of the charity whilst reducing administration and fundraising costs. For these reasons alone, increasing the contributions of regular givers is very worthy of some behavioural efforts.
It has been found that for this donor type, delaying the start of an ask will usually encourage more donors to give a larger regular donation. Behavioural economists call this ‘present-bias preferences’ and describes how people often tend to less readily take action on things that have an immediate cost, but have no short term benefit. Equally, it means that people are more likely to agree to something that doesn’t have an immediate impact on them.
Research was undertaken by Anna Breman at the Stockholm School of Economics as part of a routine fundraising campaign for a large charity involving 1134 donors; regular givers were contacted via telephone and asked to increase their donation, being randomly given one of two options:
- The increase starts now.
- The increase starts in two months’ time.
In the second option (a delayed start to the donation increase), those choosing to increase their donation amount was 32%higher than the immediate increase group. As well as this, those in the delayed increase group increased their donation amount by an average of 19% more than those who increased their amount immediately.
The study shows the power of ‘giving more tomorrow’. A simple addition to regular giving forms implementing 'present-bias preferences' would only require a small percentage of donor action to make a significant increase to regular giving; making it a very powerful technique for your charity.
The Personal Touch
When someone receives a gift, they will usually feel the need to give something back. Within charitable giving, these gifts can be given to create a powerful personal touch alongside other personalisation efforts. The idea being that by adding to the personalisation with a gift, people will be more likely to make a donation.
In behavioural science, this is called ‘reciprocity’. This is the theory that in response to a friendly act such as gift giving, people are frequently much more cooperative than expected, replacing ‘self-interest’ for altruism.
Deutsche bank wanted to test this theory during an employee fundraising campaign for Meningitis Research UK that asked employees to donate a day’s salary to charity.
Employees were randomly allocated into different communications funnels. One group received a standard email from the CEO addressed to ‘Dear colleague’ with a second group addressed by name (e.g. ‘Dear Steven’). This was a test on basic personalisation approaches which are tried and tested so these were expected to show a clear result in favour of the personalisation.
However, in addition to this, people from certain offices were also greeted by volunteers who gave them a gift of sweets branded with the campaign logo.
In the non-personalised email group approximately 5% of people gave a day of their salary to charity, when these people were also given the branded sweets this increased to 11%.
The personalised email group (‘Dear Steven’ rather than ‘Dear Colleague’) showed a similar effectiveness to that of the branded sweets for the non personalised group, with 12% of people in this group giving a day of their salary to charity.
However, when the two approaches are combined, by giving people both the branded sweets and personalising the email from the CEO, donation rates tripled to 17%.
This result of the campaign meant that if they had only run the non-personalised email, the campaign would have generated around £295,000. If all of the staff had received the personalised email and the sweets, the bank would have raised more than £1million.
Experimenting is fun
The examples above and in part 1 of this series are proven to be highly effective and low cost ways to increase fundraising with small changes, so why not make the leap and try some things out.
If you are making changes to online fundraising efforts, its easy to set up experiments and measure your results with the host of tools available like these:
You might test something as innocuous as the wording of a donation ask, right up to implementing gifting for your most valued donors. Either way, it can be fun and exciting to try things out and see what results you get, you might be surprised how much value you can add with the most minimal of investments.
For more like this, sign up to our email newsletter here.
We attended Smashing Magazine Conference Workshop 2015
We recently had the pleasure of attending one of the renowned Smashing Magazine Conference Workshops. Hosted by Vitaly Friedman (Mr. Smashing Magazine himself), the workshop pivoted around Responsive Web Design and Development.
The list of topics the workshop covered was extensive. Exactly how extensive was only realised when we arrived - a preliminary show of hands for who had to leave by 6 was a promising insight into what lay ahead.
What seemed certain was that we wouldn’t be leaving mentally undernourished. Vitaly covered the front-end ‘syllabus’ with thoroughness, enthusiasm, practical application examples and a primary focus on achieving the best user experience possible on smaller pixel real-estate. This was particularly relevant with the impending release of the Apple Watch.
Here are some key take-aways from the workshop:
- A paradigm shift is required to adjust expectations for responsive sites. Reproducing responsive designs as ‘pixel perfect’ websites shouldn’t be encouraged and can result in diminished returns - the web is not that simple any more. At Positive we have embraced this early, making a shift to ‘atomic design’ - designing the smaller components of a site and letting them inform the broader design. This has worked really well for us in a number of recent projects and has allowed us to move away from the tired and sometimes unsuitable ‘pixel-perfect’ methodology.
- Truly responsive agencies do well to adapt their workflow to responsive website development. A basic waterfall project management approach seems too simple - collaboration in small mixed-skillset teams during the build seems to be the ideal scenario. We take a blended approach to project management at Positive that gives us the best elements of an Agile methodology; completing work in sprints, regular iterative development and an evolution from a prototype. This is then structured within a loose waterfall structure, giving our clients the security of a ‘definition of done’, fixed timescales and defined budgets.
- There was a lot of discussion about the importance of ‘above the fold’ design (ie. having your most important content visible at the top of the page) and its declining validity as the ‘fold’ of designs become so variable. This is especially true on mobile devices as recent research suggest that users will often scroll before they even view any content.
- We also spent time discussing the (semi)importance of carousels and how to make them more effective, icon design and label placement, SVGs, image compression techniques for multiple device loading, performance tweaking and a host of other topics that left us full of conversation on the journey home, bringing new techniques and ideas back to the studio to fold into our work.
Why Drupal could be the best platform for your Charity website.
Charities and not-for-profit organisations are faced with a growing reliance on their digital platforms and websites for campaigning, fundraising, supporter information and service provision.
With that in mind, having a solid website platform is becoming a priority for the sector and Drupal has become a “go-to” option in recent years with everyone from smaller start-up voluntary organisations, right up to the biggest charities and not-for-profit websites in the world (including Cancer Research UK and The White House).
Our specialism in charity and not-for-profit work is complemented by our expertise in Drupal website development, so in this article we investigate some reasons why Drupal can be an excellent choice for your charity’s website platform.
Why is it great for charity websites?
There are plenty of reasons why Drupal is a great choice for a lot of charities and its open-source, community led and non-profit ethos is at the root of a lot of them.
Open Source and Sustainable
Drupal is free to download, modify and use, carrying no ongoing licence fee and it has been this way since 2001. This means that a massive community of core product developers has sprung up around the platform to keep it sustainable by continuously improving its central functionality, monitoring and reinforcing its security features and updating its codebases to take advantage of the latest technologies.
Community Led Enhancements
Outside of the Drupal core developers, an even bigger community (including us) are developing modules for Drupal for specific website functionality, sharing them when they do. These modules work with the Drupal platform to provide off-the-shelf website functionality without the need for specialist development. A great example that we often use is CiviCRM, a major communication and constituent management tool. Used by over 8,000 not-for-profit organisations, it is supported by an entire directory of its own modules and extensions to tightly integrate it with Drupal.
“One of the biggest pros to me as a Digital Editor is the range of Drupal modules that are available. We can add new content types and formats very quickly and easily. We are confident in the modules too because they are supported and documented by the open source community. It makes the platform very flexible.”
- Matthew Summers-Sparks, Digital Editor at The Children’s Society
This community development and testing effort prevalent within open source technologies leads to an unrivalled speed and integrity of new features. An excellent example of this was highlighted in a talk given by Jeffrey A. McGuire at Drupal Camp London last year. He showed that as Pinterest hit 10 million unique users in February 2012 a new website module was developed for user’s pinned images, it was then community tested and verified as stable by March 2012. By April of 2012 it had been implemented effectively on 15 major Drupal websites, it is still widely in use today.
This huge development community also means that your website will be very widely supported, so finding an agency or developer to work with will be easy. There are lots of agency and development providers to choose from and friendly support forums that will provide an answer to any questions or issues you might have, often within minutes of asking.
As part of the Drupal community we are actively engaged in these forums, often providing tips, resources and help as well as reaching out to get advice on the latest best practice too.
“One of the main benefits to us of using Drupal is the fact that there is such a massive network out there, we are able to support Drupal really effectively with a mixture of our 3 in house developers, trusted freelancers and specialist agencies. It prevents that ‘patchwork situation’ where you are supporting all sorts of proprietary platforms and have to seek multiple specialist teams for support.”
- Nick Capeling, Digital Infrastructure Team Manager at Save the Children
Widely Used by Charities
In our experience, Drupal’s popularity in the not-for-profit and charity sectors creates a virtuous cycle, where internal charity staff hires like content editors and website managers will often have experience of updating and administrating Drupal websites. This makes maintaining the day to day site requirements easier, with advanced team members able to take advantage of Drupal’s powerful administration area to make considerable site changes without the need for agency or developer support.
We find that the conversations and working relationships we have alongside our charity clients with in-house Drupal experience makes for a really effective partnership too. Ideas are rapidly exchanged and challenged which leads to faster and better progress through projects and tasks.
“We find that for a Charity like Cancer Research UK the Drupal content types work amazingly well for of our teams, even the non-techy ones amongst us. The way Drupal content types are structured allows us to then re-purpose content across our web estate which saves us time and facilitates mobile-first design.”
- James Dodd, Senior Solution Designer at Cancer Research UK
Charity Specific User Groups
Because so many charities use Drupal and open source technologies, the Open-Charity user group has emerged. The group encourages those using and working with open source technologies like Drupal in the charity sector to work together.
As members of this group, alongside organisations like Cancer Research UK and the Wellcome Trust it is a great place for discussion of shared areas of concern or interest and creating and implementing best practice guidelines. Open-Charity creates an efficient working group that helps us all to make a bigger difference together, a real benefit of choosing an open source technology like Drupal.
““We part run open-charity.org and find that it’s a really positive experience to share ideas. I’d advise charities thinking of taking on Drupal to get involved with the Drupal community generally,- fix core bugs, contribute your code back and take part in community events” ”
- James Dodd, Senior Solution Designer at Cancer Research UK
Easy and safe to learn
Drupal is designed to be easy to use, but for those new to it, Drupal’s multiple user permission system prevents any mistakes being made during the learning process.
Our general approach is to limit access to the more powerful controls for less-advanced users, providing moderation alerts to an administrator within the charity when content additions and site changes are made. These changes can then be checked fully before they are visible to the public.
As team members become more competent, more of the administrative functionality can be made available to them, scaling with their experience and needs, the ultimate objective being to provide as much of a charity team as possible with Drupal expertise, in a safe and managed way.
“On our previous proprietary system we spent a lot of time and money supporting our site editors, with Drupal, it is really easy to configure in a way that means our editors now need very little support, if any.”
- Nick Capeling, Digital Infrastructure Team Manager at Save the Children
Similar to how Drupal scales across user capability, we find Drupal itself is also highly scalable, its core functionality works really well as a basis for even the smallest charity client. As these charities grow and the digital needs of the organisation develop, we have seen some of our Drupal work extend with modules and custom development to match the ability of the world’s biggest charity websites; a lot of which also use Drupal…
“We have found Drupal to scale well for us, we keep an eye on the speed of things like form submissions and our current install is load tested for 5000 per hour. We are considering things like breaking the site down into services and micro-services within Drupal to distribute functionality”
- James Dodd, Senior Solution Designer at Cancer Research UK
So who else uses it?
If you are considering a move to Drupal for your charity website, you’ll be in good company. Drupal is used by some of the best charities in the UK, including:
- Cancer Research UK - http://www.cancerresearchuk.org/
- Save the Children - http://www.savethechildren.org.uk/
- The Children’s Society - http://www.childrenssociety.org.uk
- Amnesty - http://www.amnesty.org.uk
- Greenpeace - http://www.greenpeace.org.uk/
- Sport Relief - http://www.sportrelief.com/
- Shelter - http://www.shelter.org.uk
- CLIC Sargent - http://www.clicsargent.org.uk/
- War Child - http://www.warchild.org.uk/
“We moved to Drupal in early 2011 upgrading to 7 the following September. We moved over to drupal because of its huge community that provides a huge amount of flexibility and resources for us. It allows us to develop very small enhancements that we can iterate up to major pieces of functionality.”
- Nick Capeling, Digital Infrastructure Team Manager at Save the Children
Where do I sign?
We love Drupal and find that it’s normally a great fit for our charity clients, but everyone is different and we would never recommend it without being confident it is the right tool for the job. So in the interest of a balanced article, a word of warning.
Drupal won’t always be right for you, and it’s important to take an objective approach when choosing a new Content Management System (CMS) as they might not be compatible with things like your Customer / Constituent Relationship Management System (CRM), donation services, even the financial and organisational make up of your charity.
We always advise a full audit of these factors before making any decisions and often complete them even when we have been engaged to develop a new Drupal site to ensure we don’t hit any roadblocks later on.
Once you have done your homework though, if Drupal looks right for your charity, we couldn’t recommend it more highly.
For more like this, and to receive regular insight from our team, sign up to our email newsletter here.
Many thanks to our article contributors:
James Dodd - Senior Solution Designer - Cancer Research UK
Matthew Summers-Sparks, Digital Editor - The Children’s Society @mttsmmrssprks
Nick Capeling, Digital Infrastructure Team Manager - Save the Children
UPDATE: the wonderful people over at Drupal.org have recently created a very handy Drupal Resouce Guide for Non-Profits here.
Making your charity campaign go viral
2014 was a bumper year for charity viral campaigns, with amongst others the hugely successful supporter-led #NoMakeUpSelfie, the touching social story of #FindMike and the inimitable #IceBucketChallenge raising over $100 million worldwide.
With success stories like those mentioned above, every charity wants to capture similar results with their own viral campaigns.
It’s easy to understand why viral campaigns are so infectiously seductive to charities; because they:
- Are often cheap (or even free) to produce
- Led by supporters with peer to peer attribution
- Generate fundraising
- Drive engagement in difficult to capture demographics
- Create “high-volume” PR
- Create charity brand awareness
So why aren’t we all spending more time developing ideas for viral campaigns?
Some uncomfortable truths
Alongside each one of the massive charity viral campaign successes are tens of other campaigns that fell flat, or at best got a minimal amount of engagement, and the reason for this seems to be clear.
When comparing those campaigns that succeeded and those that failed, it is the supporter-led, grassroots campaigns that create real value.
The truth is, that most viral campaigns are not thought up by a charity comms team or agency, and that aiming for a campaign that will go viral overnight is likely to fail due to a lack of an authentic supporter voice behind it.
In a recent Guardian article Kirsty Marrins, content community manager at JustGiving agrees, saying:
"I don’t believe a campaign started directly by a charity would go as viral as either #nomakeselfie or #icebucketchallenge. Why? Because the success of these campaigns comes from people nominating their friends to take the challenge on – not a charity. If it came from a charity it would probably feel contrived and that would, I believe, put people off slightly."
There will always be exceptions to the rule, but the best chance charities have of success on social is by being agile and responding to an existing meme or emerging social trend, aligning with it and creating an associated charitable action.
Preparing to be spontaneous
The #NoMakeUpSelfie campaign was the first campaign that highlighted how prepared charities, with the ability and cultural freedom to respond to supporter activity could align with supporter actions and drive them in the right direction. Perhaps most importantly, they did this without trying to control something organic.
The #IceBucketChallenge showed us the potential of a viral campaign that is shared across multiple charities globally and it is clear from the activity early in 2015 that this trend is here to stay.
This is the sort of activity that with some foresight, almost any charity can achieve. But if you can’t plan a global viral campaign, what can you do to get a taste of viral success?
Learnings from success
Effective viral opportunities like #NoMakeUpSelfie, #IceBucketChallenge and #The Dress are not campaigns that can (or should) be attempted by charities to initiate or replicate themselves. However, there are some things we can learn from them so that if and when it does happen (on whatever scale) we can be ready.
1. Be ready (and able) to react
You can’t plan for social media ‘happenings’ to occur, social media is always in flux and that brings with it huge opportunities for charities, and sometimes some challenges too. With that in mind, it makes sense to have a general plan of action that is agreed upon to try and reduce the challenges that can occur. This is the difference between attempting to plan for something that may never happen and being ready when it does.
Make sure that being ready means that you can make a decision to join in with an event on social media and move on it quickly. A culture of escalations and sign off procedures will see you left behind, so try and get buy-in on a more general social media strategy; circumvent the need for sign-off when you have to react fast. It’s also important to make sure that you can halt any scheduled social media activity if you need to pivot and react to something ‘big’.
2. Don’t be precious about the message
You have to give up the power of messaging to your supporters during viral events. Embracing the fact that the public are creating their own momentum is really important, trying to stifle or control it may be looked upon as interfering unnecessarily.
This energy can be used instead to congratulate public fundraising efforts, call out and re-publish examples of messaging you like, and to lend organisational expertise and interest to the campaign.
3. Make sure people can donate easily
It sounds simple, but you have to make it as easy for people to donate as possible, using the shortest and most memorable ways to donate.
Make sure that you have a campaign specific text-to-donate number or a bit.ly link to a campaign specific fundraising form so they are easy to share and fit inside a tweet. Don’t be shy about reminding people of the details as often as possible.
Making text-to-donate and donation form links campaign specific means you can very easily, and very precisely measure the impact of your fundraising activity during a campaign when the opportunity comes along.
4.Nobody knows what the next big thing will be
In all of the major viral campaigns referenced above; #NoMakeUpSelfie, #IceBucketChallenge and #The Dress no charity started it…. the good ones aligned themselves to it, and had supporters who were engaged enough with their charities that they took it upon themselves to fundraise.
The truth is, that although there are a number of things that can be done to ‘help’ a campaign go viral with traditional marketing planning, it’s very likely that the next professional campaign will be started by the person in the street.
For more like this, and to receive regular insight from our team, sign up to our email newsletter here.
Drupal Camp London - looking back, and looking forward
We attend as many Drupal events as possible and over the weekend of 28th Feb - 1st March the Positive development team went to London Drupal Camp, here is a brief overview of the content and our takeaways from that weekend.
The Drupal community is thriving and is full of talented and enthusiastic individuals.
Our development team have performance goals that include community contribution and as members of the Drupal association we participate in as many events as possible. The talks we attended, and the discussions had between sessions motivated us all to become even more involved in that community.
We are also playing a key part in the organisation and successful launch of Bristol Drupal Camp, with the development team being very active in the thriving Bristol Drupal scene.
With a release coming soon, and nearly 4 years of work behind it, it’s no surprise at the amount of discussion currently aroud Drupal 8. Our bet is that we’ll see it go live around the time of Drupalcon Amsterdam.
Drupal 8 is has a clear mission statement of ‘getting off the island’, or ‘proudly not invented here’. By that, it means looking at what other projects do, and how they approach solutions. And if there is a better implementation out there, rather than redesigning and rebuilding a new wheel in Drupal, building a Drupal that can use the existing wheel.
Rather than being a monolith, the Drupal 8 rebuild is object oriented, uses symphony components, twig templates (and we are sure, even more things to learn about).
This is a key takeaway from Drupal Camp London and fits with Positive's approach of using the right tool for the right job. All to often you can see Drupal used as a one-size-fits-all "golden hammer", and whilst you can technically do anything with Drupal, sometimes there are better, more appropriate solutions, integrations and approaches.
It's great to see the Drupal community embracing and integrating the wider world of open source.
More than just a buzz-word, with Drupal 7 and even more so in Drupal 8, headless development is becoming a strong movement in the Drupal community.
Headless means using Drupal to provide a CMS and data management tool to a front end that is completely independent of the back end. (i.e. - Drupal doesn’t provide the views; ‘the head’).
Positive have already used this approach to provide a backend to an iOS app, and are in the middle of building a campaign site ‘headlessly’.
This approach will become more popular, and with Drupal 8 launching its gold release version, we’ll see Drupal being the tool of choice for this kind of application in the near future.
Theming is how we as developers make websites and digital products look great, and work well on all devices, its getting the images, typography, layouts and feel right.
Whilst we were all excited by headless Drupal, theming is, and always will a big part in developing with Drupal.
We had two major takeaways on theming Drupal from the weekend.
The first one is visual testing. We attended a great talk on using Wraith, and have already started to integrate that into our workflow.
This is a tool that checks for visual differences between code changes. This means as we develop sites, we can see if any changes have had any unintended impact.
The second takeaway was a fantastic talk at the end of Saturday about how theming will change in Drupal 8, there are a host of really new and exciting features of Drupal 8 theming including dramatic performance improvements, even better accessibility and new built-in frameworks . We all thought WOW! at the end of that one.
Possibly the main takeaway for us as a team was the team building aspect of intense learning together. It gave us a chance to spend time out of the studio, away from client work and into play.
We shared evening meals and talked about what we learned in the day, and came back to Bristol a stronger team for the time we spent at Drupal Camp London.
Forwards to Drupal Camp Bristol
Positive are sponsoring Drupal Camp Bristol, and are active in the organisation of the weekend. Our design team have put together the Look and feel for a truly Bristol flavoured Drupal Camp and Jon, our Head of Tech is organising the speakers.
Here’s looking forwards to Bristol Drupal Camp, we hope to see you there.
Image: via our friends at amazeelabs.
Iteration Zero - Adding project value, right from the start
Since I’ve been on about it to anyone that’d listen (or not) at the moment. I thought I’d write a bit about iteration zero (or sprint zero). I’m more XP than scrum — scrum reminds me too much of cold winters on the rugby field — for me it's iteration zero.
So what is it?
I use iteration zero as a ‘get my ducks in a row’ phase, I’ve seen it described in a number of ways — but what all the descriptions have in common, and the way it differs from traditional iterations is that at the end of it you haven’t got anything to deliver to the client. It is, for me at least, the way of making sure that on day 1 of iteration 1 I’m in a position to start adding value to the project, with everything aimed at delivering value to the client.
To get to that position I need the development team to have a development environment, a good understanding of the goals of the project, and a clear understanding of the processes we’re going to be using for the project.
Understanding the project.
Its hard to build quality software if you don’t know what it is that the client wants, and why they want it. Iteration zero is a great opportunity for the analysts, project managers and clients to communicate with the whole team why this project is happening. And once a development team can understand why .. then you’re on to a winner.
A development team that can see the client in their minds eye, and understand what they’re after will be motivated to solve problems. A development team that understands why will cope with changes to the project far more effectively — they may even be the ones proposing the changes to make it an even better product.
If a developer starts writing code, before knowing why they are writing code, it is an open invitation for complexity, misunderstanding, for ‘muda’ or waste as the ‘lean production’ people categorise it.
Knowing the processes.
This is about how we are going to do things, what's the day to day going to be like on this project. I like to settle on things like code conventions; when we’re going to have the stand up; when are we going to go for demos.. that kind of thing.
Its also good to go over the general approach — build versus buy, design ideas and libraries/language we think might fit for the project.
By this point in the project we’ll have the story cards (hopefully) — another key thing to work through in iteration zero is who knows what , a story card is a place holder for a conversation — reinforcing who there is to have that conversation with when necessary is really useful at a projects inception.
Where understanding the project is about where we’re going — this is more about how we’re going to get there.
If a developer starts writing code before knowing the landscape like this — problems are going to be harder to solve, and take longer to solve. Giving them a clear view at the beginning of the project can only help.
A development environment.
Any software developer needs tools — but the last thing you want is to be building a toolset, and trying to deliver value to the client at the same time. Neither will win.
An even worse situation is to have a contractor start on a project on the monday, and only be able to deliver value by wednesday because they are ‘setting up’.
You need to be able to easily put in a developer's hands the tools to start coding , though some may get a kick out of it, having developers spend time on building servers, downloading IDEs , installing software... is just another form of 'muda' to me. Iteration zero is a chance for a team to make sure they have all they need, to design their development environment and be ready to hit the ground running.
Also really important in iteration zero is to get the build/deploy process nailed. Set up the version control, set up the continuous integration, commission that staging server... everything you need to get going should be in place at the beginning of iteration 1 — that is why iteration zero exists.
In my experience, a good iteration zero goes a long way to helping the success of a project, without it you tend to just experience the frustration of trying to deliver value to the client whilst trying to sort yourself out.
Far better to have a sort out before hand and put yourself on the best footing you can going into a project. Iteration zero doesn’t have to be the same length as your other iterations, but I believe that it should be there.
For more like this, and to receive regular insight from our team, sign up to our email newsletter here.
This article also appears on Tim's personal Medium.