Microsoft Teams: a rant
It’s time for a brief rant about Microsoft Teams. Before we start I’ll state that Teams is probably an ok platform for collaboration when you work for just one organization. But when you need to work with multiple organizations, each with their own Teams, you immediately run into a world of hurt. There are two reasons:
-
There are no third-party clients or plugins for Teams
-
Official Teams web and desktop clients force you to actually switch workspaces (or organizations) if you want to participate in discussions
To containerize in AWS or not: the cost perspective
I recently checked the pricing model for Amazon Fargate to see if migrating a fair number of EC2 instance-based workloads to containers would save money. In theory this should have been the case, as a container has less “fat” compared to a full virtual machine. In this case the workload itself was perfectly suited for a container: a single process with single configuration file that was mostly network-bound running on t3.micro instances.
Explicit high-level dependencies in Puppet
I’ve noticed that some people - I won’t reveal their names here to protect them - love using contain and/or ordering arrows in Puppet. A typical use-case is for role classes:
class role::webserver { contain ::packetfilter::endpoint contain ::profile::monit contain ::profile::unixbase contain ::profile::ipa_client contain ::profile::webserver
Class[::packetfilter::endpoint]
-> Class[::profile::monit]
-> Class[::profile::unixbase]
-> Class[::profile::ipa_client]
-> Class[::profile::webserver]
}
The above code nicely ensures that all the classes get applied in the exact order defined above. What happens under the hood is that Puppet generates dependencies between the classes and applies them in order.