Planet Drupal

Subscribe to flux Planet Drupal
Drupal.org - aggregated feeds in category Planet Drupal
Mis à jour : il y a 9 min 59 sec

Code Enigma: #AberdeenCloud - what happened?

jeu, 30/06/2016 - 10:54
#AberdeenCloud - what happened? Language English #AberdeenCloud - what happened?

The only cloud with no silver lining.

Thu, 2016-06-30 09:54By greg

 

If you were an #AberdeenCloud customer, you’ll be only too aware their platform went bang on the evening of 28th June 2016. Spectacularly.

As it happens, we had spotted the lack of support response, and while there had not (and still has not, I might add - they still have a Sign Up page!) been any communication from #AberdeenCloud that anything was wrong, we were starting to get a little nervous. It took time to ask our customers what they wanted to do, collate the responses, vet a new supplier (our ISO 27001 certification requires we procure carefully), negotiate contracts, and so on, but we had got there.

Having signed a contract with Platform.sh just the day before, we were about to start migrating #AberdeenCloud customers over. Unfortunately, as it turned out, we were just a few days too late.

So what happened? Our timeline of events went something like this:

  • On 28-06-2016 at approximately 1900 UTC we got alerts from Pingdom for one of our customers on #AberdeenCloud.

  • It had happened earlier in the day, but restarting the container had cleared the issue - we figured it was something that was triggered by a Drupal cron event, but had not yet managed to investigate. So we did the same again, restarted the container. It did not come back. This was the first  sign all was not well.

  • Then another site went sideways, so we tried to restart that container. Same happened.

  • At this point we realised trying to restart containers was making things worse. To test we tried to restart the container on a development site we didn’t care about, same happened.

Right about now we realise things are not at all well with the #AberdeenCloud platform. OK, time for an emergency migration then! No one sleeps tonight! So we:

  • Raised an emergency ticket with #AberdeenCloud support (still not responded to, of course).

  • Tried to pull backups from the #AberdeenCloud backup manager (which was still available to us), but it failed for a site with no container running.

  • Tried to pull a stage backup instead, that failed too.

  • Tried to pull a backup from a seemingly still healthy site (it wasn’t healthy, it was just entirely cached by Varnish as it happened) and that also failed.

  • Tried to use `drush` to get databases, but found Drupal sites had no configuration files any more and could not connect to their databases.

And this is when something horrifying became apparent. All those daily backups #AberdeenCloud had been taking for us - and they did work, we had cause to use them just the week before - were, for some unknown reason, taken out by the same platform failure! No backups!

At this point it was time to see if we could pull anything off the running services. We noticed pretty quickly that:

  • phpMyAdmin was still running for all sites, even the ones with dead containers, so we used its “Export” feature to grab all live databases.

  • Version control was still running, so we quickly updated all codebase copies to make sure we had the latest code.

So now we have code and databases, which is good, but still no files. The containers we’d tried to restart were gone. Nothing we could do, it’s dead, Jim. So we tried a few things:

  • We started trying to contact people - we got hold of people who used to work for #AberdeenCloud to see if they could help (they couldn’t) - we sent Sampo, the CEO, a message via LinkedIn pleading for help (he still hasn’t replied, probably never will) - but we ran out of road, couldn’t find anyone able or willing to step in.

  • While the communication effort was going on, we started trying every trick we could think of to get files from “good” containers, via SSH, via the `aberdeen` command line client, via SFTP, copying files to another location to pull down, nothing worked.

  • We also tried spidering the sites using the `wget` command for Linux, to pull as many assets as possible from remaining Varnish caches, but this had very limited success.

At this point we started looking at the root cause, and it became pretty clear the mounted directories containing client uploaded files and Drupal configuration files were no longer there. You could see it when you logged into a container, but it was just a cache. If you tried to check the disk space it didn’t even show up. That storage was just gone.

But far worse, it seems backup storage depended on the exact same service! This is quite astounding really, but it seems there was no separation of service between storage of backups and storage of files and configuration. So if you lose one, you lose the other. Whereas you would expect backups would be somewhere more resilient and, frankly, more simple to access. We’d never had cause to question this before, our backups had always worked and the platform was closed source - there’s no way we could’ve known this was the case, but there you go. Cloud files gone, sites gone (because no Drupal settings) and backups gone - all in one fell swoop!

