Drupal Planet

Syndicate content
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 4 hours 24 min ago

Aten Design Group: Automating Drupal Configuration

Tue, 10/21/2014 - 4:42pm
img src=http://atendesigngroup.com/sites/default/files/drupal-configuration.png width=1000 height=600 alt= /pLast month at the a href=https://groups.drupal.org/node/442058Central Denver Drupal meeting/a, Nick Switzer from Elevated Third showed how they are using a structured spreadsheet format for describing their Drupal configuration in a way that makes it easy to build. They based their spreadsheet format on a href=http://www.palantir.net/blog/developing-drupal-sites-plan-or-perisha template Palantir published/a a while ago, and someone mentioned Lullabot has been using something similar. This looked to me a lot like what we were doing at Aten, even though we had missed the de facto standard that was developing. We are now using that de facto standard./p pThis was particularly interesting to me because I've been doing a lot of work lately around a href=http://atendesigngroup.com/blog/declarative-programming-and-drupaldeclarative interfaces/a and a href=https://www.drupal.org/project/cincstandardized Drupal configuration/a. Spreadsheets are declarative and a href=http://cinc.io/CINC/a has a working YAML import, so when we got to the question and answer portion of the presentation, I knew exactly what I wanted to ask: Why are we still building Drupal sites manually when these spreadsheets contain everything we would need to automate it?/p pNo one offered a reason emnot/em to automate this process, so I volunteered to present at a href=https://groups.drupal.org/node/446158this month's meeting/a and show an automated process that did not yet exist. I have since built that process. It still needs a lot more testing and bug fixes, but it's already a compelling alternative to the traditional Drupal site building process./p h2Sheet2Module/h2 pa href=http://cinc.io/playground/sheet2module/Sheet2Module/a takes a Google spreadsheet and produces a Drupal module that will create the configuration described therein. The exported modules use YAML files for configuration, which works natively in Drupal 8, and works in Drupal 7 with the a href=https://www.drupal.org/project/cincCINC YAML submodule/a. With a standard spreadsheet format, Sheet2Module, and CINC YAML, strongyou can build a reasonably complex Drupal site configuration in a few minutes/strong. The process looks like this:/p ol liDescribe your Drupal configuration in a Google spreadsheet./li liUse Sheet2Module to auto-generate a module from that spreadsheet./li liEnable that module to auto-generate your Drupal configuration./li li(Optional) Spend the hours you would otherwise spend on Drupal configuration helping improve this process./li /ol pBoth Sheet2Module and CINC YAML almost certainly have bugs, as they've had very limited testing. Both are open source (CINC on Drupal.org, a href=https://github.com/sreynen/cincioSheet2Module on GitHub/a), and patches and pull requests will be met with enthusiastic appreciation. Beyond my appreciation, I'm convinced custom-tailored interfaces like this are the future of Drupal configuration, and you have a lot to gain from helping shape that future./p pOutside code contributions, simply trying out the process and giving feedback is very useful, and a good way to make sure this works for your own workflow. Even the incomplete current solution will likely save you hours on your next Drupal build, and you can still manually add any configuration that doesn't work automatically. So you have nothing to lose and hours to gain by trying it out./p h2Drupal Spreadsheet Standard/h2 pI suspect there are more than a few shops already using a similar spreadsheet format to describe Drupal configuration, so before we go too far down the path of building tools around this format, we should turn this into a real, documented community standard. To that end, I've started creating a href=https://github.com/sreynen/Drupal-Configuration-Spreadsheet-Standarda Drupal Configuration Spreadsheet Standard on GitHub/a. If you're already using spreadsheets to describe your Drupal configuration, take a look at the documentation and contribute your own format improvements to the wider community. If you're just getting started using spreadsheets to describe your Drupal configuration, this is a good place to start./p h2Own Your Process/h2 pEven if you're not using spreadsheets to describe Drupal configuration, it's worth taking a look at this automation for ideas on how you can improve your own process. I've mentioned before that a href=http://atendesigngroup.com/blog/declarative-programming-and-drupalthe declarative format for Drupal configuration/a adopted in Drupal 8 (and available Drupal 7 with CINC) allows us all to customize our workflows. I'm going to keep mentioning it until this becomes common enough in the Drupal community that it's boring to mention. But for now, this is still a new and exciting space to be working in, and you should join the fun./p
Categories: Drupal Feeds

Creative Juices: 27 Questions (and Answers) from My First Drupal 8 Site Build

Tue, 10/21/2014 - 12:10pm
span class=field field-node--title field-name-title field-type-string field-label-hidden data-quickedit-field-id=node/10/title/en/rss27 Questions (and Answers) from My First Drupal 8 Site Build/span div class=field field-node--body field-name-body field-type-text-with-summary field-label-hidden data-quickedit-field-id=node/10/body/en/rss div class=field-items div class=field-item property=schema:textI recently built my first site with Drupal 8, off of the public beta. It was a great experience. I kept a list of questions as I worked, and wrote down the answers when I found them./div /div /div span class=field field-node--uid field-name-uid field-type-entity-reference field-label-hidden data-quickedit-field-id=node/10/uid/en/rssspan lang= about=/user/1 typeof=schema:Person property=schema:name datatype=matt/span/span span class=field field-node--created field-name-created field-type-created field-label-hidden data-quickedit-field-id=node/10/created/en/rssTue, 10/21/2014 - 13:10/span
Categories: Drupal Feeds

