There are lots of goodies coming in Drupal 8. A lot of work has gone into bring Drupal up to modern web standards. In addition to digging into Drupal-specific problems, a lot of work has gone into removing some of the custom overhead we have by incorporating a number of external libraries—that is, code that other communities have created and maintain, and does not live on Drupal.org. Adding external libraries means that we are working with these other open source communities to maintain our code, and that lets us focus on the Drupalisms we need, instead of re-inventing the wheel all over the place. This is the biggest growth for exernal libraries that we've ever seen, and I decided to take a look at what we have in core now.
In one of our recent projects we used the Commerce Custom Order Status module to create custom commerce order statuses from the UI. The problem with this module was however that the created statuses (living in the module's own database table) were not exportable.
To make a module's custom database table exportable with features you have 3 options:
Rumor from across the pond has it that DrupalCon Austin was a great time! DrupalCon Amsterdam is next, and we’re trying match the success of Austin… but for that, we’re going to need your help.
Submit your your best sessions ideas by Friday, 13 June by midnight - that’s tomorrow! The same thing goes for training sessions and scholarship/grant applications. The deadline is coming up quickly, so make sure you send in your submissions before it’s too late. (Psst.... grab some karma and spread the word!)
DrupalCon wouldn’t be what it is without the community, which is why we have scholarships and grants.. If you want to come to DrupalCon Amsterdam but can’t afford some or all of the trip, apply by Friday for financial aid and tell us why you need to be in Amsterdam and hopefully we can help you out!
Lastly, DrupalCon is a great place to gain Drupal knowledge and experience. That couldn’t happen without training, so make sure that you submit your training proposals and opportunities for the European Drupal community. Again, this is all due on Friday, 13 June.
To recap, got a great idea for a session, training, or need help coming to Amsterdam? Make sure you submit by Friday at 23:59 Amsterdam local time! We’ll be making big announcements the first two weeks of June. Don't worry, for those not selected to present or not granted a scholarship, the earlybird ticket rate extends until 11 July.
See you in Amsterdam!
I’m probably the last person on the planet to get around to doing this, but I figure it’s probably about time my venerable old 1024D key was put out to pasture.
My transition statement (signed, as usual, by both the old and new keys) is available. If you signed my old key, and still trust that I am who I think I am, I’d appreciate it if you could sign my new key and fling the signatures at me or the keyserver networks.
Continuous integration is a hot topic across the web right now and most conferences have at least a few devops talks that touch on CI and build tools. They usually go something along the lines of, use Phing with Jenkins and touch on the fact that Jenkins used to be called Hudson, has been around for ever and has a plugin for just about everything. I’m not going to mention Jenkins as we explore a few hosted CI solutions.Hosting Your Own CI Server
Managing any server is a timely process and a CI server is no different. Those Jenkins plugins don’t configure themselves. Smalls teams like ours don’t have the resources to commit to managing infrastructure and that is pretty scary when you’re talking about such a crucial aspect of the business.
We’ve recently moved to a hosted continuous integration platform and below I’ve summarised the R&D I did before we made the big move.
When you next visit the Los Angeles County Museum of Art and have LACMA's iOS app installed, you'll be greeted with an alert welcoming you. As you tour the campus, occasional pop-up notifications within the app will alert you to featured museum activities, exhibitions and attractions. These alerts provide visitors with personalized and hopefully relevant notifications based on your location within the museum.
Debian is a big system. At the time of writing, the unstable distribution has more than 20,000 source packages, building more then 40,000 binary packages on the amd64 architecture. The number of inter-dependencies between binary packages is mind-boggling: the entire dependency graph for the amd64 architecture contains a little more than 375,000 edges. If you want to expand the phrase "package A depends on package B", there are more than 375,000 pairs of packages A and B that can be used.
Every one of these dependencies is a potential source of problems. A library changes the semantics of a function call, and then programs using that library that assumed the previous semantics can start to malfunction. A new version of your favorite programming language comes out, and a program written in it no longer works. The number of ways in which things can go wrong goes on and on.
With an ecosystem as big as Debian, it is just impossible to stop these problems from happening. What we can do is trying to detect when they happen, and fix them as soon as possible.
The Debian Continuous Integration project was created to address exactly this problem. It will continuously run test suites for source packages when any of their dependencies is updated, as well as when a new version of the package itself is uploaded to the unstable distribution. If any problems that can be detected by running an automated test suite arise, package maintainers can be notified in a matter of hours.
Antonio Terceiro has posted on his blog an introduction to the project with a more detailed description of the project, its evolution since January 2014 when it was first introduced, an explanation of how the system works, and how maintainers can enable test suites for their packages. You might also want to check the documentation directly.
DrupalCon Amsterdam: We're in the final week for submitting a session for DrupalCon Amsterdam and we want to hear from you!
We've got a shiny new track this year focusing on PHP, and we're looking for great speakers that can cover topics that help Drupalists to be better PHP developers and feel more confident around new concepts and techniques that will impact our performance as developers.
Drupal 8 is will be the major topic for the Coding and Development track. But we're not only looking for Drupal or Drupal 8 content. As developers, we need to be up to date on the best practices and industry standards, so sessions on behavioral development, testing and software design, among others, will be closely considered.
Pedro Cambra, Larry Garfield and Cameron Tod will be happy to answer any questions you might have regarding the submission and selection processes. Do you have knowledge to share with the community? Go ahead and submit your session!
Exaltation of Larks is proud to work with Friday5, a Los Angeles startup we think is worth paying attention to. Friday5 is an innovative crowd-funding platform that helps take the guesswork out of finding worthy causes and making tax-deductible donations.
Members who sign up at Friday5.org enter their credit card information, select the amount they want to donate to a nonprofit each week, and then receive a weekly email detailing which cause Friday5 has carefully curated for that week’s crowd-funded donation.
Exaltation of Larks has worked with many nonprofits over the years but the opportunity to work together with Friday5 and support a new nonprofit each and every week was one we couldn’t pass up.
The role that we have with Friday5 is twofold: we provide the technical expertise and project management needed for Friday5’s online operations, and Christefano Reyes, an executive at Exaltation of Larks, serves on the Friday5 board and helps guide and advise the technical direction for the company. “Exaltation of Larks has a long history of working with both startups and with cause-based organizations,” Christefano said, “and our work with Friday5 has been a a great match for both companies.”IDENTIFYING FRIDAY5’s NEEDS
Our collaboration with Friday5 began in 2013, when Friday5 founder Mike Berman found himself needing a team to help maintain Friday5.org, implement features requested by Friday5’s partners, and prepare for growth.
When Friday5’s lead developer left the company, Mike began looking for someone new. After a month of searching for a new team, he reached out to Ben Stewart at ShareMagnet, another Los Angeles startup that Exaltation of Larks has worked with and has a 1st-degree connection. “From day one, we’ve felt that we’ve been in great hands with Larks,” Mike says. “They quickly and accurately assessed our needs, and we’ve been more than impressed with their work.”OUR SOLUTION
Friday5’s site hadn’t been updated for several months by the time Exaltation of Larks came on board. We performed our standard site audit and included a security review.
The results of our site audit identified several technical issues that needed to be addressed, from server maintenance and security issues to general bug fixes and ways to streamline and optimize the payment process. We also performed a business assessment and documented the platform and its systems and helped Friday5 plan for its next phase.
Recognizing the need to ensure that Friday5 had as seamless a transition to our services as possible, we worked with Friday5’s former lead developer over the course of several meetings to perform site discovery and produce all related documentation.
The payment gateway Friday5 uses, Network for Good, requires its customers’ servers to have a fixed IP address. This eliminates the option of using some grid and cloud hosting platforms. While the hosting costs at the time were higher than necessary, we advised against migrating to a new server environment. The transition cost of migrating to a new server or webhost were greater than the immediate short-term benefits.
Fortunately, their webhost changed its pricing options in April, 2014, and is now much more affordable. By using our server administration tools and our familiarity with the Friday5.org website and systems, we were able to build a completely new server infrastructure and fully migrate the Drupal site to it in less than 30 minutes.
As part of our managed hosting services, we provide Friday5 with rock solid backup and disaster recovery services. Systems we’ve implemented create backups of the database and codebase and these are regularly saved to a number of locations, including Amazon S3. Together with the documentation we’ve compiled for Friday5, we help ensure Friday5’s business continuity.
Network for Good
Network for Good is a specialty payment gateway set up to provide services to nonprofits. Exaltation of Larks maintains the Network for Good integration module that connect Drupal sites with Network for Good’s API, and has shared this module with the larger Drupal developer community. “We contributed this module during the code sprint at a Drupal Coworking Friday,” Christefano said. “These events combine mini code sprints and free coworking days and are a great way for us to mentor other Drupal developers.”
When joining the project, we immediately documented Friday5’s systems and features that existed at that moment in time. This gave us a clear starting point for developing the product’s roadmap.
Our project planning for the next phase of feature development uses a data-driven approach. The features we’ve developed so far include better reporting tools to measure key indicators and enable business decisions on critical issues and opportunities. We’re expanding this to allow for more clarity in the day to day management of the organization, as well as insight for future planning.
Support and Maintenance
Exaltation of Larks performs ongoing maintenance and support for Friday5. These services give Friday5 the comprehensive coverage they need, from basic maintenance to emergency support. For example, the Friday5 website had an issue when the company was in the middle of an important business meeting. Friday5 used our emergency support system and the issue was resolved within the hour.
Exaltation of Larks has given Friday5 solid footing in the area it most needed it: technical leadership and support. We continue to act as a technical resource for Friday5, advising Mike and his team on the company’s infrastructure for growth. “With Larks,” Mike said, “we have instant access to great programmers, and we only pay for what we need. As we grow, we’ll need more development time and expertise — Larks has us completely covered.”
We are proud to see Friday5 succeeding in the market and see Friday5 as an important addition to the Los Angeles startup landscape — and also the national nonprofit landscape. Friday5 has proven to be a pioneer in crowd-funded charity giving. Indeed, about 6 months after Friday5 launched, Google effectively validated Friday5’s business model by introducing One Today, in which users donate $1 per cause per day using a system very similar to Friday5’s — including Network for Good integration.
So in my mad searchings of Drupal modules the other day I came across a really cool module that simplifies content entry and linking to other content on your Drupal site. The first thing I could think is where has this been my entire life? The second thing was to add it to our standard Drupal installation. Linkit allows you to link to content on your Drupal site without knowing the URL or path to the content. If you are like me, you write your content, then you open another tab and go to all the pages that you need to link so that you can get the URL's. Now I open up another tab, realize that I installed Linkit, and close that other tab and do it the easy way. Eventually I will remember that I have Linkit installed and skip the open another tab step, but old habits die hard.
So lets look at the module a little bit.Installation
Linkit is a pretty simple module to install, it uses the standard Drupal module installation procedure. So if you are familiar with that you are good to go, if you use Drush, then the drush dl and drush en commands are really all you need to get started.
There is a little bit of configuration that needs to be complete as you will need to add the Linkit button to your WYSIWYG editor. So for us that just involves going to CKEditor's configuration and adding the button to the profiles that you are using. You might be tempted to create a special profile for this and just attach that profile to your user as to not share this great tool with your colleague, but I wouldn't recommend it.
After that you will also need to enable support for Linkit in your editor as you see above.
Linkit is pretty powerful though, you can do a lot of customization in the module as well through it's own configuration interface. Through that interface you can enable it for use in editors or fields as appropriate, choose how Linkit will search your content, and even set it up to search through IMCE files. There are lots of different use scenarios here so I won't go into a lot of detail about exactly how you should set it up. Pick the terms and items you will use the most, and don't be afraid to tweak.Using Linkit
Linkit is super simple to use. I have added the button next to our normal link button in the editor. Now if I am linking internally I click the Linkit button that displays the box you see to the right. When you type in a search term, it will comb your content, rather quickly I might add, and give you a list that is inline with what you are looking for. Simply click the item you want and your link gets added automatically.
No more having to search through your content to find the path to what you are looking for.
Are you already a Linkit user? What content creation tools to you implement with your Drupal sites?
So, it seems that for a lot of people using unstable, hardware-related permissions (shutdown/reboot, suspend/hibernate, devices mount/umount etc.) have been broken since some times.
That's usually the case for people using GNOME with lightdm display manager, Xfce with either gdm or lightdm.
It seems that recently, policykit (which is used by GNOME and Xfce) switched from consolekit backend to logind backend (yeah, systemd-logind). So applications using policykit needs to handle that correctly, and that means beeing sure a logind session is correctly setup, which is done by installing the package libpam-systemd.
For now, it's still possible to not switch to systemd as init system, by installing the systemd-shim package before libpam-systemd. Be aware that (at least with the current state of affairs), this is only true with logind before 204. When systemd maintainers start transitionning to a later version, only systemd-sysv (so, systemd as init system) will work.
For people reluctant to switch to systemd, they can use systemd-shim for now. Then when systemd 205+ enters the archive, either lose those hardware permissions, or try to improve systemd-shim to handle that situation.
There's not much we (Xfce/LightDM maintainers) can do about that.
This is a quick post regarding the sort order of option elements in the Drupal Commerce Add to Cart form as part of Product Reference fields.
I was confused as to how this was sorting. It does not sort by the Product title. It does not sort by the Product entity identifier. On my development site, the options seemed to be sorting by SKU.
There were a couple options to look into:1. hook_form_alter().
I initially decided to give up and go the custom code route disparagingly. Although this option did in fact allow me to change the sort order to an arbitrary one, the Add to Cart form had already loaded the Product price of the default value meaning that the wrong price was displayed for the Product on initial page load.
In order to change that I’d have to write even more custom code.
Not good…2. Change the SKU.
I found that the list was sorted by SKU. However this was not an option because changing SKUs will mess with history. And though I tried this option, it did not change the sort order. This might have worked given the actual issue below.
Not good…The actual issue
The product list is stored as part of a Product Reference field, which can be a multi-value field. The product ids are ordered by field “delta” or in other words the ordinal in which they were stored.
The Select List field widget (and Checklist field widget) stores multi-value field items in the order of the options. So if initially the Select List grabbed the order by SKU, then that’s the storage order.
Commerce also provides an Autocomplete field widget. Field items are assigned their delta left-to-right. The Autocomplete field widget would allow sort ordering of Commerce Products.
If Product Reference field were an Entity Reference field, then select lists could pull an ordered list from a view or sort by a particular entity property or field.
Was it just me or was this a really up-beat DrupalCon? In contrast to last year in Portland the energy was noticeably higher, more positive and optimistic, and I don't think it was just because of the nice weather.
Drupal 8 is still in a building stage — alpha release — but it feels like core is rolling. That's the most common theme I heard from everyone I asked, and it makes sense that a good feeling in core would ripple out through everything else.
The decision to embrace Symfony2 as a framework was a bold move, one that caused considerable angst over the past year; that's now passed. Folks who haven't been thrilled with some of the compromises involved are largely at peace with the situation, focused on moving forward. Others who were more ardent in their rejection have stepped away, or at least a ways back.
As a result, it feels like everyone is on the same page. From the business summit on Monday to the code sprints on Friday, there's a feeling of consistency. That kind of alignment is a sign of a mature project.
Of course there's always got to be some Drupal Drama. I got a taste of that in The Great Multisite Debate. Recapping that is a whole other blog post, coming soon I promise. But who can feel all that upset with folks like this guy walking the floor:
The thing that I find most compelling about the Drupal community, even the companies around the project, is how many people are focused on outcomes. In the language of Jobs, we're here to put a little dent in the universe.
There's some natural tension between that desire and the increasingly diverse and sophisticated commercial ecosystem, especially considering Drupal's roots in the non-profit/social-good space. Some people were uncomfortable with Dries's keynote example of "using google glass to buy a neat jacket you just saw," but the vision behind that example is one I share.
As I say in my Drupal's Destiny presentation, I think Drupal has a special role to play in the evolution of the internet and how it affects humanity. I believe this precisely because of the kind of multi-directional "digital hub" capability that Dries was explaining.
Andrew Hoppin, who's working on an Open SaaS solution based on Drupal to radically open up access to public data said it best: we're impact junkies. Changing the way we shop might not be the most radical way to imagine our impact on the world, but it's practical and specific. That's important when you're trying to convey an ambitious, long term vision. I'm on board.You grows up and you grows up and you grows up
Drupal is far from done developing, but it feels like the project is emerging from an awkward teenage phase. There have been structural changes and growing pains, some false starts, but now a stronger sense of self.
The web is going to continue to evolve as more and more people come online, and more and more devices that are integrated into daily life are connected. Drupal's magic isn't just that it's an industrial strength CMS — though clearly that's a strength — but in the way it fits into the future of a dynamic and integrated web.
Headless Drupal. It's a thing. Get on board now.
It's not just the tech though: more and more members of the community are rising to take a strategic or leadership role in their work, especially professional work with clients. People who've been doing Drupal for a while tend to know a lot about the web, about what works and what doesn't, not just in terms of what modules work well together, but in terms of business outcomes. It's good to see folks owning that expertise, and bringing it to bear to help people.
At previous conferences I've felt the reality of Drupal maturing mostly in individual terms: people getting older, starting families, getting a few grey hairs, going to bed earlier, etc. In Austin I think I felt something more, a sprawling, complex, quirky, many-headed open source software project starting to come into its own.
There's still a long road to travel, but from my perspective the way ahead is clearer than ever. It's a good feeling.Blog Categories: Partners Tweet
Organizations of all types must keep track of their customers, clients, contributors, and other contacts — whether they be individuals or organizations themselves. When dedicated customer relationship management (CRM) solutions were introduced in the business world, they took the form of enterprise-level software. But this category is gradually being supplanted (or sometimes supplemented) by CRM-capable websites, including many built on Drupal.
For several years, the most popular CRM option for Drupal websites was — and continues to be — CiviCRM, which is an open source and highly capable system. However, it is standalone and not designed for Drupal, but rather “bolted on”: its integration with Drupal is rather convoluted; it typically utilizes a separate database (assuming no table prefixing); and it often leads to duplication of data. CiviCRM has a different templating engine and API, making customization and troubleshooting problematic at best. Developers frequently complain that it is quite difficult to change forms and workflows, or even figure out where to begin such attempts. Its nonintuitive administrative interface can increase staff confusion and technical support costs. Compared to Drupal itself, CiviCRM is large and complex, and effectively results in more than a tripling of the number of files on disk and the number of lines of code.An Answer Most Fowl
Consequently, a few alternatives to CiviCRM have emerged, including RedHen CRM, created by ThinkShout, a boutique open source web agency based in Portland, Oregon. RedHen is intended to help users in “managing detailed information on, and connections between, contacts and organizations, membership services, event registrations, and constituent engagement.” Best of all for Drupal developers, RedHen is entirely native to Drupal, is designed for flexibility, and does not lock implementers into any fixed information architecture or presentation.Michael J. Ross
London's taxi "strike" today has been so successful that Uber claims to have had an 850% increase in new customer registrations this week. Well, that is a big success if you believe the strike may have been a guerilla marketing tactic organised by Uber itself.No sympathy
Personally, I have no sympathy for the taxi drivers. There is no city I have ever visited where I haven't encountered at least one taxi driver who tried to overcharge me.
When I broke a leg a few years ago and was getting about on crutches for 6 weeks we decided to go out for dinner one night. This was the first time I went anywhere after having a long stint in hospital followed by a period of time I was confined to the house. The taxi driver deliberately skipped two turns on a direct route to the restaurant, went another 1km past it and then followed a small street that winds back and forth and eventually demanded I pay him 20 CHF, double what the fare should have been.
This is exactly the type of abusive and despicable practice that is being eradicated by Uber's live GPS mapping technology.
This type of abuse of the weak or vulnerable is common around the world - for example, wheelchair taxis that have worked out they can make more money collecting families with suitcases at the airport.Will Google be targeted next week?
Google has just announced a step-change in plans to build their own self driving cars. Will Google offices around the world, including London be targetted by these crude blockades too?Weapons of mass destruction
Why were taxi drivers not arrested for their protest today?
Before even having breakfast you could probably find 1,000 cyclists in central London willing to sign a petition declaring taxis are a weapon of mass destruction. I have personally experienced one of these brutal thugs ramming my bicycle from behind. The police who attended the scene even told me they had seen so many accidents like this they wouldn't dare cycle themselves. Maybe if they spent less time fabricating evidence to run high-profile terror prosecutions against Muslims and more effort on basic road safety enforcement that wouldn't be the case.
The web is full of examples that appear to show criminal behavior by taxi drivers, thanks to Youtube and helmet cams:Will hotels protest about AirBNB?
Now the taxi drivers have had their chance to cause mayhem, will hotel operators be next?
What could they do though? Will they seek out AirBNB apartments and jam up the door locks with chewing gum perhaps? Chances are, they would be prosecuted for criminal damage. So why do the taxi drivers get to jam up whole cities and get away with it?The Uber taxi meter loophole
Will the courts decide that the Uber app is a taxi meter?
This is actually a tough question. Even if they rule against apps that perform live metering, Uber could simply remove all metering functions from the app itself and perform the metering calculations in the cloud. The app would just send start and finish locations to the cloud and the cloud would send a message back to the phone confirming the charge. The phone is then nothing more than a communication and positioning device.Remember the elevator man?
When the automobile was first invented, laws were made requiring every car to be accompanied through public streets by a man carrying a flag. That job, like many others, no longer exists.
In the good old days, every elevator had a little man or woman who would sit on a stool and press buttons to operate the doors and motors.
Some up-market department stores and hotels still have an elevator man to add a touch of nostalgia. The vast majority, however, have eliminated these jobs thanks to automatic elevators.
Now, even aircraft can land automatically on a ship at sea. Look at all those people manning the deck in the video and contemplate how many of them might potentially be out of a job too in 50 years time as Terminator-style automated battleships patrol the seas.
Technology, like the Terminator, is not going to stop.
Calling all aspiring web developers! DrupalEasy Academy’s super popular Zero-to-Drupal workshop, (and all the awesome learning resources that go with it) is available anywhere, live through our online classroom June 18th and 19th (and on scheduled dates every other month!) Register now!-->
Today is a big day for the #d8rules initiative! Our crowd funding campaign was successfully funded and reached 100 % on Drupalfund. We really want to thank all you great 137+ supporters from the community: together you made this happen. Fago & klausi may continue with the progress that has been made already for porting Rules to Drupal 8 now and we are looking forward to gather additional funds in order to make sure that all 3 milestones can be reached in time!
Before Drupal Dev Days Szeged, fago & me decided to collect funds for porting Rules to Drupal 8 because of the following reasons:
- We felt there is a need for Rules in Drupal 8
- Fago doesn't have enough free time because he runs drunomics, works on the Entity initiative for Drupal 8 and maintains several high-profile modules in Drupal 7 already
- We felt that Rules should be ported as soon as possible, so that other contrib modules can have their integrations ported and we can fix some Drupal 8 issues like Conditions API & a Ctools-like Context system that is also required for the layouts initiative
- As much as we love working on client projects, developing modules and giving back to the community on a large scale as with the Rules module is definitely something that we are passionate about
To be honest, we really underestimated the effort required to run this whole campaign. I stopped counting hours at some point, but I can assure that there were several hundreds of hours invested mostly from our free time to assure that everything is set up properly. So here's a wrap-up of how we did it, and be assured we have learned some lessons on the way :)
Setting up a project plan & defining our mission of course was critical in the beginning. That's probably something that you already do for your regular projects, so nothing really special in here. The only difference is that you don't know where your budget will come from.
- Estimated hours: 1048
- Community rate: € 45 / hour (drunomics and epiqo agreed to let fago & klausi work on Rules for the self-costs)
- Milestone 1: € 13,500 (~ $ 18,600)
- Milestone 2: € 15,660 (~ $ 21,600)
- Milestone 3: € 18,000 (~ $ 24,815)
- Total goal: € 47,160 (~ $ 65,000)
For a regular Drupal project that is probably a medium-sized budget, but for collecting funds that goal felt pretty ambitious. Before the #d8rules initiative, the projects funded via Drupalfund were $ 2400 maximum.
This is why we decided to go for both corporate and crowd funding:Corporate funding vs. Crowd funding
We didn't want to loose much money on benefits so we tried to keep them focused at marketing (logos in different sizes on the website and other forms of saying thank you).
For the Drupalfund, we were able to add a physical incentive which seems to have motivated quite some people to donate:
The #d8rules Ruler was sold out a few days before ending the campaign and rumors are that Laserbox has created a second limited yellow edition for those who pledge last minute on the Drupalfund :)
In general, we tried to find sponsor package / perk names that encourage people to identify with supporting the project and which are directly related to the Rules module such as "Event dispatcher", "Batch processor" or "Data selection guru".Calculating perks & a financial insight
Fees include Drupalfund platform (7,5 %), Paypal (3,5 %), Currency conversion USD to EUR (2 %) and VAT (20 %). This was a bit scary at the beginning, so we offer invoices for all donations $ 35+ in order to remove the VAT burden. Based on those fees, we put together estimations of how many perks we have to sell in order to achieve the goal: The plan was $ 10 x 70, $ 20 x 60, $ 30 x 60, $ 65 x 50, $ 90 x 50, $ 150 x 15, $ 270 x 5 which is a total of 310 people who pledge.
Let's have a look at what we got: 137+ people pledged as of June 11, 3pm CEST and the distribution is a bit different than expected:
Actually more people pledged larger amounts of money and within the $ 649+ range there are some pretty large donations which helped the fund succeed at the very end.Picking a crowd funding platform
We evaluated Kickstarter, Indiegogo & Drupalfund as three possible options to do the crowd funding. Kickstarter was too complicated to set up, because you need a legal entity in the US / UK. Indiegogo was tempting because it is quite established, has lower fees, offers a smoother user experience, you can do EUR or USD funding and choose between fixed or flexible funding models. On the other hand, we really liked the idea of Drupalfund becoming a role model for the Drupal community and felt like going with another platform would be counter-productive from a community standpoint.
Thanks to the great support from the Drupalfund team, setting up the campaign website was pretty easy. We could get some small usability enhancements in (you can now click on perks to donate) and they were very supportive throughout the whole campaign by promoting us on their blog for example.
So I think we picked the right trade-off in terms of choosing a funding platform and have shown that you may also run larger campaigns on Drupalfund. Still keep in mind that without those $649+ donations our campaign would probably have failed due to a lack of momentum around DrupalCon.Generating & keeping momentum
Having the right momentum at the right time, I guess, is the hardest with setting up any campaign. Especially if you are asking for money, you'll need to bring people to your side. Luckily, we had lots of supporters from the community already: the Rules module has more than 200,000 reported installations and fago is well known all around Drupal.
I used the buffer app to constantly schedule tweets for the d8rules twitter account. Of course using an easy and positive hashtag such as #d8rules helped a lot.
I also think that the Rules logo redesign by Nico Grienauer substancially supported the campaign.
Rules logo with #d8rules hashtag icon by Nico GrienauerEvery campagin needs a video
Thanks to the great support from 11 Drupal community members at Drupal Dev Days, we were able to get some user voices captured which we then included in our campaign video. Dominik Kiss spontaneously offered to shoot and edit the video and I'm really thankful for the great work he did on a volunteer basis within the short time constraints of one week before launching the campaign on Drupalfund!
#d8rules video on Youtube: https://www.youtube.com/watch?v=gEH291mq48YAre we there yet?
Our colleague Max Mikus spontaneously offered to created some handcrafted indicators that visualize the funding process of #d8rules: The Drupalfund sucessfully filled up 50% of Milestone 1 but we still need more Sponsors to get there:
And then, Milestones 2 and 3 obviously would also be great to get funded.
But for now, we'd like to say thank you to everyone who believed in our project and pledged on the Drupalfund. It's awesome to see how many have supported us on the way either by donating, spreading the word and even offering volunteer help. Also note that there are already 10 contributors to the Rules 8.x repository on GitHub.Let's have a discussion about: What's next for #d8rules and crowd funding in Drupal?
We will keep working, developing Rules 8.x based on the funds and limited free time that we have. I guess we have pushed the boundaries for crowd funding in Drupal a bit further, but there are also several questions to be discussed and resolved along the way:
- How can we make contributing to Drupal more sustainable?
- Is crowd funding a valid approach to gather funds?
- How can we better attract non-contributors to fund and donate?
Specifically for #d8rules, the next questions are:
- How can we get Milestones 1-3 fully funded?
- How can we attract large organisations to fund Rules in Drupal 8?
- Should we do another round of crowd funding and how can we attract a wider audience?
- Help Fund Views In Core (May 2012)
- Funding Drupal Core Development podcast (May 2013)
- Funding Needs in the Community: Mid May 2014: #d8rules, DrupalCon Austin Mentors, Drupal Core Gittip Team
- Highlight Gittip, Flattr, Paypal or Whatever Opportunities on Issue Pages
- Create a mechanism for modules to announce funding campaigns through the Update module
I would love to hear your feedback on the campaign. Asking for money in an open source world is tricky some times, but at least for the people I know: when we graduate from university we tend to have less time for contribution and spend more on client projects. Finding the right balance between contributing in the job is something that we always strive for at drunomics, but for huge initatives like porting Rules to Drupal 8, we really would love to get your input on how that should be accomplished.
DrupalCon Austin just wrapped up and if you want to discuss Drupal future in Amsterdam, it's time to submit your core conversation session proposal. The topic for core conversations is Achieving sustainability. There are great proposals already but not enough to fill the whole track.
To expand a little on the topic of sustainability, Drupal is still the star of the show but the context in which it is developed takes more importance as Drupal codebase and our community grows. The most visible example is the need for funding. Big initiatives need it: Views in core, more recently Search API, Rules and core developers would like to rely on it. Funding is not the only topic we need to get a hard and overdue look at though. Here are the ones we would like to have discussions on:
- Improving drupal.org (website, testbot, issue queue process)
- Funding core
- Performance and tracking data overtime
- Welcoming designers, UX professionals, and architects
- Behat/Frontend testing
- … and anything else you think is relevant!
This is a core conversation track, we can give ideas about what is important — and this is by no mean the whole list — but more than other tracks, it will be what you'll make of it.
Also note that there is one big change for core conversations in Amsterdam,
the deadline is not extended, June 13th midnight (Amsterdam
time!) is the deadline to
submit your session proposal.
The Features module is a vital tool in the Drupal developers and site builders arsenal. It is used to export configuration that is held in the database to a Drupal module, making it easier to version control, deploy and use on other sites. Like the rest of Drupal, you can do everything in the UI but this can be time consuming. Fortunately Features comes with a set of handy Drush commands which should save you valuable time. Let’s go through them one at a time.Tags: FeaturesDrushPlanet Drupal
Everything is set! The Debconf committee approved my accommodation sponsorship, my leave is confirmed and my airline tickets are booked, I’m going to Debconf 14!
It’s going to be a 30 hour trip from Cape Town to Portland (I could shave off around 6 hours if I pay 120% more, doesn’t seem worth it) and I’ll be there for the full 9 days from 23 August to 31 August. I last attended Debconf 12 in Managua, Nicaragua and it was fun, educational and productive. I’m really excited to see the Debian folk in person again and it will also be my first time in Portland. See you there!