4 ms·
What should a striving non-programmer do?
I have all of these ideas for a startup burning inside me, but with no real programming skills and no partner (yet) I feel trapped. Is it worth my time to teach myself programming? Any advice would be great.
- jsjenkins168 19y agoWhy not just learn to hack? If you start out small and work with bite-sized pieces and good tools, you'll see its not as difficult as you might think. I'm a firm believer any smart person can be good at coding if they are determined. My advice is to pick up an intro book on Python and start with basic examples. With a little work, you'll be building cool stuff in no time.
- bootload 19y ago"... Why not just learn to hack? ..." "Learning how to hack", Is like trying to get someone with a "junk food diet" to become a "gourmand" by learning how to cook. Hacking is a mindset and while you can learn to be a hacker ~ http://catb.org/~esr/faqs/hacker-howto.html http://catb.org/~esr/faqs/hacker-howto.html I just can't help but think some are born with the hacking gene(s) (if there is any) and some are not. It goes to the core motivation. Is it just the money? Or it it, hey I can also make money doing this? If you are not into technology, software, building there is always real-estate.
- zaydana 19y agoI agree that you should at least learn a bit of coding. That said, there are many code monkeys out there (like me) who need business partners who can are arty and/or can run a business. Coding isn't the only thing required to run a start-up (I think :P).
- s_baar 19y agoYou should learn as much programming as you need to but if you find that it's not your strong suit then there are other options. Besides being the "business guy" in a startup, you can probably work on finding people who are passionate and fill in their holes. Chances are that someone is working on something similar enough to be useful to you. What you can do now is approach these people with one of your ideas, show them how you can reach mutual benefit and coordinate efforts so that you can get together all the people you need to make something great.
- fzkl 19y agoOk. I have been wanting to post this question myself. I can solve problems in C and am good with logic. I can also do some HTML. But when it comes to interfacing with the web and real world applications I just don't know where to get started. Things like databases, libraries and API puzzle me.
- emmett 19y agoWeb applications, databases, and APIs are all really very simple. An api is just a collection of functions (or ways of calling functions) someone else wrote. A database is just an api to store tuples. A web application is just a program that listens on a TCP socket for HTTP requests, and responds with HTTP responses. You can write your own web server in a couple hours, even in C. It won't be any good, but it's a fun confidence building exercise. Then learn Python or Perl or Ruby or Lisp or some language with non-sucky strings, install Apache and mod_python/perl/ruby/lisp, and point it at your script. Voila, instant web application! There are plenty of step-by-step tutorials online. I was in a similar situation to where you are before I started on Kiko Calendar - I'd never written a web application or used a database or api before in my life. Thanks to the internet, I could learn how in a couple months. You can too.
- whacked_new 19y ago"You can too" is the most important sentence in above post. Remember it.
- mechanical_fish 19y agoI recommend a very good, slightly obsolete book: http://philip.greenspun.com/panda/ http://philip.greenspun.com/panda/ This is the book that got me into web publishing back when I was like you. It is, as I said, slightly obsolete, so when you finish it you will be an expert on the cutting-edge Web technologies of 1998 (e.g., Oracle). But the step from then to now is not as large as you think. (And, to be fair, the online version of the book has been revised a few times in recent years.) There is also a New and Improved book that covers much of the same material: http://philip.greenspun.com/seia/ http://philip.greenspun.com/seia/ I haven't read this myself, and I believe that (as a textbook for an MIT course) it may be geared more toward hard-core hackers than the earlier book, which was intended to be readable (or at least skimmable) by non-programmers. The advantage of these books is that they provide large-scale perspective. I didn't know what a relational database was when I started the book, but I sure did after I finished.
- SwellJoe 19y agoCode is the most valuable component in a tech startup during the early stages. If you can't produce it, you're value to an early stage startup is low. It's that simple. Ideas have little to no value. Execution is what separates the winners from the crap, and the Facebooks and MySpaces from the thousands of other social networks built by no name coders on eLance (at any given time there are dozens of listings for wannabe development). That said, MySpace was made by non-hackers. So was Digg. Bloglines was partly created via eLance contracts (though Mark Fletcher is nerdy enough to pull things together in ways that a non-nerd might not be able to...the same is probably true of Kevin Rose and Digg). Maybe you need to hire your development work. Or, you could learn to code enough to make yourself valuable. Great web designers are every bit as important to the equation (and a weakness in most developers...so if you bring good design, you may be able to find partners far more readily).
- prakash 19y agoRe: Digg was created by non-hackers. Not true. I am not sure if you have heard of digg's other co-founder Jay Adelson (http://www.spock.com/Jay-Adelson http://www.spock.com/Jay-Adelson). Jay started Equinix, that does require some technical skill
- rms 19y agoKevin Rose hired an offshore programmer to write the php for Digg...
- staunch 19y agoHe did farm out the work to a random person on ELance (for $2k), his name is Owen Byrne. But he's a Canadian I think, so maybe "nearshore" would be more accurate. http://www.elance.com/p/corporate/community/resource-center/elancer-oct-06.html http://www.elance.com/p/corporate/community/resource-center/...
- vlad 19y agoNearshore is also wrong because there isn't a shore between Canada and the US. The term is "outsourcing" to anyone in the US and Canada. If it's to another continent, then it's "offshoring."
- staunch 19y agoIf you had a burning desire to create a new building of some kind but weren't an architect/engineer what would you do?
- kingnothing 19y agoQuestions like that sometimes keep me up at night. There are so many things I'd like to do in life, but not nearly enough time to learn how to do them all.
- daniel-cussen 19y agoI feel your pain. I also have more dreams than time to carry them out.
- trekker7 19y agoI'm going to offer an alternate point of view from some of the other comments (I'm a programmer and am studying CS in college). Do you think if you gave programming an honest shot, you'd sincerely like it? If the answer is "no", then forget it... don't learn how to program. Instead, find a programmer who likes your ideas and is willing to implement them for you, as an equal partner. This may be tough to find, but that's what you have to do. Ideas have tons of value. In my opinion, ideas are insanely important. The best-engineered, slickest, cutting-edge application isn't going to make a flipping cent unless the user-facing features add value. And these features can be formed from ideas that ANYONE has - not just programmers. Don't think that you have to be a programmer to have great ideas; that's utter bullshit. That being said, I think you do need to know your way around technology, because as a lot of people say you need to know the options; what is feasible, what is not feasible; what powers and raw functionalities you have at your disposal. Read Wikipedia articles about things like AJAX, server-side computing, search algorithms, social computing, etc. Watch Google Tech Talks about whatever sounds cool to you. Try to figure out what the current state of technology is - in terms of functionality and capabilities - across the CS/software board. You don't need to be a programmer to do this. But don't struggle through concepts that you find boring; read about stuff that seems cool and interesting. The bottom line is, do what you love, period. Yeah it's cliche. But if you take up an activity because you care about the end result, and not about the journey, you're going to end up frustrated and will probably just give up. Whatever you're passionate about, do just that, and find someone else who's passionate about the rest to work with you. But you should give programming an honest shot anyway, to find out if you like it. It's cool stuff.
- staunch 19y agoNice post. I'd just say that the best way to learn what options are available is probably not studying like a programmer would on Wikipedia or tech talks. The best way for a non-programmer to do this is to find pieces of other technology and say to their hacker founder "Let's do X like that!".
- pg 19y ago> Don't think that you have to be a programmer to have great ideas; that's utter bullshit. While I wouldn't say that you have to be a programmer to have good tech startup ideas, I wouldn't say that it's completely false either. Empirically there's a clear trend: most of the most successful startups were led initially by hackers. (And the most notorious flameouts mostly weren't.) It makes sense that people who understand a medium will have the best ideas for what to do with it.
- steveplace 19y agoGreat resource for some skillset learning: http://ocw.mit.edu http://ocw.mit.edu
- ph0rque 19y agoI was in the same position as you literally two months ago. Since then, I've brushed up on HTML, learned CSS and Javascript (somewhat), and am learning Ruby on/for Rails. In retrospect, I would learn RoR concurrently with the others. I would definitely advise you to learn some programming, since even if you find a partner, he/she may not have the same drive or take on problems that you do. Knowing a little bit about hacking, even as an amateur, will enable you to go further than you would otherwise.
- xzibitendo 19y agoI think that is excellent advise, thank you! If you have come across a link that explains what each language's advantages are for web-development, please share.
- ph0rque 19y agoThe advantages/disadvantages for each language have been discussed here and elsewhere ad naseum. To tell you the truth, I didn't research the language decision too much; my rationale for choosing RoR is based on the fact that we have a R(oR) meetup here in State College, PA; that's why I decided to learn that. In fact, the decision is not (totally) settled yet. My brother is a web developer with five years experience. He is pushing me towards php on Zend (PoZ?), a php web framework authored by the authors of php. For now, however, I am trying to learn RoR just in case he is not able to help me with PoZ. That being said, I heard that RoR and Python (maybe on Django) is the best for newbies to start with as far as web dev languages go.
- altay 19y agoI'm in the same boat - a recovering 'ideas guy' who buckled down and actually learn to hack over the past year or so. (One of the best decisions I've ever made. Though, granted, I developed a real passion for it.) I'm enjoying Ruby/Rails, but will probably check out Python next, because so many smart people seem to gravitate to it. BUT, that said, I'm going to commit hacker heresy and recommend that you consider starting with Javascript. Here's why: Hackery reasons: - it's how I learned object-oriented programming - it's how I learned functional programming. (well, ok, a little bit of Scheme helped, too.) Practical reasons: - in any project, no matter what the backend is, you're always gonna need JS on the front end - with the rise of rich UIs (ajax and whatnot), people who really know their JS are in demand, and it's a niche that most hackers don't focus on - you can learn from studying thousands of other real-world programs. (when you see something cool on some website, just pop open the hood -- or, rather, pop open firebug -- to see how it works.) - it's the layer that's closest to the user. this forces you to keep everything in context while you hack. - you said you're a good listener. empathy is key to UI design, so you might find this to be a good place to mix your strengths with code. Ok, now all you real hackers can tear me apart for recommending a toy language. ;-)
- rokhayakebe 19y agoCoding is a lifestyle. You can learn how to code. Anyone can. But by the time you have learned enough to build your idea, it will have become obsolete. get a co-founder maybe or hire a firm to do the work for you and take it from there. You are less likely to succeed, but at least you will not sit down some day and say "I should have tried". Take it from a suit.
- snorkel 19y agoStart by drawing your ideas on paper in detail. You don't have to be an artist because it's not going in a museum. If you are thinking of making a web site then draw it on paper, page by page. Describe exactly what happens when user clicks each part of the page. Every page, including the login page and about page. Every single page, every single clickable thing, draw it and label it. The more detail the better. You should have enough detail on those pages to be able to hand to someone without saying a word and they will be able to read it and understand it. That level of detail. Then pay a web designer a few hundred dollars to turn your pages into a static mockup. Static meaning it doesn't actually work yet, you can't login and do stuff, you just look at it. It's just HTML and graphics. It's a facade. Next you can either pay programmer anywhere from a few hundred to few thousand dollars and wait 3 months for them to build the functionality behind the facade or you go learn HTML, javascript, ajax, and PHP (the easiest programming language for novice web devs) and build it yourself.
- ajmoir 19y agoFind a co-contributor. Carigslist etc. Put out an ad on the gigs forum. As a dev coming at it from the other angle. I have the skills but not many business ideas. But I also have clear ideas what I'm willing to work on. If it's just a copy of something existing then don't expect many replies. But an exciting new idea would have many responses.
- zcoelius 19y agoI have to disagree with all the hackers in this discussion. Code is super important, but a startup is still a business. Business is a team sport that requires many different talents. If you can't code move out to San Francisco or someplace where startup congregate and find a startup that needs your talents whatever they may be. Learn the ropes and meet people. Repeat. Thats what I did. There are lots of non-technical people who have done well this way. Read Mark Cuban's posts on motivations. He was non-technical and kicked ass. I moved out to SF as a non-technical biz guy two years ago and now I run a VC backed startup. It can be done.
- geebee 19y agoThere are so many reasons to give up, and "I can't program" is one of them. "I'm too old", "I'm too inexperienced" seem to be a couple of popular ones. There are advantages and disadvantages, and I admire every person who decides to put everything he/she has into it. That said, we don't have to work this one out through logic - we can look out into the world and observe. Think of the top ten start-ups that IPO'd or were bought last year, and take a look at the bio's who founded them. The numbers don't look good for founders who can't program. Thing is, hacking is something you can learn to do. You can't make yourself younger, or taller, but there's nothing stopping you from downloading ruby (or, if you have a mac, opening a console) and get to it. It does take a while to learn to program - but if it didn't, then it wouldn't be much of an advantage. If you really don't want to go through it, there are certainly some notable successes for non-programmers. If you can add a lot of value as a founder and help make a lot of people successful, then go for it.
- zcoelius 19y agoread this: http://www.blogmaverick.com/2004/04/23/success-and-motivation-part-1/ http://www.blogmaverick.com/2004/04/23/success-and-motivatio...
- vegashacker 19y agoWe are working on an easy-to-use web app creation tool, and we're looking for real use cases to test out our system. Drop me an email, if you want to chat. If an idea of yours is a match for what we do, we may just implement a prototype for you.
- webwright 19y agoOut of curiosity, what do you consider your strengths (aside from ideas)? Design? Marketing? Accounting? Writing? All of these things have a place in a software startup. If you're good at all of them, you're golden (because most hackers decidedly aren't). But, at the end of the day, the most expensive and time-consuming thing that software startups need from the outset is software development. Other than design, there's not a lot of need for other skills before you manage to create a product that people want to have. But I'd echo the sentiment mentioned elsewhere. Dabble in programming and see if you're enjoy it. If you don't, focus on your strengths.
- xzibitendo 19y agoMy strengths are the ability to grasp technical problems, act as the face of the company (lead meetings with investors, presentations, hiring), and more than anything, I listen well. That being said, I'm definitely looking forward to contributing to a significant amount of the content and design. Thank you for the great suggestions!
- jaggederest 19y agoDrop me a note, if you've got good ideas, I'm interested. No commitments, but if something strikes me, we can work it out.
- wschroter 19y agoI think learning code (even HTML and basic queries) is helpful. While I don't code per se, I'm familiar with what code can and can't do, and it's been invaluable in growing many companies. Keep in mind the advice you're getting here is relatively slanted toward programmer-centric minds. Try posting it on LinkedIN answers and see how your responses vary.
- bmaier 19y agoNow taking this question from a different angle... Suppose the striving programmer has chosen to start learning python. What steps would you take to start (are there any one click installers like there are for ruby? other things? tips for beginners). If you were doing it again, what would you keep in mind?
- tx 19y agoHm... Do you like to build something like a... robot that goes around and... huh... does stuff for people that people themselves don't want to do? I am sorry, but most of the ideas I hear from non-tech people are pretty much like that :-) Man, you have to realize that ideas worth nothing. Seriously: ZERO. What counts is the best possible implementation. Facebook is not the first social network and google wasn't the first search engine. Sorry to disappoint.
- crucini 19y agoThe first step is to inventory your assets. What value would you bring to a hypothetical startup? You're not (currently) a coder. What about business, marketing and sales? If you can become strong in one of these areas, you provide value. Can you project a profitable business from one of your ideas? If your only contribution will be your ideas, they'd better be valuable. Valuab le ideas are generally new solutions to existing problems. As such, they're usu ally patentable. Good luck.