Archive for the ‘Communication’ Category

SEO - Fact, Fiction, Art or Science

Tuesday, July 6th, 2010

SEO - Search Engine Optimization.  Have you noticed that there is no end to the number of people who have sprung up to tell you they can increase your rankings in the Search Engines.  There are packages, programs, services and consulting all stating that it is imperative you be on the first page of searches in order to get clients.  It’s so important that you should easily be able to get an ROI of many times the dollars you shell out.  So is it so important?  Will you get more customers?  If so, how do you tell the snake oil sales people from the real thing?

Here are a few tips.  First and foremost if your site is not converting people from lookers to customers then bringing more people to your site is not going to do any good at all.  100 anonymous lookers a month are exactly as valuable as 10,000 lookers a month unless you can convert some percentage of lookers to customers or at least prospects.  Before you spend ANY money on SEO make sure you have an idea the percentage of lookers become prospects, then you can begin to evaluate an SEO effort in real terms.

SEO is a big subject for a short blog post and there are plenty of sources of information on the web about SEO.  Any real SEO specific effort is likely to be expensive, either in your own time or in buying someone elses.

Now with that in mind here are some facts:

1.  The search engine’s usefulness to it’s constituency is bringing links to search users that they find instantly relevant to what they were looking for, even if they are not good at searching.

2.  The better a search engine does #1 the more people will use it and the more opportunity the search engine has to sell advertising which is their source of income.

3.   On-Site SEO: One area of Search Engine Optimization focuses on how your site is built in the first place.  This includes having features on your web site that allow the robot’s from the search engines, mainly Google, to recognize your site as having any relevance to someone searching using a specific term.

4.  Off-Site SEO: Once a search engine decides relevance the next thing it will attempt to do is prioritize based on importance.   Although all the criteria used by search engines is not published one that is well known is influence.  Influence includes how many other site’s link to yours and how important are they.  There are some really complex algorithms that attempt to measure the quality of the links.  If you are a car repair shop and the link comes from an awards page on Edmunds.com it is likely more meaningful than if it comes from your mothers blog on cooking.com.

On-Site SEO should be understood by your web-master or web designer and should be part of any web site redesign.  If your site is over 4 years old someone should look at it to find out if it meets modern search engine expectations.  If not then it’s likely time to do some housecleaning and updating of the look and feel and navigation as well so use that as a time to make your site search engine friendly as well.  Do your On-Site SEO with your knowledgeable web designer at that time.

The best way to do off-site SEO is by becoming actually influential.  This is means creating great content, and your great content nearly always has to come from in house.  But the good news is this is likely how you get clients now, by being really good at what you do.  Now instead of telling people face to face you just need to write the content, get it on your site and then find people in your industry or similar who find your content interesting enough to link.   Industry associations or other business associations you belong to are a great place to start.

SEO is something that you do while you are doing the rest of your Marketing.  Being aware of SEO is primary, specific SEO efforts are likely more costly and less valuable than most would have you believe.  And first and foremost make your web site convert lookers to customers before you spend any effort on SEO, that’s just good priority.

Did the customer mean Important, Urgent or both

Friday, April 2nd, 2010

We had the wife of an important employee of an important client call us today and let the receptionist know that this was an emergency.  It was mid day Friday and they were leaving for 2 weeks vacation in the morning and the laptop they would use to connect to the company Citrix was set up with two profiles, the wife’s and the husbands.  The husbands profile would not connect to the internet ever since he installed a wireless headset.  Our engineers were very stressed about how to handle this because the persons house was a good 40 miles from the office and being this was a new client we were not sure if they expected to pay for us to go there and fix a private computer in a persons house.  The wife had said it was an “emergency” so we spent some time finding the decision maker at our client and the answer was, if he wants it fixed he will be responsible for the trip or for bringing it to us.   But it was an Emergency right?  Of course they would want us to come up.  Of course they did not.  What the wife had really meant was it was an “urgency” because they were leaving the next day.  Once we said that he would have to bring it down in order to get it fixed the work around was clearly the better option for them.  The work around was simply to use “her profile” on the laptop and he could get on the company Citrix.  Easy work around, no harm no foul and no need for 40 mile one way trip on the spur of the moment.