Code Karate: Drush Cheat Sheet

Tue, 10/21/2014 - 10:42am
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpAs developers we always are looking for ways to become more efficient. After all, time is money./p/div/div/div
Categories: Drupal Feeds

blog.studio.gd: Inline Entity Display

Tue, 10/21/2014 - 10:31am
p At Studio.gd we love the Drupal ecosystem and it became very important to us to give back and participate.br Today we're proud to announce a new module that we hope will help you ! /p p Inline Entity Display module will help you handle the display of referenced entity fields directly in the parent entity. br For exemple if you reference a taxomony Tags to an Article node, you will be able directly in the manage display of the article to display tags' fields. It can become very usefull with more complex referenced entity like field collection for exemple. /p quoteVOIR LE MODULE : a href=https://www.drupal.org/project/inline_entity_display target=_blankhttps://www.drupal.org/project/inline_entity_display/a/quote brbr img style=max-width:100% src=https://www.drupal.org/files/project-images/IED---manage-display.png brbr p bFeatures/b brbr - You can control, for each compatible reference field instances, if the fields from the referenced entities would be available as extra fields. Disabled by default. brbr - You can manage the visibility of the referenced entities fields on the manage display form. Hidden by default. brbr - View modes are added to represent this context and manage custom display settings for the referenced entities fields in this context {entity_type}_{view_mode} Example: Node: Teaser is used to render referenced entities fields, when you reference an entity into a node, and you view this node as a teaser if there are no custom settings for this view mode, fields are rendered using the default view mode settings. brbr - Extra data attributes are added on the default fields markup, so the field of the same entity can be identified. brbr b Compatible with Field group on manage display form. brbr Compatible with Display Suite layouts on manage display form. /b brbr /p p bRequirements/b brbr - Entity APIbr - One of the compatible reference fields module. /p br p bTutorials/b brbr a href=http://simplytest.me/project/inline_entity_display/7.x-1.xsimplytest.me/project/inline_entity_display/7.x-1.x/a br The simplytest.me install of this module will come automatically with these modules: entity_reference, field_collection, field_group, display suite. /p br quoteVOIR LE MODULE : a href=https://www.drupal.org/project/inline_entity_display target=_blankhttps://www.drupal.org/project/inline_entity_display/a/quote brbrbr pbWe are currently developping a similar module for Drupal 8 but more powerful and more flexible, Stay tuned !/b/p
Categories: Drupal Feeds

Blink Reaction: Blog and ebook Series; Responsive Content and Design

Tue, 10/21/2014 - 10:23am
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpBlink Reaction's Director of IT, Kenny Silanskas takes a look at why content is crucial when it comes to creating responsive design. Here Kenny breaks it down with a few easy sports analogies. /p /div/div/div
Categories: Drupal Feeds

Drupalize.Me: Including Image Styles With Your Drupal 8 Theme

Tue, 10/21/2014 - 8:21am
div class=field field-name-body field-type-text-with-summary field-label-hidden text-content text-secondarydiv class=field-itemsdiv class=field-item evenpOne of many new features in Drupal 8, made possible by the configuration management system, is the ability to add a default image style to your theme, instead of needing to use a module in tandem with your theme, or creating the image style by hand. Here's a look at working with this new feature in Drupal 8./p /div/div/divdiv id=comment-wrapper-nid-1878/div
Categories: Drupal Feeds

undpaul: Make your styleguide a living styleguide!

Tue, 10/21/2014 - 1:09am
div class=field field-name-field-blog-image field-type-image field-label-hiddendiv class=field-itemsdiv class=field-item evena href=/en/blog/2014/10/21/make-your-styleguide-living-styleguideimg src=http://www.undpaul.de/sites/default/files/styles/blog/public/blog/images/living-styleguide.en_.png?itok=7i1LOH5r width=220 height=224 alt= title=Generated styleguide //a/div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpDon't you know that, too? You or your team is building a site and during this process all implemented parts are styled through templates and CSS. The CSS files (at best you are using a CSS preprocessor like a href=http://www.sass-lang.com/SASS/a) are getting bigger, more sophisticated and even more confusing - not to mention that these files are getting almost unmaintainable and more and more error-prone./p/div/div/divdiv class=field field-name-taxonomy-vocabulary-1 field-type-taxonomy-term-reference field-label-hiddendiv class=field-itemsdiv class=field-item evena href=/en/blog/tags/drupal-planet-englishdrupal planet english/a/divdiv class=field-item odda href=/en/blog/tags/cssCSS/a/div/div/div
Categories: Drupal Feeds

Drupal @ Penn State: Drupal speed tuning: analyzing and further optimizing Pressflow

Mon, 10/20/2014 - 3:46pm
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpTL;DR: I've created a fork of Pressflow for the purposes of conversation and analysis -- a href=https://github.com/btopro/Presser-Flow-FORKhttps://github.com/btopro/Presser-Flow-FORK/a/p pHistory lesson/p/div/div/div
Categories: Drupal Feeds

Acquia: DrupalCon Amsterdam Top Ten – Part 1 of 2 with Kris Vanderwater

