Argh! Not knowing how to program holds me back


8

I have experience in running a business, in marketing, research, strategy, customer service, business development, and I have some very important ideas that I want to transform into businesses. However, most of them are applications - software, web apps, mobile apps - and I don't know how to create these. This holds me back. I have the vision, concepts, plan for the solutions that I want to create, but I don't know who to hire, how to hire, where to hire, how much to pay to get those solutions created. I don't know if I should hire or partner. Sometimes I feel like publicly giving away my ideas just so that I can see somebody make them into reality. Sometimes I think that's ridiculous - I should be able to do it, but how? Not knowing how to program and not knowing how to connect with programmers holds me back.

Update 1:

You all are amazing. Thank you so much for your replies, and if anyone else has more advice please give it. I am trying to digest all your suggestions so I can't comment to each yet, but I will try to go through each piece of advice.

I'm seeing a few themes right off the bat:

1) Stop your lizard brain / don't discourage yourself. Don't wait. Just get started.

2) Document what you want to do, clearly articulate the purposes and goals of the solutions you want to create, but don't over-analyze.

3) Develop an understanding (at least introductory) of the technologies and platforms that your solution would use, as well as the limitations and capabilities of each.

4) Don't just look for a quick setup or quick fix. Find someone who can help you adjust the product for customer needs and have a technical lead role in your company in the long term.

--- then there are two conflicting themes ---

4) Just start programming yourself. Learn the technology and get something going. You don't want to be dependent on another person to fulfill your goals.

5) Don't just start programming yourself. Try to find someone within your work/social circle who you might be comfortable working with, or comfortable asking to help you screen potential candidates. Concentrate on your strengths and let someone who has properly learned programming develop the inner workings of the solution.

How do you guys reconcile the two different types of advice above?

Hiring Partner Business

asked Jan 28 '10 at 20:31
Blank
Kulpreet Singh
56 points
Top digital marketing agency for SEO, content marketing, and PR: Demand Roll
  • "How do you reconcile the two..." Well, there's always multiple paths to go by. It comes down to bandwidth, funds and desire: do you want to program? do you feel like you want to own the entire effort end to end? do you have time, but not the resources to add a technical counterpart / outsource partner? Then learn how to program. As entrepreneurs, we *all* can do (or are forced to do) multiple tasks outside of our core competencies. – Jim Galley 14 years ago
  • people who advise you to start programming yourself clearly don't know anything about programming... – Korchkidu 12 years ago

13 Answers


4

If your not openly willing to share your ideas you will always have a hard time connecting with programmers. Its not the ideas, its the execution. Start talking and sharing your mind more, things will start happening.

answered Jan 30 '10 at 18:07
Blank
Doug G
446 points

3

First off, I'd suggest you take a look at this recent interview and video with Seth Godin.

Then as Jeff proposes, make a compelling "slide deck" for programmers -- i.e. something (Powerpoint, screeen mockups) that visualizes the application & business, makes it clear that there is substance behind your ideas, and can get the programmer to visualize a successful startup with interesting tech.

Then go search for a startup co-founder to be "the tech guy", a.k.a. the architect or CTO. I'd suggest looking in your circle of current of former co-workers, people from the University, from hobbies and social clubs, in other words anyone you have already known for a while, and feel compatible with.

I don't think there is a special secret to "connecting" with programmers -- they're people like everyone else.

Joel Spolsky has written a book on interviewing programmers and which skills to look for. It's IMHO not his best work, but it still has some good pointers, and its a quick read. You could consider loading up the Kindle edition and reading it over a weekend. Here is a sort of short summary of the book.

If you want to build a company, then honestly, finding a CTO is one of the smaller problems. Are you sure it's not what Seth Godin calls the "lizard brain" that is speaking up...?

answered Jan 28 '10 at 21:27
Blank
Jesper Mortensen
15,292 points
  • Thank you! I commented on your answer below. If you have any follow-up advice to my question (about points 4 and 5 in my response) please let me know. – Kulpreet Singh 14 years ago

2

Start documenting, and diagramming your ideas (page/form mock ups, flow, logic, explanations, etc.). Whether you learn to code or hire someone you'll need this.

A non-programming route, would be to try a website like Caspio. Learning to program is difficult and time consuming. Grab a book or go to a website that looks like it will teach you to create software that matches your ideas. You'll quickly discover if this is for you or not (If you just can't put the book down and you code for hours on end.).

Search to see if there are any IT professional groups in your area and attend a meeting. You may meet potential candidates for technical partners.

