In this lesson, you will hear a variety of perspectives on the many facets of client communication. As trust directly impacts communication, you will hear about how trust varies depending on the type of project. In difficult conversations, learn about the importance of listening. To build trust and manage tricky situations, learn about transparent, proactive communication of risk factors. On a practical level, you’ll learn about the importance of translating client discussions into action items for the development team, and how the ticket queue can be a great place to capture important discussions and facilitate client communication with the project team.
In this lesson, you will learn some strategies for aligning and managing client expectations from the perspective of sales and account management. Learn how you, as a project manager, can work with an account manager to effectively communicate with a client to find out whether or not expectations are being met.
In this lesson, you’ll learn about the essential elements of a successful project kick-off meeting or on-site, including who should be there and what should be done during this time.
In this lesson, you’ll learn strategies for identifying and dealing with problems, risks, and red flags on a project. You’ll also learn tips for being a proactive and diplomatic communicator, ensuring that progress and velocity is up to speed, and the importance of minding the boundaries of your relationship with the client and how to effectively advocate for the project, without forgetting the people who can ultimately make the project successful.
Additional resources
In this lesson you will learn about different approaches to Quality Assurance (QA), the importance of doing QA throughout the project, and how QA can be used as a basis for documentation and help for the client.
Additional resources
Testing the front end with CasperJS
Automate Your Life with Phing
CSS Regression Testing with Resemble.js
Write A Hello World Test for Drupal 7 with SimpleTest
Automated Testing in Drupal 7 with SimpleTest
Quality Assurance with Selenium
Careful with that Debug Syntax
In this lesson, you’ll learn about demoing your progress to the client and the team, along with some things to consider in a prototyping process. We'll also talk about retrospectives, when the team takes time to review not just the work produced but the process behind it as well.
In this lesson, you’ll learn some tips for ensuring a successful launch and the importance of celebrating the accomplishments of the team.
Git
TopicThe Git version control system can help you keep track of changes in your codebase and make sure you don't unintentionally lose work.
Security
TopicKeeping a Drupal site secure requires monitoring security announcements, performing regular updates, and knowing how to properly use Drupal’s APIs to write secure code.
HTML and CSS
TopicHTML and CSS are the foundational languages for how browsers display web pages.
YAML
TopicYAML, which stands for YAML Ain't Markup Language, is a human-readable data serialization format that's been widely adopted in a variety of use cases in Drupal.
Xdebug
TopicDebugging your Drupal codebase can be made substantially easier by learning how to enable and configure the Xdebug PHP extension.
Learn about resources to guide you through the process of updating a module or theme to the latest version of Drupal.
Themes provide the HTML, CSS, JavaScript, and other assets that are responsible for the look and feel of your site.
AJAX is one of the main reasons to use a Javascript library such as jQuery. See how simple it is to perform a previously difficult task that required complex browser specific code to preform reliably and was prone to simple mistakes. Implement basic AJAX requests using jQuery's built in methods which make it extremely simple to send an asynchronous request to a server, gather the returned data, and insert it into the page.
Example code:
// AJAX Live Function
$('.content p').live('mouseenter mouseleave',
function() {
$(this).toggleClass('hilight');
}
);
// AJAX Example
$('.node_read_more a').click(function() {
var url = $(this).attr('href');
var link = this;
$.ajax({
url: url,
success: function(data) {
var $fullContent = $('#content-output .content', data);
var html = $fullContent.html();
$(link).closest('div.node').find('div.content').html(html);
$(link).hide();
}
});
return false;
});
In its short history, jQuery has revolutionized front-end web development, making it faster, easier, and more rewarding to write JavaScript – allowing easier selection and manipulation of HTML elements, and ensuring that scripts work across the ever increasing landscape of browsers and operating systems.
Nate Haug and Jeff Robbins show many hands-on examples demonstrating how to use jQuery's simple syntax to choose and manipulate HTML elements, traverse the document object model (DOM), and to attach event handlers which can react to user interaction with the page.
In this video, Jeff and Nate introduce themselves and the agenda for this series, including Selectors, Effects, and AJAX.
Theming Cheat Sheet
GuideJavaScript
TopicJavaScript (JS) is an interpreted programming language that is widely used on the web to control web page behavior and interactivity.