Archive for the 'Product' Category

When to, and when not to form a class

Friday, October 17th, 2008

Just recently I was reminded how “personal” software engineering education has been for the unschooled.  Sadly, the basics are sweapt aside and in their place are “how to get it done” techniques that make everybody look bad in the long run.

On my quest for a good engineering education, I have stumbled upon this great explanation of when to form a class, and when you are NOT supposed to form a class. For example, the rule of one property states:

IF a noun has only one property to remember

THEN it is an attribute of another class

ELSE it is a class

Example: If we need to remember only city name, city will be an attribute ofanother class. If we need to remember city name, the type of city, the state itbelongs to, then city should be modeled as a class.

See the page here.

Why your software will get worse

Friday, September 19th, 2008

I keep tabs on the FOSS offerings in a casual way.  It’s always interesting to see new projects, new intentions and money being put into software.   Take a wider angle with me for a moment.  Do we really need it all?  Allow me to argue that these intentions are misplaced, and that most software gets worse for a very specific reason.

Axiom: Complexity for the user invites simple competitors

That’s the part that is important.  However, the second part could read “those competitors will soon make their user experience complex”.   There is more than one thing becoming complex in older software: the user experience and the code. The main reason we train in software engineering is to keep complexity controlled. Complexity, if not controlled, is confusion.  So if a user, or an engineer is working with software, and they don’t feel in control of the core functionality of it, they might move on, or companies might re-do the effort to compete with it.

Starting is sexy.  Building on a legacy, not.

that's messy! By Mallix http://www.flickr.com/photos/mallix/2816685909/sizes/l/

The company, or individual says to themselves “Why not create this software better”, rather than purchasing/using existing code, and going on from there.  Starting, that’s sexy.  Remember when you first fell in love? Nothing like it! Until you do it again, right?  Taking an old piece of software that does everything you want, just not the way you want, that’ not sexy.

Want proof?  Take a look at SourceForge, and the available content management systems written in PHP.   See, the user experience of every one on there is really bad, OR, it is quite easy to use, but doesn’t have any power.   Think of the reason for this:  A single author gets inspired to create a new CMS (because, that’s just sexy and fun), because they think they can do it better.  In fact, their thoughts on how to do it better are most likely an improvement over the system in question. So they create it, know it in an out, and it turns out, most likely, alright to lame.  We haven’t touched on the problem yet!

Collaborative will and enthusiasm is killed by confusing software

When the next fellow comes along to help with the system, that might work, if they can grasp it quickly.  If the system is overly complex, they might create their own system from scratch, just to avoid a confusing experience.

The other part of the problem:

Without a nagging champion for simplicity on your team, software will evolve into a confusing experience

We know that creating software is by nature complex.  Also, creating simple, and powerful user experience requires very complex software.  Now we have two things going against us: The inherent complexity of software engineering, and, the complexity of engineering it to be simple for the user.  Wait, let’s add a third!  The complexity of creating a intuitive, and understandable experience for the programmer.  That will keep the program moving forward into the future.  Build opposite, and all your programmers will treat you like a mean dictator until you allow them to rewrite it.

The answer to the problems above, well, those are tricky I think, and I couldn’t fully answer them.  However, if we are looking out for the problems, that’s a good start.  We seldom see companies that are willing to invest properly into achieving simplicity.  I hope to be one of those.

Four Reasons Why Not to Use Chandler 1.0

Monday, August 11th, 2008

As a dedicated software adventurer, Chandler has been on my radar for a very long time.  Since 1.0 came out today, I thought I might give it a go.

chandler

What Chandler is: a project that hopes to sync with great services (gmail, outlook, etc) and is therefore quite welcome.

What Chandler is not: functional or useful

Ouch!  I am quite sorry to give such a review of this project.  I know what it takes to pull something like this off, and how much Mitch Kapor’s heart has been poured into it.  Let’s hope this isn’t a pattern for later releases of Chandler.

Four Reasons why Chandler 1.0 is found wanting

1. It doesn’t do anything that I need

