Subscribe to feed Planet Drupal
Drupal.org - aggregated feeds in category Planet Drupal
Bijgewerkt: 1 uur 3 min geleden

Modules Unraveled: 121 The Harmony Forum Project with Alli Price - Modules Unraveled Podcast

di, 2014/10/07 - 8:34pm
Published: Tue, 10/07/14Download this episodeHarmony Forum
  • What is Harmony Core?
  • What prompted you to develop it over using the core forum module?
  • Did you take a look at the Advanced Forum module?
    • What didn’t you like about it?
  • So what are some of the features?
    • Kill switch
    • Entities
    • Revisions for Post entity, integration with Diff module
    • Views provides all listings including on a thread page
    • Flag action for "Like" of posts
    • At.js
  • Does this integrate with other community related module? ie: Organic Groups
  • What are some of the sub-modules, or add-on modules that enhance Harmony Core?
    • Harmony Access
    • Harmony Forum Access
    • Harmony Search
    • Harmony Moderation
    • Harmony Migrate
Use Cases
  • Who’s using Harmony now?
  • You mentioned some upcoming events what are those?
  • How can people get involved?
  • Where should people go to find out more?
Questions from Twitter
  • Scott Wilkinson
    What kind of moderation tools will Harmony have? Like pruning posts or users? Forum Moderators?
Episode Links: Alli on drupal.orgAlli on TwitterForum development group on g.d.oGet on the email listFeatures listDemo of the frontendTags: ForumsCommunity Modulesplanet-drupal
Categorieën:

Freelock : Importing foreign key references with Migrate

di, 2014/10/07 - 7:04pm

One of our clients wanted to regularly update a list of dealers along with the parts carried at that dealer, and show them on a map. As I dug into the challenge, I was a bit surprised to find very little information on the web about how to hook up a migration that would essentially import a join table. So I had to create it myself!

MigrateDrupalDrupal PlanetERPRetailManufacturingDealersentityreferenceTechnical
Categorieën:

Deeson: DrupalCon Amsterdam: the Deeson digest

di, 2014/10/07 - 5:52pm

Last week was all about DrupalCon Amsterdam.

Deeson’s MD, Tim Deeson, sat on a panel Q&A, I rallied the community with giveaways and things to play with and our Solutions Architect John Ennew joined in hackathons. We also organised Birds of a Feather (BoF) sessions.

For those who want to know more, here is our complete guide to Europe’s biggest Drupal conference event which celebrates the community and experiences working with Drupal’s open source software.

1. The keynotes

The two main keynotes at the conference were delivered by Drupal founder, Dries Buytaert, and science fiction author, activist, journalist, blogger and co-editor of Boing Boing, Cory Doctorow. They were very different in style and approach, but both were fascinating and highly informative.

Dries Buytaert

Dries’ keynote focused on the maturity of Drupal as a platform and community. He touched on the inevitable growing pains and the tough choices we all face as Drupal expands its reach and influence.

He drew on proven growth principles, such as the Tragedy of the Commons, to illustrate Drupal’s ‘journey’. He highlighted how Drupal's reach can grow with community support, from local leadership initiatives to rewarding Drupal contributors.

Watch Dries' keynote

Cory Doctorow

Cory discussed the significance of free and open source software, highlighting the challenges and issues which impact us all.

As a tech evangelist, he shared his expert insight into the importance of software transparency in an age where tech and devices infringe on our everyday lives. It was pretty sobering.

2. Drupal 8: the beta release

Dries announced the beta release of Drupal 8. The Drupal community will now be working together to find and fix bugs before the full release of Drupal 8. 

3. The sessions

Tim took part in a business-focused panel session entitled: 'Life in the fast lane - achieving sustainable growth'.

The hour-long session went through issues and challenges faced by Drupal agencies, shops and freelancers trying to achieve growth. Read the key takeaways here or check out the video:

4. Mentoring

John signed up as a sprint mentor for the first time and taught new contributors to Drupal Core how they can set up contributing tools. 

Mentoring the Drupal community builds confidence and empowers developers to become regular contributors to Drupal Core.

5. Swag demand

The event may focus on code but t-shirts feature heavily. 

Our designer, Rachael Case, created a stunning Deeson DrupalCon tee which flew off our stand. They were so popular, people even nabbed the display tees off the wall!

6.Frame of Fame

As you might understand by now, community is at the core of Drupal. 

We wanted to celebrate the community who worked on Drupal 8 with our Frame of Fame. Check out the faces behind the code, contributes and commits…

We took the Frame of Fame into the digital world with The Drupal8r...

7. The Drupal8r

