Category: SolutionSet

Art of project management - updated with primers and tomes

A project manager is a combination client manager, strategist, team lead, qa lead, and more–and plays an integral role in the successful delivery of digital projects. An earlier blog post, The Art of Project Management, explored the role of the project manager in a digital environment and what it takes to be a project manager. 

Many great tools exist to support those who want to learn the trade, including courses and certification through the Project Management Institute, software, seminars, workshops, and books. Each of these tools helps supply project managers with a solid foundation with which to perfect their craft. At SolutionSet, we recommend reading three books which complement these tools and are designed to help with the mindset of a project manager and to teach them how to think. Our recommended reading includes:

The Art of War

Sun Tzu’s classic dissertation on warfare is not solely about the craft of war. It also has many lessons to teach us about managing situations and conflicts. 

Each chapter is dedicated to specific lessons about conflicts from strategy and planning, through initiative, reaction and resolution. These lessons serve to provide a context for approaching a situation and provide a valuable point-of-view for reflection. Not every lesson translates and is applicable, but many are:

 “Those who are first on the battlefield and await the opponents are at ease; those who are last on the battlefield and head into battle get worn out.”

This lesson is very much about preparation and organization. Being prepared for your meeting/project/etc. and being on time, allows you to manage your work and to achieve success. Being late and not prepared sets you up for failure.

Internalizing these lessons allows us to think through situations and react in logical manners to the situations at hand, and this increases the odds of success.

A tried and true maxim about baseball is that you cannot teach running, but you can teach the rest of the skills necessary to play. However, if you cannot run, you will not be a good player. It is similar for project managers: you cannot teach analytical thinking, but you can teach the skills of project management. If you can think through situations calmly and objectively, then you are more apt to succeed.

A project manager is above else the project leader and knowing how to think through the situations at hand and how to plan for issues before they happen is an invaluable tool. The Art of War is a valuable tool for learning how to think.

Flawless Consulting

Flawless Consulting
may seem to be a relic of an earlier age (I read the original version, not the updated copy) and a prime example of 1970’s pop-psychology. However, to dismiss it as simplistic pop-psychology would be a mistake. It offers us unique insights into how to read and interact with people and overall how to act like a consultant. 

We often focus on the tasks that make up the project when we are project managers, but it is the people involved: clients, staff and management which are the true challenges. Flawless Consulting teaches us to look at look at how we interact with the people involved in the process, how to understand their motivations, their verbal and non-verbal communications.  These skills are vital to the success of the project.

“Too often, we take the easy road and ignore the underlying issues.”

By taking the time to understand the people involved in the project, allows us to understand how to manage the situation.  It enables us to change the way we behave and communicate to make sure we are heard and achieve our goals. 

An important point we often discuss in our internal project management meetings is how to balance our goals and our efforts to ensure we meet our goals. A question I often ask: “Is it more important to achieve your goals, or to achieve them in the manner you wish to?” Flawless Consulting teaches us to understand our audiences and how to communicate with them in manners which ensures the outcome we envision. Being a consultant is a mindset and it is useful to know how to act like one no matter what our professional role. 

Making Things Happen: Master Project Management (formerly The Art of Project Management)

This is the updated edition of the bestselling O’Reilly book by former Microsoft Program Manager Scott Berkun. Written in down-to-earth plain language, the book offers an examination of the real world trade-offs and decision making tools for getting things done. Berkun excels at explaining both the social aspects of having multiple stakeholders, as well as technical topics of handling deadlines and constraints. The focus is on software and internet development, yet maintains a readable conversational style, and avoids geeky lectures.

Each of these books offers us valuable insights into mastering our craft.

Green IT operations: important for your corporate sustainability strategy

Green IT Operations - Corporate Sustainability

Sustainability has become an important topic for most major companies. Thousands of businesses around the globe currently track and publicly report their carbon footprint.  Initially, pressure from customers, employees and shareholders was a major driver for companies to monitor and report their energy and environmental performance. However, many companies now see sustainability projects as offering the highest ROI of any initiatives they undertake.

