Planet Drupal

Syndicate content - aggregated feeds in category Planet Drupal
Updated: 37 min 40 sec ago

Blair Wadman: Introduction to PHP type-hints for Drupal 8 development

Thu, 06/15/2017 - 12:44
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpWhen you are calling a function or method that has an argument(s), you don’t always know what emtype/em (array, object, string etc) of argument to pass to the function. And if you end up passing in the wrong type, you’ll get a less than helpful error./p/div/div/div

Amazee Labs: Lead Developer UK Conference 2017, Day 1

Thu, 06/15/2017 - 12:38
spanLead Developer UK Conference 2017, Day 1/span div class=field field-node--field-lead field-name-field-lead field-type-text-long field-label-hidden div class=field-items div class=field-itempOn June 8 and 9, I attended the a href= Developer UK conference/a for the first time. Its unique format allowed us to learn about leading and motivating teams in the tech industry from experts./p/div /div /div spana href=/en/josef-dabernig title=View user profile. lang= about=/en/josef-dabernig typeof=schema:Person property=schema:name datatype= class=usernameJosef Dabernig/a/span spanThu, 06/15/2017 - 12:38/span div class=field field-node--field-image field-name-field-image field-type-image field-label-hidden div class=field-items div class=field-itemimg class=image-style-blog-full src= width=580 height=326 alt=The Lead Developer UK typeof=foaf:Image / /div /div /div div class=field field-node--body field-name-body field-type-text-with-summary field-label-hidden div class=field-items div class=field-itemp dir=ltrThe Lead Developer conference was my first non-Drupal conference in quite some time and I’m happy to write that I picked the right one. Not only could I learn and verify a lot of thoughts about leadership but it also gave me a new set of role models to be inspired by./p p dir=ltrThe outstanding single-track program featured blocks of 3 sessions, most of them around 30 minutes with some shorter ones of around 10 minutes and some longer ones up to 50 minutes. Let me share a few of my personal highlights: /p p dir=ltra href= Kua/aa href= – The Constant Life of a Tech Lead/a kicked off the conference by reminding us about the basics of leadership in tech and that we should focus on values and principles rather than tools or implementation details. People are unique, they differ and we need to find the right approach depending on the situation. It is especially important to help your team as much as possible by providing the necessary context to accomplish their goals, which is often forgotten in my experience./p piframe allowfullscreen= frameborder=0 height=485 marginheight=0 marginwidth=0 scrolling=no src=// width=595/iframe/p divstronga href=// target=_blank title=Constant Life of a Tech LeadConstant Life of a Tech Lead/a /strong from stronga href= target=_blankPatrick Kua/a/strong/div p dir=ltra href= Wu/aa href= – Ask vs. Guess Culture Communication/a brought back the idea of how differently people “tick”. Are you a more upfront person that prefers a clear communication style with others, or are you more on the side that expects someone to read between the lines and work based on assumptions? I definitely find myself more on the guess culture side and knowing that this is not how everyone works already helps a lot.  /p p dir=ltra href=http://anjuansimmons.comAnjuan Simmons/aa href= – Leadership Lessons from the Agile Manifesto/a gave a very personal track record of how he mastered leadership for himself and his teams. Working with a hero analogy, Anjuan mentioned that as tech leads we get called for the adventure, we get mentored with wisdom and are provided gifts to finally approach the boss level and return to improve the ordinary world. A tech lead guides other people on paths they have already taken. How does Anjuan motivate his team? At any cost, he will try to preserve the dignity of each team member and therefore earn their trust to together iterate and improve./p p dir=ltra href= Carlson – Better: Fearless Feedback for Software Teams/a provided helpful insights for one of the topics I most struggle with: giving good feedback. Aside from the general feedback categories: positive to encourage and constructive to improve, there’s also a category that is often missed not considered. “Passive feedback” means that you don’t give feedback at all and that also mean something to your peers. Giving the right amount of feedback in time is critical to any healthy relationship. I also liked to find out about a href= feedback/a and the idea of having a dedicated #thanks slack channel to collectively practice appreciation./p piframe allowfullscreen= frameborder=0 height=485 marginheight=0 marginwidth=0 scrolling=no src=// width=595/iframe/p div style=margin-bottom:5pxstronga href=// target=_blank title=Better - Fearless Feedback for Software TeamsBetter - Fearless Feedback for Software Teams/a /strong from stronga href= target=_blankErika Carlson/a/strong/div p dir=ltra href=http://nickol.asNickolas Means – The Original Skunk Works/a concluded the first day. It was a detailed look at the history of the aircraft manufacturer that showed what incredible achievements they could make based on a href=’s 14 Rules/a. Providing a system to innovate and release quickly (continuous integration amp; deployments) was critical to the success of this team./p p dir=ltrThe a href= for all of the talks are available and I added the links to them above. On top of the inspiring talks, the conference had some more features I really liked too. a href= Williams/a was hosting the conference in a well-organized and entertaining way and followed up on a code of conduct issue in a constructive way. The conference also had a live captioning feature of all the talks on a screen, which helped me follow the massive flow of audio information and was even entertaining at times./p blockquote class=twitter-tweet data-lang=en p dir=ltr lang=en xml:lang=enAt a href= conference in London today. All talks are live-captioned by a href=, which is awesome. a href= — Mehdi El Gueddari (@MehdiElGueddari) a href= 8, 2017/a/blockquote pNext week, let’s follow up with a summary of day 2 and conclusions for a href= Lead Developer UK conference/a./p /div /div /div

heykarthikwithu: Drupal -, Evaluate Drupal Projects Online

Thu, 06/15/2017 - 05:20
spanDrupal -, Evaluate Drupal Projects Online/span divpHow to use, to evaluate drupal projects online?/p /div spanspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=heykarthikwithu/span/span spanThursday, 15 June 2017 - 08:50:40 - IST, Asia/Kolkata/span

ActiveLAMP: Pattern Lab in Drupal 7