We were left with no choice but to proceed with what we had, so we:

  • Restored Drupal 6 sites to a virtual machine we had spare (I don’t think Platform.sh supports PHP 5.3, though I may be wrong).

  • Restored Drupal 7 sites to equivalent Platform.sh accounts.

  • Pulled in as many files as we could.

  • Continue to work with customers to help them recover their files and websites.

Anyway, it’s a real shame, because (unknowable backup storage flaw aside) they provided a good service for several years and the platform had proven to be very solid. It’s quite beyond me how someone can allow a business like this to fly into the ground without so much as giving customers a shutdown date with reasonable notice. It is irresponsible beyond belief, but there you go, it happened, and now we have to live with the consequences.

We, at Code Enigma, are obviously very sorry this has impacted on some of our customers. We are doing our best to help people recover their sites, automating the import of files, pulling assets from archive.org, checking support developer local copies for missing data, and we continue to chase Sampo, offering payment for missing files, though I have no confidence he’s ever going to reply.

I will post an FAQ later on other aspects of fallout from this, to help people understand the situation more clearly.

  PageHosting Service Comparison BlogDenial of Service, what you need to know BlogDesign and build a website in a day FAQMy site doesn't load for me, is it down?
Catégories: Elsewhere

Deeson: How does the permissions system work in the Group module for Drupal?

jeu, 30/06/2016 - 10:42

We’ve been getting questions about the Group Drupal module and how it relates to the general permission system that ships with Drupal. More specifically, the difference between group roles and user roles. So we figured we’d post a short explanation. 

Consider a regular Drupal site as a one-level thing.

There’s roles and permissions that allow you to do things, but it’s a flat structure. Either you have a permission across the entire site or you don’t. Group adds depth to that structure, allowing you to create smaller levels underneath the main one.

Inside those sub-levels you can have roles and permissions too, just like on the main level. The difference lies in the fact that they’re called group roles and group permissions and they only apply within their section of the site within their group.

Let’s use a practical example to demonstrate this. Suppose you’re building a news website and you allow John and Jane to post articles. But John only writes about sport and Jane only really knows about fashion. Yet they can both publish articles about anything. This is the default story in any Drupal website.

Group would allow you to divide the website into sections such as “Sport”, “Fashion”, “Domestic”, etc. and allow John to only publish articles in Sport and limit Jane to writing about Fashion.

This is just one of the many use cases Group can solve for you.

Interested? Try it out! It’s available for both Drupal 7 and 8, find out more here: https://www.deeson.co.uk/labs/9-reasons-group-drupal-8-awesome

Catégories: Elsewhere

Modules Unraveled: 161 Website Audits and How to Do Them Right with Jon Peck - Modules Unraveled Podcast

jeu, 30/06/2016 - 09:01
Published: Thu, 06/30/16Download this episodeWebsite Audits
  • What is a site audit?
  • Why would you do one?
  • Intended audience
    • New clients? Existing clients?
  • What are the goals of a site-audit?
  • How do you approach a site audit?
    • What are some other approaches you’re aware of?
  • What tools and techniques do you use?
  • How do you present the results?
  • How often should you do them?
  • What are some things to avoid?
Episode Links: Jon on drupal.orgJon on TwitterJon on GitHubJon’s about.me pageSite Audit ModuleUnused Modules ModuleSecurity Review ModuleHacked ModuleCache Audit ModuleCoder ModulePHP CodeSnifferDrupal Coding StandardsPHP Copy Paste DetectorPHP Mess DetectorPHP LOCGit StatsGit InspectorESLintESLintwebpagetest.orgGoogle PageSpeed Insightswave.webaim.orgViews Cache Bully ModuleHow to audit Drupal Sites - DCNOLATags: AuditingSecurityPerformanceplanet-drupal
Catégories: Elsewhere

Frederic Marand: Faster Drupal sites with Queue API

jeu, 30/06/2016 - 08:35
These are the slides of the presentation I gave last week at DrupalDevDays Milan about the ways using Queue API can help you speed up Drupal sites, especially in connected mode. read more

Catégories: Elsewhere

ImageX Media: Content-Driven UX

jeu, 30/06/2016 - 00:48

This is the third in a series of posts recapping ImageX’s presentations at this year’s DrupalCon.