IT operations in large organizations typically consume a great deal of energy. Electricity can account for up to 15 to 20% of the data center operating costs. The latest statistics show that data center electricity consumption will double every 5 years. Data centers account for 2% of electricity consumption countrywide and this is growing. More than 30% of servers in the U.S. operate at less than 2% capacity and this is only one of the inefficiencies contributing to wasted electricity.

SolutionSet helps our clients meet the challenges and opportunities of optimizing energy consumption in IT operations:

Assessment and Definition:  we review your IT operation processes and current sustainability activities and recommend strategies and programs to bridge gaps and build upon opportunities.

Planning and Design: working with your internal teams we develop a plan focusing on the areas of greatest impact and ROI that may include:

  • Underutilized server and other infrastructure resources
  • Suboptimal hardware and applications requiring more hardware than necessary
  • Overcooling and hotspots
  • Expensive and non-renewable energy sources

Program Development and Implementation: based on these plans, we help you:

  • Minimize underutilized server resources through virtualization (cloud computing) technologies
  • Optimize servers and application to require less servers and consume less electricity
  • Use alternative energy technologies such as photovoltaics, heat pumps, and evaporative cooling
  • Use thermal profiling to identify hot spots and overcooling in data centers
  • Implement energy usage reporting systems and applications–knowing how much you use is half the battle
  • Develop applications to monitor energy usage not only in data centers but across the organization

Monitoring, Reporting and Refinement: We create dashboards that enable you to coordinate IT information from all over your organization, all over the world, then we flow the information into reports consistent with the reporting standards of the countries you serve.

Stakeholder Engagement: Where appropriate, we can develop online communities that enable you to share best practices with other IT operations professionals within your organization or with other companies. When approached correctly, IT sustainability projects can be extremely positive to your bottom line while contributing to your corporate responsibility objectives. Your relationships with employees, customers, partners and investors are enhanced through your commitment to sustainability.

By Amanda North, Pavel Pragin

SEC rules on global warming: green + digital = standard business practice

Last week the Securities and Exchange Commission ruled for the first time that public companies must alert investors of any serious risks that their businesses may face due to global warming. Environmental issues have been among the threats that the SEC has required companies to disclose, but this is the first time that global warming specifically has been called out. This is just the latest indicator that “green” is becoming a standard and necessary consideration in business practice. Business leaders across industries proactively are analyzing the impact of their activities, developing strategies aimed at improving efficiency, engaging their employees in the process and reporting the results to their various constituencies.

Digital technology is a key enabler for businesses in their quest for sustainability. Digital dashboards aggregate enterprise data and compare it to standards set by leaders in their industry and, increasingly, by regulatory authorities. Business information systems analyze the information and focus decision makers on optimizing consumption of resources like water, paper and power. Online communities encourage employees to participate in making their areas more efficient and share tips. Social networking media technologies enable companies to share their results with broad constituencies and invite discussion. New C level positions are being created to oversee this process. In addition to the societal benefits they are generating through investment in sustainability projects, these executives report very positive impacts to their bottom line.

Digital technologies and services are powerful tools for companies exploring sustainability and engaging in these practices. In the area of paper consumption alone digital communications can reduce or eliminate paper by helping companies migrate to online investor and corporate responsibility reports, using electronic forms, creating online communities to support customers, partners and developers, and shifting to “eCirculars” and web-based information instead of printed materials distributed by the US Mail.

Businesses who pursue digitally based sustainability strategies succeed in achieving the dual goals of: “adopting business strategies and activities that meet the needs of the enterprise and its stakeholders today while protecting, sustaining and enhancing the human and natural resources that will be needed in the future.” (World Commission on Environment and Development)

See the New York Times editorial 01.31.10 about the SEC ruling.

Optimizing your workflow as a front end developer

Harder, better, faster, stronger

Working in a fast-paced environment on a stressful project with a short timeline can easily take a knock on your development time and efficiency. Here are some tips to quickly get organized and get coding.

Review the designs

When you’ve first find out that you’re starting on a new project, ask the assigned Project Manager if there can be a period of time reserved before development for review:

  • Resolve any inconsistencies between page designs
  • Get all of the fonts being used in the design for sIFR or Cúfon
  • Ask any questions that you may have about the design, for example: Does that box stay the same height, or will it grow with content? Is that text going to be part of the image?
  • Bring up any potential issues and figure out a strategy for resolution before starting development