Sure, it syncs my to-do’s and calendar with other stuff, but does that matter when the to-do’s aren’t useful, and calendar has nothing new to offer?  In other words, who wants to sync something they don’t really don’t need? Sync a mess at home, and it will appear at work also!

2. Tasks are a mess

chandler_tasksChandler is supposed to follow the GTD paradigm.  The problem is it just uses the most minimal implementation possible.  So if you want to mark something beyond just now/later/done, you have to schedule it on the calendar.  This poses a few problems. Mainly, there is no abstraction, which is really the heart of GTD, i.e. “don’t stress over that now, you can only do one thing at a time”.

Thankfully, they do have “note”(the universal item in Chandler) categories. You can’t even drag/arrange tasks.  Their idea of abstraction is a star. Your note can have it, or not.  Well, after you mark a dozen of those, they start to loose their meaning.

With so much competition in the tasking arena, Chandler is certainly nothing to get excited about.

3. No contacts

Really, this program wants to be a PIM (personal information manager).  It’s my opinion that nothing is really going to take over this market until they take a truly SMART comprehensive view of PIM. There have been many brave attempts, but since there is a large gap between great ideas and solid implementation, we probably have to wait for a couple more years before something killer comes along.

So how are you supposed to link a to-do to a contact to a calendar entry?  You can’t right now.  I bet you a nickel it’s in their plans, but that doesn’t help us today.

4.  Memory Muncher

chandler_ram

The Python runtime jumped to 140 mb after some very average usage in Chandler. Python has its own memory management, but how well will it do under heavy usage?  Remember Python on the desktop isn’t a terribly popular scenario, and Chandler could find themselves with low level programming they aren’t ready to handle.  But, that is a risk I bet they have wagered well.  You have to take risks to move ahead in the tech world.

Really, I do hate to be so down on fellow entrepreneurs and developers.  Truly, I wish them the best.  Please, own this category! Until then, I am sticking with ToDoList and a medley of other apps.  My prediction is that Google will be the first to confront the ugly monster that is PIM with poise.

+ update : I found Thinking Rock, and so far, I really love it. It will probably take the place of ToDoList.

Book Report: Exceptional Selling

Tuesday, August 5th, 2008

Having experience playing important roles in a couple business, I found myself quite familiar with many ares of business. One area I hadn’t researched was sales. How does one become a respectable salesman? After spending an hour in Barnes and Noble’s business section, I picked up Exception Selling. Certainly, I am not proposing I lead this area in my company, but until the resources justify a sales team, here we go.

The following are some of my notes on the adventure. I recommend this book, but I don’t know what that’s worth to you, being my first book on sales.

Exceptional selling, notes

Pages 1-50

  • when you are feeling pressure, you are doing something wrong
  • never answer unasked questions
  • just making a value proposition makes customers see your service as a commodity. Then they make a decision based just on price.
  • don’t be a lecturer, It’s a ineffective way for them to learn.
  • stop persuading and start collaborating
  • don’t come in thinking you are a salesman, but a trusted advisory
  • value proposition is not enough, everyone offers that.
  • value gap, the gap between what you think it’s worth, and what customers do. crossing this gap is done by offer the customer value as they see it in their world

Sales life cycle

value proposition – tell them what you do

value assumption/premise – something you both agree could be a value to them, and MIGHT be confirmed after further investigation.

value absent – investigate the consequences of absent value, quantify, and show

value required – the customer acknowledges value is required

value expected – where you confirm exactly what can be done, for how much

value achieved

Pages 50 – 100

  • diagnosis mindset is opposite from presentation mindset.
  • you diagnose WITH the customer. selling is something you do TO them(bad)
  • go for the ‘no’ early and often. make sure they are ready for what you offer, and if they aren’t, move on quickly to qualified sales leads
  • diagnose the problems without insinuating they are incompetent

Mindset

