Level up your Twilio API skills in TwilioQuest, an educational game for Mac, Windows, and Linux. Download Now
Build the future of communications.
Start building for free
  • By Dominik Kundel
    Construire une CLI pour notre conférence avec React cli-devmode-banner

    Pour notre conférence annuelle SIGNAL, nous avons décidé de permettre à nos devs de pouvoir construire des projets cool avec Twilio, tout en regardant la conférence.

    Résultat : nous avons construit le SIGNAL Developer Mode, une extension de la CLI Twilio.

    Pourquoi une expérience en ligne de commande ?

    Quand les conférences en visio ont commencé à proliférer cette année - dû au contexte sanitaire actuel - nous avons nous-même assisté à quelques-unes. Et nous avons réalisé qu’il y avait tout de même des différences avec les conférences en présentiel.

    Nous avons remarqué que l’une de ces différences est l’envie de vouloir savoir plus et construire avec ce qui est mentionné dans les sessions keynotes et les conférences pendant qu’elles ont lieu.

    Quand on assiste à une conférence en personne, on essaie de noter dans notre tête tout ce que l’on veut essayer plus tard, ou alors …

    Read More
  • By Dominik Kundel
    ガイド: Node.jsでログを記録する方法 A guide to Node.js logging

    この記事はTwilio Developer AdvocateのDominik Kundelこちらで執筆した記事の日本語版です。

    JavaScriptで開発を始める際に最初に学ぶことの1つは、console.logを使用してイベントなどをコンソールにロギングする方法でしょう。JavaScriptのデバッグ方法を検索すると、console.logのシンプルな利用方法に関するブログや、StackOverflowの記事が数百件ヒットします。console.logは一般的な手法ですが、不要なログステートメントを本番コードに残さないためにno-consoleなどのlinterルールも登場しています。しかし、特定の情報を意図的にロギングする場合は、どうすれば良いのでしょうか?

    この記事では、情報をロギングするさまざまなケースを紹介します。さらに、Node.jsにおけるconsole.logconsole.errorの違いや、ユーザーコンソールを混乱させずにロギングをライブラリに組み込む方法についても解説します。

    console.log(`Let's go!`);
    

    第1の理論: Node.js

    console.logまたはconsole.errorはブラウザやNode.jsで使用できますが、Node.jsで使用する際に注意すべき重要な点があります。例えば、Node.js環境でindex.jsというファイルに、次のコードを記述します。

    console.log('Hello there');
    console.error('Bye bye …
    Read More
  • By Dominik Kundel
    環境変数の設定方法 environment variables - header

    この記事はTwilio Developer AdvocateのDominik Kundelがこちらで執筆した記事を日本語化したものになります。

    コードと共有すべきではないものもあります。その多くはデバッグフラグやTwilioが提供しているAPIのアクセストークンなど、環境に依存する設定値です。環境変数はよい解決策であり、ほとんどの言語で簡単に使用できます。

    環境変数とは

    dog - wondering

    環境変数とは、その名が示すとおり環境を表すシステム内の変数です。最もよく知られている環境変数は、PATHでしょう。この変数には、実行可能ファイルを格納したフォルダへのパスが含まれます。このPATHを使用すれば、ターミナルに実行ファイルの完全なパスを記述することなく、実行ファイルの名前だけを記述できます。シェルは指定される実行ファイルについてローカルディレクトリだけでなく、PATH変数で指定されたすべてのディレクトリをチェックします。

    「組込み」変数のほかにも、自分で環境変数を定義できます。環境変数は環境に紐づけられるため、APIアクセストークンなどに最適です。開発マシンで特定の値に設定された変数を、if文や特別な構成ファイルを用意せずに本番環境で別の値に設定できます。

    たとえばTwilioヘルパーライブラリは、TWILIO_ACCOUNT_SIDTWILIO_AUTH_TOKENの2つを渡さずにクライアントのインスタンスを作成した場合、環境変数を確認します。このしくみにより機密性の高い認証情報を誤ってGitHubなどの場所へプッシュしてしまう心配がなくなります。

    Windowsの環境変数 …

    Read More
  • By Dominik Kundel
    Node.jsで環境変数を利用する方法 Environment Variables in Node.js

    この記事はTwilio Developer AdvocateのDominik Kundelがこちらで執筆した記事を日本語化したものになります。

    環境変数は、Node.jsアプリケーションから秘匿性の高い情報にアクセスできる、すばらしい方法です。多くのクラウドホスト(Heroku、Azure、AWS、now.shなど)やNode.jsモジュールでは、環境変数を使用します。例を挙げると、ホストではサーバーがどのポートをリッスンすべきかを指定する PORT 変数を設定します。モジュールは NODE_ENV 変数の値によって異なる動作(ロギングなど)をするかもしれません。

    この記事では、私がNode.jsで環境変数を扱う際に使用しているTipsやツールをいくつか紹介します。

    基本

    Node.jsは標準で環境変数へのアクセス方法を提供しています。Node.jsのプロセスが起動すると、グローバルオブジェクトのプロパティとしてenvオブジェクトを作成し、すでに存在している環境変数へアクセスできます。このオブジェクトを覗いてみたい場合は、nodeコマンドでNode.jsのREPL(対話モード)を起動し、次のコマンドを実行します。

    console.log(process.env);
    

    このコードは、現在のNode.jsプロセスが認識しているすべての環境変数を出力します。特定の変数にアクセスするには、オブジェクトのプロパティのようにアクセスできます。

    console.log('The value of PORT is:', process.env …
    Read More
  • By Dominik Kundel
    US A2P10DLC for Developers decorative header image "US A2P10DLC for developers"

    This year telecommunication carriers in the United States are implementing changes to increase customer trust in SMS and reduce fraud. The changes fall under an initiative that is often referred to as A2P10DLC, or application-to-person 10-digit long code. In this blog post we'll cover what A2P10DLC means and how it impacts you as a developer.

    tl;dr

    If you are an independent developer sending fewer than 500 messages per day across carriers, at the time of writing this article, there is no action required on your side. As we continue discussions with our carrier partners, we'll make sure to update you all if there are any changes to this.

    If you are an incorporated business sending messages, check out our Support FAQ around registering your brand and campaign(s). If you are sending more than 2000 messages per day, make sure to reach out to our Sales team for assistance in the …

    Read More
  • By Dominik Kundel
    Move your Twilio Functions Project to Node 12 decorative header image "Move your Twilio Functions to Node.js 12"

    In April 2021 Node.js v10 is officially going into end of life status. This means that Node.js won't release any more updates or security patches for this version of Node.js. If you are currently using Twilio Functions your project is likely still running using Node.js v10 and you'll have to update it. In this blog post we'll go through the steps that you can take to test and update your Twilio Functions project to Node.js 12.

    Please Note: These steps are specific to projects that were created using the Twilio CLI. For general steps on how to update and what the changes entail, please refer to our docs. Any new projects will already be using Node.js v12 and no action is required.

    Prerequisites

    • The latest Twilio CLI version - get it here
    • Version 1.9.0 or newer of the Serverless Plugin for Twilio CLI. - twilio plugins:remove …
    Read More
  • By Dominik Kundel
    How we built a terminal interface for our conference using React decorative header image "Building a conference CLI with React"

    For this year's SIGNAL conference we decided we wanted to enable developers to build awesome things with Twilio while watching the conference. As a result we ended up building SIGNAL Developer Mode as an extension of the Twilio CLI.

    In this blog post we'll talk about both some of the design decisions that went into building this as well as the underlying technology. We'll have some code snippets but the entire project is also on GitHub.

    Why a CLI Experience?

    When virtual conferences started ramping up this year and we attended some ourselves, we realized a few things were different than attending a conference in person.

    One of the things we noticed that was different was the urge of wanting to learn more and build with the things that were mentioned in keynote sessions and throughout the conference.

    When you are at a physical conference you try to …

    Read More
  • By Dominik Kundel
    Introducing SIGNAL Developer Mode decorative header image

    This year's SIGNAL conference is our first virtual conference and the first SIGNAL conference where you'll be sitting mostly in front of your computer. We wanted to help you make the most out of that. Seeing live coding demos is great, but we also understand that you are builders. That's why this year we are introducing SIGNAL Developer Mode!

    What is SIGNAL Developer Mode?

    terminal screenshot of SIGNAL Developer Mode

    SIGNAL Developer Mode is an augmentation to your existing SIGNAL experience running inside your Terminal. It's a Twilio CLI plugin and available to any SIGNAL ticket holder (get your free ticket).

    In addition to general conference functionality such as viewing your schedule and finding useful resources, Developer Mode provides:

    • Live keynote mode - it will not only show you the closed-captions for the keynote but also any relevant demos and resources as the speakers are talking about them.
    • Packed demos section - find a …
    Read More
  • By Dominik Kundel
    ASTs - What are they and how to use them Decorative image saying "Abstract Sytnax Trees - What they do and how to use them"

    If you are writing code, chances are that ASTs are involved in your development flow. AST stands for Abstract Syntax Tree and they power a lot of parts of your development flow. Some people might have heard about them in the context of compilers but they are being used in a variety of tools. Even if you don't write general development tools, ASTs can be a useful thing to have in your toolbelt. In this post we'll talk about what ASTs are, where they are used and how you can leverage them.

    What is AST?

    Abstract Syntax Trees or ASTs are tree representations of code. They are a fundamental part of the way a compiler works. When a compiler transforms some code there are fundamentally the following steps:

    1. Lexical Analysis
    2. Syntax Analysis
    3. Code Generation
    Diagram showing how input is transformed into tokens via Lexical Analysis and then into an AST through Syntax Analysis. Lastly it's transformed into output using Code Generation.
    Visualizsation by https://twitter.com/@_lrlna

    Lexical Analysis aka Tokenization

    During this step, code that you wrote is going …

    Read More
  • By Dominik Kundel
    Congratulations to the winners of the Twilio x DEV hackathon Decorative header image saying "Congratulations to the winners of the Twilio x DEV hackathon"

    Over the last month, we hosted a hackathon with our friends at DEV to celebrate the launch of our CodeExchange Community Program. We've been amazed by the amount of excitement and the incredible submissions that we've seen.

    In total we've seen over 200 submissions to the hackathon from developers around the world. Today we are excited to announce the winners of the Twilio x DEV April 2020 Hackathon.

    Thank you all for participating!

    Before we announce the winners, we want to thank everyone who worked on a submission for this hackathon. We are constantly amazed to see what the community builds – and this hackathon was no different. The submissions included everything from apps making life during COVID-19 better, sending SMS from databases, and even using BASIC on a TRS-80.

    For this hackathon we had four prize categories:

    • COVID-19 Communications: an app to help folks communicate …
    Read More
  • Newer
    Older
    Sign up and start building
    Not ready yet? Talk to an expert.