Se implementado é uma modificação de peso em relação à sistemática hoje existente de empacotamento.
Atualmente o desenvolvedor de um determinado pacote descreve as dependências do software que ele criou e essas dependências, se já não existirem no sistema, são providas pelo instalador, buscando-as nos repositórios.
A questão central nessa sistemática é a sincronicidade entre versões necessárias.
Vez que os desenvolvimentos são independentes - quem faz um aplicativo não é o mesmo que faz uma biblioteca que é utilizada pelo aplicativo -, é fácil perceber que há um grande potencial de quebra da sincronicidade.
O desenvolvedor do aplicativo X utilizou a versão Y biblioteca Z quando implementou seu software, entretanto, adiante o desenvolvedor da biblioteca Z introduziu uma modificação que julgava necessária naquela biblioteca, criando, pois, uma nova versão W e vice-versa. Os impactos de mudanças por novas versões podem ocorrer em vários lados.
Qual a proposta do snappy?
Sair da sistemática atual de dependências e colocar num mesmo pacote tudo o que é necessário para ele rodar.
A execução passa a ser algo semelhante ao que existe hoje nos telefones celulares, isto é, os aplicativos são isolados uns dos outros, o que melhora e execução e em muito a segurança.
"Criar aplicativos para o Ubuntu Snappy é muito mais fácil que o empacotamento tradicional, simplesmente agrupe todos os arquivos que você precisa em um único pacote e publique, então os usuários podem baixá-lo instantaneamente.
Pacotes Snappy podem ser estaticamente ligados e incluir suas próprias cópias de qualquer arquivo que eles precisam. Os desenvolvedores podem usar as exatas versões de bibliotecas que eles quiserem e controlar quando essas bibliotecas são alteradas ou usar as bibliotecas do núcleo do sistema a partir do Ubuntu, se preferir."
Na verdade dessa forma voltamos aos primórdios da computação.
Era assim no início, cada programa carregava consigo tudo o que ele precisava e todos os arquivos ficavam dentro de um diretório da instalação do programa.
Só depois é que começaram a aparecer as bibliotecas compartilhadas por vários programas, com o que também se ganhava espaço de armazenamento e memória, que naquela época era uma coisa grave e essencial.
Por exemplo, um sistema IBM 360 mainframe era gigantesco nos seus 32KB de memória central. A técnica de programação era a então chamada programação estruturada, que significava, como ainda hoje, programar em módulos, porque para subir um módulo do programa era necessário baixar o antecedente que estava executando, já que geralmente não havia espaço suficiente para processar mais de um módulo ao mesmo tempo e sequer existia multitarefa.
O Snappy não é apenas isso, mas esse é um aspecto essencial.