If you are sincere about hiring a contractor, shop around for rates. Do a small project and see what you get for your hourly fee. Make sure they understand that you want the code and you own it (you paid for it).

answered Jan 28 '10 at 21:02
Blank
Jeff O
6,169 points
  • Regarding creating mockups, I would take a look at Balsamiq Mockups (http://www.balsamiq.com) - you don't need to be a programmer to use it, but you can get a long way documenting your ideas with it. – Steve Wilkinson 14 years ago
  • Thank you! I commented on your answer below. If you have any follow-up advice to my question (about points 4 and 5 in my response) please let me know. – Kulpreet Singh 14 years ago

2

If I were in your shoes I would create a page by page (if web app) or Screen by Screen (if desktop app) views of everything the program will do. Plan it out 100%.

Then once you have done this get companies to bid on how much it would cost to build it and how long it would take. Use your best judgement to pick and go with a smaller company, odds are you will get better results then with larger ones.

Since I work for a company that builds software when we get a client that already has all of these initial prototype designs done for us it really helps us see what you want.

answered Jan 30 '10 at 01:05
Blank
Cory Mathews
326 points

1

My two cents:

As a Startup CTO and a Entrepreneur in Residence, I've seen many times where companies treat technology decisions like drycleaners - want clean shirts, only care about the result, cost and delivery time.

That's a shame, since no one really knows what the complete product should be until it actually is in front of customers, then you really find out how close you were to meeting the customers needs. If you assume that development is a one time effort - develop, launch, rake in the cash - then fine, you can outsource the development. Good luck with that. But if you believe that you need to get something in front of customers, validate their needs, then make changes, you need to have someone who develops (or leads development) on the inside that cares about the long term success of your organization.

That said, I think attempting to document and wireframe your concepts is sound advice - just don't get so stuck on the looks. Pencil is a good wireframing product to use - and its free. Thinking of the product based on the business logic, what specific user types (public visitors, registered visitors, subscribers) will see and what actions they perform will get you far in defining what a project scope will be.

Also of value - focus on a prioritized feature list based on business goals. What is the minimum needed to launch the product. What do feature needs to be validated first and improved on? All of these are business decisions, not coding decisions. Developers can take this list, understand the technical ramifications of the feature, and then figure which features are can be "bundled" together (rely on the same foundation).

answered Jan 29 '10 at 02:47
Blank
Jim Galley
9,952 points

1

Jeff, unfortunately time and time again I see good ideas end up in oblivion because of this. What's up with the not knowing how to program? I understand you might not like programming, and maybe you'll never be good at it. But it will reward you greatly to start doing it yourself. I've found that if I can find a natural partner than awesome, but don't force it. You'll end up in a relationship where everything depends on the other person getting something done.

I would take a good hard look at learning Ruby on Rails. Pick up a book and just start making stuff. Make the very first screen that gets the most important thing done. It's going to look like crap and not work a ton.

Start going to classes and meetups and conferences. You'll at least have an understanding of who you need to hire in the end, and probably meet people during your challenge who can do it much better than you.

It's gonna take a lot of effort. But that effort will pay off in the end.

answered Jan 29 '10 at 04:41
Blank
Nathan Kontny
1,865 points
  • Thank you! I commented on your answer below. If you have any follow-up advice to my question (about points 4 and 5 in my response) please let me know. – Kulpreet Singh 14 years ago

1

Ideally, you could try to find a technical co-founder. You can look into your network for someone who knows programming and ask him about the technical difficulties of bringing your ideas to reality. For most web based startups, technology is a very important part of the puzzle and you will not get very far trying to outsource it. As your ideas evolve and you iterate, you need someone who can partner with you on the programming side.

answered Jan 29 '10 at 10:34
Blank
Abhay Vardhan
126 points
  • Thank you! I commented on your answer below. If you have any follow-up advice to my question (about points 4 and 5 in my response) please let me know. – Kulpreet Singh 14 years ago

1

What application areas are you interested in working in? If they mandate a specific set of technologies (e.g., you want to develop iPhone apps - requires Objective-C and Cocoa) you might ask for specific pointers for those on StackOverflow.com.

On the partnering side: the important thing here is finding someone who complements your abilities and is willing to act in line with your goals (either because they share them or because you've come to a common understanding about what they'll get in return).

I'm a software developer - a really good one, in my own not-completely unbiased opinion. It may surprise you to know that I, too, frequently think about dumping my ideas on other people just to see them come to fruition. Why? My major gap is the ability to obtain/create graphical resources. I can compose my own music, record my own sound effects, design my own UI, code my own application, run my own server, write my own user manual and maintain my own community website for it, but there's not much of a market for text adventures or ASCII-only business apps nowadays. :-)