Build templates

When building HTML templates, it’s best to start with creating your global elements, then work towards specific page elements.

  • Build out the global elements first
  • Build the secondary page templates
    • Make sure your layout works in all browsers after adding in some filler copy
  • Build out the home page
  • Build out important secondary pages or various landing pages
Know your browser bugs

Keep track of known issues you could encounter when building a page. The best way to prevent having to constantly cross-check everything is to stick with code that you know will work with multiple browsers. Try to not get too extravagant with your HTML and CSS. Sometimes even the code you think will work doesn’t.

When you know what bugs or differences in rendering you’re likely to encounter you can squash the bug and resolve differences before the QA cycle.

Choose a reset stylesheet that you can agree with

There are so many options out there for reset stylesheets. Many will change the font-size of all elements, which you may not want. Some will change the font-size to go with the hierarchy of tags [h1, h2, h3, etc]. You’ll be changing most of these values to match your design anyway, but what if you’re just working on clickable wire-frames?

What are some of your options?

  • YUI Base - Sets default sizes for some elements
  • YUI Reset - Sets all font-sizes to 100%
  • MeyerWeb - Sets all font-sizes to 100%
  • Blueprint - Also has helpful grid CSS for fast templating
  • There are many more out there. Do your research and build your own if you want!
Options for IE6 specific issues

It can be a hassle to deal with 24-bit transparent PNGs. It’s the alpha-transparency that kills us, really. For inline images, it’s usually easiest to use something like DD_BelatedPNG. For background images that are added via CSS, always go for the CSS option: Microsoft’s AlphaImageLoader.

Both of these options run on page load, so they can slow down your page-load time. If you can avoid PNGs, stick to using GIFs. If you have no other option, approach with caution as functionality may be limited by IE6.

Some notes about AlphaImageLoader:

  • The code: filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(sProperties)
    • The only part you will need to change is sProperties: src=”” and sizingMethod=""
  • The src is always relative to the page that you will be viewing.
    • If the image is to be displayed on http://test.com/about/news/ and your image lives at http://test.com/images/news/transparent.png the src should read: src="/images/news/transparent.png"
    • Note the preceding /. This means start at the root directory and work your way down. Simply putting src="images/news/transparent.png" won’t work.
    • Normally in your CSS you may format the image paths relative to where your CSS lives: background-image: url(../images/transparent.png);. This path formatting wouldn’t work either, because IE6 would then be looking for transparent.png in http://test.com/about/, where it doesn’t live.
  • There are three options for the sizingMethod attribute, but usually it’s best to go with the scale option. This depends on what you’re trying to put a transparent PNG background on, though.
    • scale: scales the image to fit within the constraints of the container
    • image: scales the container to the size of the image
    • crop: crops the image to fit within the container

Another issue to look out for is the use of floats, margins, padding and positioning, and a combination of the four in IE6/7. Making too many nested elements position: relative; will cause some of the items to be displayed in the wrong place, or the z-index of other elements to be completely off.

  • Limit your use of position: relative; and -absolute;
  • Floated elements with margin and padding can sometimes cause layout problems
  • Don’t use negative margins too frequently as many browser hacks are needed to make the elements render correctly
Use browser specific stylesheets sparingly

Reducing the number of stylesheets used will make it easier to manage the site later on. However, there are many cases where you should use browser specific stylesheets, i.e. when applying Microsoft’s AlphaImageLoader, because filters will make your CSS invalid.

If there are small differences between browsers, there’s no reason to create separate stylesheets, just add them in to your current CSS using browser hacks (IE6 only: _property: value;, IE7 and older: *property: value;). Currently there are no one-line browser hacks for IE8, Firefox or Safari, although all three of these render nearly the same.

However, there are options for Safari and Chrome only, which appear to work flawlessly:
@media screen and (-webkit-min-device-pixel-ratio:0) {

    /* Safari 3.0 and Chrome rules here */

}

