In such a world which was non-reality, terrorism made a lot of sense.
Now that we are few weeks into 2015, we’d like to look back at 2014 and share some interesting numbers about Drupal.org.Audience
Last year Drupal.org received almost 48.9 million visits from 21.2 million unique visitors. The spike around September/October is due to spam-related traffic, and, of course, DrupalCon Amsterdam.Users
152,200 users logged in to Drupal.org at least once during the year. Out of those, 31,466 users performed at least one activity on the site, such as commented, created a node or committed code.
More than 21,500 people left a comment or more in the issue queues. More than 4,000 people commented in the Drupal core issue queue.Commits
Overall 145,907 commits happened on Drupal.org, with more than 4,000 commits to Drupal core specifically.
More than 3,200 people committed code to contributed projects (not counting Drupal core), with an average of 37.43 commits per user.
More than 1,400 people got commit mention in Drupal core patches.Comments & Issues
Our users left 569,217 comments, 94% of them were comments in the issue queues. 30% of all comments in the issue queues happened in Drupal core queue.
On average there were 22.4 comments per user, with 38.74 comments per user in the Drupal core issue queue.
Our users created 78,505 issues, with an average of 4.55 issues per user.
5,192 contributed projects were created on Drupal.org in 2014. 31% of those are sandbox projects.Infrastructure
On the infrastructure side our uptime was 99.97% over 12 months, and the average full page load time for the year is 3.64 across Drupal.org. It improved throughout the year; we are down to 3.08 as an average for December. Our time to first byte response was 1,374ms in January; we are down to 441ms for December.
Drupal.org testbots tested over 33,300 patches. An average test queue and test duration times for Drupal 8 core were about 35 minutes each.
On support front 82% of issues in Drupal.org-related issue queues got a response within 48 hours after being created.
An average response time (time between an issue was created and first comment not by issue author) across all issue queues on Drupal.org was 82.87 hours. For Drupal core issue queue this number was 60.68 hours. For Drupal.org related queues 34.19 hours.
* * *
Full stats you can find in the 2014 stats spreadsheet.
Compared to 2013 some of the user activity numbers go down, which is directly related to the phase of the Drupal release cycle. Right after Drupal 7 release user activity peaked and then was slowly going down as Drupal 7 and contrib ecosystem matured. We are looking forward to Drupal 8 release! In the recent Drupal Association community survey about 80% of respondents said they have firm plans to adopt Drupal 8, suggesting that release will cause a huge boost in user activity on Drupal.org.
2014 was a great year, and thank you for spending some part of it on Drupal.org! We are excited to see what 2015 will bring.
Views GET Parameter adds a new option to the "Provide default value" dropdown that lets you specify a GET parameter to use for the value you wish to filter from.
Originally posted on BitBucket as get_arguments.
Platform.sh is a 2nd generation Platform as a Service (PaaS). It accelerates your PHP/Drupal/Symfony based project development and reduces the risk of moving new features into live. Some customers are seeing circa. 40% reduction in project budgets and revenue loss prevention, whilst gaining huge improvements in developer productivity, eliminating environmental resource management and reducing live downtime to zero, all at commodity hosting prices! For an Agency providing web development, commerce and hosting services, or the end customer themselves, understanding the detail behind these very powerful messages is an important factor to making the right decisions around the critical tools and technologies that impact their business, especially if say the pricing structure appears to be a little higher than the known alternatives.
Commerce Guys are involved in many leading edge developments that are pushing the boundaries of how eCommerce is being utilized and evolved to meet new business models, many of which are tied into faster development, more frequent changes and better uptime. These include the migration of offline customers into advanced online purchase environments; encouraging said customers to spend more money whilst at the same time becoming less expensive to support, requiring tighter integrations of support and customer care functions; also important is the delivery of B2C-like experience for B2B customers; as well as defining online and mobile strategies in conjunction with each other; Drupal 8, Distributions etc. etc.
What gives Commerce Guys the credibility to offer such a convincing project development tool? We are a commercial software vendor, and we’ve invested several $m into building the Drupal Commerce application and its Kickstart distribution (deployed into over 50,000 active sites), so we know how to develop successful software products on an industrial scale. Of further relevance is the deep involvement we have in so many of our partner projects each year, providing analysis, design authority and development skills that puts us in the middle of hundreds of individual and unique development processes ! What we have engineered into the heart of Platform.sh is the flexibility to overcome the big problems and common manual activities that hold project teams back.
Let’s take a look at a handful of typical eCommerce customers, and work through their issues:
- A Digital Agency (DA) with a global pharmaceutical client who has many simple but different web-shop brands across 18 European countries.
- A Systems Integrator (SI) with a high street optician as their customer, with an eCommerce system covering 14 territories. They have all the usual requirements of a high end client plus an unusually complex hosted infrastructure accommodating various index sites and 10 plus environments in each location, totalling 150 service instances.
- A Retail Fashion client rolling out a Distribution based eCommerce system to 4 geographies.
- A pureplay online marketing business providing 4,000 products through a Social Media community exceeding 200,000 people in 22 countries around the world, of which the mobile traffic accounts for over 70% of their revenues.
And although both the Agency and the Integrator are at the high end of technical capability, and the 2 retailers have way less experience, they all have similar sets of problems that only Platform.sh seems to be able to solve.
Complex eCommerce applications versus simple brochure-ware sites
To properly emphasize the advantages that Platform.sh brings to an eCommerce system, we first need to draw a comparison between the complex and transactional nature of these customers’ applications, and that they usually work differently in each country, and as such require various different code bases. By comparison, these are very different for example, to brochure-ware sites with a central content repository, combined with simple language differences plus content change workflow pushed out through a multi-site architecture.
To start with, the development process differences between these two project personalities (multi-region eCommerce and multi-site brochure ware) are significant, the differences being 1) many more environments through which the upstream movement of code is being managed, 2) a much longer code-test-production timeframe, 3) bigger testing overheads (including tools, time and people), 4) complex content approval workflows, 5) higher consequential management costs, and 6) a severe risk impact of changes not working in production and feature release delays due to poor Continuous Integration (CI).
All the above are directly related to revenue loss - exacerbated by reputational damage in severe circumstances – which of course make them fairly unique to eCommerce. The effects on cost, time and business risk all increase exponentially when considering multi-country implementations.
What Platform.sh does for eCommerce that nobody else can !
Platform.sh solves many problems specific to this eCommerce Use Case, as well as easing various issues that make such projects more expensive to deliver and very laborious to manage,as follows:
- Many development process issues are greatly affected, resulting in a significantly reduced number of coding errors due to inconsistent environments, and greatly reduced elapsed times in the code delivery process from local environment through test, staging and user sign-off.
- Hugely improved Continuous Integration (CI) process that speeds up the change process for similar features across multiple environments into different local production services.
- True Continuous Delivery (CD) now becomes possible because the process no longer requires large number of changes to be bundled up and tested together before going to production say every 6-8 weeks. In this new regime, even the smallest of changes can whistle through in less than 60 minutes, which is vital for changes to aspects of the ‘Sale Offer’ during peak season, modifying coupon functionality for instance, or making micro changes during the advertising campaign.
- Steep cost reductions associated with maintaining multiple static environments (because re-creating from staging for new development environments isn’t possible or takes too long). Developers now have the power to create and destroy their own full-stack environments that mirror staging or say the master.
We’ve learned from various retailers using Platform.sh in the run up to holiday periods and promotions (especially Black Friday, Cyber Monday and December 26th) that the reduced risk of making changes into live offered by Platform.sh, plus the triple redundancy we provide in the Platform Enterprise (PE) offering with its ability to seamlessly upscale around traffic peaks are all regarded as extremely valuable to their business, the combination of which simply cannot be provided by alternate vendors ! This makes Platform.sh a must for any mission critical eCommerce site.
Reference Table Formatter allows you to render a table of fields on the target entity of a variety of different reference field types.
Currently support reference fields are:
- Entity Reference table
- Field Collection table
- Commerce Product Reference table
- Taxonomy Term Reference table
- ...request additional field type
The field formatter supports the following options:
This module has no UI, enable it to ensure that the default product shown to users on the add to cart form is an in-stock item. This is helpful for e-commerce stores with a large number of low stock product variants.
This module replaces the "Default user picture" with the user's initials. So when the used didn't upload a picture, the website displays JD for John Doe, or simply A for Admin.Using the module
Simply enable the module. That's all. No settings needed. It even comes with default CSS (see screenshot) and Views integration.
Think you’ve got Drupal or web smarts? We’re seeking mind-blowingly good sessions for DrupalCon Los Angeles, and want to hear from you about what you know best.
You don’t have to be the best in everything, but if there’s one topic you know inside and out, you should submit a session.
We’re looking for topics for the following tracks:
Google Summer of Code 2015 is approaching and few people started asking me about how to get selected in GSoC 2015 and where to start. So I though to go ahead and write a blog post so that others can also benefit. This post targets students who have never participated in GSoC before and want to know how to get started with the application process and open source in general.What is Google Summer of Code? How it works?
The GSoC FAQ page should suffice to answer most of your queries and I strongly suggest to go through it before looking anywhere else for answers.
Google Summer of Code is a program that offers student developers stipends to write code for various open source projects. We work with many open source, free software, and technology-related groups to identify and fund projects over a three month period. Since its inception in 2005, the program has brought together over 8,500 successful student participants from over countries and over 8,000 mentors from 109 countries worldwide to produce over 55 million lines of code.
So, basically this is how it works:
- Different orgs (open source organizations) submit their applications to be part of the program and Google chooses about 190 of those based on their application and past record.
- Once the orgs are selected, the list will be available on Melange. Each org will have an ideas list and a homepage.
- You need to choose one of the ideas from the list on the ideas page and submit your proposal. (Details on this below)
- Then you wait for Google to announce the list of selected proposals. If you find your proposal there, then the hardest part is over and now you code with your org for about three months and complete the proposed project.
- If everything went smoothly so far, you'll get a handsome paycheck for your contribution and you'd have learnt a lot about your project, org and open source.
This is probably the single most asked question every year around this time. The answer is pretty straightforward if you're already involved with any open source organization and want to continue work with the same org, then go for that one. If the answer to the previous question is no (which might be the case for most of you reading this post), then you need to choose a few orgs from the list of all accepted orgs. Although you will finally work with only one org, it might be a nice idea to select 1-3 orgs to which you may submit your proposals. You can shortlist the orgs based based on tags, for example if you're familiar with C++, you can filter the orgs which have the C++ tags mentioned on Melange.
If the org list of this not out yet, you can look at the list of orgs which participated in GSoC last year. For instance, you can take a look at the list of orgs which took part in 2014 and 2013. Filter the orgs based on the tags you're either familiar with or want to work on. Orgs which participated in previous years and took in more than a couple of students are more likely to get accepted again this year. Based on this and your favorite tags, you filter out 1-3 orgs.
After this, the next task is to go through the idea list for those orgs and decide what ideas interest you most. If you don't fully understand the ideas, it's completely fine and the next step will be to get your doubts cleared up by contacting the org and/or the mentor of the task (more on this in the next section).Okay, I've decided an org and project idea, what do I do next?
Once you've decided what project idea interests you most and some parts of the description are either unclear to you or you want to clarify a few details, you should get in touch with the task mentor and the organization in general. All the orgs have a contact section on Melange which will tell you how to contact the org. Most orgs prefer communication either via IRC or mailing lists so you can get in touch with the org. You can also ping the task mentor in IRC or mail him to clarify any doubts that you might have regarding the project.
Although its not compulsory, its usually a good idea to contribute to the org before sending your proposal. In order to that, you can ask questions like "Hey I'm new here, can anyone help me get started on how to contribute." either on IRC or the mailing lists. Since orgs get asked such questions very frequently, many of those have a 'Getting Started' page and if it'll be very helpful if you find that page and follow the instructions. If you've any doubts don't hesitate to ask those. Mentors are generally nice people and will help you through.How to start contributing
Contributing to an org means either helping to fix bugs (issues), writing documentation or doing testing etc. All the orgs use an issue tracker to keep track of their issues/bugs and most of those orgs have a novice/beginner/quick-fix tag which lists tasks which are easy to fix for beginners. You can get more info on that by contacting the org. Contributing to open source is fun and if you're not having fun, you're doing it wrong.Writing a good proposal
Once you've finalized the project idea, and have got started contributing to the org, the next and the most important step is to write a proposal. Many orgs have a application template of sorts and if your org has one, you need to follow that. Otherwise, you can start by specifying your personal information and then moving on to project description. Following are a few tips for writing your project proposal:
- Include a detailed timeline based on how you intend to complete the project.
- Make sure to list any bugs you've worked on and/or links to your contributions.
- Double, actually triple check for spelling mistakes.
- Don't forget to mention your contact info.
- Last but not the least, don't forget to update Melange with your latest proposal.
Once your proposal is ready, you can ask the task mentor (and/or the org admin) to review it before you submit it finally to Melange. Ask them if you could explain any parts of it in a better manner and follow up on their feedback. The most important part is really understanding the project idea and reflecting that in your proposal.Some Do's and Don'ts
Following are some miscellaneous tips for communicating with your org in a better manner:
Don't ask to ask: Don't hesitate to ask any questions and its much better than asking something like "Hello! I ran into an isuue, can anyone help me?" Instead you're more likely to get a helpful answer by asking your real question instead of asking to ask your question.
Be patient and don't spam: Once you've asked your question, wait for some time for someone to answer it. Its not a good idea to spam the channel again and again with the same question at short intervals.
Mentors are humans (and volunteers): After mailing a mentor, at least wait for 48 hours for them to reply. You need to understand that they are humans and most of them contribute in their volunteer time.
Use proper English language: Its really not a good idea to use SMS language while communicating on IRC or mailing lists. Also, note that excessive use of question marks is frowned upon. Although you need to be respectful, but addressing mentors as Sir/Ma'am is not such a great idea.
If you follow the steps mentioned above sincerely, you'll have a great chance of getting selected into GSoC this year. If you have any doubts, feel free to ask those in comments below.PS: A little background about me
I was a Google Summer of Code student with Drupal in 2014 and org admin for Drupal in Google Code-In 2014.Tags: Google Summer of Codegsocgsoc2015Drupal Planet
While we know there are over 33,000 Drupal developers around the globe, I had no idea how strong Drupal was in India until I was there with Rachel Friesen, scouting locations for a possible DrupaCon Asia. By meeting with the community at camps, meetups, and dinners, we saw first hand how strongly India is innovating with Drupal and contributing back to the Project.
When it comes to geographic referrals, India is second in driving traffic to Drupal.org. However, they aren’t second in contributions, but things are changing. I was especially impressed with the relationship between Tata Consultancy Services (TCS) and Pfizer, a $51.5B life sciences company. Pfizer allows TCS to contribute their code, which is often not allowed for legal reasons. Since contributing back is a one of Pfizer’s top values, they asked TCS to make contribution part of their culture - and they did. At TCS, Rachit Gupta has created contribution programs that teach staff how to contribute and gives them time during work hours each week to contribute code. With a staff of several hundred developers, this can make TCS become a mighty contribution engine for the Project.
I’m equally impressed by other Indian web development consulting agencies that I met like Axelerant, Blisstering Solutions, Kellton Tech, and Srijan, who also have a contribution culture in their organizations. They even set up KPIs around staff contributions to make sure they are keeping this initiative top of mind.
While India celebrates its 68th birthday on January 25, it’s a time to celebrate its growth as a nation-- and, in its own way, Drupal has a hand in the country’s prosperity. Shine.com, a Drupal job search site, shows there are over 15,000 Drupal jobs in India. All of the companies I talked to are growing their teams to meet that demand. Imagine if this contribution culture is fully embraced by Indian web development companies? The impact on the Project will be significant.
Individuals are also stepping up to support the Project and there is a passion for contribution that is spreading. I keynoted DrupalCamp Delhi, where over 1,000 people registered and 575 people attended. I saw first hand how dedicated the organizers were to make the event informative and fun. Several sprint mentors were on hand to lead more than 75 people through a full day sprint. Plus, the following weekend was Global Sprint Weekend and sprints popped up all over India in Bangalore, Chennai, Delhi, Goa, Hyderabad and Pune.
Not only are Drupalers in India helping the Project, but they are also using Drupal to create change in India with leapfrog solutions that give Indians access to more digital services. For example, many villages don’t have access to products found in major cities due to lack of infrastructure. The village stores simply can’t scale to buy and hold large quantities of inventory.
Iksula, an Indian eRetail consulting agency, created a headless Drupal solution for Big Bazaar, India’s largest hypermarket, which provides lightweight tablets for store owners throughout India. Using those tablets, villagers can go into their local store and buy their goods online. The products are delivered to the shop owner, who hand delivers products to the consumer, giving people easier access to goods that can improve their quality of life.
As another example, we can look at IIT Bombay, India’s top engineering university, which uses Drupal at the departmental level. Professors P Sunthar and Kannan are taking Drupal to the masses by creating a MOOC in conjunction with MIT’s EDx. The work is funded by a government initiative called FOSSEE (Free and Open Source Software for Education), and through it, Indian university students can watch videos on several open source technologies, including Drupal.
The initiative bridges learning divides by providing the trainings in several languages found throughout India and provides low cost tablets for students who do not have a personal computer. This well thought-out program can help students learn the tools faster to meet the needs of of future employers.
India has clearly embraced Drupal. They are making innovative solutions with the software and they are learning to contribute that back to the Project. Its for these reasons we want to host DrupalCon Asia. It will be a chance to highlight India’s Drupal talent and accelerate their adoption of a contribution culture.
A huge thank you to Chakrapani R, Hussain Abbas, Rahul Dewal, Jacob Singh, Mayank Chadha, Parth Gohil, Ankur Gupta, Piyush Poddar, Karanjit Singh, Mahesh Bukka, Vishal Singhal, Ani Gupta, Rachit Gupta, Sunit Gala, Professor P Sunthar and all the other community members who helped organize our trip to India. I’m personally moved and professionally inspired by all that you do.
Image credit to DrupalCamp Delhi
A very simple module that helps the end users set the "default" product variant, that shows up on the Product Display page.
So, here at Lucius HQ we are planning on building a RESTful API (web services) on top on Drupal distribution OpenLucius.
We want to do this so all 3rd party programmers, thus 3rd party applications, can integrate with OpenLucius. And not only Drupal developers and Drupal modules.
When migrate from Drupal 6 to Drupal 7, there are several tables in Drupal 6 which is the same as Drupal 7.
What I need do is copy it from Drupal6 to Drupal7. So I decide write a general module base on migrate to solve this issue.
If I migrate uc_addresses from Drupal 6 to Drupal 7, base on this module, it is very easy:
Join us for the second annual Drupalcamp New Orleans on Saturday, March 28, 2015. Visit www.drupalcampnola.com for more information, to register and to submit a session.
Drupalcamp New Orleans
Saturday, March 28, 2015 - 9 am - 5 pm
643 Magazine St
New Orleans, LA
In a recent blog post, Drupal 8 co-maintainer Alex Pott highlighted a seismic shift in Drupal that's mostly slipped under the radar. In Drupal 8, he wrote, "sites own their configuration, not modules".
To see why this change is so far-reaching, it's useful to back up a bit and look at where exportable configuration comes from and what's changed.
Berkeley approached us to not only build a website for an exciting new project but to also develop its brand identity from scratch.
The project was the Berkeley Institute for Data Science (BIDS), a new initiative to provide a common collaborative space for research fellows, faculty and anyone at Berkeley working with data science in some way.
The White House hosted an event to announce the initiative, which is funded by a $37.8 million grant from the Gordon and Betty Moore Foundation and the Alfred P. Sloan Foundation. Berkeley is one of three institutions to receive this funding, in addition to New York University and the University of Washington.
Now that the site is live, I’d like to share some of the processes I used to develop the identity and site design.
This module scans content on a Drupal site and automatically link occurrences of taxonomy terms on content pages to their term pages.
I was hired by the Drupal Association in October 2014 to develop a new revenue stream from advertising on Drupal.org. For some time we’ve been trying to diversify revenue streams away from DrupalCon, both to make the Association more sustainable and to ensure that DrupalCons can serve community needs, not just our funding needs. We’ve introduced the Drupal Jobs program already and now, after conversations with the community, we want to put more work into Drupal.org advertising initiatives.
This new revenue stream will help fund various Drupal.org initiatives and improvements including better account creation and login, organization and user profile improvements, a responsive redesign of Drupal.org, issue workflow and Git improvements, making Drupal.org search usable, improving tools to find and select projects, and the Groups migration to Drupal 7.
We spent time interviewing members of the Drupal Association board, representatives of the Drupal Community, Working Groups, Supporting Partners, and Drupal Businesses, both large and small to help develop our strategy and guidelines. Our biggest takeaways are:
- Advertising should not only appeal to advertisers, but also be helpful to our users and/or our mission.
- When possible, only monetize users who are logged out and not contributing to the Project. If you’re on Drupal.org to do work and contribute, we don’t want you to see ads.
- Don’t clutter the site, interfere with navigation or disrupt visitors, especially contributors.
- Do not put ads on pages where users are coming to work, like the issue queue.
- Advertising products should be inclusive, with low cost options and tiered pricing. We want to make sure that small businesses without huge marketing budgets have the opportunity to get in front of the Drupal Community.
- Create high impact opportunities for Partners that already support the Community.
- Address the industry-wide shift to Programmatic Advertising, which is the automated buying and selling of digital advertising.
There are already advertising banners on Drupal.org, however we need to expand their reach to hit our goals. We’re trying to address challenges for our current advertisers, including a relatively low amount of views on pages with ads, which makes it difficult for them to reach their goals.
We’re also facing industry-wide challenges in Digital Advertising. Advertisers are looking for larger, more intrusive ads that get the users’ attention, or at the very least use standard Interactive Advertising Bureau (IAB) ad sizes, which are larger than the ads we offer on Drupal.org.
We came up with a new line of products that we feel will help us reach our goals, but not disrupt the Drupal.org experience, or the Drupal Association Engineering Team roadmap. We want our Engineering Team to fix search on Drupal.org, not spend time developing and supporting major advertising platforms.
2015 Advertising Initiatives:
- The ongoing development of curated content with banner ads including resource guides, content by industry and in the future, blog posts.
- Continued display of banner ads on high profile pages like the Homepage, Marketplace and Case Studies Section.
- Sponsored listings from Supporting Technology Partners (similar to Hosting Listings).
- Opt-in email subscriptions with special offers from our Supporters.
- Audience Extension: a secure, anonymous, non-interruptive way to advertise to Drupal.org visitors. It allows advertisers to programmatically reach the Drupal.org audience while on other websites through Ad Networks and Exchanges.
I wanted to spend most of my time explaining Audience Extension, since its unlike anything we’ve done in the past, and it may prompt questions. This product makes sense because it addresses all of the challenges we’re facing:
- It’s affordable for small businesses; they can spend as little as $200 on a campaign
- We don’t need to flood the site with ads and disrupt the user experience.
- It’s relatively easy to implement - we won’t interrupt the engineering team or their efforts to improve Drupal.org.
- We will only target anonymous (logged out) users.
- We will support “Do Not Track” browser requests.
- This is an industry-wide standard that we’re adopting.
- Anonymous users will have the option to opt-out.
- This improves the ad experience on other sites with more relevant, useful ads that also support the community.
How does Audience Extension Work?
- The program is anonymous. No personally identifiable information (such as email address, name or date of birth) is gathered or stored.
- No data is sold or exchanged, this merely gives advertisers the opportunity to buy a banner ad impression within the Perfect Audience platform.
- It's easy to opt-out. You can just click over to the Perfect Audience privacy page and click two buttons to opt out of the tracking. Here's the link.
- Drupal.org will support “Do Not Track” browser requests and only users who have not logged in (anonymous) will be included in the program.
- It does not conflict with EU privacy rulings. Advertiser campaigns for Partner Connect can only be geotargeted to the United States and Canada right now.
- Only high quality, relevant advertisers who have been vetted by an actual human will be able to participate in this program. Some good examples of Perfect Audience advertisers would be companies like New Relic and Heroku.
- Perfect Audience is actually run by a Drupaler! The first business started by founder Brad Flora back in 2008 was built on Drupal. He spent countless hours in the IRC channel talking Drupal and posting in the forums. He understands how important it is to keep sensitive pages on Drupal.org an ad-free experience and he’s very excited to be able to help make that happen.
- This program has the potential to generate significant revenue for the Drupal Association and Project over time as more advertisers come on board.
Personal blog tags: advertisingdrupal.org
It’s important that we fund Drupal.org improvements, and that we do so in a responsible way that respects the community. We anticipate rolling out these new products throughout the year, starting with Audience Extension on February 5th. Thanks for taking the time to read about our initiatives, and please tell us your thoughts!