We just released an update of OpenLucius, a drupal social intranet distribution. Check out the most new and improved stuff:
1. Choose enabled ‘apps’ per group
For Drupal 7 users, many things have changed in Drupal 8, but many are reassuringly familiar.
One great example is template overrides. The process for creating an override is very similar. But the actual override files are different and so is the code inside them.
In this video, Rod shows you how to create a node override in Drupal 8. You'll see where the core modules are located in Drupal 8 and how to edit a Twig file.
My mentors suggested me to create issues for my tasks in the issue queues of the module Google Vision API, where they would track my progress and also discuss and leave suggestions for the improvement of the module. Thus, starting with my task for the first week, I created the issue Moving the common functions to services in the issue queue of the module and started coding the functions into services and injecting them as and when needed. I started the week by learning the concepts of services and containers, and gradually learnt about Dependency Injections in Drupal 8. The post on Services and dependency injection in Drupal 8 and the videos of Drupalize.me were of great help to understand the concept of services and implement dependency injection.
After completing this part, I put the patch for review, and there followed the next part- Use of Guzzle over curl in the services and injecting the httpClient service.I spent significant time learning the concept of Guzzle which was quite new for me. My mentors Naveen Valecha and Christian López Espínola helped me a lot to understand Guzzle, and subsequently this task was completed with Guzzle replacing curl and injection of httpClient.In addition, the present code made use of concatenated strings for sending the data during API call. I changed the code to make use of arrays and Json utility class and its static functions to send the data instead of strings.When the code seemed perfect, my mentors suggested me to perform clean up along with proper documentation.
At the end of the week, I successfully uploaded the patch with all the suggestions implemented, clean up done and documentation added, thereby completing the task for my first week.
Each day, more Drupal 7 modules are being migrated to Drupal 8 and new ones are being created for the Drupal community’s latest major release. In this series, the Acquia Developer Center is profiling some of the most prominent, useful modules, projects, and tools available for Drupal 8. This week: Media Entity.Tags: acquia drupal planetmedia entitymetadatadrupal 8
We're announcing today the Data Embassy, a new service for our fellow Drupal shops to make content migration into Drupal easier. Let us remove the pain of content migration from your Drupal development workflow.
You know exactly what I mean by "pain". As Drupal continues to expand and existing websites are converted into Drupal, large migration comes as necessary evil. While migrations from smaller Wordpress or Joomla websites can be automated fairly easily, anything other than that it not so simple.
In the eleven years I've work with Drupal, I've notice that migrations take a significant part of the budget in various Drupal projects, with countless developer hours spent migration in every single project that is not a brand new website.
To counter that, we've developed over the years in Chuva Inc. several strategies, checklists and custom tools to deliver quicker, cheaper and more precise content migrations. We've applied that method to several migrations, from several different CMSs, in-house CMSs and even static, manually-edited HTML pages.
Now, we want to share this expertise with the Drupal community at large. By offering a new service specialized solely on content migrations, we will perform the migrations in a more effective way, saving time and money for Drupal shops.
Can we save you money on your Drupal shop's next project? Learn more at: http://drupalmigration.chuva-inc.com
Have you ever been asked by a client to export pages or content as a PDF?
Yeah, I know that feeling.
I think this is one of the most underestimated development tasks in the non-technical world. It is not that easy, and it is even harder to explain.
What tool should I choose? Is it compatible with the OS of the host site? Is there a module for that?
Ok, it’s not impossible, but it’ll take time…
Probably more than what your client is willing to pay…Tags: acquia drupal planet
The Google Summer of Code 2016 (GSoC’ 16) coding period kicked off from last week, May 23rd. Each selected student had a one-month long community bonding period with their respective organisation. I had written my community bonding experience with Drupal in my previous blog post.
I am working on porting search configuration module to Drupal 8 under the mentorship of Naveen Valecha, Neetu Morwani and Karthik Kumar. I learnt the basics of Drupal, implementing Drupal forms and other fundamentals required for my project in the initial phase.
I was really thrilled to get into the coding rounds of GSoc’ 16. I was successful in making a good progress in the initial week. I could start the coding phase effectively by porting some important features. I had regular discussions with my mentors throughout the previous week. They were really helpful in guiding me in the proper way by reviewing the code and sharing their valuable feedback.
Here I would like to share with you some of the changes which I have come across in Drupal 8 from its preceding versions which I have worked out in the previous week for my project.
- In D8, the .info files are replace by .info.yml files. The .info files contained the basic information regarding the respective module. The .info.yml generally contains the following attributes of the module:
- The Drupal 7 variables have been converted to the Drupal 8 state system. The previous versions had variable_get and variable_set functions to store variables and their default configurations. They were used to store and retrieve data. They are presently removed in D8.
- In Drupal 8, they are replaced by the configuration API.
- Moreover, we need to store the default configuration of the variables. While developing a new module, it comes in module/config/schema/ will contain the default variable configurations.
- The default configuration is the default property of the system with its type and the corresponding default value linked to it.
- Another transformation that has taken place is that the global $user has been substituted by the current_user service.
- So, the previous definition,
- global $user;
- is replaced by
- $user = \Drupal::currentUser();
- So, the previous definition,
These were some of the important concepts that I had to deal with in the previous week for the porting process. It was really a wonderful learning time for me. Hope to enjoy the coming weeks to learning new concepts and implementing it for my porting.
Hope all the selected students had a wonderful start to their coding period. All the best for the coming weeks.
After a couple of weeks of setting up with mostly free-format meetings in IRC we’re going to try a more structured format for our weekly UX meetings:
- First half hour: people can introduce a problem + proposed (possible) solution
- Second half hour: we review any work that has progressed over the past week. Often a core committer will be around to provide guidance or even actually commit changes that are good to go.
We did a first ad-hoc version of this last week, including a hangout with screen sharing. It worked really well, was productive and a lot of fun. Seeing the same thing in action is helpful when discussing user interface changes!
The meeting will take an hour. Here’s a calendar for the date and time.
Want to join? Join the UX channel on drupal.slack.com. Get an automatic invite here. We’ll link a hangout from there and make sure we’re broadcasting live so at least everybody who wants can follow along and use Slack for background chat.
See you there!Tags: drupalplanetd8uxprocessmeetingscollaborationSub title: 50/50 on new ideas and reviewing work in progress
The monthly core patch (bug fix) release window is this Wednesday, June 01. Drupal 8.1.2 will be released with dozens of fixes for Drupal 8. There will be no Drupal 7 bugfix release this month.
To ensure a reliable release window for the patch release, there will be a Drupal 8.1.x commit freeze from 12:00 UTC Tuesday to 12:00 UTC Thursday. Now is a good time to update your development/staging servers to the latest 8.1.x-dev code and help us catch any regressions in advance. If you do find any regressions, please report them in the issue queue. Thanks!
To see all of the latest changes that will be included in the release, see the 8.1.x commit log.
Other upcoming core release windows after this week include:
- Wednesday, June 15 (security release window)
- Wednesday, July 06 (patch release window)
- Wednesday, October 5 (scheduled minor release)
Drupal 6 is end-of-life and will not receive further releases.
In this blog post I will show you a simple technique to improve your web application performance by modifying headers. Please keep in mind, if you're using HTTP reverse proxy caching applications such as Varnish you might harm your application performance or your settings could be ignored.
This technique could help improve page loads for authenticated users where reverse proxy caching disabled.
Important: Drupal already already provides all the required headers when Performance settings properly configured. This is information is generic and could be very helpful for decoupled projects or any other frameworks.
Dries Buytaert, the creator and project lead of Drupal, wrote a blogpost, 'Turning Drupal outside-in' three months ago that caused a large stir in the Drupal community. This post was particularly interesting for us as a Drupal development shop and active members of the international Drupal community because the future of our company is largely determined by the future of Drupal. In his writing, Dries discussed how the user experience of the Drupal platform be improved and how the CMS itself can be simplified, made easier to understand and easier to use.
On a previous post I explained how we are using BigPipe in Drupal 7 (Cheap Pipe (sort of BigPipe) in Drupal 7). Besides all the known benefits of big pipe, there is a less known side effect that might help you fight spam.More articles...
- Build GIT on Windows from Sources
- Importing Excel data with PHP, OpenXML and SpreadsheetLight: a Drupal example
- Deploying Drupal Like a Pro
- Running Drupal 8 on PHP 7
- Download SQL Server Native Client: sqlncli
- Drupal Session Handler: everything you need to know
- Benchmarking Drupal 8 on PHP 7-dev
- Drupal 8 performance: enabling the classloader cache
- Adding native JSON storage support in Drupal 7 or how to mix RDBM with NoSQL
- Deploying changing module dependencies with Drupal
By default Search API (Drupal 7) reindexes a node when the node gets updated. But what if you want to reindex a node / an entity on demand or via some other hook i.e. outside of update cycle? Turned out it is a quite simple exercise. You just need to ...
I had a case recently, where I needed to add custom data to the node display and wanted this data to behave like a field, however the data itself didn't belong to a field. By "behaving like a field" I mean you can that field at node display settings and ...
The Drupal community is very special because of its culture of adapting to change, determination and passion, but also its fun and friendship. It is a combination that is hard to come by, even in the Open Source world. Our culture enabled us to work through really long, but ground-breaking release cycles, which also prompted us to celebrate the release of Drupal 8 with 240 parties around the world.
Throughout Drupal's 15 years history, that culture has served us really well. As the larger industry around us continues to change -- see my DrupalCon New Orleans keynote for recent examples -- we have been able to evolve Drupal accordingly. Drupal has not only survived massive changes in our industry; it has also helped drive them. Very few open source projects are 15 years old and continue to gain momentum.
Drupal 8 is creating new kinds of opportunities for Drupal. For example, who could have imagined that Lufthansa would be using Drupal 8 to build its next-generation in-flight entertainment system? Drupal 8 changes the kind of end-user experiences people can build, how we think about Drupal, and what kind of people we'll attract to our community. I firmly believe that these changes are positive for Drupal, increase Drupal's impact on the world, and grow the opportunity for our commercial ecosystem.
To seize the big opportunity ahead of us and to adjust to the changing environment, it was the Drupal Association's turn to adapt and carefully realign the Drupal Association's strategic focus.
The last couple of years the Drupal Association invested heavily in Drupal.org to support the development and the release of Drupal 8. Now Drupal 8 is released, the Drupal Association's Board of Directors made the strategic decision to shift some focus from the "contribution journey" to the "evaluator's adoption journey" -- without compromising our ability to build and maintain the Drupal software. The Drupal Association will reduce its efforts on Drupal.org's collaboration tools and expand its efforts to grow Drupal's adoption and to build a larger ecosystem of technology partners.
We believe this is not only the right strategic focus at this point in Drupal 8's lifecycle, but also a necessary decision. While the Drupal Association's revenues continued to grow at a healthy pace, we invested heavily, and exhausted our available reserves supporting the Drupal 8 release. As a result, we have to right-size the organization, balance our income with our expenses, and focus on rebuilding our reserves.
In a blog post today, we provide more details on why we made these decisions and how we will continue to build a healthy long-term organization. The changes we made today help ensure that Drupal will gain momentum for decades to come. We could not make this community what it is without the participation of each and every one of you. Thanks for your support!
The release of Drupal 8 creates many opportunities for organizations worldwide to build something amazing for complex web solutions, mobile, SaaS, the Internet of Things, and so much more. The Drupal Association is excited to work with the community to create these opportunities.
In our mission to support the Drupal Project, the Association unites our global open source community to build and promote Drupal. We do this primarily by using our two main resources: Drupal.org, the center of our community’s interactions, with 2 million unique visitors a month; and DrupalCon, which hosts over 6,000 attendees a year and provides the critical in-person acceleration of ideas.
Both foster the contribution journey that makes amazing software, and the evaluator’s adoption journey that encourages people to use Drupal across industries to create amazing things. As I mentioned in my recent blog post, achieving our mission helps the community thrive into the future and realize their Drupal dream.
With the release of Drupal 8, we have an opportunity to reflect on how the Association leverages these assets to work for Drupal’s current and future opportunities. Working with our board of directors, we determined that the Association needs to:
- Re-assess the Project’s needs, and find new ways to support and meet those needs
- Address a structural issue, to be a more sustainable organization
To do this, the Drupal Association board and I made hard choices. Having invested heavily in supporting the Drupal 8 release and exhausting available reserves, we recognize that the Association now must right-size the organization and balance our income with our expenses. The biggest impact is the elimination of seven positions, reducing our staff size from 25 to 17 employees. Also as part of this reduction, we have reorganized staff to better address the Project’s needs now that Drupal 8 is released.
While we do have our eye on a bright future for the Project through these changes, we’re also painfully aware that we’re not just eliminating positions. We’re saying goodbye to seven people who are important to us—whose contributions we value more than we can describe. We’re impacting the lives of people we care about—people who’ve given a lot to the Project and to others in our community.Making the Drupal Association sustainable
In early 2014, the Association began investing reserves in building an engineering team for two main reasons: to address critical issues that were slowing down the production of Drupal 8, and to modernize Drupal.org. In doing so, we purposefully created a structural deficit, with the hopes that we could grow revenue to meet the cost of this investment before we drew down our reserves.
Because of this investment, we were able to accelerate the release of Drupal 8 through a roadmap of features like semantic versioning, DrupalCI (continuous integration testing for the projects we host), better search and discovery capabilities, numerous issue queue improvements, and issue credits, all of which positively impacted the release of Drupal 8. In addition, the engineering team has addressed years of technical debt and incorporated more modern services in the site that have made it more reliable and faster around the world.
While revenue grew from 2014 to 2015 by 14%, it didn't grow enough. Last year, we acknowledged that we did not meet the revenue goals that would sustain this investment. We addressed it with a retrenchment designed to extend our runway and see if we could increase revenue sufficiently. All told, while we have accomplished both revenue diversification and growth, it wasn’t enough to fully replace the investment. Then in spring 2016, several things happened on the revenue front that created a significant budget gap:
- Sponsored work: The Association funded Engineering resources by accepting sponsored work to build Composer endpoints for Drupal projects. After that project was completed, we were unable to line up an additional sponsored project to continue underwriting the Engineering team.
- The Connect Program: This new experimental program designed to connect software companies with service providers for partnership and integration opportunities did not meet its revenue goals.
- DrupalCon: DrupalCon New Orleans ticket sales did not reflect the increase we were expecting this year, and we have revised our DrupalCon Dublin ticket sales projections accordingly.
"CAGR" means compound annual growth rate.
2016 data is projected revenue and expenses.
Addressing this structural deficit required a reduction of both labor and non-labor expense. Labor is our biggest cost, and we can’t create alignment without cutting roles at the Association. Holly Ross, our Executive Director, Josh Mitchell, CTO, and Matthew Tsugawa, CFO, offered to step down and contribute their salaries to the reduction, as they saw that a smaller organization doesn’t require a full leadership team. Additionally, we are losing three staff members from the Engineering team, one from the Events team, and one from the MarComm team. We are working with these staff members to help them through their transition.
Our second biggest expense is rent. We are working to eliminate the physical office in Portland, Oregon—moving staff to a virtual, distributed team—but those efforts will likely not introduce savings until 2017. We already work with distributed staff and community members around the world, so we have the know-how and tools like Slack and Zoom in place to support this change when it happens.
While these staff reductions are painful today, they correct the structural problem, bringing expenses in line with income. We have conservatively reforecasted revenue to reflect any impact this staffing reduction may have. We can see with our forecasts that the layoffs result in the Association being on healthy financial ground in 2017.What happens next?
Leading up to now, we invested in tooling to help the community release Drupal 8. Now that Drupal 8 has shipped, the Project has new needs, which are:
- Promote Drupal 8 to grow adoption
- Sustain Drupal.org so the community can continue to build and release software
Drupal.org is our strongest channel for promoting Drupal, given that it’s the heart of the community and organically attracts hundreds of thousands of technical decision makers. It provides the biggest opportunity to guide evaluators through an adoption journey and amplify Drupal’s strength in creating new business opportunities through solutions like “DevOps and Drupal” or “Drupal for Higher Education.” These new services on Drupal.org will help evaluators, create value for our partners, and increase revenue for the Drupal Association.
We can also use Drupal.org to better promote DrupalCon. It’ll help grow ticket sales and attract more community members to that special week of in-person interaction, accelerating their adoption and contribution journeys.
Additionally, we’ll expand our efforts to attract more evaluators to DrupalCon. We can accelerate their adoption journey through peer networking and programming that helps them understand how Drupal is the right solution for their organization. We do this today with our vertical-specific Summits (like the Higher Education Summit) and we can do more through relevant sessions and other special programming. And while the Drupal evaluators are there, we’ll connect them with Drupal agencies who can help them realize their Drupal vision.
One thing about our work won’t change: our commitment to the tools you use to build Drupal every day. Though the Engineering team is smaller after today, they will make sure the tools and services you need to build and release the software are supported. That includes things like the issue queues, testing, security updates, and packaging.
Right now, we’re focused on the team as we go through this transition. Once the transition is complete, we’ll be looking at the Project needs and making sure we align our work accordingly. When we make changes, we’ll be sure to keep the community updated so you know what our primary focus is and how we are working towards our vision of Drupal 8 adoption across many sectors.
In the meantime, I invite you to tell me your thoughts on this new focus and how the Drupal Association can best help you.
We’ve really been busy here at DrupalEasy updating our curriculum and adding some training programs that we think will help get people leveraging the new awesomeness of Drupal 8. After a few times out at Drupal events, and our upcoming gig at Drupal North in Montreal with Introduction to Drupal 8 Module Development on June 15, we’ve decided to go broader. We’re going new school, with online sessions of these D8 workshops in June to extend the reach beyond camps and 'cons.
If you are looking to get up to speed with Drupal 8 module development and/or theme development, two online afternoon sessions live, at your desktop are coming up:
- 2 Afternoons, Live, Online
- Monday & Tuesday June 13 & 14;
- 3:00 pm - 7:00 pm EDT each day
- Early Bird: $199. After June 6; $249
- Register now
The Introduction to Drupal 8 Module Development workshop is designed for anyone with either knowledge of PHP or knowledge of Drupal 7 module development. The workshop takes users through the development of three custom modules demonstrating the basic principles and concepts of Drupal 8 module development. Students will be hands-on for the majority of the day, and will leave with confidence to start writing their own custom Drupal 8 modules.
- 3 Afternoons, Live, Online
- Monday, Tuesday & Wednesday June 20 - 23
- 3:00 pm - 7:00 pm EDT each day
- Early Bird: $199. After June 13; $249
- Register now
The Introduction to Drupal 8 Theme Development workshop is our newest curriculum and it's super-sized! Through three half-days of training, you will learn about Drupal 8 core's new built-in base themes, Twig templates, theme anatomy, and a full-on front-end development toolchain that utilizes Node.js and Gulp. The workshop uses the Bootstrap base theme for two of its three main units, giving students plenty of hands-on time developing custom themes. Anyone with knowledge of Drupal 7 theming or a working knowledge of HTML and CSS will leave the workshop with skills to allow them to start theming Drupal 8 sites.