And there are other options for Firefox only, which require more research:
/* Firefox 1 - 2 */

    body:empty #firefox12 {

    display: block;

}
/* Firefox */
@-moz-document url-prefix(){

    #firefox { display: block; }

}

October Symfony Training Recap

Symfony WorkshopSolutionSet hosted its first symfony workshop last week on October 14-16th at our San Francisco office at 85 Second Street. Eight developers participated in the 3-day (9 to 5) training exercise targeted at beginner symfony users. People flew in from as far away as Michigan and Denmark! The following topics were covered:

  1. Introduction to Symfony
  2. From Flat File Application to MVC
  3. Actions and Templates
  4. Configuration and Model
  5. Model and Doctrine
  6. Conclusion and Environments
  7. Installation
  8. More with Doctrine
  9. Routing and Forms
  10. Admin Generator
  11. Session and Credentials
  12. Unit and Functional Testing

The material was well-matched to the experience level of the majority of attendees. In the future, we hope to develop an “advanced” curriculum that would benefit experienced symfony users. The next SolutionSet training will likely be held in San Francisco in early 2010. More details about future workshops will be posted at http://www.solutionset.com/symfony when they are finalized.

SolutionSet Unite!

While we don’t often toot our own horn, here’s some news we think is worth sharing: we announced yesterday that we’ve combined our four business groups into one entity named SolutionSet. By combining our Direct, Retail, Digital and Data groups into one company, we’re executing on a strategic plan put into motion in 2005 to build an agency that delivers accountable marketing through cross-media solutions that trigger transactions and foster customer relationships over time for our clients. Read the entire press release here.

You’ll see this company direction and mission in our new website and of course on our blog.Tune in often for news, insights, tips and points-of-view on winning in the marketplace by causing more transactions!

Managing Chaos with OpenAir - Part 1

OpenAir LogoFor a services firm like SolutionSet, hours billed equals revenue in the bank and improved profit margins. Hours worked but not improperly allocated or worse not tracked affect our bottom line negatively.  To help insure our financial success SolutionSet implemented processes, an organizational culture and most importantly a web based system, OpenAir (internally referred to as “OA”) to streamline the management and visibility of our business pipeline, active project billings, resource allocation and timesheet management  to name a few.

With almost two years of OpenAir under our belt we have a well oiled machine, not perfect but well oiled. The benefits of the web based system are endless, but it is the highly trained and technical customer support team at OpenAir that enables us to continually refine various modules and business processes that  impact our bottom line. As project managers, we found that the time tracked by staff, integrated with the project financials, made running reports to determine if we were on budget that much faster and easier.

There are several benefits to the system. In the first part of this posting, I’ll discuss the benefits of OpenAir to Project Management. In the second, I’ll discuss the benefits of OpenAir to other aspects of the company.

Project Management
We manage multiple aspects of a project from OpenAir. When we get a client lead, we put the client information into OpenAir as an Opportunity. When we get a project lead, we add it in as a Deal. Once the account managers solidify all the particulars of a contract with the client around the project, the Deal becomes a Project. The project contains several pieces of information that help project and account managers keep on track:

  • Project information

This information includes the project name, what client the project is for, the estimated or fixed fee for the project, and who the account and project managers are.

  • Phases/Tasks

Tasks are the services employees track their time to. This information is usually up to the project and account managers to determine. For the most part, it is usually the project role (project management, development, creative, etc.), but it can also be by milestone (requirements document, design signoff, etc.), or by phase (define, design, development, deploy). There is also the option to upload a Microsoft Project file into OpenAir. This allows for employees to track their time to specific line items within the schedule. However, this option is a bit cumbersome and gets confusing at times.

  • Financials

As with any company, tracking financials on a project is very important. OpenAir allows us to indicate billing rules that automatically set up invoices to be generated by the accounting team. For fixed fee projects, it usually means a fixed amount will be billed when a milestone has been reached. For time and materials projects, OpenAir will read how many hours have been tracked to the project (as well as whatever expenses have been billed to the project, if any) and create invoices based on rates put into the system for that project.

