Sandcamp 2011
The MJD crew attended Sandcamp 2011 over the weekend. Sandcamp was a full two-days of Drupal geeking out, and it was awesome. Following are some highlights, tips, tricks and pure magic. MJD will also be offering Drupal training in the coming months, so watch for the announcement.
General Conference Notes:
There is a Drupal Meetup on the 2nd Wednesday of each month at Hall of Champions in Balboa Park. The meeting is at 7pm. From what I heard at Sandcamp, it's a terrific group. I'm looking forward to attending!
DrupalCon Chicago is March 7 - 10, 2011. I checked out the sessions, and it looks to be an incredible event.
Another event: Webchick January 21 - 22: in Los Angeles. The woman that was project lead for getting Drupal 7 out the door is going to be in LA going through Drupal 7 in depth. This will be awesome.
One more event: Drupal Design Camp LA conference on February 5-6, 2011 in Los Angeles, California. groups.drupal.org/LA - This is for designers that work with Drupal development.
For those of you who might get asked if Drupal can handle multiple authors, Examiner.com has 65,000 contributing authors. So, yeah, it can.
NPR.com has launched multiple Drupal 7 sites already and is moving everything to that platform. The White House, the US Congress, and dozens of large, enterprise sites have also moved to Drupal 7. So, for some, the new release is ready for a production setting. The gist that I got out of the conference is that the benefits of moving to Drupal 7 right now are many, but you need to make sure the modules you use on sites have been updated and are solid before migrating over.
Drupal.org will soon be adding a marketplace to the site. This will be a very cool place for Drupal shops to market their business.
Some stats: 76.1% of people building web sites don't use any CMS. Of those that do, here are the numbers: Wordpress 55.5% market share, Joomla 11%, Drupal 6%. Drupal is growing very fast. The Wordpress market share can be explained by the huge number of simple blogs that people have published. This being a Drupal camp, Joomla was pushed aside a bit. We see both Drupal and Joomla as excellent CMS options, and thus we code on both. The one thing that is really working in Drupal's favor however, is that it can truly do it all: a Corporate Site, Specific product sites, marketing microsites, an Intranet, Community Sites. It is a highly scalable platform.
Tips/Tricks/Tools/Cool Sites
Cool marketing site: Eloqua Marketing Automation: http://www.eloqua.com/
Agile Project Management books by Mike Cohn can be found on Amazon or any other bookseller. These are highly recommended. Another great book is The Project by Tom Peters.
For those using Agile, there are some helpful software apps that can help. Examples are Scrumworks Pro, Greenhopper, Basecamp (How to do Scrum with Basecamp: http://highnotes.posterous.com/how-to-do-scrumxp-with-basecamp and http://www.burndowngraph.com/ or http://www.wallsome.com/ ) Also check out Open Atrium: http://openatrium.com/ . Finally, a great point on talking about Agile with clients: They don't know what the heck you're talking about. Instead of Agile lingo, talk about "Phases". Everyone understands phases.
Check out Drupal Commons for a great social networking solution. http://acquia.com/products-services/drupal-commons
Some session notes:
Session: Planning and Executing a Successful Drupal Implementation
2009 Project Success Group Study: 32% of Web Development Projects Succeed, 44% are Challenged, 24% Failed. 45% have a cost overrun, 63% have a time overrun, only 67% of the time full is functionality delivered. This is bad. Some solutions follow.
Do not fix bid. Give ranges for time and cost and work on retainer
Show work as quickly as possible and iterate. 8 day cycles. 80% of the site can be done quickly, 20% takes longer.
2 Week Cycles: Start with Strategy > then Requirements > then Design and Implementation > then Verification > iterate back to Requirements, make a constant cycle of this.
Use Agile and Daily Scrum meetings.
Session: Optimizing Drupal for Search Engines
Title Tags: These should be 60 Characters or Less, Google is 70, Yahoo/Bing is 64
There was a suggestion that only 1 H1 tag should be used per page. Interesting.
Creating Links:
Good Link: Click here to learn about <a href="#">Drupal SEO</a>
Bad Link: <a href="#">Click here</a> to learn about Drupal SEO
Search Friendly URLs
Bad: www.example.com/?n=100
Still Bad: www.example.com/node/100
Better: www.example.com/my-page-title
Best: www.example.com/my-category/my-page-title
Improve your site speed. Google's new Caffeine search index has page load times in the algorithm.
Reduce http requests
Combine javascript into 1 file
Combine css into 1 file
Make use of css sprites (1 large image with different x, y values instead of a lot of tiny images
Compress (gzip) content
Drupal/server caching
Content Delivery Network (CDN) such as Amazon s3
Upgrade server
Upgrade bandwidth
Remove duplicate content
site:mydomain.com inurl:productID
site:mydomain.com intitle: "my product name"
Use Canonical URL Links
http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonica...
http://yoast.com/canonical-url-links/
Use 301 redirects
Improve your link juice by using nofollow on outbound links: <a href="#" rel="nofollow">link to other site</a> Comment spam got this started
http://thekeywordacademy.com/link-juice-explained
Drupal 6 SEO Modules
Path Auto - Must Have
Auto generates Search Friendly URLs
Site Building > URL Aliases > Automated alias settings
Nodewords - Must Have
Adds meta tags to Drupal pages
Content Management > Meta Tags
Allows Bing/Google Webmaster code
Add local search latitude/longitude. You can do that on a per article basis (different pages have different local search parameters)
Global Redirect - Must Have
Ensures that your content is only available at one best URL
Site Configuration > Global Redirect
301 Redirects and Canonical Tags
Path Redirect
Difference between this and Global Redirect: This is a manual redirect
Site Building > URL Redirects
Menu Attributes - Must Have
Allows you to specify some additional attributes for menu items such and name, id, etc.
Mainly used for styling menus (80%), 20% for SEO
Allows additions of id's and classes for menus. Helps a ton for styling
HTML Purifier - occasional use
Removes malicious code
Reduces DOM clutter
May improve site load time
Simple META - alternative to Nodewords (not generally used, not as powerful)
SEO Helper Modules
Google_analytics. Use this instead of pasting it in page.tpl.php (far more accurate)
SEO_friend: Content: Helps enforce good SEO policies, reduces duplicate content. Really cool feature checks for duplicate title tags and will generate a warning
ContentOptimizer: Content Analysis Reports > SEO Reports > Content Analysis
SEO Compliance Checker - this will tell you for instance how many times a word shows up in an article
SEO_checklist: Helps you to remember to do the SEO steps. Set it and forget it. Pretty cool to check that everything has been done
Performance
Pressflow - caching
Drupal performance/cache Site Configuration > Performance
Sprites module
Uninstall unused modules
Session: Running a Drupal Shop
Thanks to Gorton Studios, Treehouse Agency, Mediacurrent, ImagexMedia, Phase Technology, and Achieve Internet
Recruiting & Retention
How do you find new talent? It CAN be done, but clearly it's difficult. Don't post a single job, have a plan. Spend 5 hours per week networking both online and in the real world.
How do you properly screen and qualify candidates? Checking their tech cred is easy, look for ambition. Look for Drupal contributors, people that attend meetups. Resist hiring on intuition. Have a process for hiring. Background checking. Certify to Rock is a tool. Call references. Make a positive first impression. Have a new hire checklist. Computer, desk, etc.
You have your team, now how do we keep everyone happy? Salary is important, but not the only facet. Have a meeting with everyone: Who are we? What do we believe in? Where do we want to go? How can individuals make that happen? Have people make goals for themselves and the firm. Need to have 6 month reviews. There we create a plan and goals to reach to increase pay, and incentives. Have staff contribute to the tech community.
FedEx day: Once per month: At 10am Monday morning, everyone gets to work on anything they want for 24 hours. They show what they've built on the next day. MJD is going to do this every Friday from noon until close. We're calling it Friday Beer Afternoons. Beer will be served. Feel free to join us!
Process
Process means quality. Everyone should be involved in creating the process. Humans make mistakes, processes provide a safety net. This increases confidence, speed, and profits. If there is a failure, you update the process.
Process means profit
Process provides pride, time, enjoyment, value
"The Process" is less important than "A Process"
Marketing
What marketing isn't: It's not sales. Marketing for a Drupal shop will bring people to you.
Do your homework. Three C's: Company, Customers (what do they want/need), Competitors (Colleagues).
Internal marketing, relationships, partnerships.
Tools and Budgeting. White papers, books, blogs, Twitter, Check out bit.ly for analytics
Creative ideas to get noticed. Get involved in the community.
Standing Out
Pick a niche and be unique
Figure out what YOU are good at
Charge for VALUE, not hours
Create SOLUTIONS, not modules
Contribute something we an all use
