Wednesday, December 2, 2009

Shamelessly plugging a business continuity seminar

One of the more common mistakes I see entrepreneurs make is to not properly protect their investment.  I challenge you today to take a look at your laptop, server, etc.  If it all went up in a fire tomorrow - would you be able to recover?  If one of your servers or workstations had an intractable rootkit installed - how long would it take you to get back to "running state"?  Have you suffered a data loss in the last 12 months?  How long before you restored, recreated or were able to use that data again?  If you're a software entrepreneur the software itself, and all your business planning IS your business.  If it fails, is lost or goes down - you're the one who will deal with the consequences - and they could be business killing.

I will be holding a Business Continuity and Security seminar on December 12th from 7:30am to 10am at the Radisson hotel in Henrietta.  This seminar is designed to update small businesses and entrepreneurs on new and better ways to protect their investment in data and systems.  This program is not targeted at IT experts - more for the manager/owner/employee level of decision maker.  It is also not targeted at Enterprise protection level requirements.

This amusing presentation features a ton of great information, breakfast and lolcatz for only $10.  For more information or a sign-up sheet check the link.

Tuesday, October 20, 2009

Time Warner Roadrunner epically fails once again

Roadrunner has rolled out a new web email client and in the process they may be blocking valuable mail from you to roadrunner clients. I have NO CONTROL over this, this is an information update to my followers

Ok, first some techy geek stuff in simple terms:
Roadrunner provides home email accounts to their clients. There are 3 ways to access these accounts:

  • Roadrunner web mail:
  • POP mail (using an email client like Outlook or Outlook express) – by far the most common config
  • IMAP mail (using an email client) – not as commonly used

About 2 weeks ago Roadrunner made some sort of change. This change created in each person’s WEB MAIL account a new mailbox called Junk Mail, and they turned on a setting on the Roadrunner side that started to filter mail in the account into the new mailbox if Roadrunner thought it was junk. The problem with this is that POP users will never know their mail is being filtered – they’ll just start missing messages. Time Warner didn’t TELL anyone they were making the change they just did it (This is typical of Time Warner Cable). I found out because I sent mail home to myself and it turned up missing. Even IMAP users might not know unless they refreshed their folders to see the new junk mail folder. Only a web mail user will know that the setting has been turned on, and tons of potentially legitimate email is sitting in their junk mail folder (over 90% of the email in my “junk” folder was legitimate mail).

Due to the way this is implemented, the sender will not know that their mail is being blocked, and the receiver will not know that any mail was sent to a junk mail folder they don’t know is there.

You can turn this setting off by logging into your roadrunner web mail (if you remember what your password is) and going to the SETTINGS/JUNK MAIL and say DELIVER MAIL instead of SEND JUNK MAIL TO FOLDER. Most people will have no idea how to do this, and there is no explanation of it on the web site. For most people the junk mail filtering in their client is sufficient to label and eliminate mail. If the user REALLY wants to know what Roadrunner mail they think is junk they can have Roadrunner add a label of “SPAM” to the “junk mail” before putting it in your mailbox.

You have a roadrunner account if your email ends in