A content-driven framework is essential for any successful user experience. Content strategy and UX can no longer be considered separately, and to ensure that they work together to make your website its most effective, the following components must be considered: your audience, their interactions, SEO, content distribution, and finally, measurement. 

Catégories: Elsewhere

Janez Urevc: Drupal 8 Media module at Google Summer of Code 2016

mer, 29/06/2016 - 23:11
Drupal 8 Media module at Google Summer of Code 2016 slashrsm Wed, 29.06.2016 - 23:11

In this video Vijay Nandwani, our GSoC student, explains his progress on the Drupal 8 Media module.

He also wrote a blog post where he explains more technical details.

Catégories: Elsewhere

OSTraining: Half a Million Views of the Drupal 8 Beginner Class!

mer, 29/06/2016 - 21:09

Drupal 8 is now eight months old.

Has it been a success so far? Yes. Drupal 8 is running over 100,000 sites and is now more popular than Drupal 6.

Back before Drupal 8 launched, we wanted to try and help in a succesful launch. We set ourselves a goal to help as many people as possible to use Drupal 8. 

Our method of acheiving that goal was Kickstarter project which provided enough financing to release over 200 free videos on YouTube. The training is the best available for Drupal 8 and it's completely free. There's no barrier to entry at all.

The first release was a 60-video series called The Drupal 8 Beginner Class

Today, I'm delighted to say we reached a major milestone. The Drupal 8 Beginner Class has been viewed over half a million times!

Catégories: Elsewhere

GVSO Blog: [GSoC 2016: Social API] Week 5: Checking abstraction of Social Auth

mer, 29/06/2016 - 20:42
[GSoC 2016: Social API] Week 5: Checking abstraction of Social Auth

During this last week, Google Summer of Code students must have submitted their midterm evaluation and waited for their mentors' evaluation. During these first weeks, I have been working on the main components of the Social API project. These components are:

  • Social API: contains the basic and generic methods, routing settings, and permissions every Social API sub-module will need
  • Social Auth: implements methods and templates that will be used by login-related modules
  • Social Post: provides methods to allow autoposting to social network’s accounts
  • Social Widgets: allows sub-modules to add functionality to add widgets (like buttons, embedded content) to node, blocks, etc.
gvso Wed, 06/29/2016 - 14:42 Tags Drupal Drupal Planet GSoC 2016
Catégories: Elsewhere

Acquia Developer Center Blog: Drupal 8 Module of the Week: Inline Entity Form

mer, 29/06/2016 - 20:01

Each day, between migrations and new projects, more and more features are becoming available for Drupal 8, the Drupal community’s latest major release. In this series, the Acquia Developer Center is profiling some prominent, useful, and interesting projects--modules, themes, distros, and more--available for Drupal 8. This week: Inline Entity Form.

Tags: acquia drupal planet
Catégories: Elsewhere

Axelerant Blog: Be the Best Drupal Agency with Team Wellness

mer, 29/06/2016 - 20:00

We’ve found that the best Drupal agency is the one with a highly functioning, happy team. To be fair, many completely remote, globally distributed powerhouses are healthy. However, we’re going a step further in becoming a best Drupal agency specifically through team wellness.

Become the Best Drupal Agency You Can Be

A few supporting factors to becoming what we consider a best Drupal agency are our fantastic life coach (working full-time for our team members), peer-determined semi-annual raises, and results-based productivity that’s not measured in hours. How we approach work-life balance, organizational culture, time, and money have changed the way we define being the best Drupal agency.

We take employee satisfaction to an odd extreme.

We hired a Life Coach full-time for our team members. This unique move has helped forward our holistic approach to instill job satisfaction, side step burnout, and enable healthy professional growth. Team members can contact our life coach to work on career path objectives, stress management, personal goal setting, life changes, social challenges, and much more.

This internal resource may seem bizarre to some, but it’s an option with benefits that go beyond productive workdays. A life coach fosters satisfaction and helps banish workplace indifference.

We’ve got an excellent kudos system. Our HR system integrates with Slack, which lets us give publically and receive pats on the back throughout the day. We encourage many notes of appreciation, recognizing monthly those who give and receive the most. This enablement creates a healthy and congratulatory environment within our organization.