– change guidance
– mutual self respect
– don’t let them run over you
– emotional maturity
– you must remain emotionally detached, but professional in tune
  • the process,
    discuss, diagnose, design, deliver,
    the following is the application of those.
  • be prepared , and research the company/person you are calling.
  • people won’t reject you if you aren’t being a salesman.
  • the first call should be one of discovering the problems, from the people closest to the action. – Questions like: do you see this happen? What are the results? – Ask for facts and consequences, – don’t talk about yourself for more than a few seconds
  • discovery conversations are not sales calls
  • cold call script, pg 92
  • towards discovery stage script, pg 97
  • don’t answer with questions
  • When getting customer is digging to deep before you have appropriate information, keep answers to 20 seconds, and continue where you left off.
  • The questions will be; how much and how long, etc. Answer, and get back to learning about them.
  • give the customer a small assignment, it keeps them engaged and conjures a sense of collaboration
  • high probability to close sale when they learn they have great need

Pages 100 – 220

  • once you have permission to move on, start the diagnosis.
  • this phase is about thinking of their situation, not your solution
  • never let the customer self diagnose, you have the domain expertise

Diagnostic conversation model

– what is happening
– why is it, how bad
– is it bad enough to act on?
  • don’t use insulting questions when exploring what they said. neutral ones like ‘can you help me understand ‘not fast enough’’ ?
  • questions should start with asking observations, not accusations.
  • never insult competition, acknowledge them.
  • ask what methods they have used already to fix the problem. don’t assume they haven’t tried.
  • let the customers co-create the solution with you, this way, you get a better solution for them, and they gain more trust with customer.
  • ask questions from customer point of view; ‘when would you like to see this solution up and running?’, not ‘when can you make a decision?’.
  • actually, that’s wrong wording by Thull, again. more like, ask questions from a customer value position, not a sales value one.

Proposals – a confirmation on what has already been decided

1. No surprises
2. Us their wording/phrases wherever you can

  • don’t skip diagnosis even if they think they have a problem. they don’t know the value of fixing it until you lay it out for them.
  • if you can’t put a cost to the problem, you don’t have a problem

Financial conversation

– how much does our absence cost them?
– What return can they expect from solution?
– How much is that worth to them?
  • it’s critical that company execs take part on the sales team when talking to other execs. they have the experience and depth of knowledge regarding their value

Software That Shouldn’t be Ignored

Wednesday, July 23rd, 2008

Productivity, organization, and collaboration software excite me.  Just recently I decided to upgrade my task tracking system, and that is just so fun!  The following is a review of some desktop task management suites.  After many hours in review of online project/task management, I wasn’t prepared to go that route.  We already use Trac internally for dev teams, and each of them has their own way of tracking tasks.  There is just no killer project management suite as of today, sorry.

Certainly there is a fine selection of personally task management software, or so I thought.  After all, mastering ourselves is the key to mastering our dreams.   Let me explain what tools I tried, and my opinion of them.



TaskJuggler


This project is attractive because of its robustness.  You can do nearly everything.  It might very well be a pain to do it, but you can.  See, this program manages tasks via its own markup.  I would be able to pull out reports with any level of abstraction and specificity I wish. That’s HUGE. But a new markup to learn? Well, darn.  But I figured it was worth learning because the task management landscape is terribly malnourished.

I make my way to the download page and………surprise…Linux only!  You can get it running under Cygwin, virtualization, or just run it remotely on your Linux server.  Gees.  No thanks.  Looks like a great project, but until its ported, or I move to Linux full time, I shall look elsewhere.



Nomad Pim


My hopes are once again high.  This PIM is programed on the Eclipse platform.  That means programmers can focus on functionality over platform robustness, and the ensuing app has great potential.  The app has a short learning curve, and the interface for contacts and tasks is the same.  That’s a new take, but it seems to work.  You can search through your contacts quickly, and schedule tasks.  Its usefulness ends there for me.  When I flick on the PC, and open my task lists, I can’t have 100 tasks staring me in the face.  I need abstraction! In other words, give me the top priorities.  That’s the essence of GTD, except they are called next actions.  Note: “GTD” suites suffer all the same problems in my opinion.

