Today, we are very excited to announce the latest release of our Drupal 8 theme Prius. Alongside a full support of Drupal 8 Alpha 15, we have included a number of new features. This release is particularly exciting as we are one step closer to an official launch of Drupal 8. Indeed, Drupal Alpha 15 is the first candidate for a Beta release. Meaning if no new beta blocker bugs are found within the next coming days1, we could see the first Beta version of our favourite "CMS" very soon.Read More...
The Symfony Live events of this Fall (London, Berlin, NYC, Madrid) are around the corner, and for the first year, Commerce Guys is going to attend these events as a sponsor. Some people are wondering why, and I’d like to explain why Commerce Guys is very excited to engage with the Symfony community and its open source software vendor, SensioLabs.
In fact, there are 3 main reasons for Commerce Guys’ interest in Symfony and working tightly with SensioLabs:
It’s no secret that Drupal8 will rely on Symfony components. This architecture decision is good, and paved the way for similar thoughts on Drupal Commerce 2.0. It also ties the destinies of both open source communities, we think for the better. The work on Drupal Commerce for Drupal 8, known as Drupal Commerce 2.x, started in June 2014. During a community sprint that included members of SensioLabs and other partners like Smile, Publicis Modem, Osinet, i-KOS, Adyax, and Ekino, we validated the idea that some of the core eCommerce components of Drupal Commerce 2.x should rely on Symfony and other general PHP libraries directly. The goal is to offer an even more generic and flexible solution that spreads the impact of our code beyond the walls of the Drupal community.
This effort is well in progress already. Bojan Zivanovic, Drupal Commerce 2.x co-maintainer, provides a great example of this in a recent blog post about our new Internationalization library. He explains how much improvement this component will bring to the software for managing and formatting currencies internationally via a generic PHP library called commerceguys/intl. Expanding the reach of our work to the broader PHP community will help us get more feedback, more users, and more open source contributors, ultimately leading to better software. Ryan Szrama, Commerce Guys co-founder and Drupal Commerce CTO, will be presenting this approach at Symfony Live in New York City in October. We strongly believe this vision will bring us closer to our goal of building the most popular open source eCommerce software.
In a context where Symfony will be central to mastering Drupal 8 projects, we’ve pursued the goal to enable our development & production Platform as a Service (PaaS) for Symfony projects in general. We’re convinced that this will provide Platform.sh an edge, and wanted to be a driving force in providing tools that will fit both open source communities.
Since Spring 2014, Commerce Guys engineers have been collaborating with SensioLabs engineers to understand Symfony better. Few companies in the world have the expertise in enterprise PHP that SensioLabs has, and the Platform.sh Symfony experience is the outcome of lots of intense discussions with the SensioLabs’ team.
Our objective was to enable teams to develop and deploy Symfony projects faster and more productively on Platform.sh. That work is now done and we’re very happy to announce today that, with just a few clicks, Symfony developers can create a full Symfony development environment (starting from an existing Symfony distribution), in order to build and deploy highly scalable websites and custom applications. This will lead to a much improved development process, lots of time saved for developers and a reduced time to market from development to production. Sponsoring Symfony live is a way for Commerce Guys to share the hard work we’ve done to build a unique, cloud-based development experience for Symfony developers. We’re excited to share our work and get feedback from the Symfony community about this product.
The time we’ve spent with SensioLabs’ management team highlighted our common passion and interest: help developers be more efficient and successful and, as much as it depends on us, to enjoy their jobs even more. SensioLabs and Commerce Guys were both founded to design and develop open source frameworks, gather large and global developer communities, and enable developers to create great web experiences. Both companies aim at making developers happier and more successful by providing them the right tools. It’s on these values and fundamental principles that this partnership was built. It’s all very solid and here to stay!
We're excited about the great swag we've got at the Drupal store-- so excited that we're going to award a €100 gift card to a lucky winner at DrupalCon Amsterdam!Here's how it works.
On Tuesday and Wednesday, we are going to hide puzzle pieces around the RAI Convention center. (The puzzle, for reference, is above!) If you find one of the puzzle pieces, bring it by the Drupal Association Booth in the exhibit hall.
We'll write your name and contact information on the back, and once the puzzle is complete-- or, at lunch on Thursday, whichever happens first-- we will select a lucky winner and award him or her with a €100 gift card!
Pro tip: during the hours the exhibit floor is open, we'll use the @DrupalAssoc Twitter handle to send out pictures of where the puzzle pieces are hidden. Keep your eye on that handle so you can have a shot at finding one of the pieces and winning the prize!
Note: there are only 15 puzzle pieces, so the odds of winning are great. Limit one puzzle piece per person.Questions?
Come by the Drupal Association booth next to the bookstore or email Leigh Carver with any questions you may have.
Meet Ruth Fuller, she's here to help businesses get more out of Drupal by helping them engage more effectively with the Drupal community. She'd like to help you with effective Drupal and open source sponsorship, how to engage with the community, planning, coordination, presentation preparation, and public speaking coaching.
Welcome to the second article in the “Commerce 2.x Stories” series. This time we’re going to talk about addressing, and our efforts to improve the already good Commerce 1.x addressing implementation (addressfield).
By addressing we mean storing, manipulating and formatting postal addresses, meant to identify a precise recipient location for shipping or billing purposes.
I am going to explain how to setup your development tools so that you can debug Drush commands in real time, as they run. I've tested these instructions on Mac OSX.
In a previous blog post I outlined how to configure PHPStorm and Xdebug so you can step through the code of a webpage as it is executed. This allowed you to set breakpoints and inspect the value of variables at specific points in the code. The same can be done for Drush commands. You will need to have configured your PHPStorm as described in the first blog post.Add Drush code to PHPStorm
Drush can be added to PHPStorm as an external library. This will allow you to view the Drush code within PHPStorm so you can add break points to it later.
1. In the project pane, double click external libraries, which appears at the bottom of the directories.
2. Click the plus button in the bottom left of the PHP popup window. Now use the file brower to find where Drush is installed on your system. Select the folder and click OK and OK again. Drush should now be listed as an external library.
3. Click the telephone button in PHPStorm so it starts listening for executed code.Configuring Drush to tell PHPStorm it is running
In the command line where you normally run your Drush commands, first type the following command and press enter:
export PHP_OPTIONS="-dxdebug.remote_autostart=On -didekey=PHPSTORM -dremote_host=localhost -dprofiler_enable=1"
Now, when you run a Drush command it will be picked up by PHPStorm.
If you have put in a breakpoint, then execution of the command will pause at that point. For example, open index.php in your project and place a breakpoint next to a PHP function as shown in the image. If you click between the line number and the code, a red spot will appear.
Now, at the same command prompt where you entered the export command above, run a Drush command, for example:drush cc all
PHPStorm should open at the breakpoint. Now you can step through the code in the same way as before.
Executing the export command before running Drush commands will be a little time consuming. I recommend you add this to your .bashrc file or .bash_profile file in your home directory so it's available as soon as you open your terminal.
To stop PHPStorm opening every time you run a Drush command, simply press the telephone button again and hang up.
Campbell Vertesi and Adam Juran are at the top of their game when it comes to coding and theming Drupal. They're also deeply involved in and shaped by their study of martial arts. That's what makes this DrupalCon trailer so very good: they make an analogy for working with Drupal that pits the coder vs the themer, and it becomes the basis of their whole DrupalCon session. This trailer (which is meant to get butts into seats next week in Amsterdam), is a tribute to B-grade Kung Fu movies, and is true to Drupal's tradition of approaching technology with a good dose of levity and humor. I, for one, really enjoyed working with Campbell and Adam while shooting this, and am looking forward to their session.Tags: Drupal PlanetDrupalDrupalCon
Modules Unraveled: 119 The Classy Base Theme for Drupal 8 with Scott Reeves and David Hernandez - Modules Unraveled Podcast
- How did this all get started? and where does the “banana” come from.
- From Morten: 2 years ago at BadCamp John Albin was holding a plastic sword from the pirate fest the day before. It was known as the sword of consensus. At DrupalCon Austin Morten had a banana that he was using to point to people and ask “So can we agree on X?”. That is how it became the banana of consensus. It was basically a pointing stick.
- Technically, what is the change.
- Moving classes from core to a base theme called Classy.
- Multi-phased approach.
- Phase 1, move classes out of preprocess functions and into the core templates.
- Create the Classy base theme.
- Phase 2, copy the core template with classes to Classy, remove the classes from core.
- Why do themers need this.
- Better options
- Not everyone wants the same markup (themer survey)
- Avoiding php
- No time wasted undoing core.
- What work has been done, what is left.
- Preprocess changes (phase 1) far along.
- Classy is RTBC, waiting for Dries to approve.
- Phase 2 to start at or just after Amsterdam (don’t need to wait until phase 1 is 100% complete)
- Chance of failure?
- Changes have to be in by RC1.
- Who to thank?
- joelpittet, mdrummond, crowdcg, lauriii, alexpott!
- Are there any other theme layer changes to look forward to that have come about because of the banana consensus?
- addClass/removeClass is in, what about setAttribute/removeAttribute? Similarities to jQuery make this (hopefully) more approachable for frontend developers.
- Any other theming changes not related to banana?
- Improved menu theming - menu.html.twig using a Twig macro
- What it means for themers. What it means for developers.
- Preprocess is still there so contrib can add classes if necessary - but is it necessary? Could it be done as a data- attribute?
Patrick J Waters: How to programmatically load panel pages from the database and include panel pages stored in code in Drupal 7
After hours of munging through ctools and page manager module code I figured out how to load enabled panel pages programmatically in code.
Question: Who should be asking "How much documentation is enough?"
Answer: Everybody. Developers, Themers, Managers, CEO’s. Everyone in Software Development.
Impressions and Acquia's presentation from the 2014 Government ICT 2.0 conference in London.
More than 80% of employers we recently surveyed plan to hire Drupal talent within the next six months. There’s no better time to try to get into Drupal than the present — which is why we’ve launched Drupal Jobs.
To answer many of the questions we regularly hear about starting a Drupal Career, we’re reposting some information about the Drupal job market, generously provided by our friends Mike and Gwendolyn Anello over at DrupalEasy.
“It’s exciting to me that we have a community that has such demand for talent,” says Gwen Anello. “When it comes to the power of Drupal, the community isn't just window dressing— there are a lot of people full of true willingness to help and work together to move the Drupal project forward. I don’t know of any other career path where there is something as strong as the Drupal community that people can rely on for help."What’s the big deal?
Drupal is in demand for all kinds of websites. There are stories every day about organizations implementing or migrating to Drupal (read how NASA is saving millions by moving to Drupal and the cloud). All this demand for websites means talent is in high demand as well.
Additionally, Drupal 8 is in the works. It will dramatically improve Drupal's design capabilities, provide better support for responsive design for mobile devices, and include improved HTML5 and multi-lingual capabilities. Upgrades under the hood will allow Drupal to provide better personalization services, an improved content administration interface, and modern configuration management control.There were more jobs posted in 2013 than attendees at DrupalCon Austin
You read that right. Even without the predicted growth of Drupal adoption worldwide, the current demand demonstrates huge opportunity for those choosing the Drupal path. According to Drupal Easy, in 2013 there were 2,700 Drupal-related jobs listed on groups.drupal.org Jobs, 2,800 listed on Indeed by employers, and another 1,100 listed by recruiters. The cherry on the cake: based on recent research by Nancy Stango of Blink Reaction, the national average for web developers in Drupal is more than $87,000 USD per year.It’s not just a job
Work in the Drupal world often extends into specialties, support positions, business size and lifestyles. Opportunities abound for those in every space from freelancers to executives to coders to graphic designers. The Drupal community is not just developers servicing enterprise clients: it welcomes entrepreneurs, Fortune 500 companies, small Drupal shops, contractors, consultants and every specialty and support position from recruiting to accounting.How do I get started?
The first important step, according to Mike Anello of DrupalEasy, is to make sure you understand what is ahead, and are well equipped for it. The nature of Drupal as an open source framework generally means keeping up with the technology and the community, so committing to stay engaged is key. Mike cites five traits you'll need to be successful, regardless of your tech savvy:
Depending on your personality and the depth of your IT knowledge, you'll have to decide how you are going to get the education you need to succeed. There are a plethora of resources and training available, so choose one, or combine them to ensure you get what you need in a way that makes you comfortable. Training options include:
- Self-paced, such as Build-a-Module and Drupalize Me
- Instructor-led workshops, found at places like Blink Reaction, Acquia, and DrupalEasy
- Mentored learning, like Global Training Days or DrupalCon Training and Sprints.
- Career training, for those who want a formal, comprehensive, instructor guided program. A number of organizations such as DrupalEasy offer courses like these.
Most of us come to Drupal with some core skills, so consider taking the Drupal path that will best leverage your existing interests and skills, These niches include:
- Front-end development
- Back-end development
- Data Migration
- Project Management
- Performance and Scalability
- Module development
- User Experience
Actively participating in the Drupal Community is as important to your Drupal Career as knowledge and experience. It’s important to understand that how you leverage the community is key to your success. Meetups, camps and DrupalCons are great opportunities to learn and contribute, not just glad-handing, card-trading chamber of commerce-esque functions. IRC is an exchange mechanism, it is not a means to just get...you have to give. Mike's four aspects of community that you need to practice for Drupal success:
- Be (a little) selfish
Without the first three however; the fourth is not realistic. As you start out on a Drupal career path, learning and networking will be the prevailing activities, and is made possible by the good souls a bit further down the path. Hop on IRC and go to some meetups to get technical support, meet your peers, and build relationships. Once you get to the point where you can share, (it will happen sooner than you think!) answer some questions, present at a meetup or volunteer at your local/regional camp. With all of these karma points, you can start leveraging all the learning, networking and sharing you’ve done for some personal benefit. The key, again, is to take less than you put in – all in the spirit of community.
Ultimately, when it comes down to it, all you need to get started in the Drupal world are a computer, an open mind, and a willingness to help others and be helped in turn. What you do with the rest is up to you!
Image courtesy of fgr62 on Flickr.
Today's article is all about a fabulous tool for dependency management in your PHP projects. Composer solves the problem where you add a library to your application but it depends on this specific version of some other library, which also uses the yaml stuff, which needs ... you get the picture!
Composer helps us keep track of what external code our application relies on, and get it installed the right way on every copy of that application. This article will show you how to use Composer successfully in your own projects.
Here at Phase2, we believe that Drupal distributions have the potential to shift the playing field. However, one of the Drupal projects biggest challenges right now is awareness of its capabilities and value. As Tom Erikson discusses in his AMA a couple months ago:
“For Drupal to remain relevant we need to ensure that it competes well in [the market], and that the marketing and awareness of Drupal … improves dramatically.”
We see specialized distributions as a vehicle to market Drupal in an engaging and accessible way to the market. The usability, ease of setup, and specialization inherent in distributions helps Drupal compete in the greater software market. As we push to make user experience a major asset in Drupal 8, we have an amazing opportunity to build on the progress already made in so many of the distributions out there. Phase2 has recently made usability and UX improvements for Open Atrium and OpenPublic, and we are excited to see where we can take Drupal distributions next, as a community, laying the groundwork for Drupal 8.
Phase2 has always believed it is vital for Drupal distributions to be community-driven endeavors. For this reason, I am excited to announce that Phase2 will be kicking off DrupalCon Amsterdam with a Distribution hackathon!
The hackathon will start at 3PM on Monday September 29th, and will continue throughout the afternoon and into the night. We’re asking folks to get together and hack on install profiles, distributions and Apps to move Drupal forward. There is a lot of really awesome sprinting happening at DrupalCon already and we look forward to participating with the Drupal community. If you are interested in learning more about the Phase2 hackathon at DrupalCon Amsterdam, check out the program page and agenda to register for a spot!
It is claimed that "every HTML table in Drupal 8 is responsive." What this actually means is that tables in the Drupal 8 admin UI are responsive and also that in Views, if you select a Table format, you have the opportunity to prioritize columns that will hide upon reaching narrower breakpoints. The strategy that is employed is that of adding "priority" classes to table cells and a "responsive-enabled" class to the table tag. At a tablet breakpoint, the "priority-low" table columns will hide and at the mobile breakpoint, the "priority-medium" columns will also not display.
(The following is an except from a much larger essay, in progress, titled We Sold Drupal to the World.)
Regarding our community we can ask ourselves the following questions:
Are our events too intimidating?
Here in the New England web developer community, we tried to answer these questions with a new web developer conference. We called it the New England Regional Developer Summit (NERDSummit). The first thing we did was we made the scope wide, covering multiple technologies rather than focusing on just one. So, for example, instead of just focusing on Drupal, the conference included the WordPress and Joomla! communities, as well as many general topics in things like Ruby, Rails, Django, Python, Node.js etc.
The choice to expand our camp's scope reduced the intimidation factor common to these types of events. An event about a single technology is likely to feel to have a large number of attendees who know the technology very well. Rather than feeling like it will be a larger number of people to help one who is learning, a beginner is likely to feel instead that they will be getting in the way and frustrating others with their inexperience. An event about multiple technologies changes this dynamic in that the knowledge hierarchy becomes distributed and irrelevant as a hierarchy at all. A group with expertise in one of the event’s technologies, for example, could in fact be a small influence on the event as a whole.
Are our events inclusive enough?
Diversifying the event’s content also made the event more inclusive. An event about a single technology presupposes that one has “chosen” that technology to some extent. It excludes, typically unintentionally, people who have not chosen it and are still deciding and, intentionally, people who have chosen another technology. By leaning more towards “something for everyone,” an event can draw more people and be a place where things are discovered and chosen.
We think people should choose what we’ve chosen, but there needs to be a place where it is actually a choice.
The point here is not to change the events that focus on a single technology, but just to say that an event that focuses on many technologies is less intimidating, more inclusive and more likely to bring new people into the industry.
Do our events champion a Code of Conduct?
For NERDSummit, we made a big deal about our Code of Conduct. We put it in places where it couldn’t be avoided. We focused on it at registration and in each day’s opening remarks. We spent time with it, as organizers, to understand it and then worked with volunteers to pass that understanding along.
There is a common fear that having a Code of Conduct in this way will lead people to believe that there are problems in the community, and that, if there are no problems, then there should be no Code of Conduct. Beside the fact that there are problems in every community everywhere, there is another angle to look at this that is very important.
Things work because we make them work.
Good consistent results take intentionality. A Code of Conduct is an example of that intentionality. It is saying, in writing, officially, how we will behave and what we will not tolerate. It is accepting and agreeing to it as a community and standing by it, adhering to it, making it real and making it work.
This is important to a lot of people. Championing a Code of Conduct makes this industry a more reasonable place to be for people who would otherwise find home elsewhere.
Are we giving our events the credit they deserve?
With career paths and fields of study, relevant to the web development industry, being non-existent in most places; our meetups, camps, summits, and conferences etc are critically important to how open source works. It is within the events that we are bringing people in and we are teaching ourselves how to thrive. We are doing it and we are doing it ok, but we need to do better.
Our events are where people are finding their way into a whole new IT career or just a new IT skill set. We need to recognize the importance our events have in making open source sustainable by bringing new talent in. To support open source better, we need to work to do our events better, we need to bring in more talent.
How did NERDSummit do with bringing more people in?
The NERDSummit is a direct expansion of its local area’s Western Mass Drupal Camp. Here are some comparisons between the 2013 camp and the 2014 summit.
NERDSummit 2014 Unique visitors: ~500
Western Mass Drupal Camp 2013 Unique visitors: ~250
This is reasonable considering the expanded scope and the length of the event going from one day in 2013 to three days in 2014.
NERDSummit 2014 Women visitors: 37%
Western Mass Drupal Camp 2013 Women visitors: 15%
NERDSummit 2014 Women speakers: 34%
Western Mass Drupal Camp 2013 Women speakers: 8%
This was a huge improvement over the year before and is pretty high for open source conferences in general. DrupalCon Austin, for example, left behind its historic 8% female conference attendance by achieving 20%.
NERDSummit additionally had 12% youth in attendance, with a subset of that taking advantage of onsite childcare.
While the area in New England where NERDSummit was held, Western Massachusetts, is fairly progressive. It’s clear that something we did worked.
We diversified the content to diversify the attendance to, hopefully, diversify the community.
Feedback so far has been overwhelmingly positive and we are collecting more organized feedback now. While we did pretty well drawing in more attendees and a better gender balance, NERDSummit was still fairly homogeneous in terms of race and class. NERDSummit 2015, and the years to come, will focus on reaching new communities in addition to further diversifying the ones already in attendance.
We hope to continue to see our efforts bringing more people into the industry, but also effecting changes that improves the number of people who stay. If open source is going to be a solution made by the world and for the world, it will need to be supported by the world, the whole world, and not just a privileged subset of the population. While some are working on solving the “talent shortage” and others are working on better recruiting, how we function as an IT community is one place where we can all take responsibility and make a big impact for the better.
Drupal is becoming increasingly a backend CMS. For editers so they can easy manage their content while for example AngularJSis delivering the content. Or as a backend hup combining content from multiple sources, databases and systems.
Drupal evolved towards this from a blog alike system 10 years ago, a content type with user generated comments below. Back then everybody knew that you should filter User Generated Content and stripe the HTML if you cared about the site. Many other systems up to today however do not filter UGC good enough; user signups, search input and many other ways a user can give input ot the system.
Now Drupal is talking to other systems, combining data from multiple sources, devs still need to understand that one should ***never*** trust input data, no matter if the source is another database or a user.
Because, what could possibly go wrong with just displaying this data directly or injecting it in the database? Why should you "checkplain" the TXT fields in zone of a domain? Why?