Build the future of communications.
Start building for free
  • By Eddie Zaneski
    How to Receive a POST Request in Node.js post-request-node-header

    Receiving a POST request is the “Hello, World” v2 of building a web app. Here’s how to receive a POST request with three popular Node.js frameworks – Express, Hapi, and Koa.

    Let’s build an app that receives an inbound SMS webhook from Twilio. When a user texts your Twilio phone number, Twilio will make a POST request to the URL that you configure with all the bits of information you care about. Normally you’d want to reply with TwiML, but for simplicity we can reply with an SMS in plain text if we set the Content-Type header as text/plain.

    What We’ll Need

    Read More
  • By Eddie Zaneski
    Using The Node.js Debugger For Fun And Profit using-node-debugger

    Did you know that Node.js has a built in debugger? I didn’t until a few months ago. Check out how it can make debugging your code a breeze.

    To follow along at home you’ll need:

    First let’s write some code to debug. We’re going to sum the contents of an array with a for loop.

    Paste the following into a file named index.js.

    'use strict'
    const list = [1, 2]
    let total = 0
    for (let i = 0; i <= list.length; i++) {
      total += list[i]

    Running this with node index.js you’ll see NaN printed out.


    Instead of smashing our faces against the keyboard let’s run the file through the Node.js debugger by passing node the …

    Read More
  • By Eddie Zaneski
    How To Add React Powered CSS Filters To Twilio Video css-filters

    What’s that? You want to add filters to your video application that serve no purpose other than looking awesome? Check out how easy adding CSS filters are to elements on your page.

    In a recent post we saw how to introduce React.js into an existing Twilio Video application. Let’s pick up where we left off and add our video filters as a new React component.

    Start by cloning this repo and moving into it:

    git clone -b conversation-react-component
    cd react-twilio-video-post

    Follow the instructions in the to get your credentials configured. If you want to learn how this app was built go back and run through this post. …

    Read More
  • By Eddie Zaneski
    Three Out Of This World Node 6 Features You Need to Know About node

    Node.js version 6.0.0 shipped yesterday and brings with it a ton of stellar ECMAScript 2015 features. Here are three that will make your life easier and are worth getting excited about.

    Function Defaults

    How many times have you written boilerplate code that looks something like this:

    function beginTeleportation (who, options) {
      options = options || {}

    Well the days of checking for the existence of function arguments are over. Default function parameters let you define a default value for function arguments right in the function declaration.

    function beginTeleportation (who, options = {}) {

    In this example if options isn’t passed in it will be assigned t …

    Read More
  • By Eddie Zaneski
    Building a React Powered Video Chat react-video

    One of the most challenging conversations in software development is debating the modernization of an existing application. In fact telling your boss that you want to rewrite something in a new technology may not always end well.

    But with so many new and better frameworks like React being released every day, there are definitely times where it makes sense to bite the bullet and go green(field). Thanks to React’s focus on modular and reusable components, replacing existing pieces of your application with self contained React components actually makes modernizing a brownfield application much easier, even fun.

    We’ll see how simple this is by taking the Twilio Video Quickstart and replacing the conversation piece of the application with a React component. If you want to skip to the end result you can grab the completed code from GitHub.


    Before we get started we’ll need to install and gather the …

    Read More
  • By Eddie Zaneski
    Analyzing Customer Emotions Using IBM Bluemix, Watson, and Twilio Voice bluemixheader

    Not every customer that calls in for support is a happy camper. When an unhappy customer walks through the door there are a multitude of signs and signals as to how they are feeling. However, over the phone it can be more difficult to judge a customer’s emotions when all that’s expressed are words and tone. Wouldn’t it be great to have help identifying how a customer is feeling? In this post we’re going to do just that using a Cloud Foundry Java application and two Watson APIs inside IBM Bluemix along with Twilio Programmable Voice.

    Our application will start with a Twilio phone number. When a customer calls the number Twilio will make an HTTP request to our Java app looking for some TwiML instructions in the app’s response. Our TwiML will ask the user why they are calling and then record their response. Once the recording is …

    Read More
  • By Eddie Zaneski
    Getting Started with Clojure GettingStartedWithClojureFeatured

    JavaScript has been my go-to language for quite some time now and before that it was Ruby. Both of these languages have a lovely dash of functional programming that I’ve toyed with here and there. It seems functional concepts are becoming more and more prominent amongst the JS community with projects like Redux and Immutable.js gaining popularity. I recently decided to take the dive into functional programming. A friend recommended the Clojure programming language and learning it has been a real hoot.


    Clojure was created by Rich Hickey who had a very strong rationale for its birth. The language is designed to compile down to bytecode and run on a virtual machine so it’s not OS dependent …

    Read More
  • By Eddie Zaneski
    Getting Started with Electron: Building a Desktop Chat App electroncover

    Many of the communities I’m active in have adopted Slack to communicate. Even though Slack has a really sweet web app, I still prefer to use the desktop client for a few reasons.

    • Having a native app means that it’s always on without having to keep a browser tab open.
    • You keep the ability to alt-tab to it.
    • Native notifications – this includes the unread badge count on OS X.

    Building a desktop application can be challenging because of the required platform specific knowledge. If the app you’re building needs to run on different platforms your knowledge requirements increase significantly due to the disparate environments.

    This is where Electron teleports in to save the day. From the repo:

    > The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on Node.js and Chromium and is used in the Atom editor.

    As mentioned …

    Read More
  • By Eddie Zaneski
    Async/Await: The Hero JavaScript Deserved asyncawait

    Writing asynchronous code is hard. When it comes to JavaScript we rely heavily on callback functions to accomplish asynchronous tasks which can be far from intuitive. This cognitive overhead creates a barrier to entry for newcomers to programming and the language and even causes frequent heartburn for those of us who have been using the language a while.

    In this post we’ll examine how a proposal for ECMAScript 2016 (ES7) can be used to improve our experience with asynchronous programming in JavaScript, making our code easier to understand and simpler to write.

    The World of Today

    Let’s start by taking a look at an attempt of asynchronous programming today. The following example uses the request library to make an HTTP request to the Ron Swanson Quotes API and prints the response to the console. Give it a spin by pasting the following into a file named app.js and running …

    Read More
  • By Eddie Zaneski
    Getting Started with Gradle and the Spark Framework Spark and Gradle

    One of the worst phrases I hear at student hackathons is “I can’t build a cool web app because I only know Java”. I see two solutions to this dilemma. We can either agree to hunker down and get started learning Ruby or Python or we can embrace existing knowledge and dissolve this misconception. Even a veteran might not associate Java with quickly spinning up a web app, but today I’m going to show you how easy it can be with the Spark Framework. Spark is a Java micro web framework similar to Ruby’s Sinatra or Python’s Flask. With 7 simple lines of code and a small config file we can get spun up serving totally rad caffeinated HTTP requests.

    The Kit

    I’ll be doing all of this with the Java IDE IntelliJ IDEA because of its excellent integrations. You can grab a free copy of the Community …

    Read More
  • Newer
    Sign up and start building
    Not ready yet? Talk to an expert.