A neat start for Nomad, but that’s all.  It really would leave me stressed at the end of the day from not knowing exactly what I need to be doing. I am starting to think my requirements are impossible, but they seem simple to me.



Abstract Spoon’s ToDoList


Deciding I have to disperse PIM functions into different apps, I look solely for a task management application. So many! I am not going to list everything I have tried or researched.

Do you know that I fell in love with ToDoList? It is open source, a few minutes to learn, only has minor bugs, and you can truly arrange and filter tasks. If you are looking for an app that is great for collaboration, keep looking or hire Bixly to build one that considers such usability topics as abstraction. ToDoList is magically simple and smart. Sure, it can be a bit awkward to use at times, but it just leaves these other programs in the dust when it comes to getting things done without stress. Good work!



WikidPad


For a neat desktop wiki that tries to employ a task system, try Wikidpad. It’s the best desktop wiki I have seen. Its attempt to tackle “globals” such as tasks, is darn interesting. I think my dream PIM app lay somewhere in WikidPad, just not yet. It’s rather cumbersome right now as a task or contact manager. But the idea that you can create tasks or contacts from anywhere on any wiki page is fantastic. Also, having the navigation tree decided completely by the wiki script is cumbersome. I just haven’t given thought to exactly how it should work, because the alternative is quite robust. I am truly rooting for this project.


Another program that really disappointing me was TaskCoach . It just…..doesn’t get it. Nothing is intuitive or easy, and it certainly doesn’t help me manage tasks very well. Now I am thankful to all these programmers for giving us free software, so don’t misunderstand my purpose here. I hope to save you time in your search for great software.

Also you might find collaborative mindmaping useful for knowledge management and simple tasking within the enterprise. The earliest program to do it right was Comapping .

Ambiguity Aversion

Friday, July 4th, 2008

Research has shown that we certainly possess risk aversion. Ambiguity aversion should be considered its hidden twin in the proliferate duo that is worth understanding for your business. An awareness of this principle is certainly important enough to add to Paradigms I Follow .

It is simply this: Being psychologically prohibited to expanding decision options because of ambiguity. See, you can have a two or more choices in front of you with greater/lesser/equal worth in the end. You will most likely choose the one which requires the smallest amount of thinking. Please check out the Thirteen.org video that inspired this post. What a neat show! Further:

Frisch and Baron (1988) emphasized that the subjective experience of missing information relevant to a prediction may lead to ambiguity aversion.
Keller

This has so many implications for business and brands. A great example of popular usage and profit from Ambiguity Aversion is the show Deal Or No Deal . Forward to the middle of a show and the decision usually looks like this: Take $300,000 right now, or possibly get $800,000. It’s silly really to choose the $800,000 because the chances are still 1 in 5 or 1 in 10. Since we are averse to ambiguity, it’s easier to calculate “hmmm, I want more money, and this could work”.

This opens up a whole new field of Neuroeconomics to us, which is definitively worth further brain breaching.

Interestingly, ambiguity aversion in pairs of users actually gets worse!

The majority of the dyads exhibited a cautious shift in the face of ambiguity, stating a smaller willingness-to-pay than the two individuals’ average. Our study thus confirms the persistence of ambiguity aversion in a group setting and demonstrates the predominance of cautious shifts for dyads.
Keller

Additional resources:
Four types of Ambiguity Aversion link

Master of the obvious and the mundane

Saturday, June 21st, 2008

Here are my notes from Pfeffer’s eye opening talk . He is the Author of

This has really got me excited! Some great information and paths to study. I hate to just have recycled content on my blog, but it’s so good. Let the fairly disorganized notes begin.

Premise is that organizations are stuck in established traditions that mostly don’t make sense, and don’t make decisions based on facts.

Casual benchmarking is harmful

  • doing something because folks better than you did it that way

We should examine why they made that decision, and understand the context rather than just blindly applying it.

Ideology and belief

  • More than 200 studies prove that giving top management stock options has no effect on company/financial performance.

