The Software Business
During CRM consulting projects there is always the need to show progress to customers. The caveat is that progress has to be shown with a certain amount of balance.
Too Much UI
You cannot do all of the UI development up front and show the customer. The problem with this is that to a non developer the UI in the CRM is everything. Once a customer sees the UI they assume that it works and all backend work is complete.
Too Much Code
Too much code is the complete opposite of too much UI. In this situation you will have almost all of the backend CRM functionality working but the customer will feel like you aren’t making any progress. This can lead to the customer not trusting the hours being put in during the project.
Based on the type of CRM work being implemented it is important to find the right balance. Finding the right balance creates trust with the customer and ensures that your project goes smoothly.
For the second CRM Atlanta Meetup of the year I decided to present Real World Social CRM Use Cases. I wanted to get down to the grit and present scenarios on how social networks could be leveraged and integrated into an existing CRM to make it more social. In marketing CRM Atlanta we attracted a contact at a Social CRM vendor. This person contacted me to find out more about my topic and exactly what level of Social CRM would be discussed.
The fairly short phone discussion that we had gave me good insight into the battle lines that were already being drawn in the Social CRM space. It was clear that the Social CRM that I would be speaking about and the Social CRM that the vendors offers were very different. Neither version is wrong in implementation or approach. They are just fundamentally different.
So what did I take away from this?
- I decided that I should preface my slides a little more than usual for an emerging technology.
- It helped me identify a solution and marketing angle that I really hadn’t thought of before.
- I made a new contact and discovered new Social CRM technology that can provide proven ROI for customers looking for Social CRM solutions.
- This engagement gave me good insight into the various approaches to Social CRM and made me wonder just how many more I am going to see over the next few years.
When you are not a graphic designer, coming up with a logo or logo ideas for a product can be a grueling process. First you start off sketching out ideas on paper which depending on your skills may or may not come close to what you need. If it does then you still need to hire a designer to transfer it to a digital format which will cost an hourly rate.
I have been through the scenario of needing a logo a few times now. Up until this latest time I had always used a graphic designer and paid either an hourly rate or went with their “logo package” of a few logo ideas and a few revisions based on a set fee. In the end this usually ended up costing me more than anticipated for multiple reasons such as:
- I wasn’t 100% sure what I was looking for in a logo.
- The designer didn’t seem to understand what I was looking for
- I just didn’t like the 3-5 ideas that were presented.
Most of these are pretty common reasons for spending more than anticipated for a logo. There are also multiple ways to get around these issues such as:
- Have a very good idea of what you want before hiring a designer.
- Pick a designer that spends time understanding before starting.
- Provide the designer logos and design themes that you have seen elsewhere that you like.
The fact is that once you have found a designer that you work well with, understands what is appealing to you, and has rates you can live with you will no longer have these issues. But until then, there is 99Designs.com.
99Designs.com is a crowd sourcing site that allows you to request a graphical design of almost anything and have hundreds of people submit ideas. This is extremely helpful when you are not sure what you are looking for and only have a color scheme or vague idea. It also saves you the time involved with trying to come up with multiple ideas yourself when you may not be graphically enabled.
Here is how it works:
- Choose what you want designed ( Ex: Logo, Brochure, Site Mockup, etc )
- Set the price that you will pay to the winner.
- Set your criteria such as colors, size, fonts, and ideas.
- Launch the contest
What will happen is that designers will find your contest and start submitting ideas for you to comment and vote on. I recommend staying very involved in this process through the duration of the contest. When commenting and voting you can tell them what you do and don’t like and many designers will tweak their ideas based off of that information.
End the end you could potentially have hundreds of submissions to pick from which means that instead of having to settle on a logo or design you now have multiple quality designs and have to narrow it down to the winner.
Now that you know about 99Designs I have a few recommendations for when you try it out for the first time.
- The amount you give to the winner is not the total cost. As one would guess, 99Designs.com has to get paid also. On my $175 logo 99Deisgns.com charged a fee of $56 for a total of $231. So be aware of this before you start filling out the design brief.
- Get the logo on both a white background and another color background. Most effects on logos can look really good on white backgrounds but when moved to a different color loose their effect or meaning. This will help you visualize what your logo could look like on other mediums.
- Use the tools that 99Designs provides to thank designers for submissions and to provide immediate feedback after posting.
- Once you have a few submissions that you really like and will potentially pick, click the Guarantee button. By clicking this button you guarantee a payout which usually doubles the number of submissions.
At the end of my first use of 99Designs I was out $231 but I had over 175 submissions with about 10 logos that made it a very tough decision to choose. I also had about 50 more on top of that which were professional grade and could have done the job.
After being heavily involved in the SugarCRM community and the communities of other open source software over the years, there is one thing that has started to really bother me. In the BitTorrent world we call them leechers. These are the people who take and never seem to give back to the cause.
The problem that I have with this is that people are continuously leveraging others hard work while many times refusing to pay for anything attached to it. After download the platform they get the free modules, then they want consulting and haggle about the rates trying to make a point that the software was free stating “why would I spend so much on consulting when the platform came at such a little cost”. Lets face it, peoples time deserves compensation.
In building WapSnap and GetSocial Twitter Pro I thought long and hard on how to give to the community without rewarding the leechers. This leads to the idea presented in the title, “Contribution Based Upgrades.”
The concept is that the software is open source but to get the upgrade packages you need to contribute. This concept isn’t without it’s hurdles but we will get to that next.
Here is how it works. First off the software creator will require the user to sign up to download ( Even though I hate this concept ). During that process they will be told that they will not receive upgrades without contributions. The software provider will maintain a portal with a forum, documents area, and any other content sections needed to support the software which can take contributions from users. When a user posts any content, they will get points from the system or other community members with minimum and maximum points allowed based on the type of contribution.
The catch is that they must maintain a certain level of contribution averaged over time to have access to the upgrade packages. The level doesn’t have to be high but the fact that they have to contribute in some way is a step in the right direction. Maybe they could even get extra points for external blogs posts, who knows.
Now for the problems.
1. First is that current licensing of open source software will allow one person to download and distribute the upgrade packages without any recourse. Not that you want to go after users but you do need a “leg to stand on” if needed. To fix this you will have to draft your own license agreement.
2. Since the system is points based you will have to make sure that people aren’t gaming the system. This will probably be a constant battle for an active project but as long as your cover the majority of issues it shouldn’t be a huge problem.
3. People posting garbage. If people continuously post garbage to maintain there status the community will usually report it. If not, the moderator can troll for garbage and take it to the curb.
I’m am sure that there are dozens of other issues that could arise but at least the list is started.
In theory, this would greatly enhance the project quality and allow users to give time back to those who so graciously gave to them. I am interested in your thoughts on contribution based upgrades so send them to me or make a comment.
Although I have yet to formally introduce WapSnap and release a Beta version, I have been thinking fairly in depth about how I would like a software company to be run if I decided to push WapSnap or any other project into the main stream. I have worked for multiple software companies and used enough products to believe that I can at a minimum spot what should and shouldn’t be done. Anything I miss will be an educational ride.
Ease of Use
When it comes to web based applications I do not know of any application that is as easy to use as WordPress. WordPress has always been well known for a straight forward installation that can get you blogging quickly. Although I cannot speak for myself, I have friends that have switched from developing websites and applications in Joomla and Drupal over to WordPress because it is said to be very logical and easy to customize. With the introduction of the one click upgrade I can see how that would be so. One of the biggest problems I have seen in using open source solutions is that the script kiddies get the security updates when you do and usually they can write an exploit script before you can upgrade and test an application along with all of it’s 3rd party components.
With this information in hand I have decided that when my application rolls out that I would like it to have the ease of use of WordPress.
Having to work on a poorly documented project or application has to be one of the biggest time waisters. When something isn’t documented well you spend most of your time debugging and chasing down answers in a forum instead of moving forward with what needs to get completed.
This is why I want documentation like CodeIgniter. When I started searching for a PHP framework to pick up, I started by looking in the documentation section of each. First stop, the getting started guide, then to the full docs, and then to the forums to see the amount of threads that go without a response. When I got to CodeIgniter I started with the first video tutorial which actually worked and was easy to follow. Wow what a concept, I say this sarcastically because this was not the case with many other frameworks that I tried.
Another positive of the CodeIgniter documentation is that it is easy to follow. Everything is separated out and named logically, this way if you do a search you are likely to find what you are looking for. I also enjoy that it doesn’t read like a 500 page manual and it isn’t a huge PDF that has to be churned through page by page. The CodeIgniter guide makes use of simple elements like line separators, code boxing, and bolding that makes the entire guide easy to read and follow.
With this information in hand I have decided that when my application rolls out that I would like it to have the documentation of CodeIgniter.
I think that anyone who has been in the IT arena for any length of time understands what I mean by poor support.
This is when every time to call with a problem you only get a message machine.
This is when your SLA’s are never met and nobody seems to care.
This is when you post to a forum and nobody answers.
These all constitute poor support.
Nusphere is one company that I have dealt with recently that has fantastic support. To start with, even before I bought PHPed I posted to the forum and quickly had a response. This has been the case for every forum post that I have added to the Nusphere site. Nobody ever asked if I was a customer,how many licenses I had, or did the tiered support two step. Another honorable mention from a recent voyage is Slicehost. Slicehost provided multiple support routes where I didn’t even need to open a ticket. I went to their chat channel and had a solution within minutes.
With this information in hand I have decided that when my application rolls out that I would like it to have support like NuSphere.
There is an enormous amount of information available about networking with people. You can do a simple search on “business networking” and receive 28 million plus results to churn through. They all give great tips on proper networking techniques and how to find groups and meetings that can grow your network. Most of the advise is fantastic to newcomers but I have not found a list that includes presenting and giving speeches.
Without giving speeches, presenting, or sitting on panels you can automatically limit the number of people that you can get to know per event. One common tip for networking is to be genuine. I completely agree that if you are not genuinely interested in what others do then your networking adventure will not be near as successful. In being genuinely interested you must commit time to speak with people at various events and gatherings. Although it is time well spent it limits the number of people that you can meet per event. On top of that, many people attend similar events and cluster together to say hello and discuss the latest happenings. This common clustering effect also narrows the number of people not engaged in conversation that you can get to know.
Although the standard networking ritual is a requirement there is one way to increase the number of people that you meet per event. The solution is to speak, present, or sit on a panel. With presenting you still get to network before and after the event but you also get to immediately put yourself in front of people that are interested in what you know. Once you present information you are seen as a resource for anyone who did not already know the information that you provided. At the end they will approach you with more questions and most likely give you a card or request more of your time.
In conclusion I would like to add that you should not present with this as your soul purpose. Presentations need to be genuine and for the main purpose of spreading knowledge and information. If you truly want to help others and spread knowledge then good contacts and people will find you.
As a technology consultant of small to medium businesses I am always presented with challenges that require me to learn new software or technology. In learning these new systems I have come to have a more intimate understanding about the challenges with adopting technology solutions.
The common theme that I have found is that the easier software is to learn, the more likely someone is to adopt a solution. This doesn’t mean that the UI has to be 100% dummy proof or it has to be #1 in its market. There has been a many times that I have passed on what was considered to be the best software in its space because the documentation just didn’t get me to where I needed to be.
While learning all of these new solutions I have found three areas that make the biggest difference when someone is a new user. These are the documentation, step-by-step hows to’s ( video/written ), and the forum thread response rate.
The first place that most people start is with the documentation. They want to know how to install, if it has dependencies, what it runs on, and every other piece of information they need to get moving forward. I have made it through many installations only because of prior knowledge in other areas. I have also had the experience to work with customers that did not have the prior experience nor adequate documentation. This is even more important in the open source software world. In open source the user may not have a salesperson or sales engineer which means that if they hit a roadblock and cannot find an answer in a timely manner then they go elsewhere.
Step-by-step tutorials are the next step after full documentation. Documentation is normally “the manual” that goes over product sections and provides explanations into what each section does. The tutorials are what really gets the user moving forward in figuring out exactly what to do in the areas of the product that they need. The most effective structure for tutorials that I have found is to keep them short and problem or area specific. For videos short would mean about 5 minutes. It is also helpful to new users to have tutorials in two sections. The first being tutorials that build on each other and the second being tutorials that stand alone. This way if someone wants to sit down and go through the getting started scenario just learn about the solution then they can. If they already have an understanding of the solution then they can pick tutorials that fill an immediate need to learn a specific area.
The last area that supports new user inquiries is the forum. After a user has been given good documentation and tutorials, the only place that is left for them to find answers is in the forum. Many companies show that they have a forum for assistance but I have found that the true indicator is activity. If I am trying out new software and end up looking in the forum and seeing that a large portion of threads have zero replies then I can assume that when I post, I have a high probability of leaving empty handed. For the sake of user adoption, I would say that you need to get those threads answered.
For new users to adopt software they need answers as quickly as possible. When they get answers quickly and efficiently they are more likely to move forward with adoption and they have less of a reason to search for other solutions.
Understanding customers and their needs can sometimes be a complicated process. Most software companies today seem to develop and deploy in a bubble only taking customer requests through a narrow channel of managers, product managers, and sales. This channel is in place to help keep focus in the R&D department but can lead to drastic problems on site with customers.
The standard in a majority of software companies is that only certain people deal with the customers. As I stated before, the positions with this “privilege” are sales, management, product managers, and support. The problem that companies run into with this structure is that the people developing and testing the software never get a good understanding of the headaches that their software causes. They are so shielded by the internal information channel that even if the software is considerably hard to support, use, or customize, they may never get a full understanding on just how bad it is.
This is the case in many places except with the Mercury/HP group. Once SPI Dynamics was bought by HP I was able to get a front row seat on the impact that going on site would have. The Mercury/HP group was extremely adamant about sending engineers on site to fully and thoroughly understand customer issues. I have to say that this was one of the best and most logical ideas I had witnessed in a long time.
Sending developers and QA engineers on site proved to be one of the best learning experiences that one could get. The developers quickly gain an understanding of why customers are having trouble with a piece of software. The QA engineers are able to understand first hand how each customer is using the software which enables them to create more “real life” testing scenarios.
With today’s economic climate not every company can really afford to send developers and engineers on site. Although face to face communication and working on site with a customer allows for the best customer experience there are many alternatives.
The first is a forum. I don’t mean your standard community forum where the company politely asks if everyone can monitor the forum as they get time. Most of the time this does not work and many posts go unanswered leaving a bad experience for large groups of users. What I suggest is holding people accountable. Make it mandatory that each developer/engineer monitor the forum for a certain period of time and assist users in order to better understand their pain points. With this monitoring there should be metrics such as how many people they helped, how many problems were solved, and what problems are reoccurring.
Another alternative is web meetings. A web meeting where users and engineers can remotely share monitors and speak on the phone is a low cost solution that opens the lines of communication.
Lastly is to give them the time to sit with support and help them solve issues. Support is the main channel in which software issues come in, especially when no forum is available. Allowing this time will give developers/engineers first hand knowledge of the frustrations that not only customers run into but also the frustrations of support engineers.
The overall theme is to not shelter the people who have the most impact on the software. Help them understand the problem that customers run into so that they can have more of an understanding of their pain. Many times it is easy to sit back and dismiss software issues when your in the bubble. Working with someone directly who is having a problem helps both parties create an understanding and be more willing to help each other over time. In addition, multiple departments working together promotes cross training and understanding.
Every company that I have ever worked for has had processes or systems that seemed to be completely inefficient to everyone that used them. This is a given in every company with no exceptions in sight. Most just don’t have the time or resources to fix issues as quickly as they can arise and others aren’t aware that the issues exist.
These inefficiencies are a problem for two main reasons.
The first is that many problems do not get bubbled up to top level management or to a high enough level to correct the problem. The new individual contributors ( new hires ) that are hoping to make an impact will raise the most issues because they are not blinded by years of burden. It is standard that the longer an employee stays with a company the greater the likelihood that ineffective processes have become standard operating procedure. What happens with the new individual contributors is that management doesn’t pay to much attention until they get to know the systems and the employees with tenor cease to raise issues. Therefore they problems continue and are never captured for later discussion.
The second is the loss of productivity across the teams affected coupled with loss of margin. When a process is broken it generally creates problems across multiple teams. For example: Sales distributes a package made for a subject matter expert to a standard user. The user has problems and pulls in sales engineering. Sales engineering spends countless hours assisting to resolve the problems. Now the customer feels comfortable buying so they do. Next the problems transition from sales engineering to support. After a few of these arise, the per user support costs and metrics also start to rise. Now your company has just lost huge margins when a well thought out process would identified the problem at the first or second level. The last question is, if these processes aren’t in place then how do you know that it is a problem?
These types of problems and loss of margins is why I suggest an internal system that accepts suggestions or inefficiencies from everyone in the company that can also be voted for. The internal system that I suggest as a starting point is Pligg. Pligg is an open source clone of Digg.com that is easy to install and configure. This solution not only provides a way to gather suggestions but also allows the users/employees to determine what they want to fix the most. With a little employee encouragement and close observation from management this system can assist executives in overcoming inefficiencies in order to raise revenue and margins.
- No public Twitter messages.