IMO, it makes sense when your strategic advantage is in your community and the service/convenience of hosting the app for people. If your advantage is in your algorithms, I don't think it makes sense, unless you plan to make your money from consulting/enterprise/hosting.