Thu, 06/15/2017 - 03:01
divimg src= //div a href= more.../a Efficiently Manage Events on Your Drupal Site in a Way That Even an Intern Can Do!

Wed, 06/14/2017 - 22:51
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpWhen you're running your non-profit, there is so much to do: basically an unlimited amount of work, right? Board meetings, fund-raising - and then there's the actual world-changing work you signed-up to do!/ppOur ongoing series of helpful tips (a href=;id=59683efefeamp;group%5B16357%5D%5B1%5D=1click here to subscribe via e-mail/a) continues today with some help on how to efficiently manage one of the most common and important aspects of any non-profit: EVENTS./ppIn this article, we'll talk about how to setup events in Drupal, and at the end, there's a video tutorial showing the process step-by-step./ppstrongRead more to see how!/strong/pp/div/div/div

Jacob Rockowitz: Coming to an agreement within the Drupal community and sponsoring a Webform feature

Wed, 06/14/2017 - 20:19
pHi, my name is Jacob Rockowitz and I'm the individual responsible for maintaining the Webform module for Drupal 8. Two weeks ago, I posted a href= Do We Come From? What Are We? Where Are We Going?/a documenting my journey and experience building and maintaining the the Webform module for Drupal 8. My goal was to document the current state of the Webform module, while simultaneously planning for the project’s future growth and sustainability. One of the steps toward accomplishing this is an idea I put together called strongSponsor a Feature/strong./ppstrongSponsor a Feature/strong is a process encouraging organizations to hire Open-source software maintainers and contributors to build features and fix issues that directly impact a company's project. Two key concepts behind strongSponsor a Feature/strong: all work would be open source and the sponsoring organization would pay for tangible and immediate results directly to the working individuals./ppI feel that selling strongSponsor a Feature/strong to the Drupal community is going to be an uphill climb, especially because no one can technically sell Drupal. In other words, no one is used to paying directly for open source work. For now, I am going to tread lightly when talking about strongSponsor a Feature/strong. For example, last week, I wrote about how a href= does not help grow Drupal's community/a to explore the different ways people are currently funding open source development. On Twitter, Adam Bergstein‏ (@n3rdstein) and I began a conversation about how an organization might pay a project maintain/ href= together an agreement that pays a developer to deliver...a href= More/a

Web Wash: Automatically Generate URL Aliases using Pathauto in Drupal 8

Wed, 06/14/2017 - 20:00
Pathauto is a module which lets you automate the generation of URL aliases in Drupal. Instead of the URL being /node/123, you can have /blog/article/why-use-drupal. The module allows you to define custom patterns which are generated when an entity is created. URL aliases or URL slugs, help with search engine optimization and they're more user-friendly. Drupal core has supported URL aliases for a long time, but they weren't automatically generated. Pathauto helps with automating the process. In this tutorial, you'll learn how to create aliases and patterns, and how to bulk generate paths.

Elevated Third: What is Elevated Third, Denver Website Agency

Wed, 06/14/2017 - 19:07
span class=field field--name-title field--type-string field--label-hiddenWhat is Elevated Third, Denver Website Agency /span What is emElevated Third? /em span class=field field--name-uid field--type-entity-reference field--label-hidden a title=View user profile. href= lang= about= typeof=schema:Person property=schema:name datatype= class=username xml:lang=Tony Dryer/a/span span class=field field--name-created field--type-created field--label-hiddenWed, 06/14/2017 - 11:07/span div class=field field--name-field-image field--type-entity-reference field--label-hidden field__itemarticle class=media media-image view-mode-bannerdiv class=field field--name-field-image field--type-image field--label-hidden field__item img src= width=1340 height=540 alt=Elevated Third sign in our entrance typeof=foaf:Image class=image-style-hero-banner //div /article/div div class=field field--name-body field--type-text-with-summary field--label-hidden div class=body-content p dir=ltrElevated Third’s namesake is rooted in company culture. It comes from the art world and refers to the experience one has when looking at a particularly moving or captivating piece of art. When you have a “get it” moment—that flash of understanding—an elevated third experience is created between the medium and you, the viewer./p p dir=ltrAt Elevated Third, a Denver website agency focusing on Drupal, we strive to replicate this experience for our clients, our partners, and our employees./p h3 dir=ltrOur Culture /h3 p dir=ltrOur culture and work ethic is based on an idea that the right environment can foster incredible talent. We don’t exclusively hire people who fit a job description, instead we hire people who are smart enough to grow into their own description. We choose employees based on their aptitude to overachieve. Then, we observe. We figure out what said employee is particularly good at and we create a job description around their strengths./p p dir=ltrThis practice is easier said than done. It requires a scaffolding of actionable core values and exceptional hires who allow their peers to be vulnerable. Because, of course, learning means making mistakes./p p dir=ltrUltimately, it is an environment of support, vulnerability, and observation that allows us to foster talent instead of hire it based on a list of requirements and a resume. The results: employees who feel important, who produce great work, and who are happy to work hard./p p dir=ltrOn top of all the standard agency perks like snacks and foosball, our new core values are essential to establishing and maintaining our internal culture here at Elevated Third. They are the guidelines for personal success. Following them is the best way to be successful at our Denver website agency. When our employees are successful, the company will prosper. Establishing the core values in late 2016 has had a direct impact on the business success we have seen thus far in 2017./p p dir=ltr /p img alt=Denver website agency core values data-entity-type=file data-entity-uuid=85f688df-2193-49df-b748-805c8f9c7703 src= class=align-center /h3 dir=ltr /h3 h3 dir=ltrCore Values/h3 p dir=ltrWhen we first got together to determine our core values, we knew it was not going to be a simple process. We had to get it right, and we had to take the time to carefully craft each value.  /p p dir=ltrWe started by listing attributes that we believe make our employees successful. Things like accountability, effectiveness, work ethic, engagement, curiosity, positive energy, empathy, confidence, and thoughtfulness to name just a small sampling. For the next few months, we boiled down our list and crafted them into similar groupings. From these groups, the five values that we have now started to make themselves clear. It was a long, sometimes tedious, yet fulfilling experience./p p dir=ltrstrongThe Elevated Third Core Values:/strong/p ul dir=ltrliStart with empathy. Respect and honesty come first. Care about our clients, our users and each other./li liLean in and keep moving. Stay engaged, positive and persistent. Bring energy and never quit./li liMake an impact. Seek out and solve the right problems. Be fearless! Fight for the win-win./li liBe a remarkable player. Put the team first. Step up when it’s time, inspire by example./li liOwn the outcome. Take responsibility for results. Embrace data celebrate effectiveness and face failures. Never stop improving./li /ulp dir=ltrThe core values we have put in place guide all the decisions we make within our Denver website agency. They help inform everything from questions in an interview process, project decision making, peer to peer feedback, internal growth strategy, and long-term client relationships. Every single aspect of the business can be applied to the five core values. Since implementing them we are seen our decision-making process become much more focused, both short term and especially long term./p p dir=ltr /p img alt=Elevated Third core values data-entity-type=file data-entity-uuid=94a4c003-a613-4a9c-9f77-5c5b1c7988dd src= class=align-center /p dir=ltr /p p dir=ltrWe’ve made an initiative out of preventing the typical cliched core value design. Figuring out creative ways to implement them into our everyday process has become a necessary challenge. We specifically seek out the traits that the values exemplify in our hiring process. In addition, all new hires see the exact debut presentation our company founders shared during the core values unveiling meeting./p p dir=ltrOur core values are meant to stand against the core value bandwagoners, they run through our day-to-day, our hiring, and our attitudes./p p dir=ltrEach and every day, we’re seeking the elevated third experience./p /div /div