Our developer, Chris, created an amazing data visualisation tool, The Drupal8r shows who in the Drupal community developed Drupal 8 during the last 5000 commits. Give it a whirl yourself!

 

8. The Dries interview

It’s not everyday you get to interview the founder of Drupal, Dries Buytaert. But we did.

We’ll be sharing our conversation with Dries soon, so sign up to our newsletter at the bottom of this page to find out about the successes and failures in Drupal 8 delivery. 

We’ll also be publishing our #AskDries video where Dries answers questions from DrupalCon attendees. Watch this space!

9. The BoFs

John and I ran BoFs at DrupalCon Amsterdam. John focused on experiences of integrating Customer Relationship Management (CRM) systems with Drupal while I explored the need for personas in the site build process.

You can read the full write up of John’s session here. My session summary is here in a shareable Google Doc which highlights the basic persona questions, plus links to a few resources for persona newbies.

10. Nos vamos a Barcelona para DrupalCon 2015!

DrupalCon Europe 2015 is in Barcelona. So we're going to brush up on our Spanish. ¡Vamos!

Categorieën:

Digett: Product Review: New Relic APM for Drupal Performance Tuning

di, 2014/10/07 - 5:36pm

New Relic APM (Application Monitoring) is an amazing tool to help you tune the performance of your Drupal website.

read more

Categorieën:

Deeson: Six talks, two Deeson Drupal devs and Symfony Live London

di, 2014/10/07 - 5:00pm

Dan and I went to Symfony Live London last Friday to find out what was happening in the world of Symfony.

Here's a summary of the six talks we attended:

1. The Dependency Trap

Jakub Zalas gave an interesting talk about the difficulties of relying too heavily on third-party services and classes.

He went through the process of thinking about writing code while avoiding being overly reliant on a third-party. The main benefit is when you need to change your code or third-party service at a later date, it should be easy enough to do without having to re-write half of your application.

2. How Kris Builds Symfony Apps

Although I haven't been working with Symfony that long, the name 'Kris Wallsmith' keeps coming up when looking around at various bundles. He talked about his approach to building apps.

He went through the different layers involved in building an app, such as controller, models, services, event handlers, etc. He dismissed the myth of 'thin controllers, fat models', by looking at what the controllers, models and services actually do at each level.

In his view they are all just 'mapping layers' between the different data abstraction layers apps have. When you look at it like this, you end up with 'thin controllers, thin models' and 'thin services with thin events'.

3. The Naked Bundle

Matthias Noback introduced the self-titled, 'Noback's Principle: Code shouldn't rely on something that it doesn't truly need'.

He suggested we should limit our dependency on the framework as much as possible. 

We should try to limit to the point where pretty much everything that you would normally put inside a Symfony Bundle (which is a concept very much tied to the framework) can be moved in some way into framework agnostic, re-usable components.

The talk was enlightening, but it made me wonder whether I am ready to break away from Symfony so soon!

4. One Commit, One Release. Continuously Delivering a Symfony Project

Javier Lopez went through the continuous integration process they used on a project. The talk explained that a release to production doesn't have to be a such a daunting task.

Interestingly, they had managed to reduce the time it took to deploy a release from 30 minutes to 30 seconds. They released most days, rather than once a week or each fortnight. Also the product owner could trigger a release rather than relying on a developer to do it.

At Deeson we are using continuous integration for our web build projects more and more.

5. Converting a Website to a New Religion: Symfony

Michael Cullum has been involved in the rebuild of phpBB using Symfony and went through their approach to rebuilding such a large scale app.

When looking at rebuilding a site, you can be tempted to copy and paste a lot of code.

Michael highlighted the problems with repasting code. In fact when we have the opportunity to rewrite code, we should be tackling it head on.  

We all write code which we look at six months or a year later and think, "what was I thinking when I wrote that?" He told us to understand what we are trying to achieve and write efficient code now.

What was interesting is that they had looked at a section of phpBB at a time. They started with the home page and got that working, then moved onto the next page. 

This is different from the norm of building the functionality and then getting theming working across the entire site as a second step.  

6. Decorating Applications with Stack

Beau Simensen was introducing 'Stack' - a convention for composing HttpKernelInterface middlewares into your application.  

He went through its history, which applications can currently use it (Symfony, Silex, Laravel 4, and Drupal 8) and a brief overview of how it can be used.

Although an interesting concept, it didn't seem immediately relevant to our experience.

A worthwhile event

As we're using Symfony more and more, it was interesting to be part of the event and to attend such a range of interesting talks.

Categorieën:

Open Source Training: 6 Modules to Avoid Before Drupal 8 Arrives

di, 2014/10/07 - 4:44pm