Don’t comprise on providing evidence to your team that can lead to them uncovering issues.

One manager did this by titling certain things “we do not have this information” in hopes of having the team find it. That forced management to find ways to that information. If he wouldn’t have done this, they wouldn’t have realized they even needed the information.

Devita CEO

When Pfeffer was consulting for him, he didn’t care about compliments, but cared about the problems.

Yahoo business guru is quoted as asking “why not customers what they want instead of debate about it”

*note: interestingly this comes from Yahoo which isn’t the greatest at useability

Time for reflection is important

Joe Benaducci- COO, Fireman’s Fund and Insurance company

“What makes you so successful?”

1. Read one book a week

2. Critiqued himself after every significant meeting on a notepad

Put your feet up on desk, close your eyes and think.

Debunking common myths

You need the all stars

  • the system the company has, not the all stars determines quality and output
  • GM operated a lousy plant in Fremont Ca. Low quality, productivity, and large amounts of drug and alcohol abuse.
  • Toyota, under New United Motors, ( a toyota/GM partnership ) took over that company with the SAME people and had twice the productivity and quality.

Financial incentive work

  • reward system signal what matters. (Is it money?)
  • seems fair
    truth:
  • we believe other folks are motivated by money, even though we aren’t
  • pay incentives loose effectiveness after a month
  • folks that are payed per piece rush through work

** garbage truck example: they got paid for 8 hours of work no matter how long it took. Turns out they just skipped trash cans to go home early

  • other rewards must be more creative

Teacher incentive pay case
Paying teachers more for higher test scores

  • it turns out it didn’t work, as you can assume. A study on 100 years of merit pay shows it.
  • Teachers are interested in teaching not pay. They would have chosen different field if money was their goal.
  • Incentives work on effort, not ability

60% of companies use the Forrester rating system

  • This rating system allows the manager to subjectively judge/score every employee and hand out benefits accordingly
  • a study showed that if the manager hired a employee, they were given a much hirer review
  • this study showed this rating system doesn’t work

Results

  • treat your organization as an unfinished prototype, always trying to change, optimize and challenge the norms
  • It’s about being the master of the obvious and the mundane
  • Test every assumption by its evidence

Resources:

Evidence based management webiste

Facts-Dangerous-Half-Truths-Total-Nonsense

Data Smog

Thursday, June 19th, 2008

Some things are in-your-face obvious: Finding great information quickly on the web is difficult; a tun of choices makes of lengthy research, and most of us would prefer just a few great ones; Myspace is visual mess.  Complexity and clutter server to alienate customers. 

Some brands see complexity as a bad thing, and profit by offering a simple alternative. Research proves that this could work:

one study shows that customers would pay an 8% premium for a simpler consumer experience, and 50% would switch brands for it. ref

This is where I find confidence in the direction we are taking ScreenBird.  Sure it has worthy competitors such as SlideRocket, PowerPoint and Keynote, but we are offering something that none of these are; utter simplicity.  This is my gamble, that allowing the customer to drop in text and media with clarity, in an uncluttered environment, will win the customer. 

Distribution, not product development is my largest hurdle coming up.

Also, see Lee’s article on Banner Blindness.  A good read for web interface developers or directors.

Aftermaketing and how to kill your business

Sunday, May 25th, 2008

This is best illustrated with a story.

ScreenBird Presenter was in its alpha stage, and had little traction in the presentation community, so I went to advertise on GoogleAdwords. What quicker way to get customers for my program? Having seen the effects good Adword campaigns, I know it was a sure bet. Sign up and registration was very straight forward, as was the actual process of setting up the campaign. There is however a learning curve to the whole program. In fact I have watched the creator of Adwords give a lecture, so I appreciated the complexity that goes into the whole program.

What do you know, it worked! For the paltry sum I put into the effort, I was able to show successful installs of ScreenBird. So now it’s time to spend a bit more cash elsewhere, and get a taste of the landscape. Thus we are lead to Yahoo!

