Archive for the ‘Industry’ Category

How the world is changing…….



For years now the process of being a software developer was; write some java or C++ code, slapping a UI on it, packaging it up, giving it to a distributor, and bam every time Joe software buyer purchased your software from Office Max you got a check in the mail. Then the process changed a little bit when software makers started to sell their wares on the Internet instead of through a distributor at Office Max. Ok, now the developer could sell direct to the consumer through a website and a download but they had to hire a web designer to whip them up some sort of sales site; no big deal the margins were way higher selling software direct to the consumer.

Well, times are a changing. Software is starting to become hosted software, or cloud based software. The consumer now uses the software from the a web browser, and nothing is ever installed on the consumer’s computer. I am writing this article using Google docs instead of Microsoft word.

earth tout How the world is changing.......

So how does this affect the development process?? Well, it adds tons of extra overhead. Outside of just writing the web application the developer needs to become a sysadmin, account manager, support person, and more. Lets say I have a web service I want to sell for $20 a month. I have to manage the servers, manage the account (make sure the credit card on file is run each month and the customer is invoiced), I have to keep up-to-date on bugs and security holes because hackers are always finding new ways in. Lastly, people expect new features at a much faster rate. This drives up costs, days to market, and on going maintenance issues.

The days of writing compiled software that you can sell are ending. Some of the best compiled software I use today was written in week by software hacker. These small software developers cannot push their wares like they use too. Now, it costs millions to take a web application to the market quickly and maintain it. Not, every software developer wants to go out and raise venture capital money just to create and sell software.

Until we can better streamline web application development, bigger more well funded companies are going to dominate the software market. We see this as a problem and are building tools and services to help lower the overhead of selling a web application. More details to follow in up and coming months.

Don’t Be Afraid Of Change. We’re not.



It seems in the last few weeks we have been struggling with the concept of change. Not with us internally but our interaction with clients. Sometimes when you are programing stuff things change and new information presents it’s self and you might want to go back and redo things. For example you might have made the decision to have some sort of javascript error checking solution to validate your forms. After a while your forms have different requirements or needs and your javascript validation is not the best way validate or becomes very complex. Maybe it is time to go back a few steps and do some sort of back-end (maybe php) validation solution. While this is a simple example there are many cases where programers just continue to build on an original design after realizing the design might be flawed. I hear over and over again “We will fix that when we have time”, or “We know we are going to have to redo the site in a few years away we will address it then”. We feel this is flawed thinking.

When issues like these arise there are always 3 major problems to look at in the course of stepping back and redoing work.

  • We bill hourly and we would break our bid if we redo our work.
  • We have a deadline to meet.
  • We are bored of this area of the site. To stay sane we need to move on.

While the last problem is a tough one to deal with, I can address the first two problems. If you have a bad design because of scope creep, meaning your client added things which changed your preference on how something should be coded or designed. Break out the problem, put it in layman’s terms, and explain. We find 75% of the time the clients understand and are happy to pay the change order. The other 25% of time, after a while the client realizes what you said and asks you to make the changes anyway. If your redesign is well founded it will get done one way or another in many cases.

Now, if the poor design was your fault, meaning you just overlooked something and did not do your best work designing the code base. Step up to the plate. Tell your client what happened, don’t bill them the extra time in exchange for them agreeing to push your deadline out. It sucks! You have to do free work now but at least you have a product to be proud of and a product that when you add future features it is robust.

On your own internal projects this stuff happens too. So many times a new concept or feature is presented to us half way through our development cycle we want to put the feature in but it does not work with our current code base. Don’t let it go. Stop, redo and move on. Crappy code turns into even crappier code that turns into even crappier code. Think about it as a snowball!!

One resent example. We have been developing a product for a client for over a year now. We used our own custom php framework. This framework really works well for us but an outsider coming in might have a tough time understanding it. Our client wanted to bring in other sub-contractors. We knew this was going to be an issue, so we explained it to our client and after going back and forth for a bit we moved our php framework to Codeigniter, which is a framework most php programers understand and can start working with. This decision slowed down progress for about a month, costed our client more money, but now we have the flexibility to bring new people into the project and have less of a training period.

Our View Of Customer Relationship Management Software, CRM



It seems like every company out there has their own flavor of a Customer Relationship Management software system. Almost all of the software services in this niche have rather impressive products. Many of them are just knock offs of the successful salesforce.com and many of them are the anti-crms. The anti-crm guys tend to just hate how complex and difficult to configure the traditional salesforce.com style CRMs are so they tend to design an advance address book instead of a full CRM system.

If you are a large company with hundreds of sales people a complex CRM system makes a lot of sense. You will need many of the features and you will have several layers of needs for the system. If you are a small business with a few employees and not a large number of transactions each year mostly likely all you need is one of these advance address books.

We feel there is not a software as a service offering for the company that needs something more complex than an address book but does not need the 500 million features of a salesforce.com. We see this company as the type of company that has a lot of transactions. Think of a lawn mowing service, in a good size city you might have thousands of possible customers to reach out to and try to make a sale and then later maintain their account once you win it. A company like this would really have to track all their sales efforts and have systems to help with follows up and what not. They would also want to be able to manage marketing campaigns through such a system. Lastly, we would like the CRM to easily interact with other systems. So many times there is a disconnect between the sales system and the system that executes the “order” after a sale has been made.

We feel a CRM must have these characteristics:

  • Easy way to get leads and import them into the system. Such as just type a phone number and the system automatically fetches the rest of the data. Data entry is a big draw back to many of these systems.
  • “Out of the box” the system should just be easy and clear on how it works. No training involved. This “Out of the box” configuration should be perfect for 90% of the users, but we feel more advance options should be available for customization.
  • The system has to have email and maybe snail mail capabilities through the system. It should be able to send mass emails or easily convert my leads to a snail mail mailing.
  • There has to be ways to export data (maybe through an API) to the systems that run the company. So if you are a website and your sales process is getting people to sign up for your service on your website. Your sales people should be able to migrate the data collected durning the sales process to the site and create that account.
  • Basic reports are a must. Not these super complex reports that no one understands but something that shows the progress of the company.
  • The system does not need 25 different layers of the sales process. They are either a possible client or a client. Not these 25 layers other systems offer. They might be useful for bigger companies.
  • The system needs to be useful after the sale is made. So many of the systems on the market are great tools leading up to the sale but after the sale is made there are not many features for supporting the customer after.

We are sort of passionate about this type of software and have been doing many reviews on the typic we might keep blogging as our thoughts get deeper.

How Much Should My Web Application Cost?



This is something we here at Cloudmanic Labs talk about all the time. This is something we see a lot of chatter about on the Internet. If you have a super useful web 2.0/software as a service application should you charge for it? How much should you charge? I feel like we are back in the late 90′s where you purchased your copy of windows and then you had to purchase all the software to go with it. People were use to adding software costs to their computing life. Nowadays, people are paying for software but they do not realize they are. If you run down to Best Buy and purchase the latest HP super desktop or even better you run over to Apple and pick up the latest super sexy iMac you are going to get a machine loaded with software. You just take it home or back to your office plug it in and away you go. You might have some old software that your office buddy gave you a copy of or you purchased a while back that you have to install but in most cases you turn on your computer and away you go no extra expenses.

This is the question we have been struggling with at Cloudmanic as more and more apps are finding their way to the cloud this mean more and more monthly licensing fees. If you are a big corporation software as a service really makes sense because those annoying monthly fees 100% out weigh the cost of an IT staff. If you are a small business, (which most of our software is targeted towards), you might not have an IT staff; which means the more and more fee based cloud software the company purchases the more and more the costs are going to start out weighing the pros.

Easy make your software as a service solution free. Everyone loves free. Just get it up there somebody will come along and buy you out and you will get your paycheck then. Maybe, don’t count on it. If I write a desktop application and someone steals it from their buddy. While that is not good for my profit machine it does not hurt me at all. Now if I give out a free account to my software as a service application that does hurt. I am now paying for hosting, IT, and bandwidth overhead. This means I can not just give away the farm.

We feel that you have to give away at least a basic free account. So many people will just sign up for a service just to check it out. Once you get them in there they might think the service is cool and want to pay for an upgrade. As we are figuring out what services are free and what services are not we look at our costs, how much is it going to cost us to service this free account? We want to give away features that are not costly to us. An example of a costly feature is a feature where a person could upload many files to our database. That is going to add extra hardware and backup costs to our bottom line.

How should you price the paid portion of your web app? Beats me :) . It really depends on your industry and how much of a sales team you are going to need to sell it. If you have an application that all you have to do is put it on the web and get tech crunched you might get away with not charging very much. If you have to have a sales team hit the streets and give education and what not about your product you are going to have to charge more to cover the overhead. However, if your costs to spread the buzz and to educate customers on what your product does are high you might have a problem with your product or how you are conveying it.

We feel your pricing does not matter. It is all about the web crack. Get the customer in with maybe a free account. Get them loving your product so much they want to pay you for your premium service. Price it in such a way that when the charge hits their credit card every month they are do not question their needs for your product. What the price is depends on the industry (how wealthy it is) and how useful your product is.

Lastly, we are strong believers in paying up front for a year. This way the account is paid and the customer is not constantly being reminded of the fee they are giving you each month. Pay and forget is a great model in our minds. The discount you might have to give up to get them to pay might pay for its self by keeping the customer happy by not reminding them each month of your fees. Just remember monthly software costs are not very common for small businesses (well many of them). It is a new concept that is slowly be understood.