Planet Drupal

Syndicate content - aggregated feeds in category Planet Drupal
Updated: 41 min 4 sec ago - Thoughts: Top tips: How to protect your Drupal website

Tue, 06/13/2017 - 11:49
div class=paragraph paragraph--type--text paragraph--view-mode--default cta-style--default div class=container div class=row div class=col-sm-10 col-sm-offset-1 col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 div class=field field--name-field-text field--type-text-long field--label-hidden field--itemp dir=ltr style=margin-top:0pt; margin-bottom:0ptThe extraordinary scale of the a href= ransomware infection/a has acted as a dramatic warning to organisations in all sectors. With thousands of organisations worldwide – including a significant proportion of the NHS – falling victim to the ransomware, it’s a timely reminder of the importance of robust cybersecurity./p p dir=ltr style=margin-top:0pt; margin-bottom:0pt /p p dir=ltr style=margin-top:0pt; margin-bottom:0ptYour organisation’s website is potentially one of the biggest parts of your overall ‘attack surface’, which cybercriminals will probe for a route into your network. As such, it is vital to implement solid tools and processes specifically designed to protect it against attack – and those tools and processes should be tailored to the content management system underpinning your site./p h2So, if your site is built on Drupal, what are the best practices you should be following?/h2 /div /div /div /div /div div class=paragraph paragraph--type--text paragraph--view-mode--default cta-style--default div class=container div class=row div class=col-sm-10 col-sm-offset-1 col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 div class=field field--name-field-text field--type-text-long field--label-hidden field--itemp dir=ltr style=margin-top:0pt; margin-bottom:0pt; margin-left:-18pt; padding:0pt 0pt 0pt 18ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrap1. Upgrade to the latest version of Drupal/span/span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=vertical-align:baselinespan style=white-space:pre-wrapThe WannaCry attack has proliferated so dramatically because it relies on an exploit in an old version of Windows – one that Microsoft is no longer supporting. It is usual commercial practice for vendors and manufacturers to gradually withdraw support from older hardware and software – this is the case with Drupal, as with Microsoft. If you have not yet migrated to the latest version – Drupal 8 – that should be your first priority./span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0pt /p p dir=ltr style=margin-top:0pt; margin-bottom:0pt; margin-left:-18pt; padding:0pt 0pt 0pt 18ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrap2./span/span/span/span/span span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrapUpgrade to the latest version of modules/span/span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=vertical-align:baselinespan style=white-space:pre-wrapDrupal is a modular CMS, with thousands of options available to extend your basic system. As such, it is not enough to simply ensure you’re running the latest, best-protected version of Drupal – you need to make sure you’re doing the same with each individual module. The author of each extension is responsible for providing appropriate security upgrades and patches, but these will generally only apply to the latest version of the module. If you’re running an old one, you’re not protected./span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0pt /p p dir=ltr style=margin-top:0pt; margin-bottom:0pt; margin-left:-18pt; padding:0pt 0pt 0pt 18ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrap3./span/span/span/span/span span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrapRemove unnecessary modules/span/span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=vertical-align:baselinespan style=white-space:pre-wrapBy the same token, running modules on your site that you no longer need is simply increasing your potential attack surface – and your security management burden. Implement a process to ensure that you are continually reviewing all of the modules you have added, and get rid of the surplus./span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0pt /p p dir=ltr style=margin-top:0pt; margin-bottom:0pt; margin-left:-18pt; padding:0pt 0pt 0pt 18ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrap4./span/span/span/span/span span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrapUse the Status Report tool/span/span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=vertical-align:baselinespan style=white-space:pre-wrapThe Status Report functions sits within your Drupal Admin area. Its job is to alert you to any issues with the code base underpinning your site – which includes out of date modules and code. It is the easiest way to keep on top of your website management and ensure that you are deploying the latest versions of everything. Don’t forget to enable your core update manager module so that you get regular notifications./span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0pt /p p dir=ltr style=margin-top:0pt; margin-bottom:0pt; margin-left:-18pt; padding:0pt 0pt 0pt 18ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrap5./span/span/span/span/span span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrapPractice strong user management/span/span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=vertical-align:baselinespan style=white-space:pre-wrapAs the old saying goes, people are the weakest link in any security chain. Keeping a tight handle on the people who actually use your website can dramatically shore up your overall security posture. Undertake a regular check to ensure that you are removing inactive users such as those who have left the organisation, and ensure that those who remain only have access to the minimum areas of the site they need to, not the whole site by default./span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=vertical-align:baselinespan style=white-space:pre-wrapVarious functions are available within Drupal to shore up login and user processes, such as the Login Security module, which restricts unauthorised access attempts, and blocking the ‘user #1’ account that is created during setup, which automatically has all permissions in place./span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0pt /p p dir=ltr style=margin-top:0pt; margin-bottom:0pt; margin-left:-18pt; padding:0pt 0pt 0pt 18ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrap6./span/span/span/span/span span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrapMonitor your logs/span/span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=vertical-align:baselinespan style=white-space:pre-wrapDrupal’s integrated log viewer, within the reports area, is an extremely valuable tool when it comes to ascertaining that a cyberattack is taking place and assessing what has actually happened. Make sure you check your log reports regularly, and are alert to early warning signs such as failed login attempts./span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0pt /p p dir=ltr style=margin-top:0pt; margin-bottom:0pt; margin-left:-18pt; padding:0pt 0pt 0pt 18ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrap7./span/span/span/span/span span style=font-size:11ptspan style=font-family:Arialspan style=font-weight:700span style=vertical-align:baselinespan style=white-space:pre-wrapEnable HTTPS/span/span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=vertical-align:baselinespan style=white-space:pre-wrapHTTPS is most commonly used for ecommerce sites and online banking, but any site that transfers sensitive information between user and web server should also be using it./span/span/span/span/span/p p dir=ltr style=margin-top:0pt; margin-bottom:0ptspan style=line-height:1.38span style=font-size:11ptspan style=font-family:Arialspan style=vertical-align:baselinespan style=white-space:pre-wrapThese seven best practices will have a dramatic effect on the overall security of your Drupal website, and ensure you can continue benefitting from the flexibility of the platform without sacrificing protection./span/span/span/span/span/p div /div /div /div /div /div /div

Dropsolid: Memcache in Drupal 8

Tue, 06/13/2017 - 09:50
div data-history-node-id=530 class=node node--type-blog node--view-mode-rss ds-1col clearfix div class=field field--name-field-header-image field--type-image field--label-hidden field__item img src= width=940 height=400 alt=coding-visual typeof=foaf:Image class=image-style-header-image //div div class=blog-top div class=field field--name-node-post-date field--type-ds field--label-hidden field__item13 Jun/div div class=tussengroep div class=field field--name-field-detail-title field--type-string field--label-hidden field__itemh1Memcache in Drupal 8: how to optimize performance/h1/div div class=blog-bottom div class=field field--name-node-author field--type-ds field--label-hidden field__itemspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=Kevin VB/span/div div class=field field--name-field-tags field--type-entity-reference field--label-hidden field__items div class=field__itemTech/div /div /div /div /div div class=clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__itempiIn this blog post, our technical lead Kevin guides you through the best caching strategies for Drupal 8./i/p h4br / Flow improvements with Drupal 8/h4 pThe way data is cached has been overhauled and optimized in Drupal 8. This means that cached data is aware of where it is used and when it can be invalidated, which resolved in two important cache bins responsible for holding the rendered output, emcache_render /emand emcache_dynamic_page_cache/em. In previous versions of Drupal, the page cache bin was responsible for rendered output of a whole page./p pConsequently, the chance of having to rebuild a whole page in Drupal 8 is far lower than in previous versions, because the cache render bin will contain some blocks already available for certain pages - for example a copyright block in your / Nevertheless, having to rebuild the whole render cache from scratch on a high-traffic website can result in a lot of insert query statements for MySQL. This forms a potential performance /  /p h4Why use Memcache?/h4 pSometimes you need to rebuild the cache. Doing this on large sites with a lot of real-time visitors can lead to a lock timeout of MySQL, because the cache tables are locked by the cache rebuild function. This means that your database is unable to process the cache sets queries in time and in worst case resulting into a down time of your website./p pUsing Memcache allows you to directly offload cache bins into RAM, which makes cache sets, speeding up the cache along the way and allowing MySQL more breathing /  /p h4How to install Memcache?/h4 pBefore you can connect to memcache, you need to be sure that you have a memcache server up and running. You can find a lot of tutorials how to do this for your distribution, but if you use MAMP PRO 4 you can simple spin the memcache server up. By default, memcache will be running on port 11211./p pWhen you have the memcache server specifications, host IP and port you need to download and install the strongMemcache module/strong, available here: a href= pThis module is currently in alpha3 stage and ready to be used in production sites./p pOnce you have installed the module, it should automatically connect to memcache using the default settings. This means that the memcache server is running on localhost and listening on port 11211. If your server is running on a different server or listening on another port you need to modify the connection by changing the following line in your emsettings.php/em./p pre code class=language-php$settings['memcache']['servers'] = ['' = 'default'];/code/pre h4 dir=ltrbr / Configuring Memcache/h4 pOnce you have installed memcache and have made the necessary changes to the emsettings.php/em file to connect to the memcache service, you need to configure Drupal so it uses the Memcache cache back end instead of the default Drupal cache back end. This can be done globally./p pre code class=language-php$settings['cache']['default'] = 'cache.backend.memcache';/code/pre pHowever, doing so is not recommended because it cannot be guaranteed that all contrib modules only perform simple GET emand /emSET queries on cache tables. In Drupal 7, for example, the form caching bin could not be offloaded to Memcache, because it can happen that the cache key gets overwritten with something else resulting in a cache miss for specific form cache entries./p pTherefore it is recommended to always check if the cache bin is only used to store cache entries and to fetch them later on while not depending on it to be in cache./p pPutting emcache_render /emand emcache_dynamic_page_cache /eminto memcache is the safest and most beneficial configuration: the larger your site, the more queries those tables endure. Setting up those specific bins to use Memcache can be done with the following lines in emsettings.php/em./p pre code class=language-php$settings['cache']['bins']['render'] = 'cache.backend.memcache'; $settings['cache']['bins']['dynamic_page_cache'] = 'cache.backend.memcache';/code/pre h4br / How does it work?/h4 pTo be able to test your setup and finetune Memcache, you should know how Memcache works. As explained before, we are telling Drupal to use the emcache.backend.memcache/em service as cache back end. This Service is defined by the Memcache module and implements like any other cache back end the emCacheBackendInterface/em.This interface is used to define a cache back end and forces classes to implement the necessary emcache get, set, delete, invalidate/em, etc. functions./p pWhen the memcache service sets a cache entry, it stores this as a permanent item in Memcache, because validation is always checked in emcache get/em./p pInvalidation of items is done by setting the timestamp in the past. The entry will stay available in RAM, but when the service tries to load it it will detect it as an invalid entry. This allows Drupal to recreate the entry, which will then overwrite the cache entry in Memcache./p pConclusion: when you clear all cache with Memcache installed, you will not remove all keys in Memcache but simple invalidate them by setting them with an expiration time in the /  /p h4Optimizing your Memcache setup/h4 pSimply using Memcache will not always mean that your site will be faster. Depending on the size of your website and the amount of traffic, you will need to allocate more RAM to Memcache./p pstrongHow best to define this amount?/strong If you know how much data is currently cached in MySQL, this can help to summarize the sizes of all cache tables and check how much of these tables are then configured to go into Memcache./p pLet me give an example: consider a 3GB emcache_render/em table and a 1GB emcache_dynamic_page_cache/em table, resulting in 4GB of data that would be offloaded to Memcache. Starting with a 4GB RAM setup for Memcache would give you a good start./p pBut how can you check if this setup is sufficient? There are a few simple rules to check if you have assigned sufficient -or perhaps too much - RAM to Memcache./p ulliIf your evictions are increasing, meaning that memcache is overwriting keys to make space. And your hit rate is lower than 90% and dropping, you should allocate more memory./li liIf your evictions are 0 but the hit rate is still low, you should review your caching logic. You are probably flushing caches to often or your cached data is not reused, meaning that your cache contexts are too wide./li liIf your evictions is at 0 and your hit rate is 90 and higher, and the written bytes in memcache is lower than the allocated RAM, you can reduce the amount of RAM allocated to Memcache./li /ulpIt is very important that you never assign more RAM than available. If your server needs to start swapping, the performance will drop significantly./p h4br / Conclusion/h4 pIf you are considering using memcache for Drupal, you need to think a few things through in advance:/p ulliWhich cache bins will be offloaded into Memcache? Only offload cache tables that do not depend on an cache entry./li liDoes the site has a lot of traffic and a lot of content? This will result in larger render cache tables./li liThe amount of RAM allocated to Memcache, depending on the amount available on your server and the size of the cache bins you offloaded to Memcache./li /ulpAlso keep in mind that the allocation of RAM for Memcache is not a fixed configuration. When your website grows, the cache size grows with it. This implies that the amount of necessary RAM will also /  /p pemWe hope this blog post has been useful! Check our a href= target=_blanktraining page/a for more info about our Drupal training sessions for developers and webmasters./em/p /div /div

DrupalEasy: DrupalEasy Podcast 193 - Evolving Community Governance - Adam Bergstein