Over the last few months, Dave Reid, one of the most active Drupal developers, has been giving a presentation called "Future-proof your Drupal 7 site".

Dave talks about decisions can you make now on your current or new Drupal 7 sites to make transitioning to Drupal 8 easier.

He comes up with a list of modules that have been backported to Drupal 8. Using those modules means you won't have to re-train your staff for Drupal 8.

Dave also has some recommendation for modules to avoid, because they've been replaced by alternative solutions in Drupal 8. Here are 6 modules that might be worth avoiding if want an easier update to Drupal 8 in years to come ...

Categorieën:

Forum One: Where’s the Message in Panels Node Edit Forms?

di, 2014/10/07 - 4:02pm

Why are my messages (errors, status, etc.) not showing up on my panel override of a node add/edit page?

I wrestled with this problem for longer than I should have, all because I couldn’t find this simple Drupal post.

Essentially, I was adding the “Messages” block to the panel content of my node/edit page that I was overriding. Thus, no matter what I did, that message area would never render.

My finding is that drupal_get_message is a unique function. Once you call it, all messages are cleared from it, so calling it again essentially will be too late to see any messages that might have been there. page.tpl.php calls this function, and Panels never gets a chance to try to get the messages that might be waiting to be displayed.

As a result, adding the following as a module or theme pre-process hook will keep the page from calling messages (replacing “MyThemeOrModule” with the appropriate name, of course):

function MyThemeOrModule_preprocess_page(&$variables) { // This disables message-printing on a content type edit page so panels can print it if (isset($variables['page']['content']['system_main']['content']['form_id']['#id'])) { if ($variables['page']['content']['system_main']['content']['form_id']['#id'] == 'edit-MyContentTypeName-node-form') { $variables['show_messages'] = FALSE; } } }

Be sure to replace “MyContentTypeName” with the machine name of your content type. If you have doubts, look at the value in $variables['page']['content']['system_main']['content']['form_id']['#id'] while looking at the content type’s edit page. We add this IF statement to make sure we disable page-level messages on this edit form and not on the entire site.

$variables['show_messages'] = FALSE; is what actually disables the messages from being displayed at the page level so Panels has a chance to display them instead.

Messages. Displayed.

 

Categorieën:

Deeson: The value of planning poker for better estimation

di, 2014/10/07 - 3:00pm

At Deeson, we’re always experimenting with how we can use Scrum in an agency environment.

The mechanism we’re seeing the most success with is planning poker.

Accurate estimations

As a solutions architect, I might have estimated tasks on behalf of the development team. But using this traditional method, we found our estimates were often higher or lower than actual time taken for the task. While these would often balance out, better decisions could have been made if estimates were more accurate.

I’ve found planning poker to be a rather neat idea and worth getting to know. The core concept brings the project team together to estimate on tasks. This team can include developers, project managers, user experience, designers and sometimes even the client.

The concept

Each team member uses a deck of cards representing numbers similar to Fibonacci’s sequence (½, 1, 2, 3, 5, 8, 13 ,etc). Once the numbers reach more than 13, the decks we use break into bigger increases. This is because laying a high numbered card is a sign that the task needs to be broken down anyway.

Agreement is the key

After a quick overview, each member simultaneously lays their estimate down on the table for each task. Team members with the highest and lowest estimations then state their cases and everyone estimates again until everyone agrees. 

(*whispers* Don’t tell the Scrum police, but we plan our tasks in hours and not days. This is because our clients buy hours, so we think in hours. But we always measure the accuracy of our estimates.) 

Bringing teams together

I find that when you start thinking about how long something is going to take you, it’s difficult to do without considering how it might be built, at least at a high level. 

This is where you can think about efficiency by reusing code or patterns. Planning poker brings everyone together which means you’re calling upon the much broader experience of your team to make the decision. This leads to better estimation. 

Deeson tips

The Deeson developers love the planning poker process because the team then owns a realistic estimate and have conversations that wouldn’t surface with the traditional process. 

Our top tip for making it work for you is, be flexible, but embrace the theory. 

I've found you can be too strict in using the card deck, although most purists would say to do this. 

For example, when trying to reach a consensus on an estimate, it’s best to stick to laying a single card to minimise the options available. So if you really think it’s four hours, lay a three and a one. This is important to us at Deeson because we plan in hours and we need to be as realistic as possible. 

The important thing is that you can justify why you did it, share with the team, listen to feedback and agree on the final estimate. 

Things to avoid

If you adopt strict estimation without embracing the theory, you go through the motions without the right amount of discussion or logical agreement. This, ultimately, provides a bad estimate. 

Planning poker is collaborative, accurate and fun. Give it a go….

Categorieën: