Acredito que seus dois principais pontos são de fato as maiores dificuldades, pois esbarram em 2 habilidades que (geralmente) os programadores não têm: Saber vender e ter uma escuta ativa.
E a percepção que tenho é que falta interesse por parte da comunidade sobre esses assuntos, vejo programadores em diversos grupos (inclusive de empreendedores), discutindo arduamente questões técnicas e deixando de lado tópicos que inspiram ou agregam essas 2 habilidades.
Acredito que quem não gosta de vendas e desenvolver uma relação com o cliente, não serve para empreender, mesmo que tenha um sócio que goste.
Por fim, se você já identificou a importância dessas questões e está correndo atrás, provavelmente esteja no caminho certo e a frente da grande maioria que tenta lançar algo.
Obrigado pelo seu feedback. Eu gosto muito de trocar a experiência com as pessoas da minhas áre, mas também fora dela para ter a capacidade de enchar esses desafios que eu encontrei quando comecei a empreender.
Eu notei que não é como você programa que vai definir o quão vendável será seu produto, pois muito difícil é a relação da venda, como tratar com o cliente sobre o produto, saber diminuir custo da entrega sem comprometer o resultado do que foi proposto, falar a viabilidade técnica, etc.
Eu já trabalhei com um programador que não negava o que o cliente pedia e no fim a entrega do produto tinha tudo, mas mal feito e não funcionava. Porém, tudo visualmente funcionava. Mas os custo de manter a aplicação na nuvem era inviável com os custos porque não havia cache, não era necessário um certas consultas de dados no banco, não existia um backup, e no fim dinheiro e a reputação da pessoa foi jogada no lixo. Tudo por não falar de forma franca com o cliente e explicar até onde poderiamos ir com o projeto.
Ultimamente, quero muito aprender contribuindo com Open Source e Freelas que eu possa pegar, porém vejo o mercado muito em baixa.