You can make a great software but you have to choose 2 out of this above 3. There is no way to get around!