Vasily Yaremchuk: Kiev Drupal Camp 2017: The First Impression

Wed, 06/14/2017 - 15:35
span class=field field--name-title field--type-string field--label-hiddenKiev Drupal Camp 2017: The First Impression/span div class=field field--name-field-video field--type-video-embed-field field--label-hidden field__itemdiv class=video-embed-field-responsive-videoiframe width=854 height=480 frameborder=0 allowfullscreen=allowfullscreen src= /div /div span class=field field--name-uid field--type-entity-reference field--label-hiddenspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=root/span/span span class=field field--name-created field--type-created field--label-hiddenWed, 06/14/2017 - 16:35/span div class=clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__itempI took part in Kiev Drupal Camp 2017 last weekend. It was a good decision to go to the code sprint. I'm sure that the second day of the conference was much better than the first one with formal presentations. My personal thanks to Dmitry Drozdik, Dmytro Danylevskyi and Alexander Schedrov for their help to meet OpenY./p pThe main issue of the first day was that presentations went in several 4-5 streams in different rooms and I missed a lot of useful information. Fortunately, Conference organizers recorded videos of all presentations./p pOn this Camp I had presentation: Paragraphs are more powerful than you can expect./p pThere was not enough time. I tried to provide the extended overview and 3 demonstrations, but overview was very short and demos weren't very attractive. There is the video above./p pAlso you can download PDF with slides by the link a href= target=_blank /div div class=field field--name-taxonomy-wp-blog-tags field--type-entity-reference field--label-hidden field__items div class=field__itema href= hreflang=enPlanet Drupal/a/div div class=field__itema href= hreflang=enLandingPage/a/div div class=field__itema href= hreflang=enDrupal 8/a/div /div div class=field field--name-field-comments field--type-disqus-comment field--label-hidden field__itemdrupal-render-placeholder callback=Drupal\disqus\Element\Disqus::displayDisqusComments arguments=0=Kiev%20Drupal%20Camp%202017%3A%20The%20First%20Impression1=http%3A// token=23335866/drupal-render-placeholder/div Blog: AGILEDROP: DrupalCon sessions about Front End

Wed, 06/14/2017 - 12:12
a href= src= //a Last time, we gathered together DrupalCon Baltimore sessions about Site Building. Before that, we explored the area of Drupal Showcase, Coding and Development, Project Management and Case Studies. And that was not our last stop. This time, we looked at sessions that were presented in the area of Front End. Atomic Design in Drupal 8: Isolating frontend workflow with Pattern Lab! by Anthony Simone from Elevated Third This session reviewed the basic principles of Pattern Lab and atomic design but focused on the practical implementation of Pattern Lab in the next Drupal project.   Back… a href= MORE/a

Sudhanshu Gautam | Blog: GSoC 2017 | Week 2: Port Vote Up/Down

Wed, 06/14/2017 - 06:48
span property=schema:name class=field field--name-title field--type-string field--label-hiddenGSoC 2017 | Week 2: Port Vote Up/Down/span span rel=schema:author class=field field--name-uid field--type-entity-reference field--label-hiddenspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=sudhanshu/span/span span property=schema:dateCreated content=2017-06-14T04:48:46+00:00 class=field field--name-created field--type-created field--label-hiddenWed, 06/14/2017 - 10:18/span

David Corbacho: DrupalCon Front End Track

