Daniel Azuma
06 Nov 2019

Is it time to replace Rake?

We Ruby developers use Rake and Rakefiles for many of our build, test, and deployment scripts. Yet Rake has always felt a bit clumsy, and that shouldn't be a surprise. It was actually not designed for most of what we use it for. Would a different tool work better? Read More ›

01 Jul 2019

Deploying My Blog to Google Cloud Run

I recently moved this blog off of a Kubernetes cluster and onto Cloud Run, Google's new container-based serverless environment. This article explores why serverless might make sense for a Jekyll-based static website like my blog, and walks through how to containerize a static site and deploy it to Cloud Run. Read More ›

13 Nov 2018 · talks

Yes, you should provide a client library for your API! (RubyConf 2018)

On Nov 13, 2018, I spoke on "Yes, you should provide a client library for your API!" at RubyConf in Los Angeles, CA. The talk discussed the benefits of providing client libraries for HTTP-based APIs, and some techniques for writing them. Read More ›

07 Sep 2018 · talks

Docker and OTP: Friends or Foes? (ElixirConf 2018)

On Sept 7, 2018, I spoke on "Docker and OTP: Friends or Foes?" at ElixirConf in Bellevue, WA. The talk discussed ideas for making OTP applications work together with container-based deployments. Read More ›

18 Apr 2018 · talks

Containerizing Rails: Techniques, Pitfalls, and Best Practices (RailsConf 2018)

On April 18, 2018, I spoke on "Containerizing Rails: Techniques, Pitfalls, and Best Practices" at RailsConf in Pittsburgh, PA. The talk discussed best practices for designing Docker containers for Rails applications. Read More ›

17 Nov 2017 · talks

Dispelling the Dark Magic: Inside a Ruby Debugger (RubyConf 2017)

On November 16, 2017, I spoke on "Dispelling the Dark Magic: Inside a Ruby Debugger" at RubyConf in New Orleans, LA. The talk demonstrated how to implement a simple debugger for Ruby applications, and covered some of the techniques used in the implementation of the Stackdriver Debugger for Ruby. Read More ›

02 Aug 2016 · familyties

Family Ties part 10: My type of language

This is the tenth of a series of articles on what I've learned about Erlang (and Elixir) from writing an Erlang-to-Elixir transpiler. This post covers records, the type system, and dialyzer support in both languages. Read More ›

11 Jul 2016 · familyties

Family Ties part 9: Curse of the Preprocessor

This is the ninth of a series of articles on what I've learned about Erlang (and Elixir) from writing an Erlang-to-Elixir transpiler. This post continues our coverage of the Erlang preprocessor, discussing how preprocessor features can be reproduced using Elixir. Read More ›