I'd recommend strongly that everyone with a Roadrunner account take 2 actions:
  • Check your settings and be sure they reflect how you want your mail processed (check your junk mail to be sure there's not legit mail there)
  • Complain to Roadrunner LOULDY about the fact that they should not be making decisions for you about what mail you do and do not see, without informing you or giving you the option to set those defaults up front.
Having dealt with the spam-nazi's at Roadrunner before they block stuff for no particular reason.  90% of the stuff they block is legit, and it causes no end of headaches for people that host their own mail or use small carriers (and sometimes large carriers - they blocked hotmail for no reason last week).  We are the customers - it's up to us to let them know when they've overstepped their bounds.

Friday, September 25, 2009

Recent news and Career Fairs

I recently posted to with recent entrepreneurial news for Rochester, check it out. Also yesterday I was a participant in a Digital Rochester Career Fair, as a potential employer. I have 3 job openings coming up in October, and was at the fair looking for candidates. Let me say that for the most part I was impressed with the talent available, even if some of them weren't the right fit for my immediate requirements. I did notice a few mistakes though, so as I was chatting with potential employees I came up with some tips, which I tweeted on my @LeeDrake account. For convenience sake I thought I'd collect them all here for future reference. Since there are 10 of them I'll do them in true David Letterman Top 10 style:
  • Tip 10: I have a pile of 30 resumes on my desk, they all took my card. 2 people followed up with an email, ONE person linked in, no one called. They all wanted jobs. If you don't follow up - you won't get the job - guaranteed.
  • Tip 9: Recruiters want to know you are SERIOUS about wanting a job with their company. SERIOUS. Show it. Prove to them that what you have to offer their company is enthusiasm, skills, and follow-through. The interview and career fair process is a test you MUST pass to get to the next level.
  • Tip 8: If I asked you to send me your resume electronically send it in the mail the next day, preferably that night! No one wants to scan in paper resumes when they can be emailed. Electronic is so much easier to organize.
  • Tip 7: If you really want a job with me and I gave you my card and invited you to link in send me a request asap! Even if I don't have a job - if we're linked in I can refer you to someone who does. Never turn down an opportunity to link in to a potential employer.
  • Not a tip, but an observation: Somebody came up to me at the career fair today to thank me for all the things I do for the Rochester area. He didn't want a job, or at least not from me - didn't give me his resume or contact info. He just wanted to thank me. Believe me - that guy I'll remember.
  • Tip 6: if you aren't a fit don't try to make yourself one, just thank me or ask for a referral and move on. Take the time to read my postings. Ask me what I want before you launch into what you do.
  • Tip 5: While I'm happy to chat with you about all sorts of things if there's no one waiting, please share if there's a line. It's definitely ok to chat and get to know the recruiter, it's definitely not ok to make 25 other people wait in line while you do it.
  • Tip 4: Putting a plastic sleeve on your resume not only won't make hiring you any more likely it also prevents me from writing notes on your resume about where you might fit in. This isn't high school. A one page resume and/or 2 pages stapled together are fine.
  • Tip 3: If you are bringing a resume to a career fair and its more than 2 pages, staple it and put name and contact on both pages. Sometimes that pile falls over - do you really want your pages mixed with everyone elses?
  • Tip 2: If the recruiter is talking to someone else - DON'T INTERRUPT THEM. EVER!
  • And the #1 Job hunting tip if you are attending a career fair brush your teeth or have a mint before hitting the tables. There is no excuse for bad breath or BO at any time - but if you're looking for a job that is the WORST time for you to have these issues.

Tuesday, August 25, 2009

There's a reason most of our new projects are in social media

There's a reason why most of our newest projects are in the area of social media, for instance the online collaborative education tool Kajour by Knowledge Athletes. The reason is that social media is becoming one of the main new tools in everyone's networking and branding architecture. If it's not one of your main new tools you might want to check out a video from the author of Socialnomics, Eric Qualman.

So my question for you as an entrepreneur is - if you're not creating a product that is social media oriented - what are you doing to include a social media interface or connection to your product and brand? What active role are you taking to ensure that once your new product or service comes out it is relevant?

Saturday, June 13, 2009

Things a startup founder will never tell you...

I just loved this little slideshow from Chris Yeh on things a startup founder will never tell you. I can't tell you how many times I've asked some of the entrepreneurs that approach me questions like these and gotten a ton of prevaricating..... If your startup can't answer these questions honestly - you should consider whether it's a valid idea in the first place...

Tuesday, June 2, 2009

If we treated everything in life like consultants and developers are treated

Give this excellent video a watch:

... then ask yourself - is this the way I treat my vendors and development partners? Is there a lesson to be learned here? If we go into a grocery store to buy something we don't dicker over the price, try to delay payment or anything else. We go, we buy an item, we pay for it and we leave. Why then do people feel compelled to dicker over the prices offered by resellers of professional services like software development, or computer tech support? What is different about the product they offer from the product the other service professionals in this video offer?

My guess is - they really aren't that much different. We don't ask our hairdresser to "wait 30 days" till we can pay them. We don't try to talk our waiter or waitress down in price so we can get our meal cheaper. We just decide - is their product or service worth the price I'm paying and then we either do - or do not - do business with them.

In a great software development effort, both parties are working to maximize return on investment and minimize cost of development. This is what long term relationships are built on. Not a "sell it to you once and then soak you for everything you've got" attitude, but a sell it to you once and work together so that the product continually improves until it's delivered, and continues to improve after that.

So the next time you feel tempted to "dicker over price" think about it. Is the product or service worth it to you? If it is you might want to consider just paying that amount then. Your vendor with thank you for it and you'll be developing a long-term partner relationship that may last forever!

Tuesday, May 19, 2009

Being a program manager

One of the key things that every software development effort needs is an excellent program manager. That manager's key vision, leadership and customer advocacy drive success. In How to Be a Program Manager, author Joel Spolsky gives us some insight on combining agile programming and program management in a productive way. Since Joel worked on the team developing the next generation of Microsoft Excel, he's qualified to speak authoritatively about dividing up large projects into manageable bite-sized pieces. Like at OS-Cubed Joel believes that one program manager should be responsible for a team of up to 4 programmers, and that work should be divided up by functional area.

The most important part of Joel's article states that the program manager must be the customer advocate on the team. They must look at every interface from the customer (or end user's) point of view, and express that point of view to the programming team. Their job is to help the programming team design something that users will find easy to use and appealing. If users complain that the program doesn't work - it's not the programmers fault it's the program manager's fault.

