Greetings from DrupalCon 2011 at the Sheraton in Downtown Chicago. Mediacurrent has several team members in attendance, and we have a company information table setup at booth 31 in the exhibit hall if you want to stop by to say hello.
I'll be keeping a log of highlights from the sessions I attend each day during the conference. After Dries' keynote this morning that reviewed Drupal 7 and outlined plans for Drupal 8 process, Tuesday is starting with an overview of the Media module, followed by sessions about client and project management.
by Aaron Winborn & Jacob Singh
Media is a module for Drupal 7 intended to extend file management capabilities in core with a framework for media meta-data (aspect ratio, sound quality, etc) and a consistent user interface for uploading files.
2000 sites running running media module with 20 committers.
- Usability (polished interface) - addressing the needs of editors not developers.
- Consistency - use the same interfaces when picking files
Demo: gallery feature in Drupal Gardens. Click add media launches media browser in a popup. Capabilities include upload, browse. During a demo, Jacob uploaded and created a gallery in real time using photos taken from the session room. He also demonstrated pasting in a YouTube URL to add a video to the gallery. Fields with files in Drupal 7 allows meta data to be associated directly (e.g. captions and credits with images).
Plugin modules already exist for Media to support YouTube, flickr, vimeo, web, ftp and AWS.
History and limitations in Drupal 6 and prior led to a wide variety of solutions and approaches for media management (lots of reinventing the wheel). In 2008 a group convened to create APIs and a unified approach to clean up the mess. Multiple sprints in 2009 helped move the initiative along.
Roadmap: folders, permissions, views integration, audio suport, other file types (e.g. pdf), embedding links in WYSIWYG, cropping and manipulations.
How to get involved: Sprint at 1 p.m. on Wednesday, core conversation Wednestay at 5, Media group on groups.drupal.org and #drupal-media channel.
Summary: Media appears to be a capable replacement in Drupal 7 for the mish-mash of core and contrib modules and recipes for handling images, video, audio and other files in Drupal 6. But, like many contrib modules for Drupal 7, it is still a work in progress.
After planning to attend the "Getting Early Estimates Right" session, found it to be a popular choice with folks spilling out into the hallway. Unfortunately plan B - "Organic Groups in 7" - was announced as cancelled at the last minute, after all of the other sessions were underway. One of the two largest rooms at the conference sat idle, while the smaller rooms overflowed. This served as another example of the exponential growth in logistical challenges the hardworking teams that organize these conferences face. Overall no complaints about the setup of this conference - it is quite convenient to have it within the hotel, and the exhibit hall setup is a solid addition.
Taking the opportunity to recharge the laptop battery at the Mediacurrent booth, and will be back for the next planned session: "Tools of the Trade".
The Tools of the Trade
by Aaron Pava, Jody Hamilton, Eric Gundersen and Lior Kesos
This panel discussion seeks to share tools their representative shops have learned to use along the way.
Linnovate uses Redmine. Product and project management tool. Integrates with code repositories. Extra plugins used: Gitosis (transforms redmine to a github clone with per-project permissions). Redmine Backlogs (agile/scrum type tool. Associate user stories to sprints, provides a task board and supports sub-stories).
Linnovate uses Paymo - a commercial tool for logging time. Has nice dashboards, mobile support, robust reporting. Includes invoicing.
Zivtech flow: Sales CRM. Estimate / Proposal, Contract, Team/Ticket/Milestone creation, Development/Communications/Time Tracking, Billing & Billing updates
Zivtech use a Drupal extranet solution to store and gather data for Sales CRM. Use excel for estimates, Document template for proposals and post team info to Drupal extranet. Unfuddle for tickets, code and time tracking. Billing reports fed back into Drupal for reporting.
Zivtech pain points: Time tracking/billable time. Transition from sales lead to project. Tracking budget progress, Resource allocation planning, Over/under-developing own tools, Too much e-mail in client communications.
Development Seed: "Tools for Getting Out of the Trade". Want to get out of consulting and into product development.
Firm Fixed Pricing. Eric showed some very compelling slides about this concept, but the pace of his slides and volume of information made it hard to represent via simple notes. I highly recommend finding video for this part of the presentation after the conference.
Displayed Scope, Cost and Time triangle and described how to fix the cost.
Products help by: letting the firm build faster, less risk, customization work funds development, lead generation, positioning for bids, ongoing sense of creativity. Helps you treat projects like they are "your" projects because you are reinvesting in your product.
Ran out of alloted time as he was describing having multi-disciplinary development team, which helps with firm-fixed pricing. In Q&A described not having project management via traditional means but instead rely on lead engineers to fulfill project management tasks.
CivicActions: Use a pod structure for their organization for efficiencies - pods have a team of dedicated resources across disciplines (PM, engineers, etc). Has made a difference with efficiencies. Primary communication tool is telephone for scrums (with Asterisk) and also listservs (1 per project, 1 per group). Every email is sent to a list (for archiving but also to keep people in the loop. Allows for filtering by list. Financials are via Quickbooks online. Timetracking recorded outside of QB, then ported in daily or weekly by each team member. Use Open Atrium with Notebooks for each group, Trac for ticketing and project management.
"Red, Blue, Black" to classify time tracking entries: Red: admin, Blue billable, Black is strategy.
Big Blue Button - video conferencing solution, chat boxes, collaboration tool. Aimed at solving some of the challenges with running a distributed team.
Civic Actions has an estimating spreadsheet to share under Creative Commons: http://civicactions.com/civicactions_estimating_worksheet
Summary: As expected the firms represented on the panel use a wide array of tools and solutions for administration. Each have their strengths and weaknesses and the firms that have tried to build custom tools expressed pain points that relate to the customizations. While the tools noted above are worth further exploration, in place of the panel discussion the session would have benefitted if Development Seed were allotted more time to detail the firm-fixed pricing approach in more depth.
Strategies for Client Management
by Chris Strahl, Vanessa Turke, Amye Scavarda, Seth Brown and Rachel Scott
This is a large panel. I am considering skipping panel discussions because they seem to prove inefficient with much extra time spent on company/people overviews and not enough time for talking about details. Will give this panel a chance before finalizing this policy for rest of the conference.
Using a moderator format, asking questions of the panel (this approach is a little better):
Q: What was your worst day as a project manager?
A: Dealing with regression bugs. Recommend selenium (sp?) IDE for the benefit of recording macros and replicating bugs
A: On a project where an impatient client wouldn't wait on the backend features and went off and rigged up their own themed-version of the homepage that wasnt built very well.
A: Late thrashing by clients. A key decision-maker arrives late on the project. Recommendation: continuing to clarify who needs to have input throughout the project.
A: A tale about having a lot of work to be done in a short amount of time, constrained by travel.
A: Design. Late changes after signoffs.
Q: What level of project management training do you have, what trends do you see in the Drupal community?
A: PMP, going after agile certification from PMI. Thought it was a waste of time at the time, but realize now that the principles help form the basics and framework that are needed. Recommend using the PM group on groups.drupal.org better and open source our processes.
A: Diploma in PM and scrum master certification. Favorite quote: "Project Management tools will help you do the wrong things faster."
A: Certified scrum master. Not learning anything if not actually doing a project.
A: As a hiring manager, look for a writing sample and requirements documentation, and how the person communicates in e-mails. Can't substitute for experience - people coming out of small businesses and small shops who have dealt with a high volume and range of projects and clients.
Q: What if there is a mismatch in experience between you and your client's project management team?
A: Work with the client and what they need. Can't force "my way" on the client.
A: Your PMs should be versed in multiple techniques. Mentioned "bids" from engineers as a method for estimation.
A: Be bold when it is appropriate to be bold. Diplomatically ensure people get heard but ensure that processes will still be followed that will work in Drupal.
A: Ask "why" - get more information on why the process steps from the client are necessary.
Q: How do you manage the sales process and how involved are you?
A: Acquia - project managers aren't involved in sales process. They have a formal handoff process from sales but PM on panel has not used it yet.
A: Heard example of someone who handles sales all the way through PM and account management. From previous company: used analogy of a "depth charge" being dropped in the water from sales. Had to evaluate as a core problem at the company.
A: Use management team to play "bad cop" at times.
A: Lesson-learned communication wise: were using traditional tools (weekly reports, etc). Executives didn't want all the detail. They wanted graphs and pictures about budget and hours. Used 3 forms of weekly reporting: developers, clients and executive.
Q: What are your thoughts on collaborative documentation?
A: Like it because it shows how much clients knows about their own projects.
Q: How do you get signoff?
A: You ask for it, and you wait until it comes. Set a specific date and time it is expected and notify that we will not proceed until received.
A: Acceptance criteria is important. Everyone can agree what "done" means.
Q: What recommendations do you have for managing volunteer projects or project with small teams?
A: You are the one setting the tone. Keep team engagement from the start.
A: Expectation to set upfront is that the client has to be engaged. No. 1 reason for small project failure is lack of engagement.
A: Be uncool. Establish your process upfront and keep following it.
A: Break your process and you will diverge on your process.
Summary: Valuable discussion about project management took place in this session, and the size of the audience and level of discussion was yet another indicator of the scope and scale of Drupal growing more toward the enterprise. Also, this session would be a good video to review for presenters planning future panel discussions. Note: panels work best with moderators, not with handoffs and self-contained lightning talks complete with full company overviews of each panel member.