For Python: http://www.freenetpages.co.uk/hp/alan.gauld/
http://www.ibiblio.org/obp/thinkCSpy/
http://www.diveintopython.org/
I also read the O'Reilly book on Python - 'Programming Python'
There's Python.org for all docs, of course.
For Django - http://www.djangoproject.com - they have a cool tutorial on the front page, and http://www.djangobook.com, then move to the documentation from djangoproject.
But there is some really good PHP code out there. The problem is finding it--particularly for a non-programmer. DokuWiki is very nice. Flyspray aint even half bad. Wordpress, while extraordinarily popular, is a bit painful to look at...it's getting better, but it's not ideal to learn from (I'm not knocking Wordpress...I use it for two blogs and recommend it to everyone who asks about blogging software). The majority of Joomla is downright scary bad--I feel dumber every day that I spend working with it.
Finally,when your app gets complex and you need to hire programmers, you will thank me for this advice
I'd suggest trying to change your "mindset" as well, building and reading supporting information at the same time. One such way is to read "SEIA" (Software Engineering for Internet Applications, Andersson, Greenspun & Grumet) which is online or in print and follow the book through ~ http://philip.greenspun.com/seia/
The book/course is easy to read and most important devoid of advocacy. The good thing is you can start now at no real cost. But it will take time and effort though.
Temperamentally, many people are poorly suited for programming. The OP might be a great designer, writer and bootstrap marketeer who could benefit from a partnership.
I'd advocate for assessing your skills and honestly figuring out if you have anything to offer to a founding team (a lot of skills really don't matter until you've actually built something of value). If not, sure-- learn to code. Learn to design. But if you do have valuable skills, find a partner who has complementary skills and get rolling. If you can't find a partner, it's likely that your idea isn't as good as you thought it was. ;-)
And the majority of the replies I received were ones telling me to learn how to program.
Just because I'm learning to code doesn't mean, however, that I am tossing my other skills away. I find that I have a much much much better understanding of the mechanics behind apps and that at the very least, i'll be able to connect on a much deeper level with another programmer if I were to assemble a team and not take a significant programming position.
You're right, perhaps he may turn out to be an awful coder, but at the very least, establishing a common thread of communication by which a programmer can relay his concerns to a designer or a marketer, and for them to understand, in my opinion, is pretty valuable.
I learned to program just for these exact reasons (better understanding of the problem domain for a business, better communication with technical staff, etc.) By all rights, I should be the absolute worst programmer in the world. But based on unofficial world rankings, it turns out that I'm only in the bottom five ;-)
Programming skills (however limited) and business savvy are a very potent combination. I don't regret learning to code at all...
They didn't coin the phrase "starving artist" for fun.
(hypothetically if this is the case:) it's really hard to convince someone of your value if you can't even sell it to an angel or vc, and have cash as proof
Enough said I think. :-)
not all business people are too proud to step outside of their comfort zone and learn something new...
From my own observation, programmers can and do have a very difficult time both understanding what people are willing to pay for, and getting them to pay for it.
Some hackers are great salesmen, and a few business folk are decent programmers, but if you're going to use the painting analogy the way the GP did, you can't discount the act of selling as something that'll just happen.
if you don't provide a counter example - it's almost the same as saying all
if you think most programmers are pizza box hermits, i think you need to spend some time with more of them. the stereotype has some basis in some parts of the country, but i think it's largely overblown
I'm not discounting the act of selling... it's just from my personal experience most business people aren't great at presenting or selling either - it's only a few (saying something is very different from doing - this relates to my view on ideas too), hence the need for proof (or your cash)
Enough said I think. :-)
1) Evaluate yourself and the skills you bring to the table. It's all in how you sell yourself. Even though I can't program, I understand experience design, business, visual design, and can get my hands dirty with some HTML and CSS.
2) Network locally. You're probably not going to find anyone worth working with online. Especially if you start out: "I have a great idea, but can't code. Wanna help?"
3) Be open to new ideas; people generally want to participate in the idea construction and product design. They don't want to pick up something that's been thought completely through.
4) Be willing to plunk down some cash. Get a tech lead for your project who can manage people you pay to build your system. If it's simple enough, you can build a decent app for less than $10K.
"Co-founding" is more than just splitting the stock pie. It's about coming up with the vision & direction for the company, which can't be done if one person has already done that for himself.
Consider this.The same amount of time that Google spend building a billion dollar startup is what a two bit outfit spends generating a million dollars.
Or another that goes belly up.
In other words ideas and execution equally matter. Maybe execution is a little more important. That's why Oracle dominates database software although initially there were multiple database startups (same idea).
A recent survey of forbes billionaires confirmed this. Many of them picked ideas over execution others picked execution.It all depends on the situation.
In any case, you can try building a prototype by using freelance sites such as guru.com or elance and then see what response you get from your target customers.
I think it is important to get feedback from would be paying customers. If it is positive then go for it.
-Augustus
It is execution that matters. Ideas are a dime a dozen. What google did was excellent execution of an non-original idea (there were lots of search engines at that time).
Look at the UConnect vs. Facebook. vs. that other dude that that the same idea. Facebook was able to execute much faster and better and got traction, while Uconnect is just crap, and they have to resort to lawsuits.
Sure, if your idea is dumb to begin with, then no matter how good the execution is, you wont get anything out of it.
But you still can change ideas and business plans around, and from a loser make a winner offering. (many startups end up changing their ideas business models at some point, including the company I am working for). If your execution team still sucks, your products will show it, and the next guy that likes idea, will copy it, and make a much better version of what you are offering. (just like Friendster got hosed by poor execution).
But it is a common trait from "Business" people that think ideas matter more. It is more of a whishful thinking. Honestly being good at business is nothing more that having a good common sense and street smarts, and knowing how to B.S. a little. Things that no school teaches you.
So my advice, learn how to build websites (as a programmer I'd like to concetrate on the harder stuff), do everything you can help the whole team, (from marketing, getting graphics, building mock-ups or prototypes) etc.. While you don't have to program, you better have some good technical skills, and really understand what's going on and how hard or easy is to do some stuff.
One thing that is very annoying, is how non-technical people think it is sooooo easy to just have an ajax drop down, or that little thing here, that little thing there, without having the slightly idea how much work it really takes.
The probable difference between ConnectU and Facebook? Facebook spammed all of Harvard to get its initial traction, ConnectU didn't.
Not without a working implementation, no.
"The probable difference between ConnectU and Facebook? Facebook spammed all of Harvard to get its initial traction, ConnectU didn't."
Right. Execution.
His exact quote: "ConnectU was nothing like Facebook. It was a total joke."
"Spamming" or not, Facebook executed better.
Also even if another team had the Pagerank idea, they still could've royally blew it. You think Yahoo hasn't studied the algorithm and come up with their own version by now? If it was just the idea then Yahoo would have a search engine competitive to Google by now. (it's getting there but still has a long way to go)
Idea vs Execution (or which one is more important) votes:
------------------------
Arthur Blank: both
Tim Blixseth: both
Otis Booth: Execution
Mark Cuban: Execution
Gerald Ford: both
Danny Gilbert: Execution
Kennet Hendricks: both
Wayne Huizenga: Execution
George Kaiser: both
Michael llitch: Idea
William Moncrief: Idea
Phillip Ruffin: Idea
Jorge Perez: Execution
James Sorenson: both
------------------------
Both are equally important (tie): 6 votes
Execution: 5 votes
Idea: 3 votes
Conclusion: Execution wins
If you have that kind of knowledge and you are able to communicate with users then please please don't waste your time learning to program. If you have no special knowledge about a particular user community or industry then you should learn to program.
Then pick a language and set up a development environment. (A difficult step to get past, but you might be able to get someone to help you do this for free)
Then start reading tutorials and doing practice examples.
Once you have a feel for how to get a basic app up and running, go back to the specs you wrote earlier and identify some subset that you want to implement.
Begin implementing your idea until you get stuck. When you get stuck, research the language tools you need to get unstuck. If you find yourself hopelessly lost, either pick a different subset of your app to work on, or go back to reading textbooks, tutorials, and forums until you better understand the concepts.
Writing code forces you to think precisely and consider practicalities that are otherwise hidden from you as a user.
Youch. That's a painful trap of circular logic to fall into. Keep in mind that most businesses have been started by non-programmers.
We're talking about web technology businesses here, I presume. Otherwise OP wouldn't be trying to round up a programmer. The vast, vast, vast majority of web application startups are started by technical founders. Even the exceptions tend to bring some technical know-how to the endeavor (Digg, MySpace are examples of the non-programming founder, and they're the only two successful startups that meet that criterion I can think of off-hand).
Non-technical founders can create value. But that's hard to prove in the initial "Hi, do you wanna start a company?" phase. That's why he's not getting much traction from developers he talks to.
1. Create a simple prototype that demonstrates the core ideas of the concept and show it to a few people (you trust). You may be able to attract some good developers if it appeals to them.
2. Start a blog and talk about how your idea may benefit some potential customers. See whether any one shows interest.
3. Go to one of the startup meet ups (www.meetup.com) in your area and informally discuss it or present it to the group.
4. You may not need to build the entire software. Most of the good developers know how to reuse existing software (libraries) to quickly build a version 1 of the product.
5. Try a few interns from your local computer school and let them build the first version of the product. Let a few friends try it out. If there is enough interest, you may be able to find some supporters in funding it or developers interested in developing it further.
6. You can start a project in one of the open source communities like sourceforge put some high level specs and see whether any one will be interested in joining you.
7. If you strongly believe in the idea and do not want to go open source, prepare a simple plan and approach some angels. Many angel investors may also have a good rolodex of development resources.
I think having a good idea for a great app is cool. But you need to go to the next step of prototyping or let others visualize it so that you can get some reactions. This will help improve the idea and also hear if such an idea is already implemented somewhere else.
This is a rather persistent myth about Open Source. It's entirely fiction. If you post a working version to sf.net, you'll probably get a few bug reports and a few questions. If you work on it for a year, and do something really valuable to a lot of people, you'll see a few patches. If you work on it for another year, and continue to add value for a large technical audience, you may have a few parties who are interested in joining the project in a serious way.
Open Source software does not spring into existence. Nearly every project has one (or more) extremely dedicated developers pushing it forward every day. A non-programmer wishing something into existence is not going to make anything happen. I promise.
Solution 2: Low cost. Long turnaround time. Start learning now how to program and build the web startup yourself. The biggest drawback with this option is that there's more to learn to correctly build a web application than to build a more traditional desktop program. It could take you six months before you've got a comfortable enough grasp of web programming to make progress on building your program. Although if it can be built as a Facebook widget or on top of existing services like those offered by Amazon, that may cut down on overall development time.
Solution 3: Higher cost than #2 but much lower than #1. Turnaround time would also be somewhere in the middle between #1 and #2. Partner with a friend of yours who also knows how to program. This way, if you decide to learn how to program you have someone right there to help you. You also have the option of dividing the work where you handle the business side and let your partner(s) handle the technical end.
Then start with Python.
You could remind us every day about what you're doing and probably no one will care. That's part of the challenge of running a company.
Have yet to find a good example of that really working for someone...
That's true, but business methods and certain software implementations of novel ideas are patentable...at least in the US. I've found that truly good ideas are easily translated into one or both of these. The problem is, most people have "me too" ideas.
All philosophical arguments aside, the patent system can be an entrepreneur's best friend. Yes, the system is heavily abused. I personally don't believe in software patents. But I damn sure use them. Color me hypocritical.
I have a lot of ideas. Some are worthwhile. And yet I think execution is the hard part.
John.
Upmodded. That is brilliant.
As an entrepreneur, I have very specific thoughts on what constitutes a "good idea for a business." To me, it suggests that you have four things:
1. a keen insight into what a group of people (with money) want
2. you have a means of delivering a solution to those needy people
3. you have a way of targeting those needy people to let them know about your solution
4. you can deliver your solution at a profit.
When I started investing in startups, I learned that my definition of a good idea for a business differs GREATLY from what many are willing to pitch to me as a good idea. Many people are willing to pitch a very nebulous 'idea.'
There are also certain ideas prevalent in the startup community now that are MOSTLY or SOMETIMES true, but that I think people take too literally or misunderstand.
"Ideas are worthless, execution is paramount." Look, if you have a truly great idea...execution becomes much less important. With a great idea (which implies an actual business model), you can make quite a few execution mistakes and still end up with a great business. If you stumble, investors are more forgiving and will usually find the help you need in the execution area.
"Your final business is almost always different than what you initially intended to do" is another startup cliche that I think some entrepreneurs sometimes take too literally. This pearl of wisdom is basically telling you that you need to be flexible. Being flexible is very different that attacking an industry because it is hot and hoping something shakes out.
"Get the users and figure out a profit model later. It is easy to monetize millions of eyeballs." Again, this may be mostly true for a certain class of business...but it can also be a ticket to FAIL.
With apologies to Mrs. Robinson, I'm actually getting pitches like this:
Entrepreneur: "I have a GREAT idea!"
Me: "Yes?"
Entrepreneur: "Plastics!!!"
Me: "What do you mean 'plastics'?"
Entrepreneur: "They're gonna be huge. Plastics are the future."
Me: "What is your actual idea? How are you going to make money?"
Entrepreneur: "Advertising?"
ok, ideas are easy. Ideas that could potentially make a lot of money aren't too hard to come up with. Ideas that could be the next big thing, are also within most peoples grasp.
Still think coming up with the idea is maybe 5% of the work. It's almost as bad as people who register what they think is a great domain name and think that's their website pretty much done now.
Another painfully true observation.
There is a spectrum between being a complete retard and a coding ninja, though. There are plenty of sweet spots for entrepreneurs between the two ends of that spectrum.