My point is not that you should learn how to draw, but that software developers face the same general problems you do, just not the same specifics. If you can convince one of them that you can fill in the holes, then they'll probably be more than happy to come to some form of talent trade agreement. (This may involve you providing the marketing expertise for their own applications while they code your V1, for instance.)

On the learning side: if you can swing it, the absolute best way to understand what programming entails is to have a great programmer give you a very general idea of what he does, then watch him program and ask him questions while he's doing it. I already know how to program in some theoretical sense, but I learn a lot every time I have the chance to work this closely with a really good programmer. Unfortunately, you'll have a hard time coming up with someone willing to do this if you don't already have a reasonably close friend who's a coder. (I would consider doing it but the logistics of doing such a thing remotely are painful.)

If there's a strong tech community in your area you might consider taking a programming course or three at a community college. They'll walk you through developing some basic applications. Alternately, you can get some really good books about programming and read them - it really depends on whether you're more comfortable with self-guided or other-guided learning.

Finally: don't underestimate the power of waiting. Over the years I've seen a good 50% of the software ideas I never bothered pursuing brought to fruition by someone else. So they'll probably show up eventually. I know this is a bit of a downer, but it's a good thing to remember. (And if you do wind up trying to go into business with them - well, it's good to remember there will always be competition, no matter the idea!)

answered Jan 29 '10 at 11:24
Blank
Arkaaito
300 points
  • Thank you! I commented on your answer below. If you have any follow-up advice to my question (about points 4 and 5 in my response) please let me know. – Kulpreet Singh 14 years ago

1

My opinion only of course and from past experience - do it yourself! It's the whole "teach him how to fish, feed him for a lifetime" analogy.

If you are long on ideas, knowing not all your ideas will be winners statistically speaking, pick the ones with the best business model and ability to begin generating revenues instantly - buy some books and start coding away!!!!

Microsoft has a BizSpark program that offers startups FREE professional/commercial versions of ALL their software - from the most recent MSFT Azure Cloud software, Visual Studio, .Net, etc. And this is for 3 years!!!!!!!

Having to depend on others, and give away ideas, equity, money, time is painful. Been there and done that. I jumped into coding out of necessity and love it. You can then build your business to the point that it's revenues will afford you to hire the right talent to make it all work.

I think the funny thing you will find is that the biggest challenge won't be in getting it built - but in getting the traffic you originally envisioned. Be sure you have the getting to market plan figured out. Too many people assume they can just build a site and turn it on - and then magic happens. There is no magic. That is marketing and advertising my friend. Have a plan to get the product moving forward with traffic. Think small, think niche, just get it rolling. Good luck.

answered Jan 29 '10 at 15:26
Blank
Jason Hilliard
21 points
  • Thank you! I commented on your answer below. If you have any follow-up advice to my question (about points 4 and 5 in my response) please let me know. – Kulpreet Singh 14 years ago
  • Hi Kulpreet, tough to figure out the right approach isn't it. The answer is it really depends on you. By and large jesper is probably more right in that you should find the experts capable in building/supporting your product. If you want to become a programmer, then do it yourself. Otherwise, network and make it happen. The key is getting to launch asap. Have a 90 or 120 day launch plan! Ideally you will be able to pay someone to build it for you. I am the rare combination of entrepreneur & programmer & enjoy the business & customer side as much as the analytical & technical side. Good luck! – Jason Hilliard 14 years ago

0

If you try learning to program so you can implement your ideas you may cause more grief than help.

Programming takes time to learn, and to understand the pros and cons of various languages and technologies takes even longer, as you are having to learn several different languages.

That said, you may want to network and just sit down with some programmers, to get an idea what they are like, what they are passionate about, and what they know.

The problem is that you will have a hard time knowing what you are looking for and if this person is qualified, unless you have someone that can feel the person out. So, you may want to see if you can find someone that has the skills you want, but they may only be available to look at resumes and to do some interviewing.

Once you get a tech person that has the necessary skills and the aptitude for the work then that person can find like-minded people to help.

But, if you can start to get an understanding of some of the technologies. For example, if you want to develop for Blackberries, iPhones and the Nexus One, then it may be useful to at least have an understanding what you can do with each of these, and what one can do that the others can't, so you can design taking into account the limitations.

If you want to develop webapps, then having a rough idea about Ruby On Rails, ASP.NET, ASP MVC and perhaps Java web frameworks may be useful, but there are so many frameworks for these that it gets harder.

Don't try to master these, just try to understand enough so that if someone states something that is unreasonable you can call them on it.

If someone is telling you that they will use the touch screen on the Nexus One, you need to know if that is possible, or, if someone wants to have a Flash application on the iPad.

UPDATE: Based on the summary from the OP, there is a question about conflicting advice, about whether to actually program or not.

Basically, it depends on your timeframe. If you don't mind waiting 3-5 years then program it yourself, by learning to program well, but, if you want to get something done sooner then concentrate on being the visionary and trust that others can implement with you providing guidance, to help them stay on track.

So, it is up to you as to how quickly you want it done.

answered Jan 29 '10 at 06:16
Blank
James Black
2,642 points

0

Jeff, I just got the alternative answer.

I'm a software developer asking about sales and marketing.

Have a look at Josephs answer:
Can you outsource sales for high tech companies? Basically, find the right developer or development team and work with them to develop your idea. If you get the right team

  • it will be much faster to get to market, especially if they have all the processes and systems setup already.
  • Structured better so that it can scale up with volume and out with functionality.
  • Have proper support
  • Long term will actually be cheaper
  • Is more likely to happen because you won't get completely frustrated learning a programming language and chuck in the towel.

Than you are going to do learning it all yourself. Plus any venture needs more than the developrs ... that is really the easy bit. If you can bring in the clients, define the direction and understand the real goals of the users, translate the needs and work with the developers to develop it then you are miles ahead of the guy who can code and doesn't understand any of the other elements.

answered Apr 14 '11 at 18:34
Blank
Robin Vessey
8,394 points

0

You may consider engaging a company like Accelerance to find the right software development services provider. You can even get a virtual VP of Engineering from them.

Disclosure: My company is on the Accelerance's partner network.

answered Jan 28 '10 at 23:09
Blank
Dmitry Leskov
606 points
  • Thank you! I commented on your answer below. If you have any follow-up advice to my question (about points 4 and 5 in my response) please let me know. – Kulpreet Singh 14 years ago
  • You see, it is a bit difficult for me to provide an unbiased answer here. I would definitely look for a technical co-founder or service provider and concentrate on the business side myself. But I used to be a software engineer, and I have been responsible for marketing and biz dev in a software company catering to developers for over ten years now. – Dmitry Leskov 14 years ago

0

You all are amazing. Thank you so much for your replies, and if anyone else has more advice please give it. I am trying to digest all your suggestions so I can't comment to each yet, but I will try to go through each piece of advice.

I'm seeing a few themes right off the bat:

1) Stop your lizard brain / don't discourage yourself. Don't wait. Just get started.