Some people might scoff at this as “oh sure the client wanted us to come to Cameron Park but it wasn’t important enough for THEM to actually make that trip”.  I say the real answer is communication.  The customer was sharing the need to have an answer quickly if a reasonable answer was to be found.  Our helpful guys heard this as “gotta have it fast” and translated “it” into fixed and “fast” into all costs, which came out to “Got to have it fast at all costs”.  The wife/customer was not out of bounds agreeing to allow our guys to come to make the drive.  In her  mind if that’s what the expert said was the right thing to do then that’s what they are paid to do is make those kinds of decisions, they are the expert.  But once the decision was made to toss that effort back to the customer, the customer correctly made the decision that the trip wasn’t worth it.  Problem solved in the best way possible given the circumstances.

The greatest impediment to communication is the illusion that it is actually happening.  Make sure when you hear important or urgent that you don’t decide to hear important AND urgent.  It’s the easiest thing to do but it’s also the easiest thing to validate.  Make sure your client understands what you are hearing so they have an opportunity to confirm it.

Image Based Disk to Disk Backup, the New Standard

Saturday, March 7th, 2009

The major problems with tape backup are:

  1. It is unreliable.  Tapes don’t get changed, they overheat, they are terribly hard and slow to verify.
  2. Restoration is slow because tape is slow and because you must rebuild the OS and restore files separately.  It is time consuming to test the tape as well.
  3. If you run out of room you typically throw away your investment and start over unless you can have someone change tapes and run a two tape backup which is usually very problematic.

These  issues lead to many minor issues such as never REALLY knowing if you have a good backup.  Over the last one to two years a new method of backup has become available to small to medium business.  Very low disk prices has made it affordable to leave unreliable and slow tapes behind and use disk drives to backup disk drives (disk to disk backup).  Disks offer several benefits over tape as a backup medium:

  1. Tape is a sequential access medium, meaning to read the last file on the tape you have to read ALL the other files.  Disk is random access, meaning to get to any file on the disk you just look it up in a directory and read it.
  2. It is far faster and easier to validate that a disk based backup is working
  3. Disks media is more reliable than tape media
  4. Disk allows the backup of another disk as an image, this means you not only get the files but you get the Operating System exactly as it is running

Image based backup means you keep an exact copy of the server or workstation you are backing up.  This image is so complete that you can actually mount it as a virtual drive and run it.  More importantly new technology allows the image to be put on dissimilar hardware and the software finds all the drivers that need replacing and takes care of getting that done.  Is is extremely smart about it and can put an image on from most hardware onto must any other hardware with no human intervention.  Rarely you will have to find a driver on the web and deliver it to the machine but it will tell you easily when this is needed.  To test the backup you can easily mount the image and see the files that are backed up.  With the image mounted you can copy a version of a file back to your real hard disk.  Finally incremental “backups” can be made by simply repeating the changes, bit by bit, that have changed on your real hard drive, onto your image making the amount of data to change far lower.  This means you can have several versions of files backed up by having several incrementals on the drive.

Image based, disk to disk backup is far superior to ANY tape backup I have ever seen.  It is affordable, reliable and fast.  That said there are many ways to set it up and it is very important that you use an experienced engineer to create your image backup scenario for the maximum reliablity and ease of use.  We went through about 20 different iterations before finding what we currently consider the right one.

How to assure that the program you want to have built will cost more than you expect, be less than you wanted and take much longer than you wanted to finish?

Thursday, January 22nd, 2009

You have an idea for a computer program, what do you do if your not a programmer?  The marketing literature says it’s really easy but of course it’s not really your thing.  But if it’s that easy you know a guy who’s kid is a guru, he seems to know everything about computers and loves programming.  Then there is also the guy down the block who is a professional and says his company has done lot’s of good programs.  It is very compelling to hire a person who “knows how to program” and they listen to your idea and get started writing code.  Your question is how long will it take and the answer might be something like, well about 6 weeks or 3 months or some number.  A few weeks into the process you start seeing screens and other things that look like a computer program, you might be able to enter data, stuff like that.  A few weeks/months later it’s reported that more of the program is done.  As the time and money you expected to spend approaches you hear they are 90% done.  As the time and money you expected to spend is exceeded you start to hear things like, well there is this one part that we had to do differently but we are almost there.  You ask what that means and they show you.  But the way they “solved” the problem doesn’t really solve your problem even though technically it does some of what you asked, sort of.   You tell them that won’t work and you are told, well the way you want it will take another month we think.  After a big sigh you say ok and a month later you get told that it’s harder than they thought but they almost have it done.  In the mean time you have found several other things wrong with the program you ask them to fix.  A month later you ask about it and they say, oh well those other things got in the way but we fixed those and we are back on the big problem.  You wonder why they didn’t tell you that was going to happen, your still writing checks and can’t use the program.  And on it goes…….