Wed, 06/14/2017 - 00:28
div class=field field-name-field-image field-type-image field-label-hiddendiv class=field-itemsdiv class=field-item evenimg itemprop=image src= width=90 height=84 alt= //div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpDrupalCon Dublin seems like it happened yesterday, but it's already 9 months / This blog post is a summary of the Front end track. br /Late but, anyway, I want to write it down for two reasons:/p pstrong1)/strong Express again my gratefulness to the great speakers we had on the front end track. Everyone gave their best and quality of the sessions were high. Yay! Do you know the frontend track was the most attended track in DrupalCon Dublin?/p pstrong2)/strong Motivate previous and new speakers a href= submit sessions for the upcoming DrupalCon Vienna/a (consider also the Horizons track)/p pAs a frontend track chair, I thought that something I could do for the speakers was to immortalise the moment where our brilliant speakers were in the DrupalCon / Here we go:/p h2Improving the Responsive Web Design Process in 2016/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Cristina Chumillas did a great summary of best practices, and I enjoyed her demo how to achieve responsive images with Drupal / Cristina is also the frontend track chair for a href= Vienna/a and organizes a href= Summer/a (29th of June, Barcelona)/p h2Streamlined Front-end Development with Pattern Lab and Twig/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Adam Juran focused on explaining how Forum One are putting together Pattern Lab and Drupal 8, with Twig templates acting as a bridge between both systems. This has even more sense if you have different teams doing design and development, making boundaries clear. In a href= slide/a you can see a summary of the proposal. /p h2Structure for Creativity/h2 pa href= session in Youtube/a / a href= description/abr / The session was divided in two parts: Janne Bjørsted, UX designer explained how they structure the work and creative process when building products in their company. Then Mads Thines, frontend developer, went through his workflow / tools and useful coding tips./p h2Super Collaborative Design Processes for Teams/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Lewis Nyman talked about design process and gave tips and techniques for design workshops. Recommended the book a href=, by Google Ventures folks./p h2Closing the Gaps: Prioritizing Accessibility in Custom Themes with Drupal 8/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Erin Marchak gave the 2nd best-rated Frontend session. Full of useful information about a11y, tips, demos and even the deliver of the session was outstanding (she made the effort to explain verbally the animated gifs to reach everyone). A true example of a high standard DrupalCon session./p h2Drupal 8 theming in depth/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Lauri gave a overview of advanced Twig patterns, and then hit one of the challenges when theming Drupal 8: how to build a component-based design / Lauri also introduced the plan of creating a new default theme in Drupal core, that will show / demo better the possibilities of creating beautiful websites with Drupal 8 in a href=lt;a href= https:=other session/a. This is part of the effort to improve the a href= of the box experience./a/p h2Design Principles for Minimum Viable Product/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Junaid Masoodi gave an overview of applying MVP to the design phase/p h221 things i learned with Twig amp; Drupal/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Morten Birch gave a condensed session full of tips and things that you might not now about Twig. He announced at the end of the session his new admin theme project, that later was named a href= h2Animate Your Site/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Nikhil and Vidit gave a session introducing animation principles, and then apply them to real world cases. I like how they introduced humor to the session to make it light-weight and more enjoyable./p h2Creating Layouts and Landing Pages for Drupal 8/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Suzanne Dergacheva explained different approaches to the question every Drupal themer has. What tools to use to build the layout ? Panels, paragraphs, blocks? I appreciate that she explained the concepts with a realistic use case. In my opinion, a excellent example of a session with a good balance of introduction, theory, advanced concepts and demo./p h2React Front-end For Your Drupal 8 Back-end/h2 pa href= session in Youtube/a / a href= description/abr /img src= width=531 height=353 alt= class=image-medium /br / Bassam and Aliyah explained how you can integrate React and Drupal, conceptually and also giving details and explaining it with code snippets where the magic happens./p h2Automated browser testing with Nightwatch.js/h2 pa href= session in Youtube/a / a href= description/abr / Vladimir flew all the way from Australia to explain why you should use Nightwatch.js for e2e testing. I was amazed how easy and painless can be./p h2Conclusion/h2 pI hope this summary gives you an idea of what session we are looking for in the frontend / Please, submit your session for a href= Vienna/a. We care about the content, and that you have some previous experience as a speaker. It helps the track chairs to warranty the quality of sessions are / Check also a href= Baltimore sessions/a for inspiration/p /div/div/div

Colorfield: Migrating SQL in Drupal 8 with Migrate Tools and Migrate Plus

Tue, 06/13/2017 - 22:21
span property=schema:name class=field field--name-title field--type-string field--label-hiddenMigrating SQL in Drupal 8 with Migrate Tools and Migrate Plus/span div class=field field--name-field-image field--type-image field--label-hidden field__item a href= property=schema:image src= width=500 height=258 alt=Drupal migration typeof=foaf:Image class=image-style-large //a /div span rel=schema:author class=field field--name-uid field--type-entity-reference field--label-hiddenspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=christophe/span/span span property=schema:dateCreated content=2017-06-13T20:21:14+00:00 class=field field--name-created field--type-created field--label-hiddenTue, 13/06/2017 - 22:21/span div property=schema:text class=clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__itemMigrate API is awesome, and if you plan some custom migration, a few contributed modules does the heavy lifting for you. This article should be regarded as a list of steps to follow to achieve a simple migration from another SQL data source than Drupal. So we will not go in deep into the explanations of the Migrate theory, for this subject, refer to the documentation of the Migrate API. Also, we will finish with some debugging techniques and a first shot of a bash script for rerolling a migration from scratch in case of configuration change./div

Zivtech: 7 Server Metrics You Should be Monitoring on Your Drupal Site

Tue, 06/13/2017 - 21:07
div class=node node--type-blog node--view-mode-rss ds-1col clearfix div class=field field--body field--name-body field--type-text-with-summary field--label-hidden div class=field__itempComputers are finicky. As stable and reliable as we would like to believe they have become, the average server can cease to function for hundreds of different reasons. Some of the common problems that cause websites or services to crash can’t really be avoided. If you suddenly find your site suffering from a DDOS attack or a hardware failure, all you can do is react to the /  br / But there are many simple things that are totally preventable that can be addressed proactively to ensure optimal uptime. To keep an eye on the more preventable issues, setting up a href= target=_blankmonitoring/a for your entire stack (both the server as well as the individual applications) is helpful. At Zivtech, we use a tool called Sensu to monitor potential issues on everything we host and /  br / Sensu is a Ruby project that operates by running small scripts to determine the health of a particular application or server metric. The core project contains a number of such scripts called “checks.” It’s also very easy to write custom checks and they can be written in any language, thus allowing developers to easily monitor new services or applications. Sensu can also be run via a client server model and issue alerts to members of the team when things aren’t behaving properly./p h2Server checks/h2 pAs a general place to start, you should set up basic health checks for the server itself. The following list gives you a good set of metrics to keep an eye on and why it is in your best interest to do so./p h3RAM/h3 h4What to check/h4 pMonitor the RAM usage of the server versus the total amount of RAM on the server./p h4Potential problem monitored/h4 pRunning out of RAM indicates that the server is under severe load and application performance will almost certainly be noticeable to end users./p/div /div div class=field field--node_link field--name-node-link field--type-ds field--label-hidden div class=field__item a href= hreflang=enRead more/a /div /div /div

