Skip to Content

Newsfeeds

Drupal core announcements: Tuesday, July 29: Drupal 8.0.x being branched for semantic versioning

Planet Drupal - 18 July 2014 - 3:15pm
Start:  2014-07-29 12:00 - 14:00 America/New_York Online meeting (eg. IRC meeting)

On this date, the new 8.0.x branch for Drupal 8 will be created so we can start using the new Drupal release cycle in advance of beta 1.

Steps involved are:

  • drumm will create the 8.0.x branch
  • Existing issues will be moved automatically from 8.x-dev to 8.0.x-dev (this may take a couple of hours)
  • Testbot will be patched to look at the new 8.0.x branch instead of the old 8.x branch.

After we're sure there is no fallout from this, the README.txt on the old 8.x will be amended to inform about the change, and then the 8.x branch will be removed entirely after a few days.

Core developers should do the following once the process is complete to ensure they're patching against the latest version of the code:

git fetch
git checkout 8.0.x

Woohoo!

Categories: Drupal

Don't Miss: With new perspective, Cliff Bleszinski plots next move

Social/Online Games - Gamasutra - 18 July 2014 - 1:57pm

"You spend those first 18 years struggling to grow up, and then the next 18 years struggling to get back." Leigh Alexander talks to a man who wants to be known for more than chainsaw-equipped assault rifles. ...

Categories: Game Theory & Design

Propeople Blog: Building Quality Into Drupal Development Workflow

Planet Drupal - 18 July 2014 - 11:29am
Background 

Building a large Drupal website can be a daunting and complex process. There are many engineering, project and other risks associated with it. More often than not, budget and deadline overrun occurs.

Moreover, large projects often result in a prolonged Q/A, testing and troubleshooting period which once again can pose additional risks. 

Propeople was recently presented with the following challenge by a client:

 
  • 1200 budget hours

  • 2 month of development time

  • 4 developers

  • 1 hard launch date

To add another challenge to the mix, there was minimal Q/A engineer availability for the project.

In order to meet the client’s budget and timeline requirements above, we needed to rethink a new development workflow that largely incorporated quality into the project in order to meet both the deadline and budget requirements. 

 Typical Development Workflow 

Propeople selected GIT as the revisioning software to manage the development process/workflow for the project. GIT is a popular, open source distributed versioning system used by many organizations of all sizes. For more information on GIT, you can visit this site.

Organizations that employ a repository management system such as GIT, typically one of the following workflow models is used.

 1. Using the Master Branch

This workflow is typically employed by smaller organizations with a small number of developers working on the project. In this workflow, all of the code changes are committed into the master branch by all of the developers. It results in a linear development workflow:

This workflow works well at keeping everything simple, allowing developers to avoid branching and merging. It also allows for the creation of some tags to designate stable release or state of the code repository.

However, there are many drawbacks to this workflow. One of the most overlooked facts is that most likely, John and Joe will not check each other’s commits. Once a change is committed to the master branch, the change is incorporated into the project until someone notices any poorly written code or commits. 

 2. Development -> Stage -> Production

One of the most widely adopted workflows, this three-tiered workflow fully leverages GIT’s ability to create and merge branches. It also gives web developers the ability to mirror the branches to a different “working environment” so that they can have:

  • Development website

  • Staging website

  • Production website

3. Feature Branch

We ultimately chose to adopt a “feature” branch workflow for this project. This model takes advantage of the git branching/merging model. It is also chosen because we did not necessarily need a “staging” or “production” environment during the agile development phase.

This workflow works well at keeping everything simple, allowing developers to avoid branching and merging. It also allows for the creation of some tags to designate stable release or state of the code repository.

However, there are many drawbacks to this workflow. One of the most overlooked facts is that most likely, John and Joe will not check each other’s commits. Once a change is committed to the master branch, the change is incorporated into the project until someone notices any poorly written code or commits. 

 

Introduction of Github and the Magical Pull Request

 

One of the biggest reasons that we adopted the feature branch approach is Github. Github.com is one of the longest-running and most popular hosted git management platforms. It offers many developer friendly tools. One of the most useful and popular tools and functions is the Pull Request.

 Looking ahead

We are looking ahead to adding automated regression testing to the pull requests. This will allow developers to easily see page changes caused by their commits.