Mon, 06/12/2017 - 23:06
pa href= .mp3 file download./a/p pAdam Bergstein (a href= joins Mike Anello to discuss the potential need to evolve Drupal Community Governance./p h2Interview/h2 ullia href= Governance with Megan Sanicki and Whitney Hess/a - podcast. /li lia href= Process for Evolving Community Governance/a - blog post by Whitney Hess. /li lia href= Governance Considerations of Open Source Projects/a - blog post by Adam Bergstein. /li lia href= governance page/a. /li /ulh2DrupalEasy News/h2 ullia href= now open for the Fall, 2017 semester of Drupal Career Online/a. /li /ulh2Sponsors/h2 ullia href= - Long-term-support services for Drupal 6, 7, and 8 sites. /li lia href= - a href=https://devpanel.comdevPanel/a. /li /ulh2Upcoming Events/h2 ullia href= Asheville/a - July 14-15, 2017. /li /ulh2Follow us on Twitter/h2 ullia href= /li lia href= /li lia href= /li lia href= /li lia href= /li lia href= /li lia href= /li lia href= /li /ulh2Five Questions (answers only)/h2 olliPlaying with is kids. /li liDocker for Mac. /li liMaking Drupal 8 core an amazing experience for content authors./li liHolding an alligator. /li liWorking with Drupal at Penn State /li /olh2Subscribe/h2 pa href= to our podcast on iTunes/a, a href= Play/a or a href= Listen to our podcast on a href= pIf you'd like to leave us a voicemail, call 321-396-2340. Please keep in mind that we might play your voicemail during one of our future podcasts. Feel free to call in with suggestions, rants, questions, or corrections. If you'd rather just send us an email, please use our a href= page/a./pdiv class=feedflare a href= src= border=0/img/a a href= src= border=0/img/a /divimg src= height=1 width=1 alt=/

DrupalCon News: DrupalCon Takeaways, Food For Thought

Mon, 06/12/2017 - 21:55
div class=field field--name-body field--type-text-with-summary field--label-hiddendiv class=field__itemsdiv class=field__item evenaddress pemAn Interview with Eric Scott Sembrat; Web Developer, Graduate Student | Atlanta, GA/em/p /address p /p/div/div/div

Third Grove: Rendering a View with Ajax in Drupal 8

Mon, 06/12/2017 - 20:39
span property=schema:name class=field-name--titleRendering a View with Ajax in Drupal 8/span span class=field-name--uid rel=schema:authorspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=ross/span/span span property=schema:dateCreated content=2017-06-12T18:39:39+00:00 class=field-name--createdMon, 06/12/2017 - 14:39/span

Valuebound: How to create Content Workflow for Media Enterprises

Mon, 06/12/2017 - 19:05
pA Content Management Workflow is used by Media Enterprises to have control over authorship, editing and a href= accesses and roles assignment for altering states, cycles and content types for users./p pContent Workflow is also known as Content Governance Model. A Content Workflow can define the roles, responsibilities, documentations and workflow of Content. Media enterprises have responsibilities to ensure they have a smooth workflow because it usually involves a lot of processes and people ranging from the author to the editor a publisher and also a creatives team. /p pA defined model of workflow involves all the stakeholders from planning…/p

OpenConcept: The Case for a Federated Open Departmental Web Strategy

Mon, 06/12/2017 - 17:23
div class=field field-name-body field-type-text-with-summary field-label-hidden view-mode-rssdiv class=field-itemsdiv class=field-item even property=content:encodedp class=noteOriginally posted on a href= pimg alt=Canadian Flag Behind Chickenwire src=/sites/openconcept/files/canada_behind_chickenwire_0.jpeg style=border-width: 0px; border-style: solid; margin: 5px; float: right; width: 500px; height: 316px; /The Government of Canada’s Web Renewal Initiative has failed. It may not be public yet, but there really is no way to redeem this half-conceived initiative to centralize all government pages onto a single website - pThis goal was lifted from the UK Government’s Government Digital Services (GDS). The goal of the GDS team was no less than digital transformation. Our government appears to have mistaken the site as the end goal, rather than a platform with which to experiment with new ideas in government usability. The GDS is continuing to innovate to better serve the needs of their citizens, and having an open strategy allows for them to have their ideas validated by the world./p pThe Web Renewal Initiative (mega-migration to was started by the Conservative government who was obsessed with centralizing communications amp; outsourcing as much as possible to the private sector./p h3Centralizing on was a Bad Idea/h3 pServing all public Government of Canada content via a single site guarantees that this project will not be able to Fail Forward and learn through constant iterations. If governments are going to learn and grow with their IT projects they need to be structured so that public servants are able to take on small risks. Building the “one site to rule them all” will ultimately leave everyone focused on limitations of the tool rather than the needs of the user./p pThere is not a single user for government sites. There is no way to appeal to the scientists, students, seniors, travellers and businesses owners, just to name a few, through a single voice. You do need a single site to be able to effectively answer most questions of citizens, but also need to be able to direct them to a more detailed department site if they want more information./p pMany departments also have websites or web apps that they have built for specific purposes. Most government sites aren’t as active as and won’t need their content to be updated 100s of times an hour. People go there for one specific reason (to get a permit, to find out if a drug is approved, to find the address of our High Commission in DC), and Canadians depend on this service. There are countless other examples where an agency might choose to set up a new website to try to target an audience or need which their departmental site cannot satisfy./p pThis project went off the rails before the RFP was even awarded. The very first item in the a href=;sa=Damp;ust=1497282126843000amp;usg=AFQjCNFK4jyD3Iml__-pIg0nclIY-ui-LgUK Government Digital Service’ Design Principles/a is to Start with user needs. Although there are great Usability folks who have been involved, there hasn’t been a mandate of “service transformation”, to really put users first. The rushed mandate of started with a bunch of assumptions and hasn’t brought on the user researchers or data analytics people to understand how to better meet user needs, let alone talk to users. The best hope with Web Renewal would be that it could save money, it was not designed to improve service./p pIt is worth mentioning that this initiative is built on proprietary software and managed completely by American-based international corporations. This approach does not support the broader public policy of a modern, open by default government that is supporting Canadian innovation. The process of centralizing and outsourcing Government IT makes it inevitable that multinational corporations are going to win contracts. Most Small amp; Medium-sized Enterprises (SME) just don’t have the resources to bid on multi-million dollar contracts let alone win them. When leveraging open-source, large projects can be broken down into smaller ones that will allow more Canadian companies to become involved./p pWhether it is a giant multi-national or a small business, it is never a good idea for government to give a monopoly to a private sector company, like they did for The vendor lock-in that comes with proprietary software makes it even worse as any transition away will include both migrating to a new technology stack as well as finding a new company to provide support./p pI’ve previously highlighted the a href=;sa=Damp;ust=1497282126848000amp;usg=AFQjCNE0ZaqpO5UZBGVtVU2TdA8DSVfFjgmany problems/a with the implementation of It is now time for everyone to admit that Web Renewal has failed. But if we do that, what should it be replaced with? What can be learned from this experiment and pulled forward into a plan that to help build the innovative modern government that Trudeau has promised Canadians?/p pI don’t think anyone is calling for a return to how government developed websites before Web Renewal. There does need to be more structure. There were too many orphaned projects that lacked proper accessibility, security amp; branding. What is the alternative?/p h310) Make things open: it makes things better/h3 pThis is the final item in the UK GDS Design Principles. Last but not least, particularly since it frames the Open Government approach that is framing this discussion around the world. Building in the open has a great many advantages which have been articulated very clearly by government leaders in the UK, USA, Australia, France, Spain, and indeed most of the G20./p p“Open source software can support the Digital Government Strategy's Shared Platform approach, which enables Federal employees to work together-both within and across agencies to reduce costs, streamline development, apply uniform standards, and ensure consistency in creating and delivering information.” - a href=;sa=Damp;ust=1497282126854000amp;usg=AFQjCNGUqOjdUIiVFvrJZcT86Sc_PdvVMgU.S. Department of Health amp; Human Services Website/a/p pAt the 2016 Open Government Partnership meeting in Paris the importance of Open Source was acknowledged by governments around the world, including the Government of Canada./p pSo start with an open platform. The tool doesn’t particularly matter, but the approach absolutely does. There are almost no acceptable reasons why the government should ever build software from scratch. Governments need to find existing software communities and become engaged with them./p ulliReview open-source software in use by our closest allies (USA, Australia, New Zealand, the EU amp; it’s members countries)/li liExperiment with public repositories other governments have shared/li liAdopt several that meet Canada’s unique needs in specific domains/li /ulh4Adopt an “Open” IT Workplace /h4 pWith the rate of change in IT, just to keep up, organizations need to be constantly investing in their workforce to ensure that they have the modern skills required. Working in the open makes developers more careful with their code. If your work is going to be published, you want to make sure that it is well written, documented and not introducing embarrassing bugs. Having a good reputation is increasingly important in the internet age. Working in the open also allows governments to have their work verified by external developers (for free)./p p“By making our code open and reusable we increase collaboration across teams, helping make departments more joined up, and can work together to reduce duplication of effort and make commonly used code more robust.” - Anna Shipman, Open Source Lead UK GDS/p pTo increase the collaboration outside of government it is always useful to release code under a commonly used license (such as the GPL, MIT or Apache) which aid with the distribution. The Open Government Licence adopted by Canada might become well understood in Canada, but not internationally. The US government defaults to Public Domain, which is very pervasive and also well understood./p h4Prepare for Linguistic Diversity/h4 pThe ability to fully manage bilingual content is difficult for many sites. The Government of Canada also needs to be able to support languages of First Nations, Inuit, Métis and New Canadians. Any Content Management System (CMS) chosen should be able to support, at a minimum, the orthographies of Ojibwe and Inuktitut in addition to languages like Arabic amp; Chinese which is the first languages for many Canadians. There are several open-source solutions that can already address our complex linguistic requirements./p pWith a commitment to open-source one could also build in decentralized readability evaluator to ensure that the content author knows how complex their work is (in real time) and that departments can assess a cross-site picture of their content. Writing in Plain Language isn’t something that comes naturally, but it is an important part of any accessibility or usability goals. There are well established open-source tools that already allow for multiple ways to evaluate language complexity, it is simply a matter of ensuring that it is built into the new websites that are used for creating the content./p h3Commit to Adopting Open Standards/h3 pWhen the Government of Canada formally gives up it’s goal to implement one site for the entire public service, We need to see a real commitment to Open Standards. Software interoperability allows the government to move the discussion away from specific tools and to broader cross-departmental needs. The UN’s International Telecommunication Union (ITU) defines them this way:/p p“‘Open Standards’ are standards made available to the general public and are developed (or approved) and maintained via a collaborative and consensus driven process. ‘Open Standards’ facilitate interoperability and data exchange among different products or services and are intended for widespread adoption.”/p pThe World Wide Web Consortium (W3C) is such a body, and has ongoing committees that work to improve standards like HTML, Web Accessibility Initiative – Accessible Rich Internet Applications (WAI-ARIA) as well as Web Content Accessibility Guidelines (WCAG) 2.0 amp; Authoring Tool Accessibility Guidelines (ATAG) 2.0. Some of these are used to base government initiatives like the Web Experience Toolkit, as well as the Common Look and Feel before that./p pAn important W3C standard for this discussion are the Semantic Web Standards most fundamentally the Resource Description Framework (RDF). One could also look at a machine readable markup language like the W3C’s eXtensible Markup Language (XML) or even cutting edge features like Web Components. The important thing is that there is a set of agreed to standards with which government websites can effectively exchange information with each other./p h3A Coordinated Decentralized Approach/h3 pI don’t know of a government that has fully embraced the Semantic Web, but the technology is already well established. Adopting this set of standards would allow for the realization of much deeper content sharing between networked sites. With a cohesive implementation you can divide the roles of content generation and content curation./p pIn Part 2 of this article I will elaborate on how this approach could be leveraged within the Government of Canada./p hr /h1Part 2: Implement a Federated Architecture/h1 pThe Government of Canada may require 1000+ websites to effectively engage with all of the various people, organizations and other government agencies stakeholders. Maybe it is as few as 100, but it doesn’t make any sense to select an arbitrary number here. We will only know how many sites the Government of Canada needs when we understand the users better. The GDS’s first principle, Start With User Needs, is key. We know that there are going to be more than a handful and that there will inevitably be overlapping content./p pCertain departments must have authority over some content and that this content should be distributed across government so that it is timely and accurate. This was one of the problems that Web Renewal was attempting to resolve by centralizing everything./p pWith a commitment to Open Standards it is possible to build a federated approach to content so that this can be accomplished. Any modern CMS ca expose content in a machine readable format (to everyone) so that it is open by default. It can then be consumed (either by people or machines) so that it can be easily syndicated within another sites domain./p h4Some Practical Examples/h4 pHealth Canada should be the authority on all information related to health. We can identify places where health information should be included in:/p ulliGlobal Affairs Canada to help assist travelers/li liImmigration and Citizenship in the application process/li liGCTools for the public sector employees/li might be useful for seasonal warnings/li the central government hub/li /ulpHealth Canada would be responsible for generating the content, and other government sites would simply be responsible for curating it. For the next SARS or bird flu-like scare Canadians need a central means to manage and update health information, but that can be automated through a federated architecture./p pSimilarly it would be useful to be able to use government sites to alert people if there are weather warnings in their area. Obviously you only want to include location specific warnings on government sites, when you have confidence about the location of the user. However, it would be possible through a federated distributed network to be able to share this information so as to protect Canadians./p h4Some Advantages of a Federated Approach/h4 pThe current configuration of presents a number of security challenges, that can be overcome with a federated approach. You could set up a workflow of content between internal departmental sites that are inaccessible to vendors, contractors and non-authorized personnel until it is published to external public facing sites where content is exposed to the public after it has cleared the appropriate approvals./p pHaving multiple sites in multiple environments will make it much more robust, Web Renewal has created a single point of failure (as well as a huge bottleneck for content). Working with open-source communities that have a critical mass of users will also ensure that your infrastructure is not relying on “security by obscurity”./p pThe site that generates the content doesn’t need to be the site which displays the content. It makes sense that it would in most instances, but perhaps not all. The point of a central site though is to curate information to help see that users are able to get the information that they need as quickly as possible. The central site should not be where most content is generated./p pThe Government of Canada is attempting to modernize. The new Experimentation Direction for Deputy Heads, has a lot of potential but is severely restricted by Web Renewal. Being able to provide a sandboxed version of for people to experiment with would be a game changer for people wanting to innovate. Providing a simple framework for A/B testing is key if we are to know how to best to interact with Canadians./p pIf becomes just a light framework that collates information from other government sites, there is no reason that this couldn’t be distributed. A central agency could experiment with several versions each of which could independently build up-to-date information from live departmental sites. With a proper cloud-based environment it would be trivial to spin up a new variation, direct a percentage of the traffic to the new instance of the site and evaluate what impacts a change has on user’s behavior./p h3The Fate of pObviously we still need a central website for citizens to engage with citizens. Like, there needs to be a good starting point for everyone looking for government services. Citizens who don’t know where to go need a starting point. But frankly it doesn’t even necessarily need to be a CMS as one could use a static site generator to generate static web pages that are secure amp; robust, much like GitHub Pages does./p pIdeally it would be great to have personalization in this central site to help guide people to the resource that they need, but there are many ways that it could simply aggregate information from federated departmental authorities and display it as part of pObviously search will be key with this. However, once all of the departmental information is in a machine readable format it will much easier to provide one or more search options which may be better suited for different needs. Many users are already going to start at, so simply embedding a Google Search into the government doesn’t necessarily give Canadians a better experience./p h3Integrating with other Levels of Government/h3 pOnce you have Government of Canada departments onboard, you it will be also possible to integrate with other government agencies. Citizens don’t really care what level of government is responsible for their problem, they just want the problem to go away. But using an open, federated architecture provincial and municipal departments can both include information from the Government of Canada in their sites (in real-time with no manual intervention) and share their data (which could be aggregated as needed)./p pIf everything developed by the Government of Canada is developed with an Open by Default approach and shared back to the public, then it will be easier for other organizations to engage with government as a platform for innovation. We will see the solutions spearheaded by government (like the Web Experience Toolkit) used and extended by other organizations. We will find it easier and more cost effective to implement secure, accessible, bilingual solutions which can be adopted by Canadian organizations for their own needs./p h3Long Live pThere is a path forward. Let’s stop spending money on expensive American proprietary software solutions, and start investing in a Federated Open Departmental Web Strategy. Canada needs the public sector to be championing open-source and open standards if we are going to catch up with our allies./p pA cultural change is needed to make this happen. It won’t be easy, but we know that with leadership and courage that huge changes have taken place in the least likely places. Dave Rogers and Steve Marshall of the UK’s Ministry of Justice, have said that their “public code repository is an important part of our recruitment strategy.” If the government is interested in recruiting new talent, this could be an important step./p pThat being said, because they are built in the open, we can catch up quickly if we are able to find the leadership to make it happen./p pThis outline has been mostly focused on changing the technology, but this federated distributed network will allow communications departments to be more agile amp; responsive as well. I have trouble imagining any modern organization starting to write a web page by opening up a Microsoft Word document. The web has more than enough capacity as a publishing framework that this step simply gets in the way. Canadians expect their government to be less rigid and more timely and by decentralizing communications tools we can help make that a reality./p pHaving the right tools in place allows for better workflow management with proper content controls. The end result should be empirically knowing that government sites are always getting better at meeting needs of users./p /div/div/divsection class=field field-name-field-portfolio-topic field-type-taxonomy-term-reference field-label-above view-mode-rssh2 class=field-labelTopic:nbsp;/h2ul class=field-itemsli class=field-item evena href=/topic/planet typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Planet/a/lili class=field-item odda href=/topic/open-source typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Open Source/a/lili class=field-item evena href=/topic/government typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Government/a/lili class=field-item odda href=/topic/multilingual typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Multilingual/a/li/ul/sectionsection class=field field-name-field-primary-image field-type-image field-label-above view-mode-rssh2 class=field-labelPrimary Image:nbsp;/h2div class=field-itemsfigure class=clearfix field-item evenimg typeof=foaf:Image class=image-style-none src= width=500 height=316 alt= //figure/div/sectionspan property=dc:title content=The Case for a Federated Open Departmental Web Strategy class=rdf-meta element-hidden/span How user authentication works in Drupal 8

Mon, 06/12/2017 - 17:01
div class=field field--name-field-featured-image field--type-image field--label-hiddendiv class=field__itemsdiv class=field__item evenimg class=panopoly-image-half src= alt=Drupal 8 user authentication title=Drupal 8 user authentication //div/div/divdiv class=post__body pEver wondered how Drupal 8 authenticates a user? Let's do a deep dive and find out./p pIn this journey, we will encounter a few new concepts which I'll try and explain briefly here and in detail in separate blog posts. Many of these concepts are borrowed from Symfony and adopted in Drupal 8. The journey of a request begins in a Symfony component called HTTP kernel. The job of HTTP kernel is to handle requests and respond to them in an event driven way./p /div

DrupalEasy: DrupalEasy Office Hours

Mon, 06/12/2017 - 16:43
pOver the past 6 years, we've training hundreds of people through our 12-week a href= Career Online/a class, our new 6-week a href= Professional Drupal Developer Workflows with Pantheon/a class, as well as our dozens of public and private trainings (literally) around the world. As part of our long-form 12- and 6-week classes, we've been providing on-going support for our graduates in the form of DrupalEasy Office Hours./p pEach week, we set aside two hours for any current student or graduate of any of our long-form classes to join our online classroom to ask just about any Drupal-related question they have. It might be about a project they're working on, something they learned in the course, or advice on how to tackle something that is a bit outside of their comfort zone. Regularly using screen-sharing, we can almost always help the person with their request - and most of the time, those watching pick up a thing or two as well./p pThe most rewarding aspect of DrupalEasy Office Hours (for us, at least) is watching students helping students. As Robert A. Heinlein once said, a href= one teaches, two learn/a is something that we try to encourage in all of our classes as well as DrupalEasy Office Hours./p pThis type of learning community has been a hallmark of what DrupalEasy training, consulting, and project coaching is all about. By engaging a subset of the larger Drupal community, our students gain experience, knowledge, and most of all - the confidence to ask fellow community members for help in an environment that is supportive and nurturing. /p pOver the past few years, we've heard of similar programs by various Drupal shops who provide a similar service for their clients. We can't think of a better way to provide on-going goodwill and mentoring./p pIf you're a graduate of one of our long-form classes, be sure to pop-in and say hello (contact us for details). /pdiv class=feedflare a href= src= border=0/img/a a href= src= border=0/img/a /divimg src= height=1 width=1 alt=/

Antonio Ospite: Drupal 8 migration log - Part 1 - intro, the front page

Mon, 06/12/2017 - 16:25
pMost of the information I have come across about migrating from Drupal 6 to Drupal 8 is about migrating content, however before tackling this problem another one must be solved, maybe it is obvious and hence understated, so let's spell it out loud: preserving the site strongfunctionality/strong. That means checking if the emcontrib/em modules need to be ported to Drupal 8, and also checking if the solution used in the previous version of the site can be replaced with a completely different approach in Drupal 8./p pLet's take a href= title=Antonio Ospite - theorist as a study case. /p pWhen I set up a href= title=Antonio Ospite - theorist back in 2009 I was new to Drupal, I choose it mainly to have a peek at the state of Open Source web platforms./p pBottom line, I ended up using many quick and dirty hacks just to get the blog up and running: local core patches, theme hacks to solve functional problems, and so on./p pMoving to Drupal 8 is an opportunity to do things properly and finally pay some technical debt./p pFor a moment I had even thought about moving away from Drupal completely and use a solution more suited to my usual technical taste (I have a background in C libraries and linux kernel programming) like having the content in git and generate static web pages, but once again I didn't want to miss out on what web frameworks are up to these days, so here I am again getting my hands dirty with this little over-engineered personal Drupal blog, hoping that this time I can at least make it a strongreproducible/strong little over-engineered personal Drupal blog./p pIn this series of blog posts I'll try to explain the choices I made when I set up the Drupal 6 blog and how I am re-evaluating them for the migration to Drupal 8./p h3The front page view/h3 pa href= title=Antonio Ospite - theorist was also an experiment about a multi-language blog, but I never intended to translate strongevery/strong content, so it was always a place where some articles would be in English, some in Italian, and the general pages would be actually multi-language./p pThis posed a problem about what to show on the front page:/p ulliIf every node was shown, there would be duplicates for translated nodes, which can be confusing./li liIf only nodes in the current interface language were shown, the front page would list completely different content across languages, which does not represent the timeline of the blog content./li /ul pSo a criterion for a front page of a strongpartially/strong multi-lingual site could be something like the following:/p ulliIf a node has a translation in the current interface language, show that;/li liif not, show the original translation./li /ul h4The “Select translation” module/h4 pIn Drupal 6 I used the a href= - Select translation moduleSelect translation/a module which worked fine, but It was not available for Drupal 8./p pSo I asked the maintainers if they could give me the permission to commit changes to the git repository and I started working on the port myself./p pThe major problem I had to deal with was that Drupal 6 approached the multi-language problem using by default the mechanism called emContent translations/em where separate nodes represented different translations (i.e. different rows in the codenode/code table each with its own codenid/code), tied together by a codetid/code field (translation id): different nodes with the same tid are translations of the same content. /p pDrupal 8 instead works with emEntity translations/em, so one single node represents all of its translations and is listed only once in the codenode/code table, and actual translations are handled at the entity field level in the codenode_filed_data/code table./p pSo the SQL query in a href= - Select translation moduleSelect translation/a needed to be adjusted to work on the codenode_filed_data/code rather than of the codenode/code table, as it can be seen in a href=;id=12f70c9bb37c15c3657b248d9ae2c0b5432fae80 - Select translation - commit 12f70c9bb37ccommit 12f70c9bb37c/a./p pWhile at it I also took the chance to refactor and clean up the code, adding a a href= title=Drush - command line shell and Unix scripting interface for Drupaldrush/a command to test the functionality from the command line./p pThe code looks better structured thanks to the Plugin infrastructure and now I trust it a little more./p h3Preserve language/h3 pOn a href= title=Antonio Ospite - theorist I also played with the conceptual difference between the “emInterface language/em” and the “emContent language/em” but Drupal 6 did not have a clean mechanism to differentiate between the two./p pSo I used the a href= - Preserve language modulePreserve language/a module to be able to only switch the interface language when the language prefix in the URL changed./p pIt turns out that an external module is not needed anymore for that because in Drupal 8 there can be separate language switchers, one for the interface language and one for the content language./p pHowever there are still some issues about the interaction between them, like reported in a href= #2864055: LanguageNegotiationContentEntity: don't break interface language switcher links/a, feel free to take a look and comment on possible solutions./p pMore details about the content language selection in a future blog post./p

Leander Lindahl: Acquia Dev Desktop - a fastlane to Drupal 8 development

Fri, 06/09/2017 - 19:57
span property=schema:nameAcquia Dev Desktop - a fastlane to Drupal 8 development/span span rel=schema:authorspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=leanderAdmin/span/span span property=schema:dateCreated content=2017-06-09T17:57:01+00:00Fri, 06/09/2017 - 19:57/span

Drupal core announcements: New Drupal 8 Committer: Lee Rowlands!

Fri, 06/09/2017 - 10:24
pI am pleased to announce that Lee Rowlands has accepted our invitation to be a Drupal 8 provisional framework manager./p pLee is based in Australia and has been heavily involved with the Drupal community both at home and internationally. His involvement with core and his contributions to a huge variety of projects on is impressive. You can read more about his contributions at his a href= Spotlight/a. A quote:/p pAs a contributor you are incredibly lucky to have your work constructively reviewed by some of the world's best programmers. Every time someone makes a suggestion on your patch, you learn a little more. I've learnt so many programming concepts from reviewing other's code and having my code reviewed by others./p pFor years, Lee has been stepping up to do what's most needed for Drupal. For example, when Forum module was potentially at risk of being removed from core, Lee stepped up to adopt it in response. He's also very active on the Drupal security team to ensure fixes go out in a timely manner. Lee cares both about the maintainability of Drupal itself and the concerns and experiences of other Drupal contributors./p pLee builds sites for some of the Australia's largest government, education, media and non-profit organizations. He has spoken regularly at events in Australia/New Zealand since 2010. In addition, Lee is a long-time mentor to others, and has inspired many people all over the world to be a part of the Drupal community./p pPlease join me in welcoming Lee./p

Third Grove: A high-level overview of the Plugin system in Drupal 8

Fri, 06/09/2017 - 09:20
span property=schema:name class=field-name--titleA high-level overview of the Plugin system in Drupal 8/span span class=field-name--uid rel=schema:authorspan lang= about= typeof=schema:Person property=schema:name datatype= xml:lang=spencer/span/span span property=schema:dateCreated content=2017-06-09T07:20:37+00:00 class=field-name--createdFri, 06/09/2017 - 03:20/span Blog: AGILEDROP: Speak about business at Drupalcon Vienna

Fri, 06/09/2017 - 01:39
a href= src= //a How do we grow a sustainable Drupal business in an increasingly competitive marketplace and how can we innovate and diversify to stay ahead? Help us address those questions at Drupalcon Vienna 2017 with your sessions on Business track. Drupalcon is the biggest Drupal event where people meet and discuss Drupal as technology and community. This year European Drupalcon will take place in Vienna, Austria.  Drupalcon targets to provide something for everyone, regardless if you are a developer, designer or entrepreneur. To provide this mix of content, we organized it into 11 tracks: Being Human… a href= MORE/a

Elevated Third: 6 Things to Consider During a Nonprofit Web Design Project

Thu, 06/08/2017 - 19:45
span class=field field--name-title field--type-string field--label-hidden6 Things to Consider During a Nonprofit Web Design Project/span 6 Things to Consider During a emNonprofit Web Design Project/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=Jill Farley/a/span span class=field field--name-created field--type-created field--label-hiddenThu, 06/08/2017 - 11:45/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=Nonprofit Banner 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 pEvery day, cultural institutions face unique challenges while working towards a mission with a small technical staff and digital budget. Limited money, revolving staff, and regulatory pressures require visionaries to think ahead of their competition to build a digital presence that doesn’t tie their hands with expensive proprietary licenses and high maintenance code. /p pSo often, cultural nonprofits feel pain triggered by the decision of another department. When technology solutions like ticketing, donor and membership management, point-of-sale, email marketing, and content management are selected without cross department communication, they won’t integrate. This causes struggles big and small like: /p ulliExtracting or inputting data /li liBattling with vendors to get even the most innocuous tracking code installed/li liMaking the public-facing user experience feel seamless/li liCustomizing the look and feel of simple things, like forms and checkout screens/li liKeeping content (like event descriptions) consistent across systems/li /ulpAfter more than a href= years working with nonprofit/a and cultural institutions, like the a href= target=_blankDenver Botanic Gardens/a, we’ve seen that these problems are epidemic. Drawing from experience, we have a few ideas about why that could be, and how Drupal can help. /p h3Mind Shift: Expense vs. Investment/h3 pThe big problem is that most nonprofit web design projects are considered a one-time expense, instead of a long term investment. /p pExpenses are a one-time cost with a start and end-date. Once a purchase has been made, it is scrutinized as an operating cost by the board and the finance committee, often dubbed a ‘necessary evil.’/p pInvestments require long term, strategic thinking. They receive ongoing budget priority and dedicated resources. They, like an employee, are expected to make money and be accountable./p pWhen a for-profit company spends money on the development of a new product or venture, they bank their business on it. They set goals and expect it will eventually enjoy returns that will help the company grow. /p pTreating technology spend as an investment rather than an expense can position a nonprofit to be more strategic about its vendor selection, increase direct revenues from a nonprofit website design and generate longer term buy-in from leadership./p h3How can nonprofits make the shift?/h3 pstrongimg alt=Open-source technology data-entity-type=file data-entity-uuid=9b1c4fef-01f7-4601-9be8-50884db69d9c src= class=align-left /1. Invest in open source. /strongOpen source software differs from platforms provided by Microsoft, Adobe, etc. in that it doesn't cost anything to license and use. It also means you can pick up your site and take it to any vendor. Because it's open source, Drupal is updated and a href= rel=nofollow target=_blankmaintained by millions of developers/a (a lot like Wikipedia). This means that when a new social media platform becomes popular for example, the community can create an integration within a matter of days or even hours. /p pstrongimg alt=Integration data-entity-type=file data-entity-uuid=3fe416d5-2dd2-4a9d-a4e5-b6c22c1bff4d src= class=align-left /2. Make integration-focused software a priority. /strongOwn the technology. Don’t let the technology roadmap be dictated by whether another company thinks a feature is important. Pick vendors by their commitment to playing nice with other tools, not by how many out-of-the-box features they have and always, always make APIs a priority. Drupal can connect to almost anything. Other less custom platforms have a hard time integrating with third party software. Drupal can integrate with almost any platform, regardless of how old or specific. Drupal works well with things like Salesforce, Hubspot, Marketo, and countless many more./p pstrongimg alt=Drupal logo data-entity-type=file data-entity-uuid=77d50594-a852-4406-93da-f49040721b15 src= class=align-left /3. Learn how well Drupal works for nonprofits. /strongIt is a scalable content management and system integration platform of choice. Trusted by institutions like GreenPeace, LACMA, The Red Cross, and The Whitehouse, Drupal offers the ability to integrate with enterprise solutions like Blackbaud/Convio, Magento and other commerce platforms, ticketing systems like Galaxy, Tessitura and more that haven’t been invented yet. Integrations, scalability, and speed to market are all things to be kept in mind when selecting digital tools./p pstrongimg alt=Analytics data-entity-type=file data-entity-uuid=40dc9942-82e5-4d6f-80f8-141e715627d1 src= class=align-left /4. Think in terms of conversions. Measure. /strongTechnology tools should save and make money, directly or indirectly. Have higher expectations of a ticketing system, a content management system, or a volunteer management system. Figure out how things that are valuable and can be tracked like “conversions”. Assign value to non-monetary outcomes so gain and ROI can be calculated. /p pFor example: /p pA volunteer may not be a revenue line, but recruiting someone takes valuable staff time. Calculate how the website can do some of that work for you. /p ulliVolunteer value - $50 each /li liNew dynamic volunteer signup form - $1,200 /li liResult? 30 more recruits than usual /li liROI: ((30 x $50) - $1200) / $1200 = 25%/li /ulpem25% return? Not bad./em/p pManaging and reconciling event information across all website platforms can be cumbersome and require tons of time by a content manager. /p ulliStaff cost - $40/hour/li liManual ticketing effort for event - 120 hours/li liCalendar API integration - $2000/li liAutomated ticketing effort for event - 40 hours/li liAnnual Savings: ((120 x $40) - ((40 x $40)+$2000)) = $1,200/li /ulpem$1,200 savings every year? Nice./em/p pstrongimg alt=Staff Happy data-entity-type=file data-entity-uuid=a1e6cd7e-040d-4d28-87f0-6cbb5a5f11fe src= class=align-left /5. Keep your staff happy./strong Drupal is built to make sense to users of any technical skill level, and the admin interface can be optimized for any type of workflow. The interface can even be customized to look like other systems that users may be more familiar with. Content edits can be made easily, and Drupal can be configured to allow for revisions and approval from multiple content editors with various permission levels. /p pstrongimg alt=Hosting data-entity-type=file data-entity-uuid=93669c6f-eb00-4689-b357-7a8bcb377894 src= class=align-left /6. Don’t forget hosting./strong During a nonprofit web design project and throughout the life of a website, is it important to have the support of a reputable hosting company. A Drupal specific hosting company, like a href= rel=nofollow target=_blankAcquia/a, offers the most comprehensive bundle of support and integrated hosting services, which as an long term investment can save thousands. For a nonprofit, reliable maintenance and security is unmatched. /p pbr / Drupal is a long term investment because it can be scaled as a nonprofit institution grows. It can save time, money, and hassle, especially when paired with a top-notch hosting platform, like Acquia. In our tenure working with nonprofits like the Denver Botanic Gardens, The NFPA, and the Colorado General Assembly, we’ve solved many problems using Drupal. If your nonprofit or cultural institution could use an overhaul, a href= target=_blankcontact us/a. br /  /p /div /div

Acquia Developer Center Blog: 12 Qualities of an Excellent Drupal Project Manager

Thu, 06/08/2017 - 16:46
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=project manager managing title=project manager managing //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:encodedpAs project managers (PMs), we are often asked to deliver on Key Results Areas (KRAs), to put up “our best show.” /p pUnfortunately most of us think that as a project manager, our only task is on-time quality delivery within a stipulated budget./p pHowever, in this rat race, we tend to forget what makes us different from rest: the soft skills that, if honed properly, enable us to manage our users, sponsors, and all our stakeholders. Then our job is done./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

Valuebound: How can a good Project Management ensure happy Drupal project delivery?

Thu, 06/08/2017 - 15:38
pThere is no tools or modules available for Drupal project management in It's all about your men and how you manage them. A few weeks back my colleague wrote about ‘a href= to set the right expectations for project delivery?/a’. br /  br / I am a Drupal Project Manager and in this blog, I have written about the ways I manage a Drupal /  br /strongLet’s list down the core objectives of any project manager/strongbr /  br / A Drupal project is not something out of the world but a project which has focused Drupal development and maintenance /  br /strongThe main objectives are:/strong/p ulliTo Stay On Budget/li liFinish On-Time…/li/ul

Wellnet Blog: - Composer as a service

Thu, 06/08/2017 - 14:28
div class=field field-name-field-video field-type-file field-label-hidden div class=field-items div class=field-item evena href=/en/blog/composy-composer-as-a-serviceimg src= width=616 height=232 - Composer as a service - Composer as a service //a/div /div /div div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even pWe built a platform to run Compose remotely and easily, so that you don't have to know how to use it. It's called /div/div/div

OSTraining: Using the Drupal Theme Developer Module

Thu, 06/08/2017 - 12:49
div class=ost-intro-imageimg src= alt=Using the Drupal Theme Developer Module width=200 height=133 //divpThere is one module that makes designing for Drupal 7 much, much easier: Theme Developer./ppYou can think of Theme Developer as a Drupal-specific version of Firebug or Chrome Developer Tools. Using Theme developer you can click on any element of your Drupal site and get a breakdown of how it was built./ppTheme Developer has some downsides: it's not been updated in a while, and (like anything related to the Devel module) shouldn't be used on live sites. But, it can still be a useful tool for Drupal 7 themers./phr id=system-readmore class=mceItemReadMore /ulliInstall a href= data-mce-href= Devel module/a, the a href= data-mce-href= API module/a and the a href= data-mce-href= Developer module/a. Be careful - you must use simplehtml API version 7.x-1.12./liliGo to Administer gt; Site Building gt; Modules. Enable all the modules you uploaded./li/ulp class=StepImageimg src= alt=drupal theme developer modules data-mce-src= //pulliIn the bottom-left corner of the screen, you will see a small Themer Info area:/li/ulp class=StepImageimg src= alt=bar drupal theme developer data-mce-src= //pulliCheck this box:/li/uldiv class=StepImageimg src= alt=tutuploadsmedia_1283459212897.png width=123 height=63 class=border data-mce-src= /ulliUp in the top-right corner of the site you'll see a larger black box:/li/ulp class=StepImageimg src= alt=editing bar drupal theme developer data-mce-src= //pulliThe bar does a pretty good job of explaining what to do! Just like Firebug, or Chrome Dev Tools, you can inspect areas of your Drupal site./li/uldiv class=StepImageimg src= alt=tutuploadsmedia_1283459279286.png width=412 height=118 class=border data-mce-src= //divulliHere's what happens when you click on a page element: you'll see a red box around that particular element./li/ul/divdiv class=StepImageimg src= alt=using drupal theme developer data-mce-src= //divulliThe theme developer box will now show information about your chosen page element:/li/uldiv class=StepImageimg src= alt=tutuploadsmedia_1283459617210.png width=412 height=353 class=border data-mce-src= //divpHere are some of the details you'll see:/pullistrongTemplate called/strong: the name of the file which is controlling the layout of this element/lilistrongFile used/strong: the location of the file controlling the layout/lilistrongCandidate template files/strong: if you'd like to create an override for this part of the page, these are suggested file names./lilistrongPreprocess functions/strong: These functions connect what happens in the module code to what gets sent to the theme/li/ulpIf you want to use the candidate template files, easiest thing to do is copy the Template called file, rename it and save it in your template folder. This is what the files mentioned in this example would do:/pullistrongblock-user-1.tpl.php/strong ... if you create this file, it will only provide a template for this particular block/lilistrongblock-user.tpl.php/strong ... if you create this file, it will only provide a template for this user blocks/lilistrongblock-left.tpl.php/strong ... if you create this file, it will only provide a template for blocks in the left div./lilistrongblock.tpl.php/strong ...if you create this file, it will provide a template for all blocks/li/ulpThis video offers a great explanation of the Theme Developer module:/pp{wistia}d1i8fayk3x{/wistia}/p

Agaric Collective: Catch some Agarics at June conferences

Thu, 06/08/2017 - 02:32
p class=leadAgaric is grateful to the Drupal community for all the effort poured into the amazing collaborative project. As part of giving back to it, we go to conferences to share with others what we have learned. These are some events where Agaric will be presenting this month./p h3a href= Conference for Workplace Democracy/a/h3 pThis is a convergence of worker-owned cooperatives. Representatives come from all over the country to attend workshops and sessions on all things related to owning a cooperative. It will be help in New York City on weekend of June 9th -11th at the John Jay College of Criminal Justice./p pBenjamin and Micky will be hosting a workshop/discussion with Danny Spitzberg on a href= They will cover how it can help cooperatives and smaller businesses have a we presence above and beyond the costs they can afford by consolidating the hosting and feature development into a group effort./p h3a href= Drupal Camp/a/h3 pThis event will take place on June 15-18 at John Molson School of Business de l'Université Concordia. Benjamin will be speaking on how a href= as a Service/a can lead to long-term success in a software project./p h3a href= Cities Drupal Camp in Minneapolis/a/h3 pAt Twin Cities Agaric will be presenting one workshop and two sessions./p pOn Thursday, June 22, Benjamin and Mauricio will be presenting the a href= Started with Drupal/a workshop. It is aimed to people who are just starting with Drupal and want to have a birds eye view of how the system works. As part of the workshop attendees will have the chance to create a simple yet functional website to put in practice their new knowledge. The organizers have gone above and beyond to make this training strongFREE for everyone/strong! You do not even need a camp ticket to participate. You just need to a href= pOn Saturday, June 24, Mauricio will be presenting on a href= 8 Twig recipes/a. This will be an overview of the theme system in Drupal 8 and will include practical example of modifying the default markup to your needs. The same day, Benjamin will present his a href= http:=Software as a Service/a./p h3a href= pThis is THE yearly Camp for Drupal doers in Boston and it happens June 22nd-23rd. Micky will be hosting a workshop/discussion on a href=, an initiative within the Drupal project based in social justice values and focused on building collectively owned online tools. Current focuses include two Drupal distributions aimed at grassroots groups also offered as software as a service, ensuring that the latest technology is accessible to low-resourced / Agaric will have a busy month attending and speaking at conferences. Please come to say hi and have fun with us./p