While the exact scenario has lots of different ways of playing out, the point is that creating an important computer program is a non-trivial exercise.  It is an exercise that has much more to do with communication, problem solving, risk managment and goal seeking than it does with learning how to write code.   While many applications have gotten done like the one above they are at best more costly than they needed to be and have fewer functions than you wanted.  Likely they will have a shorter life and when needing enhancements will be much more prone to needing complete rewriting.

In the next article I will outline the basics of a real custom application project.  Just doing it in the proper steps, while helpful, is not a guarantee of success but if you get a developer who would never think of doing it any other way you at least have a chance of having one that knows the value of proper project management.

Application Development is a passion

Monday, November 10th, 2008

This is a post about why Application Development has been a big part of my life for the last 25 years.   I started life more as a mechanic, from refrigerators to huge steam plants and journeyman Air Conditioning I loved fixing things.  In the 70’s though I got a job that allowed me to play on an early HP “personal” computer.  Two big cabinets and a monitor and keyboard, single user.  It was an engineering computer and had an early “basic” language on it.  I got hooked but could not afford to do anything with it till years later when the Commodore 64 was introduced.  From then on I could not get away from it.  I programmed early in the morning and late at night.  I taught myself databases and assembler code (the language of the machine itself) and loved it.   Eventually friends asked me to write programs for them and I hacked some things out and made a few bucks.  But one thing I figured out early on, reading the manual and then hacking away till something worked would be fine for awhile but even then there were people developing methodologies and processes to create better programs.  Mostly they worked on bigger programs for bigger companies but the principles were still the same.  So I made it my mission to learn all I could about how “the big boys” did it and bring the relevant amounts of that process and procedure to the work I was doing on small database projects.  In the process I developed a four step process modeled from many of the things I was learning.  I spent hours on the old Compuserve forums learning from the best in the business.  I sent my code out into the world to get criticised by them also.  That was tough, like sending your baby pictures out only to be told they aren’t that cute.  Eventually that changed and I started getting more kudo’s than cut’s thankfully.

Several things I learned over the years.  One, many people who program for a living don’t take the time to learn their craft and they typically have to fix and fix and re-fix problems.  Two, the right amount of project management is required for every project, none is NEVER the right amount.  You must go through the steps of defining what you are going to build, designing the way you are going to build it and then building it according to the design, testing that all the way.  For a small project the time it takes is minimal.  For a larger project, $100k to $500k the process must be more rigorous.  But it MUST be there even for projects you are just doing for fun yourself, or they will fail.  Three, all businesses, even ones that seem exactly alike from the outside, are not alike.  In fact most businesses take on the personality of their leaders and it’s an amazing and fun thing to see.  Four, communication is an art and not easy.  The biggest impediment to communication is the illusion that it’s actually happening.  If you could take a picture of the images in two people’s brain when they were talking you would, I’m sure, be amazed how different they were.  This means that if you are trying to build software, pure idea’s to start with, you have to question, and re-question what you thought you heard in order to get to the real picture.  That is fun and results in very interesting discoveries.  For instance most companies have words they use frequently that mean entirely different things depending on the context but they don’t even recognize it.  As a non-participant though the words cause immediate confusion.  Likely, though, frequently inside the company these same confusions occur but more subtly because people have learned to adjust.  This can be a source of inefficiency and conflict frequently with misunderstanding as to the source.  As an analyst trying to create a model of the business a computer can use I have to be very clear on definitions, computers are not good at situational meanings.  Through this process I have heard more than once, “I know my business better today than I did before you started”.  That is one of the greatest complements I have or will receive.   Last, for now, I frequently see application development that is done by modeling the individual views of each stakeholder and then trying to link those views together.  In fact there is always an underlying model for how the business runs which then can be viewed through various lenses at various angles to show the right person the right information at the right time.  Miss this and the program is inevitably very complex, bulky and not as effective.  Get the underlying model correct and all sorts of changes can occur for years without ever needing a rewrite.

I love teasing out the real underlying model of the business that serves all the stakeholders.  It’s like looking in a fog at first and poking around till you find the substance.  Application development is a passion for me.

Big Changes Coming - Digital Natives: Kid’s graduating from high school this year were born in 1990!

