A while back I posted about my interest in starting a microISV with a few friends. We've been delayed for the last month because of various vacations and personal things, but we should be able to jump in over the course of the next few weeks.
I had been debating about how much to tell of the product before we have anything to show. After some thought I've decided that I'll just talk about the product before, during and after development in addition to the other business related things that may come up. Here are the reasons I've decided to be very open about it:
- The product isn't new or revolutionary so I have no risk of stolen ideas.
- Posting about the product before and during development will give me more to talk about thus increasing the number of posts here.
- Posting about the product gives me a chance to think through some of my ideas and possibly identify the bad ones.
- On the off chance someone reads all this and has valuable feedback to contribute.
The only real reason I was hesitant before to post about it is that there's a greater chance of making a fool of myself. Well, why not just throw caution to the wind? Without further ado, the product:
Boiled down to the most basic sense, it's just a CMS/Portal application. I know what you're thinking: "do we really need another CMS?". I think we do, and here's why. I love CMSes. I think they're great but there are a few problems I have.
I want a CMS for me as a personal user, not just at my company. I also want one that isn't a pain to configure and doesn't have me worrying about which hosting company to go with, what modules to install, and how to get the thing running smoothly. So, here's goal one:
- Create a CMS that focuses on regular users instead of corporate ones.
Note: to me this means that the system will be managed and hosted by us. No install, configure or setup. Just a simple web page to get you started.
I want a CMS that is fully AJAXified. Take Sharepoint for instance. The simple act of creating new lists, adding and editing items, or changing the layout/design of a site on the fly is a pain! Many things could be improved there. So here's goal two:
- Create a CMS that takes advantage of AJAX style functionality wherever appropriate and possible.
I want a CMS that supports integration with a thick client. I don't currently know of any open source options but the Sharepoint/Groove combination offers this. The only problem is that it's prohibitively expensive for a regular user as well as not that easy to set up. If your corporate IT department is handling everything then you're fine, but we're not targeting corporate users. Now obviously, Groove is more fully featured than any initial version of our thick client would be, but we can fit in some basics. Let's split this out into goals three and four:
- Create a CMS that makes it easy to enable thick client applications to interact with the system.
- Create a basic thick client that gives the user the capability to keep the content on their desktop and the CMS synced up.
Users have content spread out everywhere. I personally have content and data on multiple systems in my home and work as well as various web services/applications on the net. I want a CMS that makes it easy to pull all my data together in one place. Sounds like goal five to me!
- The CMS should support integration with other on-line services and data from multiple places.
The CMSes I've seen are all designed with the IT guy in mind. The IT guy only deals with the damn thing when it's being deployed and when a user has an issue! Since our service is going to be managed and hosted by us, let's focus on the people who will have to use it every day. So my goal six is nice and fuzzy:
- Create a CMS that is focused on the day to day user.
Waiting for new features and bug fixes is determined by the release schedule for the CMS. Well we're hosting and managing this thing so can't we make it a bit more agile? Yes we can, goal seven:
- Design the system to handle frequent bug fixes and feature releases.
Here's just another miscellaneous goal I have which I won't associate to any specific problem:
- Data belongs to the user. Make it easy for the user to access their data/content and don't lock them into the system.
There were other things I had in my head but they fell out while writing this post. Right now, we're examining what technologies we should use to develop all this. I'll be posting more this week about some ideas we've had and what way we're leaning.