I think this is an important point about program managers. Too often development teams focus on the program manager's job of coordinating resources and delivering on-time and in-budget without defining their visionary status.

Joel goes on to say that - despite agile programming pushing prototyping as a methodology, the program manager must write specs - detailed functional specs from the user's point of view - not the programmer's point of view. It's their job to advocate for the user and build an interface that is the best for them. I typically fill this role within OS-Cubed, Inc. I have just enough programming and platform knowledge to be dangerous, but not enough to be so buried in it that it's all I think about. I would go on to state that a good program manager probably has a high "DI" in the DISC test and a low "C". I will talk more about DISC and how it integrates into a programming team later.

The program manager should not however, be the person writing up the actual specifications for how the product should be developed (that responsibility is the programming team lead's job), nor should the programmers report the the program manager because that would allow the program manager's ideas to run roughshod over the programmer's. This needs to be a negotiation between what is optimal and what is possible and both the user's and programmer's needs are taken into account.

Agile programming is typically about fast turnaround and constant customer approval. So the program manager must stay ahead of this curve, constantly re-examining the impact that feature and user interface changes have on the full vision. Sometimes it will be their job to control the scope of the project and to do that they need to retain and update the vision as it changes.

Joel's article is a great read, and I highly recommend both the blog post itself, and the links he offers for help and assistance.

Wednesday, April 8, 2009

Inside a Google data center

Presented without comment:

Friday, April 3, 2009


I was asked by the folks at SpringStage to be the Catalyst for the Rochester area Startup blog and I eagerly accepted. To get a feel for what Springstage is, and what a "Rochester Catalyst" is I encourage you to review this post, which I will summarize here.

" “What is SpringStage.”

  • First, let me explain what SpringStage is NOT:
  • SpringStage is not an angel network
  • SpringStage is not an investment group
  • SpringStage is not a business incubator

SpringStage is a network of community catalysts who are in tune with their local entrepreneurship and startup scenes. Our goal is to find entrepreneurs who are interested in promoting startup culture and community in their hometowns. The network formally launched in early 2009. This is the first step in ensuring that there is a visible resource in every community for early stage entrepreneurs.

Today, if you’re new to a city and you want to be involved in the startup scene there, there is no clear cut way to get involved. Springstage hopes to fix that by identifying and promoting credible catalysts in each community. We are providing the infrastructure for those catalysts to begin promoting their location entrepreneurship scene immediately. "

As a board member on the Eyes On the Future event board, Rochester GVCSHRM, Rochester Neighborhood of the Arts, and JSEC, and a former Rochester Small Business Council board member, and an advisor to Nazareth's Business development program, as well as a serial entrepreneur and developer myself, I feel I have a good cross-sectional background to publish articles of an interesting and engaging nature in But I do need your help. I'm looking for entrepreneurs (at all stages in development) and in all different growth areas to answer a brief 5 question profile, and I'm looking especially for great articles or interviews from Angels, Venture or other investors.

If you are a consultant who works with entrepreneurs, I urge you to pitch me on a story about your services and how they can help the local entrepreneur be successful. We also want to build a link-list of service providers in the area.

Tuesday, March 31, 2009

End users are not stupid....

I read a great post today thanks to Larissa Reynolds, a good friend down in the great state of Texas. The post was written on and entitled "Hello, Our members are Morons". The author identified only as "Tony" was discussing how when he would pitch a Credit Union (his marketing specialty area) on a new marketing idea they'd frequently shoot it down saying that their members "wouldn't get it". He went on to explain why this was really a fallacy, and that with the right message and the right delivery you can hook a lot of people you wouldn't just assume would get it. Management's assumption seemed to be that it was ok for THEM but that their MEMBERS wouldn't get it, understand it, or be able to do it. This sort of belies the fact that most of THEM are members of their own credit union :)

I was reminded of a particular phrase that I usually use with my entrepreneurs when they come to me with their ideas. Take Knowledge Athletes for instance. They come to me with a great educational idea and I have said more times than once "you guys are the education experts - I'm just the software developer". If they think it's a great idea - it's worth a try.

Which is not to say I don't push back sometimes for a simpler interface. It's my job to advise people on the best way to implement their idea so that it can be enjoyed by the widest audience. But we must always be careful not to dumb something down to the point of no returns. It's ok for our users to have a brain - and to need it to accomplish a task.

We were pleasantly suprised for instance how quickly kids were able to pick up the Kajour application and run with it - sometimes despite bugs and growing pains caused by it only being a demo system. We found we could make the interface much more complicated than we originally anticipated and it would still work great for the kids. They were USED to figuring out complex interfaces. They'd grown up in the world of Facebook, MySpace, YouTube, and other tools and didn't mind poking around in menus or selecting icons until they could figure out what they needed.

So the all around summary - don't assume your users can't use a sophisticated interface. Don't underestimate their ability to "get it".

Monday, March 23, 2009

Internet Explorer 8 review

OK, being the brave intrepid Microsoft Fanboy that I am I put Internet Explorer 8 on both my home and laptop machines. The great thing - I haven't been disappointed. Oh yes - you will read in the news all the "bad things" about Microsoft, but let me tell you some good things about IE8:

  • The new browser is faster - it takes less time to load, less time to load pages, and less time to render. All in all it operates much more quickly than IE7
  • It is one of the first browsers ever, and Firefox and Chrome are included here, that provides a "compatibility mode" so that you can essentially fool a website, and the browser, into operating like an older version so that you can view sites that might have been specially coded to work with IE 6 or 7. It also allows you to link into a central database of known sites that are not compatible, and automatically switch modes so that your sites don't break. This is INCREDIBLY user friendly and a hop skip and jump above all the rest of the browsers out there. User's number one complaint on browser upgrades is that they break some sites. This utility essentially fixes that complaint. Site doesn't render well? Just switch compatibility mode.
  • It's suggestion mode is better than Google Chrome, IE or Firefox in that it suggests both items from your browsing history (first) and items from search (second) as possible URL completion targets. It's like the SEARCH bar in Vista for web, and it's quite powerful. You'll find yourself typing full urls much less frequently.
  • It seems to be compatible with all the toolbars I've previously downloaded (Google, etc.), with no messing around or tweaking required on my part. Similarly external programs that rely on browser libraries (Autotask and others) appear to work just fine with the new versino.
  • The "Suggested Sites" feature is pretty cool if you're just browsing around and looking at stuff. Very handy for finding other sites with similar material.
  • The new equivalent of "View Source" allows you to show all sorts of developer information, a DOM Tree, validation mode in both IE 7 and 8, as well as a "quirks mode". The validation mode will overlay to show you issues right within your pages, making fixes easier and providing for CSS/HTML debugging. Sure you could get all that stuff with an add-in before, but isn't it way better to have it built in? There are some cool options to show (right on the screen overlaying the content) image sizes, dimensions, etc.
  • You can now easily use the add-on's to (for instance) post web content to a gmail message (or hotmail) so you don't need an email client loaded to forward things.
  • The product provides an "incognito mode" similar to Chrome, but unlike chrome this can be managed using GPO's at the policy level to be disabled in corporate environments.
  • Speaking of manageability - the new browser can be managed right down to the feature mode using GPOs. Turn on and off view source browser, incognito mode and other features easily.
  • I'm not sure why they had to rename feed readers as web slices but oh well. The powerful capabilities of an RSS feed reader are built into the product and continue to integrate well with Outlook.

All this and it has not crashed once - not on my 32 bit Vista Laptop or my 64 bit Vista desktop. All in all I think this is a great improvement over IE 7. It's not quite Chrome for speed, it's not quite Firefox for flexibility, but it's got enough of both products to be a serious contender and is a welcome replacement for the aging IE 7. All in all I give this product a big "thumbs up".

  • Wednesday, March 18, 2009

    We won't feed you a line...

    I was somewhat appalled at reading this post, by a blog author I respect Chris Coyier of He solicited comments and twitter comments on the concept of the question "What if a client came to you with an idea for a project you knew was going to fail, and would pay for it. Would you do the job anyway?".
    I must say that the overwhelming number of "web designer" and "web engineering" firms out there who responded to this post basically said "Yes I'd do the job". Wow. Please go read the post. Please read the comments by other "professionals" in our field. Then ask yourself - would you rather that someone gave you the straight honest truth and always acted in your best interest? Or would you rather pay someone to just do it your way? Would you rather rely on their experience and expertise when they LIVE in that world? Wouldn't you want to work with someone whom you know will give you their honest evaluation of an ideas success or failure, act like a partner in your success, suggest better ways of achieving the same goals, or guide you to a more successful conclusion. I would rather turn away a job where I know that the client just hasn't done their homework, than take their money and build them a fail-boat.
    Short term I may not make more money this way. But long term I develop 3 key features for business success:
    • Loyal customers - I would rather have my customers say "This guy saved me from making a big mistake" than "this guy built my idea, took my money and then it failed". News travels fast, especially in a small city like Rochester.
    • Personal integrity - Hey, maybe I'm old fashioned - but I like to be able to sleep at night knowing that I did good in the world - even if I made a bit less money than the guy who did not. If I have to let a customer go because we don't see eye-to-eye I'll do so with honesty, integrity and cooperation. You never know - sometimes they even come back.
    • Loyal and honest employees - the way YOU act in the workplace defines how your employees act. If you develop a culture that creates an environment of dishonesty and money-above-everything, you will reap what you sow. Ask Bernie Madoff.

    I vow in this post that I will always give a client the advice and product that is in their best interest. If you've got an idea I think is bad I'll tell you. If you can convince me I'm wrong I'll change my mind willingly. I will then help you to develop the best version of your idea that has a chance of success - or tell you that I might not be the right company for your requirements. I invite you all to take the vow and ensure your own personal integrity.

    Monday, March 16, 2009

    Small business gets some respect from the White House

    In today's address by President Obama, we finally got to hear about incentives and help for small business. For weeks we've been hearing of the wasteful spending of the big banks that are being helped, the auto makers, other big businesses and the scandalous behavior of some of these investment banks and brokers, including fraudulent stock schemes that finally failed when the markets went Bear. Finaly we get to hear from the administration what they are going to do for those of us struggling to build entrepreneurial and start-up companies using bank loans, our own sweat equity, and sometimes venture or angel investments.

    It turns out that his heart is in the right place, and though he many not be completely on the side of small business, many of his latest pronouncements are a boon and a ray of hope for those of us who employ 70% of Americans.

    The basic tenets that he laid out were:

    • Guarantee by the government of SBA loans up to 90%, and purchasing using some of the TARP money already allocated some of the toxic SBA loans. This will loosen credit which has recently been tightened by banks across America for small businesses looking to expand, grow, or just finance their survival.
    • Elimination of costly fees for both borrowers and lenders in SBA loan arrangements.
    • An immediate reduction in capital gains taxes on investments in small business by 75% if they hold their investment for 5 years. A proposal to permanently reduce to zero the capital gains tax on investments in small or startup businesses. This will greatly encourage investment in the Angel and Venture world since gains would be essentially tax-free. Making angel and venture dollars a tax free investment greatly increases the value of this vehicle over the traditional stock market investment. While still quite risky you don't also have to account for capital gains when you do cash out your investment. Small companies would be encouraged to go independent sooner as this capital gains bonus would be limited to companies with under $15M in revenue - truly rewarding the SMALL company and not the big one.
    • By eliminating capital gains on small business investments, he would also (I believe) solve the problem of having to pay capital gains when a business transfers ownership either inside or outside a family. One of the great tragedies of current tax law is the number of companies that never get passed on to a family member because they can't raise the cash to pay off the capital gains on the transfer.
    • Small businesses can write off addtional capital investments this year in an attempt to re-stimulate buying in this important B2B environment.
    • Small businesses can write off losses from this year against taxes paid up to 5 years ago. This effectively will give companies that paid taxes in past years a rebate of those taxes if they lost money this year.
    • Small businesses can pay 90% of the last year's taxes, rather than 110% when they pay estimated taxes. This increases available cash and it is realistic considering the current economy for many businesses.

    In all, I believe this presents a balanced approach to the small business dilemma - freeing up loan money, reducing the tax impact of venture and angel investing and transfers of ownership, and providing immediate tax relief and cash flow to distressed small businesses are all excellent steps in the right direction. If he could go on to solve the health care dilemma, reduce business income taxation, and finalize the elimination of capital gains that would be a long way towards a small business success.

    Tuesday, March 10, 2009

    Rochester Business Plan Contest 2009


    Rochester, NY - High Tech Rochester announces that the 2009 Rochester Regional Business Plan Contest opens today and is now accepting applicants.

    The contest is a collaborative effort among community organizations including Digital Rochester, Greater Rochester Enterprise, Nazareth College School of Management, Rochester Institute of Technology, and the University of Rochester Simon Graduate School of Business.

    This year's event offers contestants a chance at winning over $50,000 in cash and business service prizes, including a 1st place cash prize of $25,000. All finalists will receive a customized prize package, as well as significant exposure to the business and investment communities.

    "The Rochester Regional Business Plan Contest is a marquee event that showcases the innovation and entrepreneurial spirit that permeates our region", said James Senall, president, High Tech Rochester. "The Rochester community was built on the successes of several pioneering entrepreneurs, and this contest can serve as a launching pad for our next generation of business leaders."

    The contest is open to for-profit companies headquartered in the Greater Rochester region (Genesee, Livingston, Monroe, Ontario, Orleans, Seneca, Wayne, Wyoming, and Yates Counties). Companies should have a scalable business concept with high growth potential. Companies must be early-stage defined as: 1) Less than $250,000 of outside cash investment, and 2) Less than $500,000 cumulative revenue, excluding research grants.

    New for this year, the contest winners will be announced at the 1st annual "Celebration of Entrepreneurship" Luncheon on May 15th. At this gala event, several other entrepreneurial successes from the past year will also be recognized.

    The contest features a series of workshops beginning on March 18th to help prospective entrepreneurs create the best possible plan. Contest registration ends on April 3rd, and executive summary submissions will be due on April 6th. Winners will be selected by a panel of judges prior to the luncheon on May 15th. Applications and Contest Guidelines are available online at HTR's website.

    Monday, March 2, 2009

    Microsoft innovation dead?

    <a href="" target="_new" title="Future Vision Montage">Video: Future Vision Montage</a>

    For those of you who suggest that Microsoft's innovation is dead and their future is limited, I'd suggest watching this video. This is their vision for the next 10 years laid out in detail. I'm still confident in my choice to make OS-Cubed a Microsoft Partner. You will be too after viewing this video. Put on your seatbelts because this IS the future.

    Here are some more detailed videos on specific sub-topics:

    <br/><a href="" target="_new" title="Manufacturing Future Vision">Video: Manufacturing Future Vision</a>

    Microsoft in Manufacturing

    <br/><a href="" target="_new" title="Retail Future Vision">Video: Retail Future Vision</a>

    Microsoft in Retail

    <br/><a href="" target="_new" title="Health Future Vision">Video: Health Future Vision</a>

    Microsoft in Health Care

    <br/><a href="" target="_new" title="Banking Future Vision">Video: Banking Future Vision</a>

    Microsoft in banking

    Thursday, January 15, 2009

    SANS lists top 25 computer software errors

    When developing entrepreneurial software the temptation is always to go directly from proof of concept or demo code to production. Customers want your application, and are excited about your product, you still don't have the $$ needed to really make it scalable and secure - but growth of customer base looms. After viewing the havoc that can be wreaked by a problem as simple as not allowing brute force attacks on a social networking site (Twitter and Obama's account) it is a good cautionary tale for any entrepreneur. The transition from proof of concept or demo must be planned in advance. Software should be evaluated for risk and the risk mitigated before widespread growth and acceptance of the product.

    SANS recently released a list of the top 25 mistakes programmers make when creating software. Read it over. Is your proof of concept or demo software tested against these rigorous standards? If not, have you budgetted the dollars needed BEFORE you go into full production to evaluate and if necessary amend your code to take these issues into account? If not you might have some 'splainin' to do as Ricky Ricardo would put it when your customer's private information is compromised.

    Monday, January 5, 2009

    Defining a simple interface

    In our last article we talked about the process for determining the importance of features in a new agile software project. One of the most important features of any website, which is a "general" feature rather than a specific one, is creating an easy to use, yet powerful user interface. This is doubly important in developing web software since complexity on the user-interface side typically requires more coding and development than complexity on a dedicated application (due to working with multiple browsers). If your application becomes too complex it could force you into a front end development interface such as Flash or Silverlight due to the limitations of a browser based system. To retain the best cross-browser compatibility sticking with AJAX/Javascript/CSS/DHTML/HTML is the best solution.

    In our last exercise we identified 85 new features to potentially be added to the product and gave them a subjective ranking based on making binary choices. How do we keep the product from falling over under the weight of so many features? How do we maintain the idea of a simple interface without sacrificing important capabilities?

    One way to do this is to apply a subjective score to each feature for whether it ADDS COMPLEXITY (from a user or administrator's point of view) or whether it SIMPLIFIES the user interface. This should be pretty easy - if there are more buttons on the screen, user interface elements to learn, or processes to train someone on - then it ADDS complexity. If on the other hand it eliminates or streamlines processes, removes administrative burden, or simplifies already complex tasks - it REMOVES complexity. Remember here that we're not yet considering whether it adds CODE COMPLEXITY, we're only considering user interface complexity. This is a simple binary choice, and in most cases won't require a lot of discussion.

    Let's say for instance that our current user interface requires a user to upload a graphic to the website for inclusion in a post, using the traditional "browse and upload" methodology, and that one of our suggested features (never mind code complexity yet) is to allow users to drag-and-drop a graphic onto a particular spot on the website and handle the upload itself - requiring no directory browsing to accomplish. Does this add or remove complexity (from a user point of view)?

    That one's pretty easy - it removes complexity. We're replacing 5 steps (press browse, find a directory on your hard drive, select a file, click upload, link file into current content) into 2 steps (open directory and find file, drag and drop onto content where you want it positioned).

    Let's look at an example that increases complexity. Say you want to allow users to chat while posting a blog entry, and to record that chat as a link to the blog. That increases complexity. You need an entirely new user interface for storing and displaying the chat itself, presence indicators to indicate who is available for chat, a way to link chats to blog entries, and a way to initiate and terminate chat sessions - all new administrator or user interfaces. This feature adds complexity (from a user point of view).

    We're not really making a judgement at this point whether the complexity added is worth the perceived benefit - we're just determining whether it adds or removes complexity from a user's point of view. So for each weighted item on our list we add a column and record a zerp "0" if it simplifies complexity and a one (1) if it adds complexity. We can later add a weight to the "1" records if we want, or score the amount of added complexity on a sliding scale (1-5 where one might represent a single new button, and 5 would represent an entirely new interface and administrative burden). These are flash, subjective evaluations, and are done based on putting yourself in the end-user's role.