In code tracking you do it manually by saying don't track. Here you'd need a bit more intelligence, but seems like doable.
And you could create then like a git for machines.
I may be too simplistic / not fully understand the stackrocket/blueprint/vagrant approach - but why not doing something radically simpler???
We've thought about going pure diff at the beginning and decided that to implement that method will give us less flexibility in the short term.
I speculate that do so, we would need to implement our own virtual machine (we are using virtualbox) and/or disk image format.
Good news is that for the "known/commont stuff" you can always have a central database of the random/temp stuff they generate.
E.g., mysql generetes tmp files here and there, and so and so - so you could profile all that common stuff in that way.
Then the uncommon stuff or your custom things, you declaratively say "do not track" as you do with code today.
Moreover you can do it in a way that is crowdsourced - ie: if its a cloud service when people declare such and such in mongodb is random/temp then you learn for all users.
At the end of the day there is a limited number of things people use and for the long tail it is OK for people to be declarative I guess.
But on the flip side I can see how that could end up being a nightmare.
But wouldn't it be nice to do something as simple as pull/commit/push for general purpose computers?
I am just spitting out ideas without deep thought but a discussion might prove fruitful.
It could come down to certain types of data, some to be ignored, some to be careful of (like data or code), others to blindly overwrite (critical security updates).
The point would be treat the data as "dumb", but to keep in mind that some data are "dumber" than others.
Perhaps if we had our own disk image format, we could mark certain types of data to be ignored for instance.
Our VM would know what to mark as ignored for say POSIX systems and that aspect could be configurable.
would work?
Wound't the system become a nightmare once I start installing/changing stuff in the machine in a very organic way?
Meaning, I'd have to go and maintain that manifest???
The vagrant functionality is part of what we do, but we also have a hosted service and offer access control to your team. We also have a mechanism to synchronize changes between your envs
Are you doing sort of a blended app hosting/cloud offering?
We only support Mac os x at the moment as a client, and Linux as the dev environment.
That said, we will be looking to expand at some point. At this stage, we want to make sure we nail down the correct way of solving this problem.
* Landing page
* Sign up formIf you want an account, please sign up at stackrocket.com and sent me an email. I'd love to chat more and see how we can make your life easier
A couple landing page nits:
• it'd be helpful to have some extra details/screenshots for people without flash to play the demo video
• lots of things on the landing page seem like they should be clickable to get started, but aren't. For example, 'Create a dev stack' and 'Make a stack, customize it' button-like areas. I bet using a click-analytics heatmap you'd see a lot of stray clicks on those.
A possible future for us would be to have easy deployment in your private "cloud", similar to vmware's cloudfoundry product.
That said, where we differ from cloudfoundry is that we aim to provide a great user experience and give everything to get started coding right away.
We might use blueprint in the future and contribute to the project. I think Matt and Richard are great guys.
That said, we offer more than blueprint, so it's not a clone.
Blueprint is a nice step in that direction: make a change and dump out the environment.
Perhaps what we need is a system that compiles to that manifest, or to chef/puppet.
Setting up systems is a complex task that neither puppet nor chef solve, they make it less daunting, but it still is a real pain to do so!
We don't have windows right now, but I'm sure that will be a major driver for user acquisition.
Ideally you want to "compile down" to cloudlets. With smart change management tools you can make it really simple for the user. That sounds exactly like Stackrocket's cup of tea :)
I was thinking more along the lines of something truly generic.
What we have in the works is detecting if you have e.g. Redis and subscribing to that "addon" for you.
service 'redis', '~> 2.2.2'