Acquia Developer Center Blog: Learn Drupal 8 Online and Get Certified with this New Course

Tue, 06/13/2017 - 21:06
div class=field field-name-field-blog-image field-type-image field-label-hiddendiv class=field-itemsdiv class=field-item evenimg typeof=foaf:Image class=img-responsive src= width=140 height=85 alt=Certified! title=Certified! //div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpOne of the questions we get most often is, How do I prepare for the a href= Certified Developer - D8 Exam/a? Now we've got an answer: the a href= 8 Developer Immersion Course w/ Certification Prep/a - an 8-week, instructor-led, project-based online course that covers all areas of Drupal 8 and prepares you to take the Acquia Certified Developer - D8 Exam./p /div/div/divdiv class=field field-name-field-blog-tags field-type-taxonomy-term-reference field-label-inline clearfixdiv class=field-labelTags:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/tags/acquia-drupal-planet typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=acquia drupal planet/a/div/div/div

Tameesh Biswas | Blog: GSoC17 : Client Side File Crypto : Week 2

Tue, 06/13/2017 - 19:50
span property=schema:nameGSoC17 : Client Side File Crypto : Week 2/span div property=schema:text class=field field--name-body field--type-text-with-summary field--label-hidden field--itempThis blog post summarizes the second week of coding with Drupal in Google Summer of Code 2017 /p/div span rel=schema:authorspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=tameeshb/span/span span property=schema:dateCreated content=2017-06-13T17:50:45+00:00Tue, 06/13/2017 - 23:20/span div class=field field--name-field-tags field--type-entity-reference field--label-above div class=field--labelTags/div div class=field__items div class=field--itema href= property=schema:about hreflang=enGSoC/a/div div class=field--itema href= property=schema:about hreflang=enGoogle Summer of Code 2017/a/div div class=field--itema href= property=schema:about hreflang=enDrupal/a/div div class=field--itema href= property=schema:about hreflang=enDrupal Blog/a/div /div /div ul class=links inline list-inlineli class=node-readmorea href= rel=tag title=GSoC17 : Client Side File Crypto : Week 2 hreflang=enRead morespan class=visually-hidden about GSoC17 : Client Side File Crypto : Week 2/span/a/lili class=comment-forbidden/li/ul

Drupal core announcements: Make a difference for D8 at the DrupalCamp Montréal sprints

Tue, 06/13/2017 - 19:18
div class=field field-type-datestamp field-field-start7 div class=field-items div class=field-item odd div class=field-label-inline-first Start:nbsp;/div span class=date-display-start2017-06-15 (All day)/spanspan class=date-display-separator - /spanspan class=date-display-end2017-06-18 (All day) America/Toronto/span /div /div /div div class=field field-type-userreference field-field-organizers div class=field-labelOrganizers:nbsp;/div div class=field-items div class=field-item odd xjm /div /div /div div class=field field-type-text field-field-event-type div class=field-labelEvent type:nbsp;/div div class=field-items div class=field-item odd Sprint /div /div /div pa href= Montréal/a is coming up this Thursday to Sunday (June 15th to 18th), with great trainings, two days of sessions, and a dedicated sprint day on Sunday. The sprint gives you a great opportunity to get involved and make a difference for the things that affect Drupal and your projects. You don't need to be an expert, developer, or existing contributor to get involved. Here are three current focus areas that we'll collaborate on on this week! /p h3Major issue triage/h3 pMajor issue triage sprints a href= been held at many DrupalCons and camps recently/a and Montréal will continue these efforts. We want to fix the most important bugs in Drupal, but the first step to that is making sure bug reports are up to date and actionable. That is where major issue triage helps: identifying reports that should be critical, closing ones that are no longer relevant, downgrading ones that are actually less severe, and making sure relevant reports can move forward to a fix. Sometimes just asking questions for clarification on bug reports will move things ahead a lot. Still not convinced this sprint is for you? a href= more in my blog post/a from earlier this year./p h3Make upgrade paths easier with @deprecated documentation/h3 pWe made several changes in the release process with Drupal 8 a href= make Drupal upgrades easy forever/a. One of them is that we improve Drupal's APIs in scheduled six-month minor releases, but also leave the old ways of doing things in place and mark them as deprecated until Drupal 9. This huge shift for Drupal allows module maintainers to adapt to changes gradually, on their own schedule, instead of needing a massive push all at once on some later release date./p pAPI deprecations are documented in change records on, and also marked directly in the code documentation. We started marking deprecated code almost two years ago as we were preparing to release Drupal 8.0.0, and we have been creating change record documentation since the release of Drupal 7. Unfortunately, we did not start to connect the two until recently, so it was not possible to read more about a certain change when you encountered a deprecated API. a href= make these connections/a for an easier upgrade path for everyone./p h3Clearly define Drupal's public APIs/h3 pAs we mentioned above, Drupal 8 has 6-month minor releases that improve APIs (as well as adding new features). In order to make this safe, clear, and maintainable, we a href= what parts of Drupal's APIs are internal through a documented policy/a, but that is not very explicit for developers. a href= this explicit in code documentation is more effective/a for anyone reading the code or developing with an IDE. By helping with this effort, you can learn a lot about Drupal 8 APIs and help with the upgrade path through documenting a better-defined API surface./p h3Also, help me help sprinters!/h3 pI'll be in the Montréal sprint room all four days of the camp to work with potential contributors and show them how to help with these tasks, but I could use some help myself. If you have experience with Drupal 8 (even a little) or have past experience sprinting on major triage or mentoring at Drupal events, a href= ping me/a. Helping others is an especially important way to contribute back. On that note, many thanks to camp organizers for making these sprints possible./p pÀ jeudi! See you at the camp!/p pemThanks to a href=ábor Hojtsy/a for help with this post./em/p