2) Document what you want to do, clearly articulate the purposes and goals of the solutions you want to create, but don't over-analyze.

3) Develop an understanding (at least introductory) of the technologies and platforms that your solution would use, as well as the limitations and capabilities of each.

4) Don't just look for a quick setup or quick fix. Find someone who can help you adjust the product for customer needs and have a technical lead role in your company in the long term.

--- then there are two conflicting themes ---

4) Just start programming yourself. Learn the technology and get something going. You don't want to be dependent on another person to fulfill your goals.

5) Don't just start programming yourself. Try to find someone within your work/social circle who you might be comfortable working with, or comfortable asking to help you screen potential candidates. Concentrate on your strengths and let someone who has properly learned programming develop the inner workings of the solution.

How do you guys reconcile the two different types of advice above?

answered Jan 29 '10 at 17:23
Blank
Kulpreet Singh
56 points
  • Due to the way the Stack Overflow sites are designed, many authors above are not going to see your follow up comments here at the bottom. Regarding contradicting advice, my take is the "learn programming yourself" camp is simply incorrect. I'd like to see a example of a successful entrepreneur who started out as quintessential "business guy" and then went ahead to program a larger solution himself. I'd say you future CTO must have a large saying in your point 3) , both because he'll be better at it, and because he'll want that for motivational reasons. – Jesper Mortensen 14 years ago
  • You should put this answer as an update to your question, by editing your question, so that everyone can see it. – James Black 14 years ago
  • Ok - done. Thanks and sorry - still figuring out how to use the site. – Kulpreet Singh 14 years ago

Your Answer

  • Bold
  • Italic
  • • Bullets
  • 1. Numbers
  • Quote
Not the answer you're looking for? Ask your own question or browse other questions in these topics:

Hiring Partner Business