Monday, May 5th, 2008
Think about that for a minute.  By the time these kids were old enough to start learning about more than grabbing thier toes the internet boom was beginning.  They were in 5th grade when the internet bubble BURST!  Long before that, thier learning was not as much from Sesame street on TV but from child friendly (hopefully) internet sites.  By high school they had myspaces, in fact before most of us knew what a myspace was.  Socialization happened, in large degree, through a computer screen.   I heard the term “Digital Natives” today.  How much difference does that make in how a brain works or a person thinks?    One thing is sure, as kids grown up in this age become a big part of the workforce businesses that never needed much of a web presence will need interactive web sites in ways their 50+ year old owners will have a hard time imagining. 
 
The owner of a manufacturing company that builds windows today is unlikely to see the power of a wiki built to share knowledge of the in’s and out’s of window technology.  But I’ll bet 5 years from now there will be some.  Will they be sponsored by the big residential builders (who will survive by the way) or will they spring up from somewhere else.  I don’t know but I will surmise that more and more unstructured sharing of information similar to Wikipedia, mypsace and facebook and youtube will transform business in ways we are likely to find hugely valuable and hugely scary at the same time.

The greatest impediment to communication is the illusion that it’s actually happening

Saturday, January 5th, 2008

The business of Application Design especially depends on great communication.  What great communication means to us though, after many years of doing this with dozens or hundreds of people, is pay attention to the above statement.  Remember the kids game where you line them up and whisper something in the ear of the first kid, then have them whisper it to the next and the next and then write down what the phrase was the last kid heard.  Invariably it bares little resembelance to the phrase from the beginning.  Well if you’ve ever tried it with adults it doesn’t usually work much better.  I don’t know what it is that makes this so hard, a psychologist or philosopher might have an idea but I’m not sure it really matters.  The fact that it happens is the fact that needs attention.

If you and I talk for 10 minutes about a subject you may know the pictures that you think you have put in my mind and likewise I may know the pictures I think you are envisioning.  If you assume that what you are picturing is what I am picturing exactly you are nearly certainly guaranteed bad communication.  That is what I mean by the illusion that it is actually happening.  Skepticism is key to good communication.  I can be very sure that the picture I think I am painting for you is not the one you are seeing.  The difference may be a subtle or a not so subtle amount.

I try to keep in mind always that the more I am aware of this problem the more I can ask you to restate the picture and listen for differences that indicate the discrepancy.  The more my listener is aware the more they can look for sentences or words that don’t exactly fit and stop me to ask.  The more we do that exercise the more chance both of us have to hone in on the same vision.  We can only do that if we believe that communication is difficult and unlikely to happen without careful attention.  Success comes when we let go of the illusion that communication is actually happening.

About once a month I get into a conversation that just starts going the wrong way.  The response I get is not what I expected by a large degree, usually I notice it because I’m expecting a good response and get a negative one.  Sometimes these are very difficult to reverse because a word that you intended to mean one thing has been interpreted to mean something entirely different.  Sometimes the conversation can go a dozen sentences or more from that point of discrepency with both parties thinking they are saying the same thing.  Yet if there were bubbles above their heads showing thoughts they would be diametrically opposed and it would be easy to see why.  Of course you’d laugh about that and draw it up as a cartoon in the New Yorker.  Unfortunately in the real world if you don’t pay very close attention things can turn out poorly.

Language is a hugely powerful tool.  Definitions must be agreed upon or the language does not work.  The more you pay attention to the language of your life the more benefit you will get from the rich communications that can occur when language is used concisely.

Personalizing the Client Relationship

Sunday, January 28th, 2007

The other day I was talking to a prospective Client about the future of their business. We had just delivered a list of services we could provide, some of which were not exactly what they asked for but items we discovered that needed to be addressed. These items were less costly than what they had asked for but would quickly answer the most immediate needs. During the conversation this potential client paid us what I consider a very large compliment. He said we had amazed him in how we had personalized our relationship to his organization.

From the time I started my own programming/consulting business as a sole proprietor more than 19 years ago I have been driven to partner with our Clients in a very personal way. As Squaretree has grown we have endeavored to continue to pursue that type of relationship. An IT resource is a big investment for most companies. It is an investment that comes with large benefits and some risks. From day one I have personalized our Clients’ issues and ask all my employees to do the same. I believe that your experience of this will be what makes Squaretree stand out as the premier provider with which you work.