Friday, February 17, 2012

What I wish I Knew when I Started

ELMS Advantage Online is referred to as a Software As A Service (Saas) company.   I have been designing and developing software since the late 80's  (I am that old).   I have seen methodologies come and go and have worked with software for many industries including finance, insurance, manufacturing, retail, service, and entertainment.   SaaS has brought new challenges and this article outline the things I wish I knew when starting ELMS Software in 2007.

  • SaaS should not use a traditional software development methodology.  Traditional software development has relied on large releases containing many functional changes.  Often these large software releases coincide with new management and support fees.  We are used to paying for software upgrades, spending countless hours installing and configuring upgrades without even knowing the advantages of new software.   SaaS relies on small incremental updates that can be distributed to everyone without installs or additional costs.   Incremental software releases are directed at specific functional improvements and not necessarily to they need to be 100% complete.
  • Just Say No!   I aim to please.  I have always been this way.  If you asked me, I was going to build it.   Sometimes your ideas where good, sometimes, not-so-good.   Whatever the request,   I would say yes and build it.  Ultimately, focus from the primary company direction was compromised.
  • A SaaS company is not about the software.  It is about the service.   The service includes the software, the web site, customer forums, support, online demos, online training, and a functioning User Community.  SaaS is not fully functional if any of these pieces are missing.  I would accommodate for missing pieces by personally getting involved and working one-on-one with customers.   The cost of man-hours spent is never returned by the usually small monthly fees.
  • Setup and Configuration should be automated.    Elms Advantage Online averaged 6 man hours consisting of setup, configuration, and training each and every customer.   The average monthly fee associated with ELMS is $60/month.   Profit from individual customers on average was not realized until 8-10 months.    This does not include the cost of development, hosting, hardware, or software.
  • Do not underestimate the power of customer referrals.  User communities are small and no subject is taboo. The power of social communities and its subject matter tend to be of the negative variety.  It is natural, as most persons tend to feel better when they post something negative.   A single referral may get you a new customer.    An unsatisfied customer may cost you many customers in the end.   Customer expectations are not relative to the cost they are paying.  We are hosting ELMS for free for our current customer base during this transition and have received more negative feedback now than any other time in our history.
  • Leveraging B2B relationships.   Integration is the key to more success.   We need to give customers the ability to integrate their systems with ELMS.  Likewise,  ELMS should easily be able to integrate with other vendors giving more power and flexibility to our customers.
Well, it is 2012, and I see this clearly now. The good news is that ELMS Advantage Online is a good product and is actively helping many remoelers and builders.    If you want to know more about ELMS Advantage Online and what to expect in our next release.......  see above.....


Labels: ,

Monday, February 13, 2012

Build Server - I thought it would take a couple hours

Working Late Again
My goal is to create a continuous integrated development environment for ELMS Advantage Online.   I want changes that are checked into the my source control by any of the developers to automatically get updated on the build server, compiled and deployed in the User Acceptance Testing environment.

Step 1:   Get access to the SVN repository from the Build Server.  This was fairly easy and I was able to create an instance of the source on the build server.

Step 2:   Use MSBuild to build the solution.    Not so easy.  

  • This resulted in applying Service Pack 2 to the 2003 server.
  • Install .Net 4.0 Framework.
  • Install the Visual Studio 2010  re-distributional package
  • Update the Windows SDK to 7.1
  • Resolve conflicts with SDK because VS2010 expects SDK 7.0A

Next steps will be to automatically build the application and monitor the SVN repository for changes.   I will be using TeamCity from JetBrains.   I will keep you posted on the next steps.    

The time that I will save by not having to do periodic updates to test environments for testing, demos, etc... will be invaluable.  It is well worth the time I am spending now.

Labels: ,