Mon, 10/20/2014 - 12:34pm
div class=field field-name-body field-type-text-with-summary field-label-hidden div class=field-items div property=content:encoded class=field-item evenpstrongPart 1 of 2/strong – Kris Vanderwater (a href=http://drupal.org/u/eclipsegcEclipseGc/a), Acquia’s Developer Evangelist, and I got together in a Google Hangout to catch up on our impressions of DrupalCon Amsterdam. We prepared a list of our top ten sessions from the Con for you to catch up with at home (technically nine sessions and one “other cool thing”). In our list, there’s a little something for most everyone, from coders, to themers, to site builders, to those of us who pitch sell Drupal to clients – but we would recommend all of these sessions to anyone involved in Drupal. See how the other side lives!/p /div /div /div span property=dc:title content=DrupalCon Amsterdam Top Ten – Part 1 of 2 with Kris Vanderwater class=rdf-meta/span
Categories: Drupal Feeds

SitePoint PHP Drupal: Drupal 8 Hooks and the Symfony Event Dispatcher

Mon, 10/20/2014 - 11:00am
ppWith the incorporation of a href=http://www.sitepoint.com/symfony-drupal-8/many Symfony components into Drupal/a in its 8th version, we are seeing a shift away from many emDrupalisms/em towards more modern PHP architectural decisions. For example, the both loved and hated hook system is getting slowly replaced. Plugins and annotations are taking away much of the need for codeinfo/code hooks and the Symfony Event Dispatcher component is replacing some of the eminvoked/em hooks. Although they remain strong in Drupal 8, it’s very possible that with Drupal 9 (or maybe 10) hooks will be a href=https://www.drupal.org/node/1509164completely removed/a. /p pimg src=http://dab1nmslvvntp.cloudfront.net/wp-content/uploads/2014/10/1412889376drupal8wide.png alt= title=//p pIn this article we are going to primarily look at how the Symfony Event Dispatcher component works in Drupal. Additionally, we will see also how to invoke and then implement a hook in Drupal 8 to achieve similar goals as with the former. /p pTo follow along or to get quickly started, you can find all the code we work with here in a href=https://github.com/sitepoint-examples/d8-event-dispatcherthis repository/a. You can just install the module and you are good to go. The version of Drupal 8 used is the first BETA release so it’s preferable to use that one to ensure compatibility. Alpha 15 should also work just fine. Let’s dive in./p h3 id=what-is-the-event-dispatcher-componentWhat is the Event Dispatcher component?/h3 pA very good definition of the Event Dispatcher component can be found on the a href=http://symfony.com/doc/current/components/event_dispatcher/introduction.htmlSymfony website/a:/p blockquote pThe EventDispatcher component provides tools that allow your application components to communicate with each other by dispatching events and listening to them./p /blockquote pI recommend reading up on that documentation to better understand the principles behind the event dispatcher. You will get a good introduction to how it works in Symfony so we will not cover that here. Rather, we will see an example of how you can use it in Drupal 8./p/ppemContinue reading %a rel=nofollow href=http://www.sitepoint.com/drupal-8-hooks-symfony-event-dispatcher/Drupal 8 Hooks and the Symfony Event Dispatcher/a%/em/p
Categories: Drupal Feeds

groups.drupal.org frontpage posts: Let's fix critical Drupal 8 issues together!

Mon, 10/20/2014 - 10:57am
pEvery a href=http://time.is/compare/vancouver/new+york/berlin/sydneyFriday at noon Pacific/a (3pm New York, 9pm Berlin, 6am Saturday in Sydney) I will be in #drupal-contribute helping people fix critical issues. I will prepare 2-3 issues with up to date, actionable issue summaries, familiarize myself with the problems and the suggested solution in the issue so that I can answer questions./p pIf you're someone who has already worked some in the Drupal.org issue queue (so are familiar with patches, coding standards, etc.), even if your experience is not in the core queue, please come by! It's helpful if you know something of Drupal 8 as well, but not necessary./p pIf you're new to contributing to Drupal in general, you can go to a href=https://www.drupal.org/core-mentoring title=https://www.drupal.org/core-mentoringhttps://www.drupal.org/core-mentoring/a for a session or two to learn the skills you need to fix critical issues. If you're new to Drupal 8, a href=https://api.drupal.org/api/drupal/8 title=https://api.drupal.org/api/drupal/8https://api.drupal.org/api/drupal/8/a is a great starting point./p pHope to see you there!/p
Categories: Drupal Feeds

Phase2: Simplify Your Logstash Configuration

Mon, 10/20/2014 - 9:16am
div id=mmeditor div id=preview_div pAs I mentioned in my a href=http://phase2technology.com/blog/drupalcon-amsterdam-roundup/recent post/a, I got a chance to upgrade the drupal.org ELK stack last week. In doing so, I got to take a look at a Logstash configuration that I created over a year ago, and in the course of doing so, clean up some less-than-optimal configurations based on a year worth of experience and simplify the configuration file a great deal./p h2 id=the-drupalorg-logging-setupThe Drupal.org Logging Setup/h2 pDrupal.org is served by a large (and growing) number of servers. They all ship their logs to a central logging server for archival, and around a month#8217;s worth are kept in the ELK stack for analysis./p pLogs for Varnish, Apache, and syslog are forwarded to a centralized log server for analysis by Logstash. Drupal messages are output to syslog using Drupal core#8217;s syslog module so that logging does not add writes to Drupal.org#8217;s busy database servers. (@TODO: Check if these paths can be published.) Apache logs end up incode/var/log/apache_logs/$MACHINE/$VHOST/transfer/$DATE.log/code, Varnish logs end up incode/var/log/varnish_logs/$MACHINE/varnishncsa-$DATE.log/code and syslog logs end up in code/var/log/HOSTS/$MACHINE/$DATE.log/code. All types of logs get gzipped 1 day after they are closed to save disk space./p h2 id=pulling-contextual-smarts-from-logsPulling Contextual Smarts From Logs/h2 pThe Varnish and Apache logs do not contain any content in the logfiles to identify which machine they are from, but the a href=http://markable.in/editor/file input/a sets a codepath/code field that can be matched with grok to pull out the machine name from the path and put it into the codelogsource/code field, which Grok#8217;s a href=http://markable.in/editor/SYSLOGLINE/a pattern will set when analyzing syslog logs./p pFiltering on the codelogsource/code field can be quite helpful in the Kibana web UI if a single machine is suspected of behaving weirdly./p h2 id=using-grok-overwriteUsing Grok Overwrite/h2 pConsider this snippet from the original version of the Varnish configuration. As I mentioned in my presentation, Varnish logs are nice in that they inclue the HTTP Host header so that you can see exactly which hostname or IP was requested. This makes sense for a daemon like Varnish which does not necessarily have a native concept of virtual hosts (vhosts,) whereas nginx and Apache default to logging by vhost./p pEach Logstash configuration snippet shown below assumes that Apache and Varnish logs have already been processed using thea href=http://markable.in/editor/COMBINEDAPACHELOG/a codegrok/code pattern, like so./ppre class=crayon-plain-tagfilter { if [type] == quot;varnishquot; or [type] == quot;apachequot; { grok { match =amp;gt; [ quot;messagequot;, quot;%{COMBINEDAPACHELOG}quot; ] } } }/prepThe following snippet was used to normalize Varnish#8217;s request headers to not include https?:// and the Host header so that thecoderequest/code field in Apache and Varnish logs will be exactly the same and any filtering of web logs can be performed with the codevhost/code andcodelogsource/code fields./ppre class=crayon-plain-tagfilter { if [type] == quot;varnishquot; { grok { # Overwrite host for Varnish messages so that it's not always quot;loghostquot;. match =amp;gt; [ quot;pathquot;, quot;/var/log/varnish_logs/%{HOST:logsource}quot; ] } # Grab the vhost and a quot;requestquot; that matches Apache from the quot;requestquot; variable for now. mutate { add_field =amp;gt; [ quot;full_requestquot;, quot;%{request}quot; ] } mutate { remove_field =amp;gt; quot;requestquot; } grok { match =amp;gt; [ quot;full_requestquot;, quot;https?://%{IPORHOST:vhost}%{GREEDYDATA:request}quot; ] } mutate { remove_field =amp;gt; quot;full_requestquot; } } }/prepAs written, this snippet copies the coderequest/code field into a new field called codefull_request/code and then unsets the original coderequest/code field and then uses a codegrok/code filter to parse both the codevhost/code and coderequest/code fields out of that synthesized codefull_request/code field. Finally, it deletescodefull_request/code./p pThe original approach works, but it takes a number of step and mutations to work. The codegrok/code filter has a parameter calledcodeoverwrite/code that allows this configuration stanza to be considerably simlified. The codeoverwrite/code paramter accepts an array of values thatcodegrok/code should overwrite if it finds matches. By using codeoverwrite/code, I was able to remove all of the codemutate/code filters from my configuration, and the enture thing now looks like the following./ppre class=crayon-plain-tagfilter { if [type] == quot;varnishquot; { grok { # Overwrite host for Varnish messages so that it's not always quot;loghostquot;. # Grab the vhost and a quot;requestquot; that matches Apache from the quot;requestquot; variable for now. match =amp;gt; { quot;pathquot; =amp;gt; quot;/var/log/varnish_logs/%{HOST:logsource}quot; quot;requestquot; =amp;gt; quot;https?://%{IPORHOST:vhost}%{GREEDYDATA:request}quot; } overwrite =amp;gt; [ quot;requestquot; ] } } }/prepMuch simpler, isn#8217;t it? 2 codegrok/code filters and 3 codemutate/code filters have been combined into a single codegrok/code filter with two matching patterns and a single field that it can overwrite. Also note that this version of the configuration passes a hash into the codegrok/code filter. Every example I#8217;ve seen just passes an array to codegrok/code, but a href=http://markable.in/editor/the documentation for the grok filter/a states that it takes a hash, and this works fine./p h2 id=ensuring-field-typesEnsuring Field Types/h2 pRecent versions of Kibana have also gotten the useful ability to do statistics calculations on the current working dataset. So for example, you can have Kibana display the mean number of bytes sent or the standard deviation of backend response times (if you are capturing them #8211; see a href=http://markable.in/editor/my DrupalCon Amsterdam slides for more information on how to do this and how to normalize it between Apache, nginx, and Varnish/a.) Then, if you filter down to all requests for a single vhost or a set of paths, the statistics will update./p pKibana will only show this option for numerical fields, however, and by default any data that has been parsed with a codegrok/code filter will be a string. Converting string fields to other types is a much better use of the codemutate/code filter. Here is an example of converting the bytes and the response code to integers using a mutate filer./p p@TODO: Test that hash syntax works here!/ppre class=crayon-plain-tagfilter { if [type] == quot;varnishquot; or [type] == quot;apachequot; { mutate { convert =amp;gt; { [ quot;bytesquot;, quot;responsequot; ] =amp;gt; quot;integerquot;, } } } }/prep/p h2 id=lessons-learnedLessons Learned/h2 pLogstash is a very powerful tool, and small things like the codegrok/codecodeoverwrite/code parameter and the codemutate/code codeconvert/code parameter can help make your log processing configuration simpler and result in more usefulness out of your ELK cluster. Check out Chris Johnson#8217;s post about adding a title=Permalink to Adding MySQL Slow Query Logs to Logstash href=http://www.phase2technology.com/blog/adding-mysql-slow-query-logs-to-logstash/ rel=bookmarkMySQL Slow Query Logs to Logstash/a!/p pIf you have any other useful Logstash tips and tricks, leave them in the comments!/p pnbsp;/p /div /div
Categories: Drupal Feeds

Bluespark Labs: Uninstalling and purging field modules all at once

Mon, 10/20/2014 - 6:14am
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even pSometimes we want to uninstall a module from our Drupal site but we can't do it because we get this dependency: emRequired by: Drupal (Field type(s) in use - see Field list)/em. Even if you delete the fields provided by the module via the UI or programmatically by executing strongfield_delete_field() /strongfunction you will get a new dependency emRequired by: Drupal (Fields pending deletion)/em./p pThese dependencies are created by Drupal core to avoid that a module is uninstalled until all the data related to its fields is removed from the database, in order to maintain consistency./p pThis has several drawbacks, the first one being that you can't uninstall your module when you want, and you have to wait until all the field data values are removed from the database (The rather strangely named strongfield_deleted_data_XX/strong and strongfield_deleted_revision_XX/strong tables) and the meta-information stored in field_config and field_config_instance tables is removed. And most importantly, nobody actually knows when this is going to happen! These database rows are removed in batches on each cron task execution. So depending on our cron regularity and the amount of data stored in our field tables, this tasks can last for minutes to weeks./p pThis is a problem because, naturally, we want to uninstall our module now and not be forced to check periodically our production database to see if we are allowed to uninstall the module once all that information has been removed from the database./p pTo avoid such situations and regain control, you can perform all these tasks in a stronghook_update_N()/strong function, forcing the deletion of all the information and finally uninstalling the module. You can check the code in the gist below:/p pscript src=https://gist.github.com/plopesc/c55add7b3ad1d37341ec.js/script/p pThe job is divided in three parts: The data definition, field data purge and module list clean./p pIn the data definition task we provide all the required data we need to perform the task, the name of the field to delete, and given that information, we get the field_info array and the name of the module to be uninstalled. Finally, field_delete_field() is executed./p pAfter that the field data is purged in the batch body, and since we don't know how much data we will have to purge, we remove just 100 database rows per batch execution. After each purge we check if all the data has been removed to decide if we have to remove more data from the database or continue to the final part./p pOnce all the data and metadata related to the module is removed from the database, the Drupal field types dependency is gone and we are granted the ability to disable and uninstall our module cleanly. Finally, we can drop the empty field_deleted_data_XX and field_deleted_revision_XX tables to keep clean our database./p pUsing this approach, we have two key benefits: stronga./strong we are sure that the module is disabled and our database is clean, and strongb./strong we are confident that we can remove the module from our repository, given that in the next deploy we won't get any dependency conflict with that module./p /div/div/divdiv class=field field-name-field-blog-tags field-type-taxonomy-term-reference field-label-abovediv class=field-labelTags:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/blog/drupal-planetDrupal Planet/a/div/div/div
Categories: Drupal Feeds

Visitors Voice: That is why we sponsor the Search API Solr module

Mon, 10/20/2014 - 5:03am
Since june 2014 we sponsor the Search API Solr module. There are no strings attached, and we sponsor the maintainer Thomas Seidl a.k.a Drunken Monkey with a couple of hours every month that he can spend as he likes. It could be bug fixing, features asked for or working on the Drupal 8 version. We [#8230;]
Categories: Drupal Feeds

Gizra.com: Gizra - We've Got Your Headless Covered

Sat, 10/18/2014 - 4:00pm
h2What#39;s the name of the Angular component for login?/h2 pThe difficulties in creating a semi or fully decoupled site isn#39;t in the RESTful part. Spitting out JSON is now covered by several modules, including a href=https://github.com/Gizra/restfulRESTful/a which aims for a quot;best practicesquot; solution./p pOne of the real problems, though, is how to prevent us, the community, from re-inventing the wheel over and over again. Basically, how do we package our frontend code similarly to how we package our generic backend code - AKA quot;modulesquot;. I discussed these problems, and offered some solutions in my quot;BoFquot; persentation:/p iframe width=560 height=315 src=//www.youtube.com/embed/wh6ZQOEzOgs?rel=0 frameborder=0 allowfullscreen/iframe pa href=http://www.gizra.com/content/gizra-we-have-got-your-headless-covered/Continue reading…/a/p
Categories: Drupal Feeds

Doug Vann: Drupal Training at Drupal Camps And Why We Need More Of It

Fri, 10/17/2014 - 8:41pm
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpimg alt= class=image-medium inline src=http://dougvann.com/sites/default/files/styles/medium/public/inline-images/Drupal-EDU-original_0.png style=float: left; title= width=220 height=155 /strongemDrupal Camp Road Warrior/em/strongbr /By the end of 2014, I will have hit 50 Drupal Camps! It took 72 months to hit 22 cities, in 16 states! In that time, I#39;ve seen Drupal Camps run in almost every conceivable way possible. From Madison WI to Orlando FL, from NewYork NY to San Diego CA, I#39;ve seen thousands of attendees flocking to these events, all with the hopes of growing in their knowledge and understanding of Drupal. In my experience, the system works -- mostly.br /But, we can do better.br /br /emstrongWe all know the drill/strong/embr /You assemble a bunch of speakers. They will deliver a bunch of sessions. You try to group these sessions into tracks, if you can. You wrestle with how to add a few sessions about the Drupal Community or maybe about Business or a few odd sessions that don#39;t fit into your tracks. Oh yah... You almost forgot about the beginners, so you have a session or two that demystifies one topic or another.br /br /biThe N00B experience/i/bbr /You would be surprised at how many people show up to a Drupal Camp who don#39;t know what a node is. Or if they do know what a node is, they don#39;t know how to create their own content types. Or if they do know how to create content types, they don#39;t know how to create Views. These people show up and attend sessions that they have little chance of comprehending. They sit down for up to an hour per session listening to senior developers from major Drupal shops talk about nodes and fields and blocks and views-displays and modules. The whole time they may be thinking, quot;Dang! I thought by showing up for a day or two I would start picking this stuff up!?quot; But they#39;re not.br /br /strongemMeet the N00Bs/em/strongbr /Who are these people who are quot;New To Drupal?quot; Well, for starters, they#39;re probably not really that new to Drupal! Based on my experiences, here is an incomplete list of ppl who regularly attend my classes./polliCertainly anyone who just discovered Drupal very recently and has come to the camp to gain a better understanding of Drupal. [This is not always the biggest portion]/liliIndividuals who have been to a couple camps and have tried to read the books or watch the videos but still haven#39;t had the needed quot;AHA!quot; moments to grasp it all./liliIndividuals who work for a University or Government or Company who uses, or is considering, Drupal. [This is a BIG ONE]ulliPeople, often with other web skills [sys admins, java, asp, php, etc] who are sent by their employers to scope out Drupal and/or to learn how to use it./liliPeople coming to gain skills in an effort to alleviate their, or their employer#39;s, dependency on vendors. [This happens a lot!]/liliNew hires to Drupal shops or Design shops or shops offering web related services who are looking to better provide Drupal related services.nbsp;/liliPeople who know plenty, but want to make sure they are properly grounded./liliPeople who come in the hopes of asking lots of questions!/li/ul/li/olpI#39;ve seen all that and more. Multitudes of people are coming to camps in hopes of really wrapping their minds around how Drupal solves the modern problem of publishing dynamic content on the web. Too often, without a day of training they leave the camp with the same [and more] questions than they arrived with.br /br /strongemWhat they really want/need/em/strongbr /After attending camp after camp, it#39;s a proven fact. People are coming to learn what Drupal is and how to use it. nbsp;If the camp has no full day training opportunity then many are going to drown in the other sessions and simply not get what they really need.br /I#39;ll just be frank at this point. I believe that every camp needs to have a full day of beginner training. I believe that this training should be delivered not across differing tracks with differing speakers, but by the same individual, or group of individuals, working together to provide the full day of training. I have done this time and time again and I see the relief on people#39;s faces as they gain a practical understanding of the power and flexibility of Drupal and how they can leverage it. This day of training starts them down the road of really learning Drupal. If there#39;s a 2nd day of camp, I can PROMISE you that they will get far more out of it after a day of training.br /br /strongemHow to provide a day of training at a Drupal Camp/em/strongbr /There are many ways! Here#39;s a list that is, by no means, exhaustive./polliSome camps have a dedicated day just for trainings on the day before the regular camp.ulliThis is effecive not only for beginner classes but for classes on SEO, Drupal 8, Module Development, etc./liliMost often training takes place in the same location as the camp, but occasionally it is not./li/ul/liliSome camps simply reserve one track and dedicate it to a full day of training.ulliI#39;ve done this quite a few times where I have a room all day while others hop from session to session./liliThis is easier if you can#39;t dedicate a whole day to training./li/ul/liliThe content in the full day Drupal beginner#39;s training.ulliIn some camps someone leads the class through the Acquia curriculum ofnbsp;a href=https://training.acquia.com/course/drupal-day target=_blankDrupal In A Day/a/liliSome camps have a vendor come in and do the trainingulliDoug Vann! If you want me to join your camp and present a day of training call me at 765-5-DRUPAL ornbsp;a href=http://dougvann.com/contact target=_blankCONTACT ME/a/liliI#39;ve seen posts fromnbsp;a href=http://www.blinkreaction.com/BLINK REACTION/anbsp;amp;nbsp;a href=https://www.ostraining.com/OSTRAINING/anbsp;about their various full day offerings at Drupal Camps as well./liliIf I missed anyone who has travelled to multiple camps and provided full day trainings in the past and would do so again, leave a comment and I#39;ll add you here. :-)/li/ul/liliSome camps have used thenbsp;a href=http://buildamodule.com target=_blankBuildAModule.com/anbsp;Mentored Training method.ulliI#39;ve done a number of these as well and they#39;re pretty amazing!/liliMore info atnbsp;a href=http://buildamodule.com target=_blankhttp://buildamodule.com/train/a/li/ul/li/ul/liliThe finances of a full day of training. Here#39;s how I#39;ve experienced this as a trainer.ulliSome camps offer it for free or as part of the Camp fee that attendees have already paid./liliSome camps charge attendees enough to cover the cost of catering./liliSome camps charge a flat fee per attendee and share a percentage with the trainer./liliSome camps procure a quot;training sponsorquot; and hand that sum off to the trainer./li/ul/li/olpstrongemConclusion/em/strongbr /Every Drupal Camp can do this! I#39;ve been invited to one-day camps and they give me one of their rooms for the whole day. I show up and deliver the full day of Drupal Beginner Training. Sadly, I never get to see any of the other sessions. Oh well... After 50 Drupal Camps, I#39;ve seen plenty of Drupal Sessions! :-)br /Providing a full day of training will definitely raise your attendance. Universities, Governments, and Companies will send people. People will ask their employers to send them. Sponsors will really appreciate the fact that you#39;re providing extra value to a broader audience.br /Seriously folks... What more can I say?nbsp;/ppFull Day Trainings at Drupal Camps is a Big Win for everyone involved!/ppnbsp;/ppnbsp;/p/div/div/divdiv class=field field-name-field-blogtype field-type-taxonomy-term-reference field-label-hiddendiv class=field-itemsdiv class=field-item evena href=/category/blog-type/drupal-planetDrupal Planet/a/div/div/divdiv id=disqus_threadnoscriptpa href=http://dougvann.disqus.com/?url=http%3A%2F%2Fdougvann.com%2Fblog%2Fdrupal-training-drupal-camps-and-why-we-need-more-itView the discussion thread./a/p/noscript/div
Categories: Drupal Feeds

Forum One: DrupalCon Amsterdam: Done and Deployed

Fri, 10/17/2014 - 3:14pm
pa class=image-link href=http://forumone.com/wp-content/uploads/2014/10/image012.pngimg class=alignright size-full wp-image-4587 src=http://forumone.com/wp-content/uploads/2014/10/image012.png alt=image01 //aDrupalCon Amsterdam 2014#8230;what a week! Drupal 8 Beta released, core contributions made, and successful sessions presented!/p pDrupal 8 Beta — has a nice ring to it, don’t you think?! But what exactly does that mean? According to the a href=https://www.drupal.org/drupal-8.0.0-beta1drupal.org release announcement/a, “Betas are good testing targets for developers and site builders who are comfortable reporting (and where possible, fixing) their own bugs, and who are prepared to rebuild their test sites from scratch if necessary. Beta releases are inot/i recommended for non-technical users, nor for production websites.” Or more simply put, we’re over the hump, but we’re not there yet. But you can help!/p h2Contrib to Core/h2 pOne of the biggest focal points of this DrupalCon was contributing to Drupal 8 core in the largest code sprints of the year. Specially trained mentors helped new contributors set up their development environments, find tasks, and work on issues. This model is actually repeated at Drupal events all over the world, all year long. So even if you missed the Con, code sprints are a href=http://www.drupical.com/happening all the time/a and the community truly welcomes all coders, novice or expert./p pa class=image-link href=http://forumone.com/wp-content/uploads/2014/10/image024.jpgimg class=alignright wp-image-4589 size-medium src=http://forumone.com/wp-content/uploads/2014/10/image024-250x187.jpg alt=Forum One is proud that our own Kalpana Goel was featured as a mentor at DrupalCon Amsterdam. width=250 height=187 //aForum One is proud that our own Kalpana Goel was featured as a mentor at DrupalCon Amsterdam. She is very passionate about helping new people contribute./p blockquotepIt was my third time mentoring at DrupalCon and like every time, it not only gave me an opportunity to share my knowledge, but also learn from others. a href=https://www.drupal.org/u/tstoecklerTobias Stockler/a took time to explain to me the Drupal 8 plugin system and walk me through an example. And a href=https://www.drupal.org/u/fgmfgm/a explained Traits to me and worked on a related issue./p p-Kalpana Goel/p/blockquote pa class=image-link href=http://forumone.com/wp-content/uploads/2014/10/image003.jpgimg class=alignright size-medium wp-image-4592 src=http://forumone.com/wp-content/uploads/2014/10/image003-250x250.jpg alt=Campbell Vertesi, Technical Architect //a/p h2Forum One Steps Up/h2 pWhile the sprints raged on, other Forum One team members led training sessions for people currently developing with Drupal. I, Campbell, presented a href=https://www.youtube.com/watch?v=Hc1ujlWlA0cPanels, Display Suite, and Context #8211; oh my!/a to a capacity crowd (200+), and together, we presented a href=https://www.youtube.com/watch?v=VxFcAyyiScUCoder vs. Themer: Ultimate Grudge Smackdown Fight to the Death/a to over three hundred coders and themers. Now that Drupal 8 Beta is released we’re already looking forward to creating a Drupal 8 version of Coder vs. Themer for both a href=https://losangeles2015.drupal.org/Los Angeles/a and a href=http://barcelona2015.drupal.org/Barcelona/a!br / a class=image-link href=http://forumone.com/wp-content/uploads/2014/10/image04.jpgimg class=alignnone wp-image-4593 size-large src=http://forumone.com/wp-content/uploads/2014/10/image04-700x490.jpg alt= width=700 //a/p pThis year’s European DrupalCon was a huge success, and a lot of fun! As a group, our Forum One team got to take a leading role in teaching, mentoring, and sharing with the rest of the Drupal community. It’s easy to pay lip service to open source values, but we really love the opportunity to show how important this community is to us. We recently estimated that we contribute almost a hundred patches to Drupal contrib projects in a good month. We’re pretty proud of that participation, but it’s only at the conventions that we get to engage with other Drupalists face to face. DrupalCon isn’t just for the code, or the sessions. It’s for seeing and having fun with our friends and colleagues, too./p pAt Amsterdam, we got to participate in code sprints, lead sessions and BOFs (birds of a feather sessions), and join the community in lots of fun extracurricular activities. We’re already making plans for DrupalCon LA in the spring. We’ll see you there!/p pa class=image-link href=http://forumone.com/wp-content/uploads/2014/10/image032.pngimg class=alignnone wp-image-4601 src=http://forumone.com/wp-content/uploads/2014/10/image032-700x335.png alt=DrupalCon LA width=388 height=186 //a a class=image-link href=http://forumone.com/wp-content/uploads/2014/10/image05.pngimg class=alignnone wp-image-4602 src=http://forumone.com/wp-content/uploads/2014/10/image05-250x154.png alt=DrupalCon Barcelona width=300 height=186 //a/p
Categories: Drupal Feeds

Drupal Watchdog: Drupal in the Age of Surveillance

Fri, 10/17/2014 - 2:28pm
div class=field field--article-edit-printtype field-type-list-text field-label-hidden field--rss Feature /div div class=field field--article-body field-type-text-long field-label-hidden field--rss pimg src=http://cdn1.drupalwatchdog.com/sites/default/files/images/web/4.1-DrupalAgeSurveillance.jpg alt= WHAT ARE YOU LOOKING AT? class=img-responsive img-thumbnail width= align= //p p On Feb. 11, 2014, Drupal.org – flagship site of the Drupal project – joined thousands of other websites in a campaign against state Internet surveillance dubbed “The Day We Fight Back.”/p p In announcing Drupal.org participation in the campaign, leading Drupal developer Larry Garfield made a strong link between free software and digital freedom: “Both the American and British governments have been found violating the digital privacy of millions of people in their own countries and around the world. That is exactly the sort of attack on individual digital sovereignty that Free Software was created to combat.”/p p What are the implications of recent surveillance revelations for Drupal site owners? What can and should Drupal site builders and developers be doing to protect user privacy? To find out, I spoke with analysts and developers both within and outside the Drupal community./p h3User Data and Threat Modeling/h3 p “Contemporary websites have almost innumerable places where information can be entered, logged, and accessed, by either the first party or third parties.”/p p That’s the frank assessment of Chris Parsons, a postdoctoral fellow at The Citizen Lab at the University of Toronto’s Munk School of Global Affairs. Parsons’ current research focus is on state access to telecommunications data, through both overt mechanisms and signals intelligence – covert surveillance./p p Parsons recommends an approach to user data protection called threat modeling. “So who are you concerned about, what do you believe your ethical duties of care are, and then how do you both defend against your perceived attackers and apply your duty of care?”/p p Parsons suggests, “The first step is really just information inventory: what’s collected, why, where’s it going, for how long.”/p /div
Categories: Drupal Feeds

Lullabot: Drupal.org Initiatives

Fri, 10/17/2014 - 2:00pm
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpIn this episode, Joshua Mitchell, CTO at the Drupal Association talks with Amber Matz about the exciting initiatives in the works for drupal.org and associated sites. We also talk about how the community, including the D.A. Board, working groups, and volunteers are utilized to determine priorities and work on infrastructure improvements. There's exciting changes in the works on drupal.org regarding automated testing, git, deployment, the issue queue, localize.drupal.org, and groups.drupal.org./p /div/div/div ul class=field field-name-field-show-notes field-type-link-field field-label-hidden li a href=http://2014.pnwdrupalsummit.org/Pacific NW Drupal Summit 2014/a /li li a href=http://drupalhagen.dk/Drupalhagen/a /li li a href=https://www.lullabot.com/jobsLullabot is hiring/a /li li a href=http://lullabot.theresumator.com/apply/7YTT7J/Trainer-And-Drupal-Developer.htmlDrupalize.Me is hiring a Developer+Trainer/a /li li a href=https://www.drupal.org/SA-CORE-2014-005Highly Critical Security Advisory: SA-CORE-2014-005 - Drupal core - SQL injection/a /li li a href=https://drupalize.me/blog/201410/tips-applying-drupal-core-security-updatesTips for Applying Today's Drupal Core Security Update (SA-CORE-2014-005)/a /li li a href=https://drupal.org/u/joshuamiContact Josh Mitchell/a /li li a href=https://www.youtube.com/watch?v=4NN5EM4CYVEDries' Keynote at DrupalCon Amsterdam/a /li /ul
Categories: Drupal Feeds

Blink Reaction: Drupal As A Public Good and Renewing our Commitment

Fri, 10/17/2014 - 1:54pm
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedblockquotepemspan style=font-size: medium;strongimg style=float: right; src=/sites/all/files/user_picture/1/medium_nancy-stango.jpg alt= width=120 height=120 /I was going to write a blog about Drupalcon Amsterdam and our commitment to Drupal and then I realized the best way to say it was to show it./strong/span/em/p /blockquote pemThursday, October 16, 2014/em/p pstrongMemo to all staff:/strong/p pI am pleased to announce that starting this quarter Blink will significantly increase our efforts in support of Drupal. /p/div/div/div
Categories: Drupal Feeds