In a professional environment like this, concealed positive feedback doesn’t always do the job. We’re building a positive culture for our team, with an emphasis on goals, personal development, and satisfaction.

Often when logging into our Slack system, we find personalized messages from the CEO and COO encouraging us to reach out to our leaders and peers if there’s something on our minds. It’s a great way to promote openness and remind everyone, daily, what we value here.

Monthly 1-on-1’s are about career growth. Making improvements and milestones are imperative, but you could say that career growth is paramount. Team members discuss with leaders their future so they can visualize the stepping stones.

Being a best Drupal agency is one which enables career growth and skill refinement, and having these every month—for everyone—applies a strategy.

In these meetings, we discuss training opportunities, the possibilities of educational reimbursement and career path changes. If a team member is interested in another vertical or department, we can nurture a transition or part-time involvement.

Our progressive policies are benefits. Team members are encouraged to take advantage of leave, travel, and tech policies whenever applicable. Inside Axelerant, you’ll find travel and technology budgets (Wi-fi reimbursement and device replacement); group health insurance; and a generous 35-days leave plus maternity, sabbatical, and paternity leave options.

Days off are shareable with other team members. And these are paid, of course.

We do work differently.

There’s been quite a bit of talk recently about burnout in the Drupal community. Work-life balance has been at the heart of this conversation, and at the crux of work-life balance you’ll find company policy. Let’s face it. Overworking, a culture of perpetual overtime, and burnout have a lot—if not everything—to do with an agency’s approach to productivity. The best Drupal agency or firm will put this into perspective and do the right thing.

We don’t clock in or out. We deliver quality work on time and budget, without timesheets. Productivity is about results via Key Performance Indicators, not punch cards. When you work hard, efficiently, and you’re connected with the team, you achieve these quality results.

Of course, our approach is detailed; we’ve adopted and refined agile frameworks which support our self-organized, self-managed teams.

Agile powers how we get things done. Our performance tracking and collaborative efforts align with this approach. There are much more reasons for our Drupal success in delivery, including our competence with automation.

We set our work schedules. This scheduling is expressive of deep trust and responsibility, and it’s a serious testament. If top Drupal agencies want to keep top performing team members happy, allowing time for daily activities (whether these involve family, social, or spiritual norms) is a great start.

Axelerant’s work-life balance is in the hands of each team member.

This doesn’t mean that our employees aren’t up early in the morning or late at night. What this means is while some may choose to be up before the sun (or long after it’s gone), it’s up to them. We encourage them to do what’s best for themselves.

These agile and scheduling characteristics help foster our team’s wellness, as both are focused on the needs of the individual. We’ve found that this doesn’t hinder project success, in fact, it helps to ensure it.

Rigidity doesn’t work, and our teams have proven that they can be trusted with accountability and independence.

We handle finances differently.

We’re transparent. In Axelerant, employees can view salaries, raises, and other details about company spending. These aren’t coveted secrets; figures are talked about openly. In this way, every employee is kept in the loop and encouraged to ask questions about our internal affairs. We keep ourselves honest, and we don’t mind talking about money.

We’re passionate about our work and our livelihood. Some firms and agencies don’t like to speak about money. We’re not like this. Let’s be frank, financial conversations centered on our employee’s needs aren’t signs of a lack of passion or selfishness. At Axelerant, we encourage openness.

Semi-annual raises are peer-determined. Each team receives a raise budget based upon profits. Next, the allocation of this amount is by honest team-level discussions. We’ve found that this system in conjunction with 1-on-1s, metrics, and engagement survey enables team recognition and promotes project feats. While this isn’t wholly competitive, it does encourage personal growth.

We’re paid on-time, in monthly lump sums. This consistency works perfectly for our employees when it comes to putting away savings and meeting monthly budgeting needs. Whereas some agency employees need to wait several weeks or a couple of months for addressing their school loans, rent, food, and other financial concerns, Axelerant employees are already done during the first week of every month.

Being remote sure helps.

Remote teams have the opportunity to put their best face forward. This doesn’t mean telecommuters are fake or disingenuous. Digital practitioners, despite contrary opinions, have the ability to interact in ways face-to-face team members can’t. They can compose themselves and avoid reactive, knee-jerk responses.

