Transforming ideas into custom software applications