Etiqueta de frequência
Penso que mais importante do que "não enviar mais de uma por semana" seria "enviado com a menor frequência possível"
Se você precisar enviar duas em uma semana, faça-o. Mas se você não precisar enviá-los, não envie nada.
Como alternativa, você pode criar o estilo 'newsletter' e enviá-lo regularmente (agendado). Mas, nesse caso, você precisaria garantir que você tenha coisas relevantes específicas a dizer em cada mensagem.
Fácil de usar
Torne incrivelmente fácil a inscrição e o logout.
Torne incrivelmente fácil (e opcional) para eles personalizá-lo.
Você mencionou o controle refinado, mas lembre-se de que, quando os clientes vêem longas listas de caixas de seleção sobre o que gostam e o que não gostam, eles sabem que quanto mais caixas clicam, mais emails eles recebem, então eles ' tenderá a clicar menos.
Um método que você poderia usar seria semelhante ao "eu gosto disso" do Facebook, "eu não gosto disso", o único problema é que você precisa de MUITA lógica de dados (e complexa) para implementar um esquema como esse.
E-mails diretos curtos seriam os melhores (ao contrário desta resposta). Inclua links para as informações, embora isso possa marcar seus e-mails como spam.
Muitas pessoas mencionaram não vender os e-mails, acho que isso é óbvio, mas a outra faceta é algo que Frakkle mencionou. Não há como qualquer pessoa na sua lista de e-mail coletar as informações sobre mais ninguém na lista de e-mail. Nem mesmo amarrar as pessoas. Sempre componha emails individuais e diretos.
Programaticamente
Nesse caso, como em muitos outros problemas de programação, use o tipo de serviço que você estiver mais familiarizado. Não acredito que as diferenças entre o serviço ASP.NET e o serviço Windows sejam maiores que a diferença nos seus próprios níveis de habilidade.
Exploração madeireira
Para o registro, ao usar um serviço do Windows, tive uma boa experiência com o Log4Net. Em termos de (o muito mais importante) conteúdo. Você deve registrar algumas coisas (se aplicável).
- Destinatário
- Horário enviado
- Tags de conteúdo
- Fila de mensagens atual
1) Destinatário
Parte integrante do log, porque muitas vezes erros no 'serviço' são realmente erros do destinatário. Você pode imaginar o caos que ocorreria se a sua caixa de correio de teste se enche e comece a rejeitar as mensagens.
2) Hora enviada
Muito importante por razões óbvias. A maioria dos registradores registra o tempo de todas as mensagens de qualquer maneira.
3) Tags de conteúdo
Se você estiver enviando algum tipo de conteúdo modular personalizado, provavelmente haverá um conjunto de tags de conteúdo com base em suas preferências ("VideoGames, StackOverflowNews, Lederhosen"). Isso permite que você acompanhe de maneira muito mais detalhada o que poderia estar errado com uma determinada classe de e-mails que falham.
4) Fila de mensagens atual
Muitos dos problemas podem ser esclarecidos registrando esse valor sempre. Ele mostra os horários em que seu programa é extremamente lento e também mostra quando é curiosamente mais rápido que o normal (fila suspeita vazia). Mais problemas serão esclarecidos por este do que por quaisquer outros.