Whole Code


Twilio Studio

Reviewed July 24, 2019

Twilio Studio is a node-and-wire workflow builder for phone and text related applications, such as IVR (Interactive Voice Response), chatbots, SMS surveys, and lead distribution via call routing.

Product Feel

  • 👍 Intuitive, slick
  • 👎 Simplistic, not fully programmatic
  • 👎 Slow (loading pages and deploying services)
  • 👎 Glitchy: starts and stops working randomly
  • Basic Usage

    The above video (19 min; it's just failed debugging after min 12) creates a "guess the number" text-message game. It demonstrates:

    Intuitive interface

    The interface is aesthetically pleasing, and has good attention-to-detail. For example, the colors are hints at functionality: green for calls, red for triggers, orange for messages, grey for failures. Node-and-wire frameworks best visualize control flow (as opposed to data transformations) which is ideal for a series of texts or phone responses. Splits are easy to understand and follow, and loops are as simple as dragging a wire up the graph to a previous node. It's interesting to note that they've entirely abstracted over the asynchronous nature of the phone service, presenting what seems like a simple step-by-step flow.

    Liquid Templating

    Liquid Templating was a pleasant surprise, as it was familiar to me. It's simple and powerful. I was quite impressed by the power and convenience of their autocomplete menu for variable names.

    JavaScript Functions

    As seen in the above video, full JS functions can be created from within the online IDE and easily referenced in the node-and-wire editor. They even allow you to import from npm!

    Logs & Debugger

    When an error is hit anywhere during execution, a debugger bug lights up orange. The log page is a very helpful resources. It stores the input and output values of every single node that was reached in every execution. The formatting of the data isn't ideal, but it's all there! No log statements necessary (for the node-and-wire editor; the JS editor still requires them occasionally).

    Revision History

    Every single change, including superficial ones, are stored as separate revisions.