Sign up first. Ok, simple, I have three Yahoo! id’s, so I will just use one of those. REJECTED! Hmmm, I will suffer, make yet another i.d. for some reason. With all the Google services I use, I have but one id. Now we go to setup the campaign. That wasn’t too bad, and I would say comparably nice to Google’s tools. I am on a roll now, and pause……. I get an error page during the very end of the process. Too many questions; did my new i.d. take, or do I start over again? Do I just wait for something magic to happen? Is my campaign live? I reload the page to get the same error.

Well bugs happen, but such a large one on your main revenue stream? Three days later I get an email welcoming me to the ad service.

That my friends, is righteously bad after-marketing!

The problem is the message took so long to arrive, and the processes of enrolling was just uncomfortable enough that I am reluctant. The experiential side of their after-marketing was the problem. I haven’t given them too much of a chance to try their other after-marketing techniques on me.

This is similar to buying a new product, and receiving a terribly written manual to jump start your experience. If Yahoo exercised great after marketing in this one little area, they would have my measly cash, and others that maybe shared my experience.

After-marketing happens after the buy-in or sale.  Experience can also be categorized under aftermaketing.  Aftermarketing one of those things that helps retain customers if done well. A 5% decrease on customer desertion can lead to 25%-80% revenue gains, depending on your industry.

There is such a great marketing opportunity after your customer has bought in, and it can be wasted with a bad experience and poor planning, or a great one with opportunities to pitch upgrade services.

Book Report: The E-Myth

Sunday, May 4th, 2008

A colleague at work suggested I read The E-Myth . After picking it up Friday, I couldn’t stop thinking about it, and finished it Saturday. It’s on my top 5 for business, so far. Here is what I learned.
The E is for entrepreneur. The E myth, which Gerber goes on to dispel, says entrepreneurs are super-human. Only these heroes have the right to start businesses. Really what goes on in the rest of the book is a intro to business development. But that would have made a terribly boring title. What’s so exciting about business development? It’s the fact that you didn’t know you needed it.

Gerber first starts with a bit of psychology. Inside of everyone involved in business, there are three personalities:

  • Entrepreneur – This is the dreamer
  • Manager – Likes order and predictability
  • Technician – Likes the art of the craft, the end product.

According to Gerber, most folks start small businesses because they are a good technician. Technician meaning anything technical; baking pies, programming, styling hair etc. . They make a faulty assumption:

The Fatal Assumption is: if you understand the technical work of the business, you understand a business that does that technical work. pg 13

A clear difference from a bird’s eye view, but this misunderstanding is the most common reason small businesses fail. Each of these personalities has a vital role. For example, you inner technician should be the master of the product, documenting exactly how to reproduce it. You inner manager should implement that system, and be consistent. Your inner entrepreneur should always ask, “what would the customer want?”, and not be contented until they have it.

The enigma with a start up happens after your first couple of employees, when you hand off management by abdication, not delegation. For some reason, the widgets have scratches on them, or they come unglued all the time. In other words, your employees aren’t doing as good as you did when you wore every hat. It only gets worse as you get a larger workforce, until you get so stressed, that you throw your hands up and go back to a one man shop.

So why are the big guys big? The big guys had systems in place to control and reproduce everything worth doing right. Everything! They had a system to teach every employee that process. See, every time you are getting something done, you have to think how can this be reproduced exactly right, thousands more times. A franchise mentality! This is a major shift in thinking for a technician. Many folks start businesses because they don’t want their lame incompetent boss directing their life, and they can make widgets better anyways. The problem is technicians aren’t good at running businesses. Managers and Entrepreneurs are, so you must give them space to work.

My favorite idea found in the E-Myth is not to create a business to work at, but create a business that works. Every piece of your business should be well documented, and adhered too. It should provide a structure for employees to flourish, a “game” for them to play. They can flourish and earn rewards by following the rules. It’s a rule of thumb to document the position well enough for the lowest skilled employee can become great under it. Money saver!

There are more tasty morsels that I didn’t mention, and some good insight on what your system should look like. Worth a read if you ask me.