Blog

  • Webapp Sign-in Security Re: Twitter Happiness-gate

    Last week’s Twitter snafu involving the hacking of several celebrity Twitter accounts and posting commercial and lewd remarks was found to come from an individual hacking into a Twitter support person’s account. The gist of the story is that an individual wrote a script to automatically try every word in the dictionary to break into an online account. It turns out that the password was ‘happiness’ and was found relatively quickly. 

    For programmers and online entrepreneurs, the moral of the story is to only allow a few login attempts before the account is automatically locked. How is the account unlocked? The account can be unlocked by contacting support, if applicable, or by going through a forgot password sequence that involves answering a question or having a link emailed and clicked.

  • Frameworks for Fast Growing Companies

    One of the hardest things to do for a fast growing company is to get everyone aligned and on the same page. One business guru said successful businesses are 1% vision and 99% alignment. Here are some good books for entrepreneurs once they get past $1 million in revenue:

    What are your thoughts? What books do you recommend?

  • Cons of Ruby on Rails Compared to PHP/symfony

    The user drkyzar asked for a follow-up on my previous post comparing Ruby on Rails and PHP/symfony. His request got me thinking about some of the cons of Ruby on Rails. As expected, some are due to the language and some are decisions of the Ruby community. Here are my initial cons of Ruby on Rails as compared to PHP/symfony:

    • Ruby meta-programming in Rails, and other gems, make it hard to debug problems. You can do meta-programming in PHP but it isn’t very common and symfony follows a heavily object oriented approach. In the Ruby on Rails world and the acts_as_*** gems, it is very common.
    • Ruby gems (plugins) don’t always work on the different OS platforms and are often OS-specific making it difficult to include them in a projects source code repository. As an example, the json gem version 1.1.3 doesn’t install on Windows but works fine on Mac and Linux. The json gem version 1.1.1 does work on Windows but other gems like the latest Twitter gem require 1.1.3. This isn’t fun to work through when there are a variety of software engineers running the major OS environments.
    • The biggest con with the RoR platform is how long it takes to compile everything when you have a big project. You can run Rails in different environments like development and production. Development recompiles everything on each request and production compiles and caches everything on the first request. So, a large project will take 20 – 30 seconds on each request in development mode as you click around. With PHP/symfony, there is no massive recompiling resulting in almost no difference changing a file and re-requesting a webpage as compared to running in production.

    These are just some of my observations after building large scale SaaS products in both Ruby on Rails and PHP/symfony.

  • SaaS/Web is Ideal for ADHD Entrepreneurs

    A common trait you’ll find among entrepreneurs is that they have tons of ideas and routinely can be described as ADHD. Due to this phenomenon, SaaS products, and the web in general, make for an ideal medium as it affords an elegant manner with which to constantly tinker. In many cases, you can have an idea, see it live in production, and get customer feedback in a matter of days or weeks (with strong automated testing, of course!). What other types of products allow you to do that? Physical goods? No. Services? Rarely.

    Constant iteration and innovation really is adrenaline for enterpreneurs. It doesn’t get much better than SaaS/Web for products.

  • Some Thoughts on Sales Commission Strategy

    Sales commissions are a tricky thing. Once you put them in place, it is difficult to change them without the sales team being demoralized that their compensation is going to go down (even if it isn’t!). The goal, generally, is to minimize base salary and maximize performance based compensation. Here are some thoughts on strategy:

    • Align company interests with the commission (e.g. have commission percentages based on the profitability of the item being sold such that things like license revenue have a higher percentage commission than services revenue)
    • Significantly reduce compensation if quota isn’t hit (e.g. cut the standard commission in half if quota isn’t reached for the designated time period)
    • Don’t limit the up-side (e.g. don’t put a cap on the maximum amount a sales rep or account manager can make)

    Sales, and management of a sales team, is one of the most difficult, and rewording, aspects of a business. Good luck!

  • Time for Twitter

    My new year’s resolution last year was to write one or more blog posts per week. I’m happy to say I achieved that goal and it’s time for my next resolution: use Twitter several times per week by posting tweets and joining the conversation. I’m not going to post a ton but I will try to capture thoughts, anecdotes, and anything else that is interesting to me.

    Follow me on Twitter: @david_cummings
  • What are your three most important business measurements?

    It’s that time of year to start next year’s planning. We’re currently debating the three most important items to measure and set goals against. Here are the current three we’re working on:

    • Employee satisfaction
    • Customer renewal rate
    • Revenue bookings
    What are your three?
  • The Broken Windows Theory Applies to Business

    This Economist article on the Broken Windows Theory has been making its rounds on the blogosphere. The theory goes that the small things, left unchecked, lead the way for more serious problems. In criminology, an example is not dealing with graffiti and minor infractions giving way to people committing more serious crimes. In business, an example is not dealing with little headaches or friction that impede doing a better job leading to more complacency. I’m fan of asking the “five whys” and drilling down into the core issue. 

    What are some “broken windows” in your business?
  • Debt is Your Friend

    This one is for entrepreneurs and not consumers: debt is your friend. Too often, first time entrepreneurs think the first step to starting a business is raising money from other people or venture capitalists. My recommendation is to get the business off the ground doing whatever it takes — including using your credit cards. I used credit cards for my business eight years ago and even played the game of applying for new cards that had no interest for the first X months and transferring balances between cards in an effort to minimize the interest rate. Having tens of thousands of dollars of credit card debt, like I had, isn’t for the faint of heart, and is not recommended for most people, but it is often times the only way to get access to money.

    As for banks, the truth is that most entrepreneurs will never get a loan from a traditional bank unless you have collateral for 80% of the value (e.g. stocks, bonds, real estate, accounts receivables, etc). People think banks are in the market of loaning money but they are really in the market of buying physical goods on your behalf and letting you pay them back for it. They aren’t there to fund your dreams that involve intangible assets.

    My advice is to seriously consider debt whenever possible.

  • Jack Welch on the Four Types of Employees

    My younger brother is a first year student at Harvard Business School and was recently discussing a case in class on Jack Welch’s management style. After 35 minutes of discussing the case, the professor surprised the class by having Jack Welch come in personally and answer questions. The key message by Welch was that of the four types of employees and what you should do with them:

    • High performer that buys into the corporate culture — promote and empower them as much as possible
    • Low performer that doesn’t buy into the corporate culture — fire them as quickly as possible
    • Low performer that buys into the corporate culture — give them a second chance in a different position to see if they can be an ‘A’ player
    • High performer that doesn’t buy into the corporate culture — do a public hanging where you fire them and then discuss with other managers their short comings
    Of course, the last two types are the ones that provide the most difficulty for companies. I thought it was an interesting perspective from a very decorated business person.