Sooper Drupal Themes: Drupal 8: My Experience Crossing The Chasm With SooperThemes

Tue, 06/13/2017 - 14:54
div class=field-blog-image img typeof=foaf:Image class=img-responsive src= width=1140 height=510 / /div div class=field-body div class=az-element az-row row az-row--sm data-az-id=b2 data-azat-device=sm data-azb=az_row data-azcnt=true style= div class=az-element az-ctnr az-column col-sm-12 data-az-id=b3 data-azb=az_column data-azcnt=true style= div class=az-element az-text data-az-id=b4 data-azb=az_text data-azcnt=true style= pDrupal 8 adoption has been very slow, and many people have been putting it off.nbsp;Some even gave up on Drupal becausenbsp;of D8's (perceived) complexity, focussing their career or hobby onnbsp;easier CMS software. The past 3 months I've been fully engaged in embracing Drupal 8 and moving my a href=http://www.sooperthemes.compremium Drupal themes/a along with the supporting ecosystem of modules, installation profiles, and infrastructure to Drupal 8! Going forward we will develop and maintain our products on both Drupal 7 and Drupal 8.nbsp;/p pIt's been an interesting but also difficult journey and I'm writing to tell other Drupal professionals (and hobbyists)nbsp;about my experience. Inbsp;divided this long read into several chapters so you can emskip to whichever topics you care about/em most. If this topic is important to you, please do comment and share your thoughts and experience!/p h3 class=st-titleTheming: Easier and Better But Completely New/h3 pDrupal 8 uses a new templating system for theming called Twig. While skeptical at first about having to learn a new language, I've grown to like Twig a lot... but to be very franknbsp;I would have been totally OK with keeping PHPTemplate in Drupal 8. It's what I've been using for 10 years and it's what I know. My Drupal 7 theme is full of preprocessing, custom features, and integrations with certain modules, and it's all coded in PHP. The transition to Twig means there is a huge amount of work for me to not just convert templates but also re-architect all the logic and features in the theme. I'll say that Twig works great and has a bright future but I'll also say that I can empathize with all the Drupal themers who are unhappy about having to learn a whole new way of working./p h4Theme Settings/h4 pIf you develop base themes or premium themes like I do I have some good news as well: Theme Settings are largely implemented the same way. For me this means that many hundreds of lines of FAPI code for the 200+ theme settings in my flagship emGlazed Themenbsp;/emcan be copied and pasted into the Drupal 8 codebase and 80% of the form generating code just works. Of course the code that reads the theme settings still has to be ported from PHPTemplate, preprocessing and custom PHP to use Twig and Drupal 8's APIs.nbsp;/p h4Logic Inside Twig Templates/h4 pThe most confusing thing when starting out with Twig was that all logic for printing classes happens right inside the Twig template. For years I've been telling people to use preprocess functions for any logic, whether it be if/else or some code to retrieve a field value. In Twig any logic related to printing template code (that includes classes and other attributes) goes right into the twig template. I'm not yet entirely happy about have a lot of logic in my template files. Then again I can also imagine that to the unitiated the Drupal 7 architecture with classes being added in preprocess, or process functions that can be in multiple locations could be even more confusing./p pTo show you what I mean here is an excerpt of my stronghtml.html.twig/strong template:/p pre{% set html_classes = [ theme.settings.sticky_footer and not theme.settings.boxed_layout ? 'html--glazed-sticky-footer', ] %} {% set body_classes = [ 'html', logged_in ? 'user-logged-in', not root_path ? 'path-frontpage' : 'path-' ~ root_path|clean_class, node_type ? 'page-node-type-' ~ node_type|clean_class, db_offline ? 'db-offline', theme.settings.navbar_position ? 'navbar-is-' ~ theme.settings.navbar_position, theme.has_glyphicons ? 'has-glyphicons', theme.settings.header_position ? 'body--glazed-header-side' : 'body--glazed-header-top', not theme.settings.header_position and not theme.settings.header_style == 'overlay' ? 'body--glazed-header-not-overlay', not theme.settings.header_position and not theme.settings.header_style == 'overlay' ? 'body--glazed-header-' ~ theme.settings.header_style, not theme.settings.header_position and not theme.settings.header_top_sticky and theme.settings.header_top_fixed ? 'body--glazed-header-fixed', ] %} lt;!DOCTYPE htmlgt; lt;html {{ html_attributes.addClass(html_classes) }}gt; nbsp; lt;headgt; nbsp; nbsp; lt;head-placeholder token={{ placeholder_token|raw }}gt; nbsp; nbsp; lt;titlegt;{{ head_title|safe_join(' | ') }}lt;/titlegt; nbsp; nbsp; lt;css-placeholder token={{ placeholder_token|raw }}gt; nbsp; nbsp; lt;js-placeholder token={{ placeholder_token|raw }}gt; nbsp; lt;/headgt; nbsp; lt;body{{ attributes.addClass(body_classes) }}gt;head-placeholder token={{ placeholder_token|raw }}css-placeholder token={{ placeholder_token|raw }}js-placeholder token={{ placeholder_token|raw }}{{gt;/js-placeholder/css-placeholder/head-placeholder/pre pSome templates, like my strongmenu--main.html.twig/strongnbsp;template that is responsible for rendering dropdown menus contain more advanced logic, including a powerful Twig tool called anbsp;nbsp;macro. The ratio of markup to logic is so low in this template that it kind of seems to defeat the purpose of having a templating system. Then again, if I look at the equivalent of PHP code I've had to write in its D7 counterpart it's equally cumbersome. nbsp;/p pDespite my reservations aboutnbsp;twig, looking back at the work I've done so far in porting my theme to Drupal 8 (it's about 75% done) I'm creating a more maintainable, better product. And that's what Drupal 8 is all about. There's some pain in migrating all your work but in return you get what I believe is a more solid and maintainable theme./p h3 class=st-titleSite Building: Pretty much the same/h3 pFor a CMS that was basically built differently from the ground up, the authoring and site building experience is strongsurprisingly similar to Drupal 7/strong. You're still going through the same steps and forms to create content types, taxonomies, views, nodes etc. This is because the idea of Drupal as a flexible and powerful CMS has remained the same. For Drupal 7 users who didn't do much coding before, not much will change when upgrading to Drupal 8. Without investing at all in learning new things you can hit the ground running and install a nice Drupal 8 theme or distribution and it's business as usual./p h3 class=st-titleModule Development: Definitely harder/h3 pBuilding Drupal 8 modules is not rocket science. It's just that there is stronga lot to learn/strong before you're fluent at it. New APIs, more complicated object oriented architecture, services and plugins. The learning curve is steeper and higher than ever. However, if you start small, read the docs, and copy code from the examples module it's doable.nbsp;The learning process very much reminds me of my first experience building my very first Drupal (5.x) module./p pThis is why I decided that building our most complex Drupal 8 modules should be handled by experienced Drupal 8 experts and not me. While I started upgrading some tiny modules as well as our themenbsp;I contracted Ivan (a href= on d.o.) and Jay Friendly (a href= on d.o.) to build the SooperThemes Portfolio and Glazed Drag and Drop Builder modules...nbsp;emcompletely written from the ground up/em for Drupal 8's architecture. Without their help there's nonbsp;way I would have upgraded these modules myself without first spending at least 2 months learning Object Oriented Programming and the inner workings of Drupal 8. If anyone is looking to consult about Drupal 8 upgrade work I can highly recommend both Ivan and Jay. Jay is currently writing a book on Drupal 8 development that is targeted at Drupal 7 veterans as well as completely new users./p pDevelopment has been in full swing for the past 2-3 months and it has been the most intense and sometimes stressful time in my years building SooperThemes products. All of our products are now almost finished but still being tested and refined. It has been a great learning experience but also a great lesson in technical debt and the reality of Drupal 8's complex architecture. For me personally with my background in theming, design, and marketing I feel intimidated by the complexitynbsp;introduced by Drupal 8. Conversely I feel that my customers will have more easy to use, solid, reliable and performant website thanks to Drupal 8. Luckily for many of my customers the whole point of my products is that you can build and customize everything without coding, using our Drag and Drop tools and extensivenbsp;theme settings.nbsp;/p h4Plugins, Services, Controllers, and Schema Metadata/h4 pThat is a list of some of the software architecture concepts I've had to get acquinted with in the short time of 2 months. I can't say that I've emlearnednbsp;/emthese concepts just yet. In Drupal 7 understanding the hook system and Forms APInbsp;could really get you a long way building even very large Drupal websites. In Drupal 8 not so much./p pBefore I started feeling like I'm on a learning curve, I ran into a wall. Drupal 8 really demands you delve deeper into software architecture than before. It's hard but the beauty of the new system is that as you're learning Drupal you're also learning Symphony and proper Object Oriented Programming design patterns. Those who can make the neccesary investment of time and energy will come out of it with skills that are valuable beyond the Drupal ecosystem./p h3 class=st-titleInstallation Profiles: Similar But Better/h3 pInstallation profiles are a critically important part of our business at SooperThemes. We don't just sell strongthemes/strong, we develop, support, and maintain emall/em the Drupal code that brings our designs to life. For our customers this means they can download a turn-key installation profile that contains their selection of designs, features, and demo content./p pFor us this means we maintain anbsp;ton of configuration, demo content, and modules, and wrap it all into installation profiles. We even provide an interface to generate a href= installation profiles/anbsp;and install them on your hosting fully automatically.nbsp;My experience so far with Drupal 8 installation profiles has been great.nbsp;/p h4Demo Content/h4 pA notable improvement is the great support for demo content in Drupal 8 with help of the Default Content module. In Drupal 7 the go-to module was UUID Features. Over the past years I've spent many hours fixing bugs, implementing file support, and patching up poor support for referenced entities and menu links in Drupal 7's UUID Features code.nbsp;/p pThe Drupal 8 Default Content module is still in alpha and if you're doing a lot of default content worknbsp;you still might need to hit the issue queue and download (or contribute) a little patch but this module already feels more stable than the UUID Features suite. D8 and Default Content also import contentnbsp;faster, allowing even the lowest of low-end hosting to install our bulkier demo installation profiles./p h4Configurationnbsp;/h4 pI've read that Features is still a thing in Drupal 8 but I've not yet found the need to try it out. Whereas previously we used Features to package all our CMS components into modules this is now done with Drupal core's configuration system. It's working wellnbsp;so far. Automatic exportingnbsp;of configuration and dependencies into modules is done using drush, and we can now split optional and required configuration which is also great for components that include lots of views that add value but are not indispensable. I did experience some quirks with optional configuration not being installed during the profile's installation process even while dependencies were certainly met.nbsp;nbsp;/p h3 class=st-titleMedia: Work In Progress/h3 pIt took many years for the Media module to have a stable (2.x) release in Drupal 7. Drupal 7 Media works great and nbsp;it handles drop-in file uploads, multi-file uploads and various media gallery browsing features excellently. In Drupal 8 great work is being done to bring Media features into core. I'm a big fan of the initiative but I'm also concerned about how to provide provide future proof media featurs in my installation profile right now.nbsp;/p h4Drupal 8 Entity Browser/h4 pAt the moment of writing this, the successor of the Media module is Entity Browser. The module File Entity Browser (it builds on top ofnbsp;emEntity Browser/em module)nbsp;will give you a media library popup browser similar to the D7 media module's browser. Installing this module requires 5 modules (dropzonejs, embed, entity_browser, entity_embed, and file_browser) and 3 external libraries: emdropzone/em,nbsp;emimagesloaded,nbsp;/emandnbsp;emmasonry. /emPart of the Drupal 8 media initiative is to include features similar to what the File Browser module provides in core, but in a cleaner architecture with fewer dependencies./p pA module similar to File Entity Browser is emMedia Entity Browsernbsp;/emand the major difference is that it uses the more flexible Media entity as opposed to the file entity. What exactly this means and how all this will be upgraded to the new Drupal 8.4 core features, I'm not sure. Therefore I decided to launch my distribution and products without image re-usability on Drupal 8.3. To protect my customers against potentially needing complex upgrade processes I'll hold off on advanced Media management until Drupal 8.4 comes out. It's planned to come out late thisnbsp;summer and I'm looking forward to it.nbsp;/p h3 class=st-titleImprovements In Documentation/h3 pThis is not really a Drupal 8 improvement as much as it is a improvement. The quality of documentation available to day is so much better than on the day Drupal 7 came out. The new documentation page design immediately gives more credibility to thenbsp;contentnbsp;and the content is carefully curated and better written. Even though this is not really a feature of Drupal 8 it certainly is a great benefit to those starting to learn Drupal 8 today.nbsp;/p pI also want to give a shout out tostrong, who are giving away free subscriptions for their premium training videos to people who have contributed on a href= and details/a./p h3 class=st-titleMy Prediction: Drupal 8.4 Will Bring Up The Numbers/h3 pI see Media features as the #1 core advantage of WordPress over Drupal. Other major weaknesses of Drupal are a leaner offering of themes and niche-specific tools like portfolio plugins, drag and drop building options, and other fancy add-ons. But those can be fixed by contrib projects and through premium themes. Media is a challenge that took too long to get right in Drupal 7. It was only several months ago the Drupal 7 Media module had it's first truly stable Drupal 7 release. Thanks to this development, we can now expect to see more niche-specific add-ons for the Media module as there is a stable API to build on top on. Next week I will blog about the strongrelease of such an add-on module/strong that SooperThemes has co-sponsored and co-developed.nbsp;/p pIf the Drupal 8 Media Initiative is executed according to plannbsp;Drupal 8.4 will bring features to that will appeal strongly to the masses of Drupal site builders who are unable or unwilling to create custom configurations for Entity Browser. Drupal 8's more rapid emergence of a stable Media API can awaken growth of Media contrib modules that make the lives of content creators and site builder easier./p h3 class=st-titleSooperThemes Drupal 8: Upgrade Status/h3 pTo those who are waiting: Please be patient as we're finishing up and fine-tuning. I meant to release a public beta of some products this week but I decided it's better to focus on finishing the components that are currently lt;90% done. I'll re-evaluate the possibility of public beta testing nbsp;next week, and the week thereafter./p table class=table table-bordered table-hover thead tr th scope=colstrongSooperThemes Products/strong/th th scope=colstrongDrupal span style=display: none;nbsp;/span8 Upgrade Progress/strongspan style=display: none;nbsp;/span/th th scope=colstrong%_of_total/strong**/th /tr /thead tbody tr tdGlazed Theme/td td75% Complete/td td25%/td /tr tr tdGlazed Drag and Drop Builder/td td95% Complete/td td25%/td /tr tr tdSooperthemes Portfolio (replacement of D7 glazed_portfolio)/td td90% Complete (only missing hover effect designs)/td td15%/td /tr tr tdGlazed GridStack/td td95% Completenbsp;/td td5%/td /tr tr tdGlazed Helper/td td75% Complete (only missing Page Design tools)/td td7.5%/td /tr tr tdGlazed Drupal CMS Distribution ( td95% Complete (finetuning, future-proofing)/td td10%/td /tr tr tdDemo Content and Installation Profiles/td td0/15 Completed (pending completion of above)/td td5%/td /tr tr tdProduct infrastructure*/td td50% Complete/td td7.5%/td /tr /tbody /table p class=text-muted* demo sites,, automatic installation profile testing and provisioning, support forum, etc. The kind of stuff you don't think about beforenbsp;starting a big Drupal 8 upgrade project./p p class=text-muted** Estimatednbsp;proportion to the total amount of work of all items in the table/p /div /div/div /div div class=field-content-banner glazed-util-float-right float-right a href= typeof=foaf:Image class=img-responsive src= width=300 height=140 alt= //a /div

Roman Agabekov: Setting up Nginx on a Debian server as front-end for Apache

Tue, 06/13/2017 - 13:08
span property=schema:name class=field field--name-title field--type-string field--label-hiddenSetting up Nginx on a Debian server as front-end for Apache/span div property=schema:text class=clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__itemp dir=ltrWelcome to the next installment of the series of articles for Drupal sysadmins. Today, you are going to learn the process and nuances of setting up Nginx so it works as Apache’s front-end on a Debian server./p p dir=ltrIn the previous article, we covered a href= of a web server on a Debian machine and Drupal installation/a. The solution offered there has a couple of drawbacks:/p/div span rel=schema:author class=field field--name-uid field--type-entity-reference field--label-hiddenspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=admin/span/span span property=schema:dateCreated content=2017-06-13T11:08:41+00:00 class=field field--name-created field--type-created field--label-hiddenTue, 06/13/2017 - 11:08/span div class=field field--name-field-tags field--type-entity-reference field--label-inline clearfix h3 class=field__label inlineТеги/h3 ul class=links field__itemslia href= property=schema:about hreflang=enDrupal Planet/a/li lia href= property=schema:about hreflang=runginx/a/li lia href= property=schema:about hreflang=ruapache/a/li /ul/div