We’re talking about the unproductive kinds of office culture, the kinds that can weigh heavy in the workplace. These things can produce, over time, an unhappy (and by extension an unproductive) team. Remote work avoids this and other unpleasantness that can come with the brick and mortar.

And being global? It changes everything.

Axelerant is a globally distributed team (France, Taiwan, India, Israel, Japan, Australia, United States, and more to come). Some of us are from the major cities; others live in small towns—why does this matter? Because we’ve built a close-knit international team and have attained a diversity some can only dream of.

We’re a melting pot. Our cultural differences create a unique environment that enriches us all. The unique perspectives and insights every team member brings to Axelerant make our team dynamic. Diversity is the workplace gives organizations of all kinds a real advantage.

The importance of having this universal, a global mindset in today’s market can’t be undervalued. We’re world travelers, with a deep appreciation for the new. This connectedness is positive energy that charges Axelerant’s brand: we’re multicultural movers and boundary pushers.

There are global events and retreats happening back-to-back. Our annual retreat officially brings us all together for epicness, but we often see one another at international cons, camps, and other local meetups. This sponsored travel takes many of us to places we wouldn’t be visiting otherwise, broadening our horizons, and exposing us to the world even more.

We’re an international, 24-hour powerhouse. We use time zones to our advantage. This provides a tremendous advantage to our clients and enables us to get ahead of other agencies. At any time, somebody from Axelerant, somewhere in the world, is working hard at getting the right thing done.

The best Drupal agency will show different signs of wellness.

Beyond an extensive portfolio, and efficient Drupal services, a top Drupal agency will display healthy indications of a flourishing culture. The culture comes from people. If you’re looking for the best talent, which is what every organization in need of a Drupal vendor is looking for, then look for happy talent. Empowered teams produce powerful work. When more decision makers start to get this, we’ll all be in a better place.

These are just a few oddities that make us great. If you’re looking to hire or work for the best Drupal agency, these are some of the details you should be considering.

Free Open Source Staffing Guide hbspt.forms.create({ portalId: '557351', formId: '0e484b0e-3475-47ed-b8f5-49fa6b4cacab' });

This article was origionally published in November, 2015. It has since been updated.

This article Be the Best Drupal Agency with Team Wellness by Nathan Roach first appeared on Axelerant - Axelerant: Expert Drupal Development, Support, & Staffing.

Catégories: Elsewhere

Arpit Jalan: GSOC 2016- Display all the contents sharing same Dominant Colors in their images as of the current content- Week 5

mer, 29/06/2016 - 19:13
TL;DR The safe search constraint feature is now committed to the module along with proper web tests. So, this week I started off with a new feature offered by the Google Cloud Vision API- “Image Properties Detection”. It detects various properties and attributes of an image, namely, the RGB components, pixel fraction and score. I have worked on to detect the dominant component in the image present in any content, and display all the contents sharing similar dominant color. It is pretty much like what we see on the e-commerce sites.
Previous week I had worked on writing web tests for the safe search constraint validation on the image fields. This feature is now committed in the module Google Vision API.
This week I have worked on implementing another feature provided by the Google Cloud Vision API, namely, Image Properties Detection. This feature detects the color components of red, green and blue colors in the images along with their pixel fractions and scores.I have used this feature to determine the dominant color component (i.e. red, blue or green) in the image, and to display all those contents which have the same dominant color in their images.
I have developed the code which creates a new route- /node/{nid}/relatedcontent to display the related contents in the form of a list. This concept makes use of Controllers and Routing System of Drupal 8. The Controller class is extended to render the output of our page in the format we require. The contents are displayed in the form of list with the links to their respective nodes, and are named by their titles.
In addition to the grouping of similar contents, the colors are also stored in the form of taxonomy terms under a taxonomy vocabulary programmatically generated under the name Dominant Colors.
This issue is still under progress, and requires little modification. I need to add the link to the new route in each of the nodes, so as to  get a better interface to access those contents. Henceforth, I will put this patch for review.
A very simple example of creating routes and controllers in your module can be found here.
Catégories: Elsewhere

Arpit Jalan: GSOC 2016- Development of the project “Integrate Google Cloud Vision API to Drupal 8”- Midterm Submissions

