> I think the future of sysadmin will be more explicitly procedural.
I think that's true for the lower levels of abstraction because sysadmin is a finite list of steps. Being able to program your infrastructure in a type-safe, fail-safe way is very important. In the grandparent comment, i was arguing for building higher-level abstractions (semantic sysadmin) on top of that to make it easier to understand how your infrastructure is configured, and make it reproducible/forkable.
Think of it like there's two kinds of state stored on your system: useful state (eg user data) and infrastructure byproducts (eg TLS certificates). The former must be included in backups, the latter can be regenerated on the go from server config. The kind of declarativeness i'm interested in is that which enables any member/customer to fork the entire infrastructure by editing a single config file if they're not happy with provided services, and from there they can import their own useful state (eg a website/mailbox backup). Hypothetically, the scenario would be like "is Google Reader closing down? Let's just fork their infra, edit the config file, and import our our feeds and all we have to do is use a different URL to access the very same services".
I think that's true for the lower levels of abstraction because sysadmin is a finite list of steps. Being able to program your infrastructure in a type-safe, fail-safe way is very important. In the grandparent comment, i was arguing for building higher-level abstractions (semantic sysadmin) on top of that to make it easier to understand how your infrastructure is configured, and make it reproducible/forkable.
Think of it like there's two kinds of state stored on your system: useful state (eg user data) and infrastructure byproducts (eg TLS certificates). The former must be included in backups, the latter can be regenerated on the go from server config. The kind of declarativeness i'm interested in is that which enables any member/customer to fork the entire infrastructure by editing a single config file if they're not happy with provided services, and from there they can import their own useful state (eg a website/mailbox backup). Hypothetically, the scenario would be like "is Google Reader closing down? Let's just fork their infra, edit the config file, and import our our feeds and all we have to do is use a different URL to access the very same services".