1. Distributed Locks with Heartbeats using Redis

    Published

    When building highly available services, it's common to need to lock a resource every once in a while. You can use Redis and a simple wrapper to create a heartbeat/watchdog that will keep a lock alive as long as a task is running, and automatically unlock the resource if the process dies.

  2. Core Competencies for Devops Engineers

    Published

    Devops jobs are in demand, but not everyone has a clear idea about what is expected. The job can be pretty broad but all of it involves infrastructure, cloud technology, and configuration management.

  3. Rust Interior Mutability with Async_std and Tide

    Published

    It sounds complicated but "interior mutability" just means that safety is checked at runtime instead of at compile time. This is useful for allowing the same object to be potentially modified by multiple threads safely in the context of a web application.

  4. Rust for Devops

    Published

    You can leverage Rust's safety and performance to make Devops life easier. As long as your coworkers are cool.

  5. Signs that your Developer Culture is Unhealthy

    Published

    Whether you're on AWS, GCP, Digitalocean or whatever else, having a healthy cloud architecture will make you much less susceptible to random failures and will enable your system to adapt to changes without downtime.

  6. Rust Async Streaming with Rusoto

    Published

    Ever ask yourself, "how do I use async streams in Rust when using the AWS Rusoto library?" Of course not. Here's how to do it anyways.

  7. Tech I'm Thankful for in 2019

    Published

    There's a lot of open source projects and technology out there that I'm happy to have access to.

  8. I'm Not Supporting Companies like Doordash

    Published

    Doordash is using your tips to help pay their drivers as little as possible. A 7 billion dollar company can afford to pay its drivers properly.

  9. High Quality Code

    Published

    When untested code fails, any number of things could have gappened. When tested code fails, exactly one thing happened: an expectation was incorrect.