Development work is nowhere NEAR the same as selling somebody something.
It involves defining scope, deliverables and timelines. It involves a long-term commitment from two parties: you to provide skill and effort, and them to support you (because there WILL be gaps in the requirements) and pay you.
In my experience in these "I've got an idea" situations, once you attempt to define the project concretely the client frequently realizes how far in over their head they are and changes their mind. And if you're not defining these things upfront then you're running a very risky business model: if you don't know timelines, how do you know how much budget they need to afford you? If you don't whether they can afford you, you're taking a big chance accepting the project.
(And if you are defining these things and realize the guy isn't going to succeed but take the work anyway without warning him, you're unethical).
You've not been a contractor? All you have are hours to sell, and its very similar to selling a pick or shovel.
Unethical? If you had a crystal ball that could predict the success of every new idea, sure its unethical to keep it secret. But just because you don't personally think its a good idea- well, it'd be unethical to put your bias in the way of this guy succeeding despite your doubt.
There are two types of contractors, and I have been both:
1. The "warm body" that does indeed just sell hours, usually via a labour broker or development house. They fulfil a "development resource" capacity required on the project, and typically there is already a project structure (plan(s), schedule(s) and management) in place. They are not directly responsible for the deliverables of the project. I am a warm body contractor because (2) freaks me out.
2. The "development house" (can just be one person despite the term) who initiates and manages the project in addition to doing the work. They have to define the project, agreeing on scope, timeline and budget because they are party to a contract and are directly responsible for the deliverables. If they screw any of these parts up (and that includes due diligence, e.g. can the client actually pay them, and how can you answer that question if you have no idea and agreement on project duration?!), their business stands to suffer losses. This has nothing to do with predicting success -- it has to do with contractual obligations and legal liability. They get to charge higher rates than (1) because of this additional skill required, risks involved and the associated differences in supply.
If you are a non-technical entrepreneur with no idea how to run technical projects and you seek out a warm body, you will get burned because that is not what you need (and this is part of what the linked article is about).
If you are a warm body who accepts such work - just selling hours and not a plan, a schedule and budget, yes I believe you are unethical because you are not ultimately providing what somebody expects, despite knowing their expectations, and that's the definition of misrepresentation (it's like selling somebody a car without a working engine and not stating that anywhere).
If you explain to them the risks, give them a plan that you honestly believe you can meet, and they still want to go ahead, shrug that's fine. But if you just say "yah I'll build it" knowing full well it's not going to be useful, or worse you're too naive to know how to manage projects but you're selling yourself as a professional developer that'll deliver, you're unethical.
It involves defining scope, deliverables and timelines. It involves a long-term commitment from two parties: you to provide skill and effort, and them to support you (because there WILL be gaps in the requirements) and pay you.
In my experience in these "I've got an idea" situations, once you attempt to define the project concretely the client frequently realizes how far in over their head they are and changes their mind. And if you're not defining these things upfront then you're running a very risky business model: if you don't know timelines, how do you know how much budget they need to afford you? If you don't whether they can afford you, you're taking a big chance accepting the project.
(And if you are defining these things and realize the guy isn't going to succeed but take the work anyway without warning him, you're unethical).