mer, 29/06/2016 - 19:12
TL;DR It has been over a month since I started working on my Drupal project “Integrate Google Cloud Vision API to Drupal 8”, and gradually I have crossed the second stage towards the completion of the project, first being selection in the Google Summer of Code 2016 programme. Here, I would like to share my experiences and accomplishments during this one month journey, and also I would like to summarize my further plans with the project and the features which I would be implementing in the coming two months.
Let me first describe the significance of this post and what actually does “midterm submission” means?The GSOC coding phase has been divided into two halves, viz. Midterm submission and Final submission. In the first half, the students try to accomplish around 50% of the project, and submit their work to the mentors for evaluation. Those who passed the midterm evaluations are allowed to proceed further and complete the remaining portion of their project.
Now coming back to my experiences, after successfully passing through the Community Bonding period of the GSOC 2016 programme, now it was the time for start coding our project proposal to reality. As I had shared earlier that during the Community Bonding period, I came to know that the project has already been initiated by Eugene Ilyin,(who is now a part of my GSOC team). So, we discussed upon the project and set a roadmap of the project and the goals we need to achieve in the GSOC period.I had started coding the very first day of the coding phase, moving the new as well as existing functions to services. My mentors Naveen Valecha, Christian López Espínola and Eugene Ilyin really helped me a lot and guided me whenever and wherever I needed their guidance and support. They helped me to get through new concepts and guided me to implement them in the most effective way to make the module the best that we could.
During this period, I also came to learn about a lot of new techniques and concepts which I had not implemented earlier.Right from the very first day of the coding period, I have been coming across new things everyday, and it is really interesting and fun to learn all those techniques.In this one month period, I learnt about services and containers and how to implement them. The post on Services and dependency injection in Drupal 8 and the videos of Drupalize.me were of great help to understand the concept of services and implement dependency injection.I also learnt about the use of validators and constraints and how can they be implemented both on general basis or specifically on fields.I also learnt about how to create test modules and alter various classes and their functions in our tests so as to remove the dependency on web access or on valid informations for our testing purposes.I learnt new things every day and enjoyed implementing them to code our module plan into reality.At present, the module supports the Label Detection feature of the Vision API, along with the tests to verify whether the API key has been set by the end user or not. Currently, the feature of Safe Search Detection is available as a patch which can be found here, which would soon be committed to the module.
I have shared all the details of my work on the Drupal Planet. In addition, I have also uploaded a video demonstrating How to use Google Vision API module.
Catégories: Elsewhere

Microserve: Drupal in your digital ecosystem

mer, 29/06/2016 - 18:01
Drupal in your digital ecosystemJun 29th 2016

There has been a lot of coverage recently about the benefits and opportunities associated with ‘Headless Drupal’, and while this can be an important feature for some audiences it has overshadowed an arguably more important feature of Drupal 8: its ability to seamless sit alongside other technologies and share content resources.

It is really important to continue advancing Drupal's web services support. There are powerful market trends that oblige us to keep focused on this: integration with diverse systems having their own APIs, the proliferation of new devices, the expanding Internet of Things (IoT), and the widening adoption of JavaScript frameworks.

Dries Buytaert, Founder of Drupal

One of the key development goals of Drupal 8 was to produce a content platform which can easily integrate with a wide ecosystem of business applications and digital technologies. Drupal 8 was built with an API-first approach which means connecting content to other sites and applications is an expected use-case.

Drupal 8 takes a presentation-neutral approach to managing content; the content workflow is separated from the presentation of that content, meaning it can be pulled into relevant contexts on your website or pushed out across multiple third-party platforms.

Content is king

Bill Gates

Quality content is pivotal to successful online marketing strategies. Leaving it to sit in a siloed website misses the opportunity to make the very most of your best marketing asset.

Instead, it should be produced once and then re-published and promoted everywhere from your corporate intranet through to consumer apps, partner-websites, and across your entire social media presence.

By utilising Drupal 8 as a publishing framework you can aggregate and publish content resources across your existing digital solutions through rich data services and content APIs.

What this means to you is that it’s easier than ever to share content across multiple channels from one central application.

With organisations such as Oxfam, The Economist and The City of London using Drupal as their primary content platform, it’s clear that Drupal 8 has a lot to bring to modern digital businesses.

Is it time you took a fresh look at Drupal 8 and how it fits into your digital ecosystem?

Microserve are experts in all things Drupal. If you're interested in a Drupal 8 project or want to know more about how Drupal 8 can help your business, please get in touch.

