Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Software Prototypes into Finished Products?

Cliff posted more than 10 years ago | from the helping-you-code-your-idea dept.

Businesses 55

blastedtokyo asks: "With all the talk of offshoring and outsourcing, it seems that taking an entrepreneurial route is a great way to take your life out of the hands of overpaid goons and put it squarely in the hands of an underpaid one. Without an organized team of coders, testers, and designers it seems very tough for a single person to get started in anything other than consulting, or selling stuff on eBay. With my background in product design, and my knowledge that my coding skills aren't the greatest, I'd like to find a vendor or team to help develop some software ideas that I've been stewing over for a while. In other words, I've got the business plan, some credit-cards ready to be maxed out, the bitmap-demo and the specs for a few possible projects, but would like to get a team to code up a working prototype suitable to get some initial customer evaluations. Does anyone have experience sourcing such a vendor? How would you interview a firm to know that their staff is easy to work with and competent? Is it possible to do something like this without delays, excessive mis-communications and cost overruns, or is it better to just start hiring contractors, one at a time?"

cancel ×

55 comments

Sorry! There are no comments related to the filter you selected.

a different business model? (2, Interesting)

glen604 (750214) | more than 10 years ago | (#8344019)

Since you seem to have several ideas, why not just set up one of them as a free project at sourceforge.com, and work from there? That way you can work out some of your ideas without going through a lot of cash. Granted, that means giving up your idea to the public forum, but it might be worth it in the long run for the experience of creating something from start to finish.

Aren't really most good software companies built not on making one good product and selling it perpetually, but continually improving that product and creating new ones as well?

Re:a different business model? (3, Insightful)

Rick the Red (307103) | more than 10 years ago | (#8345980)

He's asking how to build a team before there's a product to ship. I think you'll find that most projects on Sourceforge are one-man-bands, at least until they ship useful code. Generally, an open source project doesn't get volunteers until someone's using the code and offers to help in order to add some feature they want (or just adds it and shares the patch with the original developer/s).

Re:a different business model? (-1)

evil_spork (444038) | more than 10 years ago | (#8347478)

No shit. The open sores software community is just a bunch of freeloaders who are never going to get off their fat fucking asses. Anyone who wants productivity will soon get a clue and install Windows instead of using Lunix or some other homosexual open sores product. The only way to get the Lunix hippies off their lazy fat asses is to take away their welfare checks and entice them to work with promises of anal sex.

Sourceforge is a fucking waste of time.

ICC Ohio does offshoring (2, Informative)

michael path (94586) | more than 10 years ago | (#8344020)

http://www.iccohio.com - ICC Ohio - has added "Offshoring" as one of their core competancies and selling points.

I would imagine that, unless you've dealt with offshoring previously, that someone you can communicate with is the most important thing, and then holding the company doing the offshoring to the deadlines and deliverables of your project.

That said, I have no interesting or useful business ideas.

RentaCoder (3, Informative)

Anonymous Coward | more than 10 years ago | (#8344049)

Go to Rentacoder.com and the similar sites. Prepare for some interesting experiences.

You will loose your shirt, by the way. The guys who do independent software projects, the kind that are sold shareware or download-register, all write the stuff themselves to start out. And some of them have worse coding skills than you, believe me.

Re:RentaCoder (2, Interesting)

Geccie (730389) | more than 10 years ago | (#8348665)

I've looked into these places. From a developer standopoint, I dont see an opportunity. The product to pay ratio is less than washing dishes at Shoneys. Top that off with signing away all your copyrights and outlandish product specs all for one or two days pay. If you worked on these projects 8 hours a day, 5 days a week, you would be lucky to clear $20k per year. Did you ever notice the help forums at code guru are very similar to product specs from rent-a-coder? Given this, I dont belive you would have to be very selective if you chose to work with people from one of these sites.

Re:RentaCoder (2, Informative)

nickos (91443) | more than 10 years ago | (#8351755)

"Did you ever notice the help forums at code guru are very similar to product specs from rent-a-coder?"

A lot of the projects listed on rentacoder.com are students asking for people to help with their homewrok. It would make sense for these students to try and do the work themselves and ask for help on codeguru.com for free before they have to fork out money for the homework to be done for them via rentacoder.

RentaCoder is my choice. (1)

TakeReal.com (755403) | more than 9 years ago | (#8356546)

I use only RentACoder to find new freelance projects since I've discovered it a year ago. In opposite to other auction's type sites - no need to pay any sort of subscription. I have 100+ completed projects. Sure - system is working. My brief RAC history: http://www.takereal.com/freelance/rating.asp

Re:RentaCoder is my choice. (1)

HeyLaughingBoy (182206) | more than 10 years ago | (#8359705)

I'm curious: do you live in the US? If so, do you find that the projects' max bids are reasonable? I ask this because I notice that a lot of the bidders are from India or Eastern Europe and the maximums that buyers are willing to pay are for the most part...insane!

I tried it once and almost won the bid (I was high bidder, but the buyer was comfortable with my experience and knowledge of the field), then the requirements changed, and my new bid put me out of the running (still better than the alternative of me losing my shirt on a fixed-price bid, tho!)

I can see meeting the max bid amounts if the projects are almost copycats of things you've done before, but for just about any new development work, I'd go over the maximum just on documentation costs. RentACoder bidders do document their work, don't they?

Re:RentaCoder is my choice. (1)

RocketJeff (46275) | more than 10 years ago | (#8374944)

I'm curious: do you live in the US? If so, do you find that the projects' max bids are reasonable? I ask this because I notice that a lot of the bidders are from India or Eastern Europe and the maximums that buyers are willing to pay are for the most part...insane!
Follow the link he gave - it redirects to his RentaCoder developer page.

He's from St. Petersburg, Russia. Also, he's done 205 Rentacoder jobs that average $26.71/job - approximately $5475.55 in income. Considering that Rentacoder takes a chunk of that, and he has seen less then $5000 for his work.

Back when I was unemployed, I bid on several jobs and actually won one - it was a rather fun project that paid well for a Rentacoder job, but I ended up making less then $10/hr.

Unless you're a developer from a place with a really low cost of living, Rentacoder doesn't make sense. OTOH, if you need a quick & dirty project done, it's a good place to find a quick & dirty solution.

Get some legal advice first. (4, Insightful)

damu (575189) | more than 10 years ago | (#8344069)

Before you ask for help, I think you will be spending some wise money by consulting a lawyer first, then a lawyer after you find someone to help you, then a lawyer once the project is done. Your idea can be extremely valueable with someone with more money ane assests.

Re:Get some legal advice first. (0)

Anonymous Coward | more than 10 years ago | (#8397656)

Let me guess, you are a lawyer? lol

Don't pay now (3, Interesting)

El (94934) | more than 10 years ago | (#8344151)

Find some people that are out of work and willing to work for a share of the eventual profits. Have them develop the code, then when it's working, file chapter 11, and sell the assets off to another company (also owned by you) at firesale prices. Bingo, you get your software development done cheap! Think it's funny? You'd be suprised how many times this has actually been done!

Re:Don't pay now (0)

Anonymous Coward | more than 10 years ago | (#8344625)

file chapter 11, and sell the assets off to another company (also owned by you) at firesale prices.

At least in the US, that is highly illegal. I seriously doubt it has been done many times without repercussions.

Re:Don't pay now (1)

El (94934) | more than 10 years ago | (#8344714)

Care to cite the specific laws that this violates? Touch Communications Inc. did exactly that, and nobody was prosecuted that I know of... good thing I wasn't one of the people that worked for free for them for over a year in exchange for now worthless stock.

Re:Don't pay now (3, Informative)

GCP (122438) | more than 10 years ago | (#8347239)

The exact law depends on the state, but the term "piercing the corporate veil" is the legal term for the approach used to defeat this scam in court. Anyone who transfers ownership of an asset from himself to himself via the game you cite risks having the court declare the corporations to be merely "veils" and the real party to the dispute to be the party behind the veils. Once that ruling has been made, the plaintiffs can sue the owner of the corporation directly.

Re:Don't pay now (1)

OpieTaylor (144173) | more than 10 years ago | (#8375715)

Here in Virginia the bankrupt company is required to sell their assets through a third party, essentially to an open market. (At least that's what a family member had to do.) So if the software has some market value, the scammer would find themselves paying full price, and their scam falling apart.

Bankruptcy courts have been dealing with people like that forever, so they know all the tricks.

Re:Don't pay now (1)

ghostlibrary (450718) | more than 10 years ago | (#8351546)

Happened to me. Was common in the dot-com era. Include followup tactic of 'sue you if you try to use said assets yourself' (again a dot-com thing, since software or websites can exist in several hands simultaneously.)

RentaCoder.com (3, Interesting)

JMandingo (325160) | more than 10 years ago | (#8344182)

This is easy. Sign up at rentacoder.com and put your job out there. Dozens of software teams from South America, Russia, Romania, India, etc. will bid competitively for your work, offering to do it for a pennies on the dollar. rentacoder holds your money in escrow until the job is done according to your spec. rentacoder manages any arbitration should things go wrong. I've been very happy with rentacoder and the talent I've found out there, and no I dont work for them.

Haha (0)

Anonymous Coward | more than 10 years ago | (#8344201)

based on the content of this question and the apparent lack of market analysis, prepare to be a part of the most forbidding statistic prospective SMB-ers ever hear.

Let me get this straight.. (-1, Flamebait)

Anonymous Coward | more than 10 years ago | (#8344446)

You have a few ideas, want somebody else to do all the work for you - but you want to take the money?

You're basicly looking for a job in middle management (the kind of jobs that only exist at giant companies) - without having a giant company to support you.

Unless you can do everything yourself (or have a buddy that can help you with a few areas), I don't think the future is very bright for your ideas.

First Find A Great Project Manager (4, Insightful)

occamboy (583175) | more than 10 years ago | (#8344794)

Consulting outfits are in business to take your money; completing your project comes second to billing.

The only way to handle consultants is to have your own very knowledgeable and forceful project manager to drive the consultants. This person needs to know enough about coding so that they cannot be BSed, or needs to have a trusted resource that will keep an eye on things.

I've yet to hear of even a single offshore success story; all of the ones I've heard end with "we were already way past the deadline, and we had to start rewriting from scratch!". Managing a project in your own office is very difficult. Managing one half-way around the globe staffed by people with different language and culture... forget it.

Good luck!

Re:First Find A Great Project Manager (2, Interesting)

CaptainTux (658655) | more than 10 years ago | (#8345672)

Consulting outfits are in business to take your money; completing your project comes second to billing.

This is far to broad of a generalization. I own a software development consulting firm and I can tell you that billable hours *do not* come before completing the project and doing, not just a good job, but an exceptional job. I do business with consultants every day who hold the same attitude. In fact, I would say that the majority of consultants out there hold a similar attitude. If they didn't they wouldn't be in business very long.

Re:First Find A Great Project Manager (0)

Anonymous Coward | more than 10 years ago | (#8348397)

STOP PRESS: consulting outfits criticized; denial from software consulting outfits.

Contact us. (4, Interesting)

abulafia (7826) | more than 10 years ago | (#8344866)

Seriously, if you mean to pay.

That, of course, is the issue, and what elevates this post (in my mind, at least) above an ad. You don't seem to want someone who can build you a particular widget, you seem to want a partner that will assume some of the risk of launching a venture. And that is a very, very different thing. Craig's List is full of crap from people who have a great idea... "all we need is all of that other stuff, and a website, and we'll be rich. Wanna do the website?"

My advice: "unask the question". You really seem to want a partner. You're concerned with managing timing, cost-overruns, etc., and clearly don't have the finances to build a company to keep that in house. So, you need to sell your idea to someone who does have the resources and ability to share the risk. Think of this as low-end VC. How does one get (low end) VC? Go sell it to people.

Like I said, if you want code in exchange for money, sure, we'll give you whatever you want, it will be priced fairly, delivered on time, and be generally well done. You can get this from a lot of places (although I must say we provide nice perks for using us, and we write *excellent* code.). If this is your angle, lots of people can give you what you want, and analysing who is best to provide it is a business decision. Weigh cost vs. expected outcome, based on the history of the vendor. Ask for references. When you pick someone, stay on top of the process while it is going on, and don't be afraid of calling bullshit when you see it. Also, don't call bullshit when something isn't. Make sure that changes don't derail the project.

Simple, right?

There's the problem.

Re:Contact us. (2, Funny)

Vaevictis666 (680137) | more than 10 years ago | (#8345520)

What elevates this above an ad, is the fact that you don't mention who "us" is, and leave the reader to guess that the URL above your post is the one you're trying to plug :P

Re:Contact us. (1)

abulafia (7826) | more than 10 years ago | (#8345603)

That was intentional. The link is in my URL field; I assume anyone motivated to actually contact us would find it.

I try hard not to be a self-promoting bastard.

Re:Contact us. (1)

dna_(c)(tm)(r) (618003) | more than 9 years ago | (#8356130)

I for one, don't think you're self promoting ;-) ouch !!

Why are you looking for a firm? (5, Insightful)

Samrobb (12731) | more than 10 years ago | (#8345021)

Why would you want to (essentially) outsource development of your idea? You may not be the greatest coder in the world, but you should be able to put together something by yourself. If it's a large enough project that it might take 2-3 additional people plus you a number of months to complete, then start your company, find those people, sell them on the idea, and get them to come work for you in a startup capacity - reduced or no salary, stock or option grants, etc. in return for shared responsibility in creating the company.

Face it - a consultant or contractor is only obligated to give you what you've contracted for, and is probably going to be more than happy to eat up your cash reserves by working extra hours to fix bugs, meet demo deadlines, etc. His/her reward is relatively small, and effort is commensurate. Someone sharing responsibility with you for putting out the product will be a lot more motivated (by a greater reward, and a greater risk) to provide whatever effort is needed to get the product out and get money rolling in ASAP - presumably your desire as well.

Re:Why are you looking for a firm? (2, Informative)

Geccie (730389) | more than 10 years ago | (#8348687)

Why would you want to (essentially) outsource development of your idea? You may not be the greatest coder in the world, but you should be able to put together something by yourself.

Exactly!!! The whole idea is to realize the true value of your work, not to make someone a boatloat of cash. If you take the initiative NOW, five years into the future you may be quite successful. Reward does not come without effort. If your ideas are that good, team up with competent developers you know. Add a few $100 for web hosting, etc and supplies and you can move forward without losing your shirt. Dont look for others to make you rich, wealthy, or even well off. Do it yourself and see where life takes you.
BTW I'm here in Pgh too. Nice weather for a change.

Re:Why are you looking for a firm? (1)

Samrobb (12731) | more than 10 years ago | (#8350157)

BTW I'm here in Pgh too. Nice weather for a change.

Of course, in keeping with typical Pittsburgh weather patterns, you wrote this while it was sunny and 60 degrees out... less than a day later, I get to read it with a snowstorm swirling around outside my windows :-/

To keep things on topic: I actually though of recommending that he see about hiring some folks from around here... while it's not Silicon Valley, there are plenty of good people, and plenty of experienced and mature people - IMHO, exactly the kind of folks you want as the core of a new compnay. IMHO, that plus cost of living/cost of doing business in the Pittsburgh area makes it more attractive for a new company than SV, Boston, or any of the other places that are "known" for their technology companies.

Re:Why are you looking for a firm? (1)

blastedtokyo (540215) | more than 10 years ago | (#8359989)

Thanks for the responses everyone. The reason I'm looking for a firm rather than building it myself is that 1) I find the business challenges of marketing, management, financing and creating a long lasting enterprise much more exciting than the coding 2) I want as many people as possible to (hopefully) benefit from the product while still being able to make a fair living, and I know that there are much more productive coders than myself 3) As a person who tends to either get really engrossed in something or really detached my fear is that I'd get completely into adding just one more feature and into the routine of coding it that I'd lose track of the business requirements and go broke and hungry :)

And as far as hiring in Pittsburgh, sounds great but I'm not local...

Re:Why are you looking for a firm? (1)

zelurxunil (710061) | more than 10 years ago | (#8373453)

Just check out your local high school for anyone wearing thinkgeek shirts...

XP (3, Interesting)

splattertrousers (35245) | more than 10 years ago | (#8345159)

Here's what I would do:

Hire a couple people who have experience with extreme programming (XP). They'll deliver exactly what you want, without bugs*, with a release every week.

You tell them the most important things to do, and they'll do them in order of your priority (not some made-up technical priority). They won't do other things that they think are nice, just the parts that you ask them for. Hopefully, you'll ask them for only what is needed for your demos.

The weekly releases are key; you can see exactly what's happening. You don't have to wait 6 months to find out that the program doesn't really work, or doesn't do what you want it to do. You'll also quickly get a usable program that does the few things that you need to demo. If at that point you realize that your product idea wasn't so hot after all, you've just saved a lot of money over what you would have spent if you hired a team that wanted to spend all kinds of time creating a flowery design and building infrastructure.

As far as hiring XP types, try to find a local XP person who is well-respected and ask him or her for some leads. Maybe get a technical friend to help interview the programmers. But be sure to hire people who have experience working this way. You don't want to pay them to learn how do release software incrementally.

(*By "without bugs", I mean "without known bugs". Lots of people write software and leave a lot of bugs in until the end. That hurts demos. XP people will fix buggy code as soon as they see it. And they'll write automated tests to make sure that bug never shows up again.)

Re: Drink the Seat of the pants Kool-Aid (3, Flamebait)

jhoger (519683) | more than 10 years ago | (#8345722)

Here's what I would do:

Hire a couple people who have experience with seat of the pants (SOtP). They'll deliver exactly what you want, without bugs*, with a release every week.

You tell them the most important things to do, and they'll do them in order of your priority (not some made-up technical priority). They won't do other things that they think are nice, just the parts that you ask them for. Hopefully, you'll ask them for only what is needed for your demos.

The weekly releases are key; you can see exactly what's happening. You don't have to wait 6 months to find out that the program doesn't really work, or doesn't do what you want it to do. You'll also quickly get a usable program that does the few things that you need to demo. If at that point you realize that your product idea wasn't so hot after all, you've just saved a lot of money over what you would have spent if you hired a team that wanted to spend all kinds of time creating a flowery design and building infrastructure.

As far as hiring seat of the pants types, try to find a local seat of the pants person who is well-respected and ask him or her for some leads. Maybe get a technical friend to help interview the programmers. But be sure to hire people who have experience working this way. You don't want to pay them to learn how do release software incrementally.

(*By "without bugs", I mean "without known bugs". Lots of people write software and leave a lot of bugs in until the end. That hurts demos. Seat of the pants people will fix buggy code as soon as they see it. And they'll write automated tests to make sure that bug never shows up again.)

Re:XP (0)

Anonymous Coward | more than 10 years ago | (#8346411)

Yeah, and make sure they all have pet rocks too.

Re:XP (3, Funny)

caseydk (203763) | more than 10 years ago | (#8346721)



NO. STAY AWAY FROM XP.

That damn autoupdate pisses me off.

Re:XP - well dang, I'm convinced! (1)

SgtSnorkel (704106) | more than 10 years ago | (#8380597)

NO. STAY AWAY FROM XP.

I don't know if it was your eloquent argument, your convincing use of logic, or your articulate and thorough statement of the issues and problems -- but based on your recommendation, we have no choice but to stay away from XP!

Re:XP (2, Interesting)

s0m3body (659892) | more than 10 years ago | (#8346849)

XP ? for an idea ?

well ... i'm doing XP of a kind
however ... i tell you an example

once upon a time, there was a task to solve, it was about developing of an algorithm, mix of known stuff tuned to a problem, with all the options which are needed and none of those which are useless

i faced a first set of technical questions, like which platform, which language, which methods
after two days of evaluating all the options i have, i've chosen perl

i've chosen perl for implementation of an algorithm which was supposed to do milions of iterations to find a reasonably good solution in a short time

of course, it was slow, results which i needed in 2 minutes i've got in 15 minutes
at the same time, i was fast as a hell in modifying, adding new features, removing obsolete ones
after couple of weeks having a good feedback, i came to a point when i was able to say: well, my algo supports all what i will need for next year and still isn't bloated

this was the point when i would accept XP, to rewrite what i have, fast and cleanly
i was already aware of the result, and i was able to define WHAT -> exactly, because i had perl source

what i want to say is, that with XP, or actually with outsourcing in general, you need to have a detailed plan
without a detailed plan you are going to loose control over the things
you need to understand the things, sometimes to the last detail; or you need someone who can do this for you -> and it has to be something whom you can really trust

if you have just some ideas, it means you have no source code, no plan
the idea is somewhere in your brain and still misses some details -> this is something you can never spec out; at least that's what i think

you will need first change, then the second one, and you will already leave the safe waters of original contract

Re:XP (2, Informative)

cr0z01d (670262) | more than 10 years ago | (#8347595)

I don't think you understand Extreme Programming. I am completely unable to understand some of what you are saying.

Here is a traditional method:
- Write program requirements
- Write design document
- Write source code
- Realize that the design decument is wrong
- Change the design document to fit the code
- Realize that the requirements are wrong
- Change the requirements
- Repeat

Here is an agile method, like XP:
- Set a short-term goal
- Write as little code as possible
- Make sure the code works
- Repeat

Agile methods accept the fact that requirements change and that correct design documents are very rare beasts indeed. It's a good way to make good software. Designing the program completely before coding is a real waste of time. Agile means that you do loose some control... but it gives freedom to the programmers you hired -- enough freedom to do what they need to complete the task. Of course, it's not a good way to design software for, e.g., a space shuttle where the requirements are very well known and have little tolerance.

Re:certifications mean nothing (1)

s0m3body (659892) | more than 10 years ago | (#8348482)

you can't start brand new project by setting short-term goals

if you want to break your project into a short term goals, you should have more then some ideas

the sorter is a time period of your 'short-term goal'; the more precise you have to be to get into your target on time

Re:XP (2, Insightful)

dubl-u (51156) | more than 10 years ago | (#8351191)

what i want to say is, that with XP, or actually with outsourcing in general, you need to have a detailed plan
without a detailed plan you are going to loose control over the things


That's not my experience of XP.

What you need to have is the ability not just to plan, but to re-plan, over and over. I forget exactly how Barry Boehm phrased it, but his pithy summary was that traditional methods (like the waterfall) were plan-driven, whereas agile methods like XP are planning-driven.

I've done a couple of substantial XP projects that basically started with just an idea. By sketching on whiteboards or in HTML, we produced mock-ups as a way to discuss what we were up to. As soon as we identified something that we were pretty sure we wanted to build, we spent that week building it.

Because we were good guessers, generally what we built was the right thing. But sometimes when we saw it in action, we'd realize that we guessed wrong and go back to the drawing board. That might seem wasteful, but there were a number of features that we killed after a week's work that non-Agile teams would have built out to completion.

It's sort of like driving somewhere. Nobody sane plans out every twist of the wheel and touch of the pedals in advance. At most, you'd get some directions to give you an idea how to get there, and often people just get a rough idea where something is and hop in the car. To make that work, you have to steer continously, keeping your eye on the road and keeping your goal in mind.

Espeically for long trips over unknown territory, your initial plan is almost guaranteed to be wrong; to get where you want to go, you have to be prepared to adapt.

Re:XP (3, Insightful)

KyleCordes (10679) | more than 10 years ago | (#8346994)

I'm fairly pleased with XP myself.

But....

As a customer, I wouldn't hire a firm/team based on their methodology talk, whether they're talking XP or RUP or whatever. I'd hire them based on their demonstrated ability to get useful software out the door, then hope they keep doing whatever they'be been doing.

That said, as a customer I'd want frequent delivery of working code, regardless of the specific process the team will be using to delivery it.

Re:XP (1)

splattertrousers (35245) | more than 10 years ago | (#8347775)

Yeah, I'd accept non-XP things if I was hiring a firm, but since the OP said he was going to max his credit cards to pay for development, I was assuming he was going to hire some programmers, not a firm.

But either way, I almost agree with you. I'd hire them based on their demonstrated ability to get useful software out the door iteratively, without lots of bugs piled up at the end, and without a mess of code that would take forever to fix if I were to continue development, then hope they keep doing whatever they'd been doing.

Why XP is bogus (2, Insightful)

Moraelin (679338) | more than 9 years ago | (#8354548)

What I resent is that unlike actual methodologies, XP is more of a religion. Where unsupported hype, trolling, insults and mindless zealotry are the main coin. And facts are usually to be avoided, or slightly altered.

E.g., the fact that the poster child for XP, the C3 project, was a project with fixed requirements, _not_ something requiring constant change. And it just burned money for many years in a row, didn't deliver even a fraction of what it had to do, until it was considered a miserable failure by the customer. Incidentally, it also gave the "on-site customer" stress-related health problems.

Yes, contrary to what the sacred XP scriptures claimed, that project was _not_ a success. The whole XP myth is based on repeating a lie over and over, until enough idiots start believing it. And God knows there's one born every minute.

But let's get back to XP zealots' trolling. Sorry, claims like basically "only XP gives you bug free code, while the rest of the world leaves bugs in", are bogus and it's just trolling. No programmer willingly leaves bugs in _release_ code. XP or no XP.

What XP does is redefine what bug means, so, blimey, under our double-speak standard we didn't have bugs. Well, gee, ain't it the easy way out...

Straight off the sacred books of XP: if the customer didn't explicitly give you an automated test-case that fails, then you don't have a bug. No, I'm serious.

If the customer's automated test case inputs the number 10, then presses button A, and then button B, that's the only "bug" you can possibly have. If inputting 15 and pressing directly button B causes the program to crash and burn, or even to garble the database, hey, it's not a bug because it wasn't in the automated test case.

Worse yet, if inputting a 65000 character string instead of a number there causes a buffer overflow and allows someone to take control of your machine, it's still not the developpers' problem under XP. If the user didn't explicitly give you a test case with a 65000 character string as input, it's not your problem. Yes, all the buffer overflows we moan and bitch about in Windows and IE would count as "delivering code without bugs" under the XP standard.

(Incidentally they also fit another XP koan: writing the simplest thing that can possibly work. Making the extra effort to write a buffer class with checked bounds, or an URL validator class, so such bugs don't happen... well, that's "wasting time with flowery design and frameworks.")

What's your recourse as a customer then? Well, hey, it was _your_ fault that you didn't give them the right test cases. But don't worry. You'll give them the new test cases, write it as a change request, and pay them another cycle to fix it. That's the XP way.

That's just one of the many lies and double-speak that XP is _based_ on. On one hand accuse everyone else of shipping buggy stuff, on the other hand conveniently redefine the _exact_ _same_ stuff as "without known bugs" for yourself.

But, as I've said, that's just one of many.

What to look for (2, Informative)

sam_hughes (535289) | more than 10 years ago | (#8345260)

Choosing a vendor is certainly one of the hardest decisions to make. Before you talk to anyone make sure you have a lawyer who can protect your interests and write un an NDA (at a minimum) for you. I've noticed from working with clients these are important things in succeeding:

Geography
Work with someone in your area. Believe me, you'll be plenty busy with everything else that you won't want to deal with timezonea or thick accents.

Integrity and Experience
Part of your interviewing process should be to get references for the vendors on your short list. Check them. Also use your personal network to check the potentials out. You're betting it all, you want someone you can trust. You want to make sure they've done the kind of work you're doing. Many firms say they have experience doing what you need but don't really. Ask to talk to one of those customers they claim to have. Make sure they have done the work recently. Lots of companies change focus.

Experienced Staff and Manager
A lot of firms will let you sit down with the team who will be doing your work. This would be another part of interviewing a vendor for me. Ask if you can follow around (for a day) one of the people who would make up your team. I'd spend a day or two around the office of the firm you're hiring. Make sure you like how they work. Also, make sure the manager of your project is someone with experience and whom you really like. They will be the one keeping you informed with the good and bad news. They will also handle your requests for change.

Financial Flexibility
My firm sometimes works with startups for a stake in the company instead of pure cash. Ask about alternative financing options. I don't know any contractors who will work like this.

Advice from a firm like you want to hire. (5, Informative)

barries (15577) | more than 10 years ago | (#8345298)

Hi. First a bit about me and my firm (not a plug--we're too busy to take on random work and we're probably not in your region), then the free advice. I own an 8 person (and growing :) software engineering consultancy that does project planning and software development for new products in the embedded and distributed application spaces.

We specialize in a few different types of work for small firms and billion dollar companies. Man/machine interfaces. Medium scale (5 to 500 end points) distributed soft real time data gathering and collaborative apps. Hard real time embedded consumer and diagnostic devices. To give you some idea, over the last 10 years we've worked with x86, PIC, 8051, etc. using VxWorks, Win*, SCO, FreeBSD, Linux, PalmOS. Oracle, PostgreSQL, SQL Server dbs, C, C++, Java, Perl, etc. A wide variety.

The advice: don't try to farm the project out. Find a firm that has experience using the tools you need to have used doing the kind of work you need to have done. Make sure that their management team and engineering staff are the same ones that worked on prior, sucessful projects like yours will be, and check with their past clients to make sure they did an acceptable job.

Get a project plan from them with a detailed task breakdown (be reasonable about how detailed: don't expect them to make up tasks for things you can't yet spec clearly). Have them identify risks up front and get those tasks moved to the front of the schedule. Make sure you see clear descriptions of architecture--vague descriptions and diagrams are a good sign that they don't get it yet. Make sure you or somebody you trust technically reviews their work.

Once hired, visit them frequently throughout the process. Assuming you don't have an airtight spec, you'll want to work on site as much as you can or have them work on your site--rent space in an incubator or industrial park or even a house, but get you and them and everyone you can to work in the same physical space for a good part of each week if not full time.

You can try to get them to take equity, but sucessful firms generally avoid doing that unless you or your advisors have a really good track record, a solid bplan, etc., etc. If they're eager to take equity, then they may be starving. If they're good, that's ok, but it's often a sign of desparados.

Good luck--you've chosen a hard path, but it's a lot of fun and hopefully you'll do well at it.

- Barrie

Re:Advice from a firm like you want to hire. (0)

Anonymous Coward | more than 10 years ago | (#8381017)

just out of curiosity...how do you get your contacts/sales leads ? do you have a dedicated sales team to get projects ? do you advertise your skills somewhere ?

Easier and harder (2, Informative)

bobthemuse (574400) | more than 10 years ago | (#8346818)

I'm exactly what you're looking for. I'm a coder, work from home, and clients who have a detailed description of what they what are hard to come by.

I have a large number of contacts, local developers like myself whom I have worked with in the past and established a good rapport. You can be certain that it is faster and easier to take on a team that already works well together then to try and unite people you don't know very well. You'll find that there are a huge number of people like me, working from home part-time (20-30 hrs/wk) to make ends meet. I suggest looking around for locals who are involved in sourceforge projects, as being willing to put your code up for the world to see tends to say something. Look on Monster.com for local resumes which meet your needs, if these people don't have a full-time job, a 6-month or so project may be something they are interested in. I strongly suggest stayin g with locals unless you already know the team well.

Now if I was just local and was willing to breach my /. anonymity, this would make for a great plug! Oh well, happy hunting!

Make sure that you know what you are getting (2, Informative)

DaRat (678130) | more than 10 years ago | (#8348538)

Assuming that you can find a firm (and there are plenty of good suggestions above), you absolutely need to make sure that you know what you are getting. You need to interview the firm and interview the exact people that will be on your project. Also, you need to know what the process and likelihood are that the people on your project will be switched out. I spent some time at a consulting shop, and it seemed common for the client to think that they were getting people experienced in the tool that we were implementing on their project when they ended up with experienced people who were new to that tool. Even if they got people experienced with the tool there was a fair amount of staff turnover from project to another project.

Also, you'll need to manage the development closely (in an almost XP style). None of this "here ya go, I'll see you in 2 months" sort of work. You want to monitor the work and truly be able to understand what they are doing even if they can code better than you are.

Finally, expect to spend a lot of money. Rates are way down from what they were a few years back, but a "few credit cards ready to be maxed out" may not cut it for the prototype development, let alone enough to deliver anything.

equity instead of cash (0)

Anonymous Coward | more than 10 years ago | (#8352747)

I started a software company a few years back with the same kind of thing in mind. One thing to consider is that if you can convince other people that you have a good idea, they may work for equity instead of cash. It worked out very well for me. You just need to make sure that if they have another job, you aren't violating any non-compete agreements.

Good luck!

degs at the domain of 68k with a dot and an org

Home or Business Software? (0)

Anonymous Coward | more than 9 years ago | (#8355426)

Who are you going to market your product to? Remember, individuals don't generally like to pay for software. Therefore your business model may be doomed before it starts.

Businesses more readily pay for software, but your product needs to solve an existing business need. If you have lots of competition in your space, your probability of profit goes way down.

Face it, software is a hypercompetitive business.

Thanks and a few notes... (3, Informative)

blastedtokyo (540215) | more than 10 years ago | (#8360136)

A big thank you to everyone who replied. The information here's been truly helpful.

To clarify a few points, here's a little more background. First, I'm definately planning on hanging on to the project management/specs and not farming that out. I'm looking to outsource the coding because 1) I suck at it and 2) it's not what gets me excited. At my old day jobs, I worked side by side with great coders and while I know I probably couldn't afford any of them on a full time basis, I'd be doing a huge disservice to string together crud that I wrote. For me the thrill is putting a useful product in people's hands, growing a business, creating a great place to work and finding ways to do it on a shoestring.

Second, as my handle indicates, I'm physically located in Tokyo. As a person of mediocre Japanese skills and western upbringing, finding local help at a rate that I can afford is tough. Working with someone remotely is possibly easier than working with someone locally. I'm expecting to relocate somewhere else in the world as this project grows but to get started initially I just wanted something that could be use to gauge (business) customer interest. At this point, showing off my Flash demos draws a lot of friendly "well that looks great, come back when you have something real" remarks. I'm looking to have something that people could quickly try it out on their systems for a few days and either call me a complete moron or tell me they might be able to work with me, partner up, etc. In other words, I'm looking for the proverbial proof of concept.

Third, I'm curious about people who have suggested giving up equity in an early stage like this. I've always heard that one of the biggest mistakes of small businesses is giving up equity too early and too generously. While I realize I have little else (cash) to give, I figure it's not something to be casually thrown about, especially if someone that I ultimately have trouble working with ends up with a significant equity stake and demands to have his share bought out.

Fourth, as far as an open source business model goes, I'd like to go that route in finding lots of grassroots help but I worry that would eliminate any advantage I had in building a business. For example, let's say I put the idea out in the public domain and managed to get 15 people interested in working (part time of course) on a GPLed version of it. If/when the project became usable by customers, there's nothing to prevent a better funded firm (like IBM) from bundling it into part of their solution offering and becoming the de facto commerical support vendor for the product.

Finally, for those of you who wish me failure and call me gutless for not writing it myself, I have no doubt that this is no sure thing. It's exactly the reason I'm looking for contractors or oursourcing firms. It'd be downright irresponsible for me to start interviewing full time employees, hire a handful of them but know that I'd only be able to pay them for a few months before running out of cash if there were significant delays, negative customer response, etc.

Re:Thanks and a few notes... (0)

Anonymous Coward | more than 10 years ago | (#8381075)

hmm...we do rapid prototyping of applications and we also provide DRMd versions for distributing as demos...if youre interested, email me. if you can cover the costs of shipping and handling i'll drop a demo cdrom over to you to evaluate our stuff.zurkATarbornetDOTorg...email me if you want to.

Been there, done that... (1)

PinglePongle (8734) | more than 10 years ago | (#8367665)

I joined a startup as CTO in the hay day of the bubble. We had some money - not enough - and very little time, so we hired 2 companies to build our product.
Now, I can code. I understood the problem domain, I have a lot of experience managing complex projects and 3rd party suppliers, and we knew pretty much what we wanted. It was still a nightmare.
Here's what I recommend :
  • Find a business partner, ideally someone who complements your skills (a techie might be a good idea...). However good your idea is, I bet it will benefit from a second pair of eyes, an enthusiastic supporter who will offer constructive criticism, highlight angles you hadn't explored, and keep the project moving along while you're out rustling up more money.
  • Get the team together in the same space. There's really no substitute - if it means spending some of your precious capital to hire a motel room somewhere close to whoever does the work for you, it's probably the best money you will ever spend. Here's the skinny - when you're building an experimental product, there's no substitute for instant feedback. The people building the code will have a hundred questions, ideas, dilemmas every day, no matter how good your specifications, and cutting down the amount of time they have to wait to get an answer from hours to seconds really - really - pays off.
  • Insist on daily progress reports, with daily delivery of intermediate artifacts. Make sure that you keep a very tight handle on the day-to-day progress of the project, and make sure you understand the direction the product is taking. That means getting access to everything that is produced - not just pretty gantt charts and powerpoints, but the working designs, the code, the proof-of-concept doodles. Be absolutely relentless in establishing your vision, but make sure you are open to other ideas - fold them into your vision if they add immediate value.
  • Incorporate as early as makes sense - though I admit I have no idea what the situation is in Japan, in most countries it is usually worthwhile incorporating as soon as you are ready to start full-time work on your project. Find an accountant to fill you in on the details.

Now, a brief word about equity - you have to balance the value of your cash against your equity. If you retain 100% of the company but go bust in 6 months for lack of cash, your equity is effectively valueless. On the other hand, if you hand 95% of your equity to a blood-sucking VC and your company goes public at a value of $100 million, you will _feel_ like you lost 95 million dollars, and you will almost certainly lose control of the company.
Now, it is absolutely true that giving away too much equity too early is almost certainly going to mean you lose control of your company. But if you can find a bunch of decent programmers who are willing to work for a bit of cash and a reasonable equity stake, you have a decent chance of holding on to your cash for a while longer, getting some highly motivated business partners without losing the farm.
In case you're interested, we rewrote 80% of the original code within 6 months, the company's still alive but never really got the impetus we all hoped for, and I left after around 18 months.
Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?