It also allows us to estimate what our revenue will be each month. For fixed fee projects, we can estimate how much of the total will be used per month. It may not be an even amount for each month of the project, so the estimation comes from both experience with past projects and an estimation over time (example: if you start a 3 month project in the middle of July, you probably won’t be doing 30% of your project in July). For time and materials projects, we can estimate the revenue in a given month based on how many hours the client has booked for the said month. These numbers then get updated at the end of each month to the actual revenue amount.

  • Reports

OpenAir has many reports and most of them are customizable to however you wish to use it. We can also save reports for future use, and share them with others. Each department (project managers, account managers, resourcing, accounting, etc.) has a set of reports all their own. The reports are essential to managing any project within OpenAir. One of the most important reports is to determine how much time employees have spent on a given project. Others we use often include how employees are booked on projects, what availability employees have over time, and how projects are looking from a financial point of view (which is tied to how employees are booking their time).

OpenAir has made managing project financials much easier for the Project Managers at SolutionSet. In the next posting, I’ll discuss how it aids in other aspects of the project.

SolutionSet on Inc. 500 List for 3rd Year Running

SolutionSet Ranks in 2009 Inc. 500

We’ve done it again–ranked as one of the fastest growing companies in the U.S., this year coming in at No. 7 in the marketing and advertising industry and No. 72 on the overall list.

See related press release, and thanks to all our clients and staff for three exhilarating years of growth!

Meeting Efficiency

meeting-timerthumbnail.jpg

Meetings can chew up a lot of time. Time is money - either for us or our clients. Recently, one person on my team (who has heard me rant about being on time) sent me this wonderful link.

http://tischen.at/5ZZ

I’ve been running this timer in the background during many of my meetings. Boy, do these things cost a lot.

So, here are my tips to meeting efficiency:

#1 - Be on time - and early if you are the organizer. Always log into the web and phone portion a few minutes early if you’re the organizer. A few minutes of waiting for everyone to join can burn up hundreds of dollars of time.

#2 - Pre-book all regular meetings at the beginning of the project. This is for client meetings and internal scrums - If you book the whole project, then there will be fewer conflicts / re-schedules, etc. This will save countless hours in scheduling and re-scheduling.

#3 - Reduce the number of attendees to those who need to be there. The more people that go in the calculator, the higher the burn rate.

#4 - Plan an agenda before hand, assign times to topics and stick to them. This will allow people to come prepared and the organizer to keep everything on schedule.

Try these tips, use the calculator, but most of all, just be aware of the fact that time is money. :)

Learn symfony

symfony, PHP framework

Symfony is a well-designed PHP framework that is growing quickly and we want to spread the word!  You can think of it as PHP on Rails, and we have been having a lot of success with it here at SolutionSet on numerous types of web application development projects.  The talented team of core symfony developers at Sensio Labs is constantly working on improvements, such as version 2.0 which is planned for release in November.  By basing your web project on symfony, you can rest assured that it will be logically organized and perform well under high traffic load.

We’re such fans of symfony that we’ve teamed with Sensio Labs as their first certified training partner in North America. The next interactive workshop is coming up August 19, 20, and 21, 2009, in downtown San Francisco. Whether you work for a company that needs to take its website to the next level, or you are a developer looking to increase your knowledge about how a proper web application is structured, this training will be invaluable.

What are the trainings like?

Class sizes are small and everyone is required to have a working web server on their personal laptop.  We cover a LOT of material in the 3-day workshop.  On the first day, we will install the framework and go through the process of porting a typical (old-school) PHP application into symfony.  By using the Doctrine ORM (Object-Relational Mapper) and being forced to use the MVC (Model-View-Controller) design pattern, the value of using symfony will become clear.

Over the next two days, we build a blog application from scratch, exploring the various features of symfony such as routing, localization, forms, caching, the admin generator, and unit and functional testing.

Since SolutionSet is officially certified by Sensio Labs, the curriculum we use is written by the same people who developed symfony.  By the end of the workshop, you will know how to build a symfony application from the ground up and will have working code on your laptop that you can reference in the future.

How do I sign up?

For more details or to sign up, visit http://www.solutionset.com/symfony .

Have questions?

Email us at training [at] solutionset.com.  We’ll get back to you right away.