Written by: Mark Pavlitski, Technical Director

Microserve is a Drupal Agency based in Bristol, UK. We specialise in Drupal Development, Drupal Site Audits and Health Checks, and Drupal Support and Maintenance. Contact us for for further information.

Catégories: Elsewhere

Cheppers blog: Drupal Developer Days Milan 2016 - as we saw it

mer, 29/06/2016 - 17:30

Drupal events always fascinate me. They don’t just provide a wonderful environment for learning from each other, to contribute to Drupal together during code sprints, and to meet new people, but they make the community stronger as well. Drupal Developer Days is probably one of the best kinds of events to make this all happen in one place. Here's my recap of Drupal Dev Days 2016 in Milan.

Catégories: Elsewhere

Amazee Labs: The Awesome Austin Drupal Dojo

mer, 29/06/2016 - 17:02
The Awesome Austin Drupal Dojo

Everyone has a routine. For some, it’s their morning coffee, for others it’s going to the gym after work. For me, it’s heading to Mangia Pizza every Thursday from 7pm-9pm, for the last 6 years. Why do I do this? Because the Austin Drupal Dojo meets every Thursday, and we have a great crowd!

Brandon Williams Wed, 06/29/2016 - 17:02 Buster, Chris, Fito, Irma, James, John, Marc, Mark, Nick, me (behind the camera) and others at the August 27, 2015 Austin Drupal Dojo.

The Austin Drupal Dojo is a meetup where anyone is welcome to hang out with other Drupalistas in a "hive mind" environment. There are no set topics or presentations. The pizza is delicious, beer refreshing, and conversations vary wildly. Most people bring a laptop and a project, but others just come for the community.

Our regulars range from Drupal experts, to hobbyists, to newbies. From full-time employees, to freelancers, to those looking for work. We also have a steady stream of folks who are looking for help. Maybe they’re just curious about Drupal, or need to learn it for a new job, or want to start their own business. The Drupal community is known for it’s welcoming atmosphere, and the Austin Drupal Dojo is an exemplary model of that community spirit. Our members jump at the chance to answer questions and help those in need, often sparking a group conversation about best practices and possible solutions.

Many of our members contribute to the other Austin Drupal Meetups (yes, we have more than one!) by speaking and/or organizing, and to the Drupal project in general by fixing core/contrib/documentation and organizing Sprint Weekends. When I became the de facto organizer, attendance was modest, and I never imagined it could blossom into such a great group. It’s been my privilege to work alongside these members of our community, and I’d like to thank everyone who’s joined us, past, present, and future.

If you’re ever in the Austin area, grab your laptop, appetite, and come join us!

What: Austin Drupal Users Group - Drupal Dojo
When: Every Thursday 7-9pm
Where:
Mangia Pizza
8012 Mesa Dr
Austin, Tx 78731
(512) 349-2126

Catégories: Elsewhere

The Sego Blog: Drupal 8 Configuration Workflows

mer, 29/06/2016 - 16:19
06/29/2016Drupal 8 Configuration Workflows

With our new configuration management system as part of Drupal 8 core we now have a powerful system to manage site configuration between our different environments.

Catégories: Elsewhere

Dries Buytaert: Drupal is for ambitious digital experiences

mer, 29/06/2016 - 11:34

What feelings does the name Drupal evoke? Perceptions vary from person to person; where one may describe it in positive terms as "powerful" and "flexible", another may describe it negatively as "complex". People describe Drupal differently not only as a result of their professional backgrounds, but also based on what they've heard and learned.

If you ask different people what Drupal is for, you'll get many different answers. This isn't a surprise because over the years, the answers to this fundamental question have evolved. Drupal started as a tool for hobbyists building community websites, but over time it has evolved to support large and sophisticated use cases.

Perception is everything

Perception is everything; it sets expectations and guides actions and inactions. We need to better communicate Drupal's identity, demonstrate its true value, and manage its perceptions and misconceptions. Words do lead to actions. Spending the time to capture what Drupal is for could energize and empower people to make better decisions when adopting, building and marketing Drupal.

Truth be told, I've been reluctant to define what Drupal is for, as it requires making trade-offs. I have feared that we would make the wrong choice or limit our growth. Over the years, it has become clear that defining what Drupal is used for leaves more people confused even within our own community.

