tags:

views:

72

answers:

2

Hello Everyone,

Guys i would like to know what are the tools and technologies needed to start a software as a service business. What are the requirements needed ?

+1  A: 

Kind of a silly question? You need a web application that provides a service. You can use any language or hardware that you want. Most likely you'll need a web server or the cloud. You'll need a profitable idea, some money, and some programmers that are worth a crap. You need some way to convince them to do the work for you, generally this involves money or pizza. You'll need to not run out of money before you have something useful that somebody in the world wants to pay you for. Then you need some way for them to pay you. Good luck.

Edit: As far as technologies, a good programmer can write it in 5 different languages for you with a similar result. Let them decide what to use and focus on clearly defining requirements, like scalability, performance, business logic requirements

And you'll need some common sense.

If you're developing it for yourself, stick with what you're familiar with unless there's a business requirement that it can't meet. You should be concerned with the fastest way to get money in the bank and be profitable, which may force you to use a particular technology depending on requirements. It seems you know python, which is pretty good for web stuff after all.

Gary
Not so silly if you look at the business side.
TomTom
@TomTom: Actually. It's silly from the business side, also. If you have a business idea and a plan and have no technical people at all -- absolutely zero -- and you're asking the question here, then your business is doomed. If a business person doesn't already have a technical partner to make these recommendations, our random answers will be less than useless.
S.Lott
But the answer is common sense? How do you run a successful business without common sense?
Gary
A: 

From all technologies:

  • Drop Python. Python is limited in scope at the moment.

  • Java or C# are well accepted in the enterprise.

  • C# is more open. Sorry guys - reality. C# has: Great support for eweb services (API), support for server side and client side code (including silverlight).

The latest gives you one open code stack that is accessible from other languages (web services, OData) but gives you one integrated development stack from the backend to possible visual gizmos in silverlight or client apps for the user.

java lacks the openness to my knowledge in the web services area and the client side (applets are not that good compared to silverlight).

It depends a lot on what your software service does, though ;)

Licensing costs are irrelevant for you at the moment, though - look up Microsoft SPLA and Microsoft Bizspark ;)

TomTom
Java has a ramp-up time and huge pile of crap involved that makes it really not useful for getting something up and running quickly, unless you already have a lot of experience with say, spring, hibernate, etc. You should be focused at getting something running quickly so you can start getting money. Python is good for rapid prototyping. There's a bunch of php 'programmers' around that can put something together quickly. You'll be able to get a couple features in before it turns into a useless pile of crap, but that's equally likely with java. A good programmer can be successful with any tech.
Gary
@TomTom, why do you say python's limited in scope?
Gary
also, one plus of java is its good integration with adobe flex client-side.
Gary
BUT: that is two tecnologies to master compared to one integrated stack. @Gary - show me in browser Python ;) Show me how many possible customers (end users?) using Windows have Python preinstalled. A lot less than have Java / Silverlight / .NET framework. Show me Python IN A database ;)
TomTom
not saying I like java :-). But I like flex. 1. http://www.skulpt.org/ But I think you're really looking for a UI library like http://pyjs.org/ 2. SaaS customers will just need a web frontend most likely, no need for python installed client-side. 3. http://stackoverflow.com/questions/1866439/syntax-error-exec-ing-python-code-from-database
Gary
That is VERY limited in view. I know many SaaS that give API acccess and / or have toold for the customer to install for visualizations. Even social networks (example: Outlook Social Connector for Xing, Facebook etc.). Being able to do all that in one tool stack is a hugh financial advantage.
TomTom
or maybe you wanted something like: http://buzhug.sourceforge.net/
Gary
I guess. That's what json and XML are for. At the point where you're worrying about stuff like that, hopefully you're making enough money to add whatever functionality you need. It really all goes back to the requirements.
Gary
Maybe I'm of the view that I'd rather worry about making the first million instead of the tenth :-). Look at Amazon and facebook. Both were implemented in php, which is worse than any of the options we've discussed. I think in general, you don't worry about stuff like that and just get it done as fast as you can on your limited resources.
Gary
Even thaen having only one code stack is highly advantageous. like may help you to actually MAKE the first million. Integrated unt tests from top to bottom, only one language coding style, more focused developer skill set. I know enough SaaS setups that ignord that and now are stuck in a corner of high costs and hard to maintain technology mixes.
TomTom
Actually I disagree entirely with the one stack thing. If you're writing enough code where it's worth it to specialize on a more appropriate technology, then it's appropriate to switch. For instance, if there's some crazy algorithm you need to run quickly, call a C or C++ library from python. But don't make your whole application have to be written in C/C++ because of that one little snippet. There's too many downsides. Are you also complaining about HTML requiring javascript to be useful? Use the right tool for the job. Don't throw your hammer away because you picked up a screwdriver :-).
Gary
So what's the one stack to rule them all? Btw, jython and ironpython exist for the JVM and CLR :-).
Gary
Also, what were those SaaS setups using that was particularly hard to mix? Genuinely curious.
Gary