what is the best way to start a technology venture? I don't know the first thing about code or programming but I have a great idea. Is there a book out there that could get me started?
From my experience as a programmer at a development company where we've taking on several projects from people who have great ideas, I'd recommend you find a really smart programmer who you can convince to be as passionate about your vision as you are.
If you get an external company to do your programming, you'll end up in a mess, as they'll want paying for every little change you want.
Also, if you can get a smart, web-savy, programmer involved early on, then they're likely to pick holes in your idea, make you think through the details, and generally try to get you to really think through what you consider to be a "great idea". Also, they'll probably be able to tell you whether your idea has been done before.
If you really plan to program it yourself, then good luck. It's taken me 18 years, and a lot of hard work, to get to where I am as a programmer, and I'm still learning.
Paul Graham has some good essays on startups
Personally I would start off by creating something to show people.
Consider reading up on Eric Sink and I've heard good things about his book. And of course joelonsoftware.com, since Joel is one of the founders of this site.
EDIT: Not to mention http://en.wikipedia.org/wiki/Guy_Kawasaki (blog) & http://en.wikipedia.org/wiki/Marc_Cuban (blog)
I'd recommend
go to a big bookstore, look at django, rails /merb, PHP and ASP.NET books for web apps. Think about the SQL schema, and kind of estimate the types of queries and joins/ join tables involved (there's no merb books in beta/manuscript that i know of, but some good tutorials
developing some finite number of slides (say, 5-10) presenting your idea: whose pain do you take away? where is the data, how hard is it to aggregate, massage, personalize and deliver? why there's no competition in the space, or what competitors don't do today.
look at a simple wireframe, in whatever the hot tools are now
hanging out at the Perl, java, python, PHP, whatever, user groups in your area,
the hacker news FAQ
(The keys are simple, and doesn't take long to digest your 3 docs (schema, slideshow, wireframe)
Not to throw water on you, but anyone can have an idea - its the execution of it that counts. If you cannot bring anything to the table other than the idea, then i doubt any god-like programmers will join you (since they could have their own ideas).
Now, I said god-like because only with god-like programmers could you do well. If you hired ordinary programmers (such as rentacoder or something?!?!), you would pretty much flop unless you're really lucky and hit a jackpot idea that takes off even without good execution.
So much is going to depend on which programmer you connect with. If you need a dentist to repair a filling, is the work so variable there that there's a big difference between a good dentist and a bad dentist? I don't know. But for sure, there's a big difference between a good programmer and a bad programmer. So, spend a lot of time on who you pick.
Working with a consulting company only guarantees that you will be paying higher prices. It doesn't guarantee that you will be working with somebody good. Some of the worst programmers I've worked with were junior programmers at firms with worldwide reputations.
If you don't have the technical skills to do what you want, your idea is pretty much worthless - I have dozens of ideas in all sorts of fields I can't implement. Having the greatest idea ever, but with no idea on how to implement it makes it merely some neurons firing in your head.
That being said, here are some ideas about finding the implementers, beyond you learning how to do it yourself:
- Network
- find local User Groups
- if you're in school, or have the opportunity to go to a school, find on-campus groups that think like you do; the Association for Computing Machinery pops to mind
For startup-related thinking, see the following:
- See Guy Kawasaki's blog, specifically starting with his 10 20 30 rules of PowerPoint - http://blog.guykawasaki.com/2005/12/the_102030_rule.html
- Read Paul Graham's essays - http://paulgraham.com/articles.html
- Read Y Combinator - http://ycombinator.com
- Find a local startup group, like ProtoSprout in RTP. See http://startupweekend.com for others in your area.
- Find startup-related RSS feeds. I subscribe to a few on my website (http://warrenmyers.com/startfeed.php)
- Other ideas may be found on this related question I asked a couple days ago - http://stackoverflow.com/questions/259670/finding-ideas-for-a-startup-switching-gears-during-development
Here are some of the steps I'd consider:
- Develop a solid business plan. If you don't have enough "meat" to your idea to get a business plan together, it needs to be developed further.
- Start your real company. Get a lawyer and start your company. You'll get tax breaks, a good review of that business plan you just did and some other benefits out of this.
- Source talent around you. If you can, look at friends, relatives, friends of relatives, co-workers. People you know. They might have the talent pool that you'll want to draw on. People who know you are more okay with working for free or almost free which might help later.
- Think about money. Are you going to need money? Do you have to pay for the help you'll need? Do you have the cash to do so? If you need money you need to talk to Angel investors or Venture Capital companies. You'd better have a good business plan if you want to get anywhere. They've seen many companies rise and fall...
At any rate I agree as well check out Paul Graham, Eric Sink, Joel Spolsky and also Seth Godin for inspiration, advice and information.
It completely depends on how you see this happening. Are you interested in programming, or do you just want to build a business around your idea? Neither one is wrong, but forcing yourself to write code because you want to start a business is just going to lead your new business to a slow and painful demise. If you really do want to write code, then go for it, just know it will take years to get "good" and longer to get "great".
If you want to focus on the business, find a programmer with passion and a good attitude and partner with them. You will get a different level of work and interest if they are a partner rather than a hired gun. Let them focus on the technical side of things while you work on the business side of things.
If you can find somebody with the skills and the drive to get things done, you have a shot at success.
Pick a programming tool, any programming tool. There are lots of them but you have to start somewhere. Buy and read a book that teaches you how to use that one tool; pick the one with the nicest cover art if you like.
Then try and create a very simple version of your idea. It will suck because you won't know what you're doing but that doesn't matter because at least you'll have something to work with.
You can teach yourself how to do this. It's a hard slog, but if you don't have the money to hire professional programmers to do it for you what choice do you have?
Guy Kawasaki's book The Art of the Start may have some good tips for you.
If it's a software product you're looking to sell, Micro-ISV: From Vision to Reality by Bob Walsh may help.
I also second Mat's and Warren's lists of links.