For example, because Drupal evolved from a simple tool for hobbyists to a more powerful digital experience platform, many people believe that Drupal is now "for the enterprise". While I agree that Drupal is a great fit for the enterprise, I personally never loved that categorization. It's not just large organizations that use Drupal. Individuals, small startups, universities, museums and non-profits can be equally ambitious in what they'd like to accomplish and Drupal can be an incredibly great fit for them.

Defining what Drupal is for

Rather than using "for the enterprise", I thought "for ambitious digital experiences" was a good phrase to describe what people can build using Drupal. I say "digital experiences" because I don't want to confine this definition to traditional browser-based websites. As I've stated in my Drupalcon New Orleans keynote, Drupal is used to power mobile applications, digital kiosks, conversational user experiences, and more. Today I really wanted to focus on the word "ambitious".

"Ambitious" is a good word because it aligns with the flexibility, scalability, speed and creative freedom that Drupal provides. Drupal projects may be ambitious because of the sheer scale (e.g. The Weather Channel), their security requirements (e.g. The White House), the number of sites (e.g. Johnson & Johnson manages thousands of Drupal sites), or specialized requirements of the project (e.g. the New York MTA powering digital kiosks with Drupal). Organizations are turning to Drupal because it gives them greater flexibility, better usability, deeper integrations, and faster innovation. Not all Drupal projects need these features on day one -- or needs to know about them -- but it is good to have them in case you need them later on.

"Ambitious" also aligns with our community's culture. Our industry is in constant change (responsive design, web services, social media, IoT), and we never look away. Drupal 8 was a very ambitious release; a reboot that took one-third of Drupal's lifespan to complete, but maneuvered Drupal to the right place for the future that is now coming. I have always believed that the Drupal community is ambitious, and believe that attitude remains strong in our community.

Last but not least, our adopters are also ambitious. They are using Drupal to transform their organizations digitally, leaving established business models and old business processes in the dust.

I like the position that Drupal is ambitious. Stating that Drupal is for ambitious digital experiences however is only a start. It only gives a taste of Drupal's objectives, scope, target audience and advantages. I think we'd benefit from being much more clear. I'm curious to know how you feel about the term "for ambitious digital experiences" versus "for the enterprise" versus not specifying anything. I'm hoping we can collectively change the perception of Drupal.

PS: I'm borrowing the term "ambitious" from the Ember.js community. They use the term in their tagline and slogan on their main page.

Catégories: Elsewhere

Valuebound: How to enhance your content authoring by adding custom CKEditor plugin in Drupal 8?

mer, 29/06/2016 - 09:50

CKEditor is a popular WYSIWYG (What You See Is What You Get). In Drupal default WYSIWYG editor is CKEditor. CKEditor has many of its own plugins.

Recently I got an opportunity to work for some top level media companies like Time Inc and Farm Journal with my Valuebound Teammates. It was a challenging experience , especially on the area of content creation and management work flow.  

We got a requirement where “Content Authors” should be able to upload the images in between  paragraphs of content. When the end user clicks on those images, the image has to be shown as a popup. So we decided to create a CKEditor plugin so that the users who…

Catégories: Elsewhere

PreviousNext: A quick gotcha with Drupal 8's libraries.info.yml and aggregated JavaScript

mer, 29/06/2016 - 08:17

This one tripped me up on a recent Drupal 8 project.

Easy to miss when you're working in a development oriented environment with things like JavaScript preprocessing turned off.

A JavaScript file was being added just fine with aggregation turned off, but not getting added with it turned on.

 

Catégories: Elsewhere

Talha Paracha: GSoC’16 – Pubkey Encrypt – Week 5 Report

mer, 29/06/2016 - 02:00

This week I worked on making the module a bit flexible via integrating pluggable systems into it. This is something we had planned initially while writing the architecture document for the module, but couldn’t pursue it earlier because our focus was on developing a working prototype first. But since that’s done, we’ve reached the perfect time for this development. It should be noted that the pluggable systems are important because Pubkey Encrypt deals with security, and it is essential for the module’s success to be as flexible as possible. In this way, users would be able to configure the behavior of the module as per their organizational security standards and other demands not provided by the out of the box functionality.

Catégories: Elsewhere

Pages