A more integrated issue and time tracking system would help consolidate all of the project efforts into Github. We used a separate issue tracking and hour tracking system for the project.

 Conclusion

Largely due to the new development workflow, we were able to meet the the hard deadline set by client. Although the project had a 8% budget overrun, this number is a great success, given the 27%* industry average. We were also able to reduce our post launch Q/A cycle by 66.67%, from 30 days to 10 days.

A big thanks to the masterminds behind the new development workflow:

Yuriy Gerasimov (https://www.drupal.org/user/257311)

Andriy Podanenko (https://www.drupal.org/u/podarok)

 

http://hbr.org/2011/09/why-your-it-project-may-be-riskier-than-you-think/

 

Tags: CIGITContinuous IntegrationQ/AProjectService category: TechnologyCheck this option to include this post in Planet Drupal aggregator: planetTopics: Tech & Development
Categories: Drupal

Context Reaction: Front page

New Drupal Modules - 18 July 2014 - 10:38am

Context Reaction: Front page provides a reaction for the Context module which lets you to change the default front page.

Categories: Drupal

Shifting Priorities - by Douglas Lynn

Gamasutra.com Blogs - 18 July 2014 - 9:24am
Game development is supposed to have certain protocols to follow. In theory, there are standard production models and rules that help make development a smooth ride. In reality, that's not exactly true, especially in the indie scene.
Categories: Game Theory & Design

How to become a Graphics Programmer in the games industry - by Oliver Franzke

Gamasutra.com Blogs - 18 July 2014 - 9:01am
Getting a job as a graphics programmer in the games industry can be difficult. This post takes a closer look at what makes a good candidate and gives specific advice how to develop or improve the necessary skills.
Categories: Game Theory & Design

Random Encounters: Wilderness II

New RPG Product Reviews - 18 July 2014 - 7:05am
Publisher: Raging Swan Press
Rating: 5
If you are planning a desert-based plotline this could be useful to mine for ideas or indeed lift one or more encounters complete for your adventures... or you may even find that reading them inspire further adventures.

Each of the eight encounters presented here, written by a different author (or in one case, a pair of authors), is quite detailed, which allows the GM to expand it readily if the party takes an interest in what they've encountered. Of course, the party might decide to ignore what you present them with... but that, of course, is no guarantee that it will ignore them!

It's difficult to give many details without giving the substance of each encounter away but consider the plight of a gargoyle madly in love with an animated statue or various plantlife that only flourishes when there's a flash flood in the desert and you'll get some idea of the sheer inventiveness within these pages.

Most of the encounters will involve combat, although there are opportunities to interact with what you've encountered in at least some of them. For each, there is plenty of detail to facilitate running the encounter including notes on tactics, game mechanical hints and advice on scaling the encounter if you really fancy one that has a wildly inappropriate CR for the party.

Definitely something to keep to hand if there are desert regions in your campaign world...
Categories: Game Theory & Design

Revealed: The mystery behind starling flocks

Virtual Reality - Science Daily - 18 July 2014 - 6:56am
The mystery behind the movements of flocking starlings could be explained by the areas of light and dark created as they fly, new research suggests. The research found that flocking starlings aim to maintain an optimum density at which they can gather data on their surroundings. This occurs when they can see light through the flock at many angles, a state known as marginal opacity. The subsequent pattern of light and dark, formed as the birds attempt to achieve the necessary density, is what provides vital information to individual birds within the flock.
Categories: Virtual Reality

The prototype methodology we've used for the naval of Assassin's creed 4 - by Sebastien Lambottin

Gamasutra.com Blogs - 18 July 2014 - 6:15am
By building a gameplay prototyping library we've manage to increase our iteration speed for the naval gameplay of AC4
Categories: Game Theory & Design

ThinkShout: Getting Started with SASS for Drupal and Zen, Part II

Planet Drupal - 18 July 2014 - 6:00am

In part one of "Getting Started with SASS for Drupal and Zen," we went over getting your environment set up to work with SASS.

If you followed the instructions in part one, you should have SASS/Compass, Zen, and your sub-theme installed. Your theme will be installed in sites/all/YOUR THEME NAME.

Test the Install

Let's test to see if SASS is installed and compiling. Use your toolkit to compile your SASS directory or run compass watch from the command line in your theme directory. You should see the following output.

>>> Compass is watching for changes. Press Ctrl-C to Stop

To see more Compass commands, you can run Compass -h.

Open your Drupal site in your browser. Now that we are polling for changes with Compass, let's add the following to style.scss to see our changes being applied. After you save your change, refresh your page and you should see the difference.

body { background: #000; color: #fff; }

Compass will also output the overwritten files in your console if you are using command line to run it. It's okay to delete the CSS you added, so things will appear like the default Zen theme.

SASS Primer

If you haven't used SASS, prepare to be hooked on it. Some advantages of SASS include DRY (Don't Repeat Yourself), CSS, function (mixins) for repetitive and lengthy blocks of CSS, and the ability to extend common styles.

Variables

Variables in SASS start with a '$'. Use variables to define values you will use throughout your stylesheets. For example, let's define our color palette in _init.scss. There is a commented section for colors. You can drop them in there. I'm going to grab this zen 2 palette from Kuler.

$sand: #b0ae9e; $brown: #424345; $white: #fafeff; $seagreen: #9dbec7; $wetsand: #b0a092; $red: #ff0000; $gray: #a1a1a1;

Now these colors can be used everywhere in our stylesheets without having to write the hex value each time.

Nesting

In typical CSS fashion, we would write a style like this:

a { color: #9dbec7; text-decoration: none; } a:hover { color: #424345; -webkit-transition: color 0.5 ease-out 0.5s; -moz-transition: color 0.5 ease-out 0.5s; -o-transition: color 0.5 ease-out 0.5; transition: color 0.5 ease-out 0.5s; }

With SASS, we can nest the style like this:

a { color: $seagreen; text-decoration: none; &:hover { color: $brown; -webkit-transition: color 0.5s ease-out 0.5s; -moz-transition: color 0.5s ease-out 0.5s; -o-transition: color 0.5s ease-out 0.5; transition: color 0.5s ease-out 0.5s; } }

The ampersand represents the outer anchor selector. Also, notice how we are relying on the variables we defined for the colors instead of using hex values.

Mixins and Extends Mixins

Let's clean up that transition by writing a mixin for it.

@mixin transition($property, $duration, $easing) { -webkit-transition: $color $duration $easing; -moz-transition: $color $duration $easing; -o-transition: $color $duration $easing; transition: $color $duration $easing; }

Now we can rewrite the anchor style and include the transition mixin.

a { color: $seagreen; text-decoration: none; &:hover { color: $brown; @include transition(color, 0.5s, ease-out, 0.5s); } }

Keep in mind that Compass already provides some great cross-browser mixins for CSS3. Style transition is one of them.

Extends

SASS lets you inherit common styles. A practical example is styling buttons. Buttons might have common styling, but differ in color or size.

// This is a SASS comment /* This is also a comment */ // Our default button .button { background: $seagreen; padding: 1em; border: 1px solid $seagreen; } .primary { @extend .button; padding: 1.5em 2em; } .warn { @extend .button; background: $red; } .disabled { @extend .button; background: $gray; }

So why didn't we just use nesting? Extending keeps you from having to write multiple class names on html elements instead of writing it like the following:

<a class="button primary" href="http://thinkshout.com">ThinkShout</a>

We can use one class because 'primary' will include all the same styles as 'button.'

<a class="primary" href="http://thinkshout.com">ThinkShout</a> Using SASS in Your Theme

The stylesheets in your Zen sub-theme are organized according to the principles of SMACSS. You'll notice the style.scss file doesn't actually contain any styles, but only imports. The _init.scss file contains additional imports such as Zen Grids and Compass utilities, mixins and helpers. If you look in layouts/responsive.scss, you'll see the Zen theme includes a mobile-first responsive layout by default.

Let's add some sass of our own. Add a file called _main-nav.scss to the components directory. In that file, add the following SASS. It's similar to the style we used in our SASS primer.

#navigation { background: $sand; .links { a, a:visited { color: $white; text-decoration: none; &:hover { color: $brown; @include transition(color, 0.5s, ease-out, 0.5s); } } } }

In order to get this change to take effect, you need to import it into your style.scss. Add an import statement for _main-nav.scss in the components section.

/* Component (SMACSS module) rules */ @import "components/misc"; @import "components/main-nav"; // Add this import statement

You may be wondering why you don't need the underscore in front of the file when importing. The underscore tells SASS that the file is a partial. The partial won't be compiled into its own file. It will be included in the style.css when compiled. If you don't have Compass running, go ahead and run compass watch in your theme directory or use your toolkit to compile. You should see your navigation style applied to your Drupal site when you refresh.

As you progress in your SASS development, I encourage you to use the SASS Globbing gem. It makes importing a breeze.

Now that you have used SASS in your theme and have the basics down, be sure to check out the SASS and Zen Grids documentation to be even more productive in your theme development. Get the code for this article on Github.

Categories: Drupal

How TerraTech uses steganography for sharing player-generated content - by Russ Clarke

Gamasutra.com Blogs - 18 July 2014 - 1:16am
This article, by lead developer Russ Clarke, walks through the problem-solving process that London startup Payload Studios followed in adding a social content sharing function to their physics-based vehicle construction game, TerraTech.
Categories: Game Theory & Design

WildStar's CREDD System Explained - by Kevin Harwood

Gamasutra.com Blogs - 17 July 2014 - 11:59pm
WildStar has launched a brilliant monetization system which should prove to be a game changer.
Categories: Game Theory & Design

A Darkest Dungeon Kickstarter Post-Mortem (Part 2) - by Tyler Sigman

Gamasutra.com Blogs - 17 July 2014 - 11:01pm
Part 2 of the Darkest Dungeon Kickstarter Post-Mortem covers the second half of our successful campaign, plus preparing for fulfillment and logistics. There will eventually be a part 3, after Darkest Dungeon ships!
Categories: Game Theory & Design

Normalized Migrate

New Drupal Modules - 17 July 2014 - 7:30pm

Normalized Migrate (NorMi) automates building migrations (using the migrate module) with normalized database input (e.g. one table per content type, one column per field).

The current development snapshot can create database tables and a migration module to use those database tables, for a limited subset of what you might want to migrate. For simple migrations, NorMi limits custom code to what is needed to populate the normalized database. For complex migrations, it provides a good starting point.

Categories: Drupal

Demo Tour

New Drupal Modules - 17 July 2014 - 7:13pm

This module allows administrators to create tours for a Drupal site. Tours can show to the users how some features work. This module depends on CTools, so you can export tours to Features, for example, besides all other benefits that CTools provides. It is based on Bootstrap Tour.

Categories: Drupal

Reservations: Email

New Drupal Modules - 17 July 2014 - 4:24pm

This module extends Reservations to send emails at different stages in the reservation process. Token based templates are included so the emails can be customized with any information from the Reservation node or User objects. Also included is a pseudo-token for a confirmation link that allows users to confirm reservations without the need to grant them the permission to confirm reservations.

Categories: Drupal

CSS Editor

New Drupal Modules - 17 July 2014 - 2:50pm

This module allows site builders to customize a theme's CSS through the browser, using a rich text editor with syntax highlighting and live preview.

Categories: Drupal

Behat UI

New Drupal Modules - 17 July 2014 - 2:48pm

The Behat UI module lets any person to run automated tests and create new tests (and also run them while they are being created).
The user can later download the updated feature with the newly created test.
It's fully customizable and the interface is very interactive/intuitive.

Features on running an existing test suite:

Categories: Drupal

Drupal Easy: BYOD (Bring Your Own Developers) Drupal Career Training

Planet Drupal - 17 July 2014 - 2:11pm

With four sessions graduating more than 60 People over the past four years, there's no doubt that the Drupal Career Starter Program can bring aspiring developers from zero to hero in just a matter of a few months. Imagine what it can do for you, or your people, who are already developers, but need to be trained up in Drupal. We have, and are making it highly accessible in a live, online format designed to fit into working schedules.

The upcoming Drupal Career Online training program kicks off in just about a month, and your organization now has the ability to choose the developer(s) that match well to your team and leverage our unique, holistic training to turn them into a solid member of your Drupal development team.

-->

read more

Categories: Drupal
Syndicate content


Google+
about seo