Alexa!スキル開発のやり方を教えて!①


4月に新卒入社しました、村上です。

私は入社前にアルバイトとして業務に携わっていたのですが、
そのアルバイト時代に「Alexaスキル」の開発を行いました。

そこで今回はその開発について振り返り、
・Alexaってそもそも何?
・Alexaスキルって何?
・どうやって開発するの?
ということを、初心者向けにご紹介したいと思います!

Alexaとは?

→Amazonが提供する「音声認識サービス」のことです。

続きを読む


Attending to the SendGrid’s Email Delivery Hands-On – Part 1


Hi! I’m Dennis and I’ve been working at Linkbal as a software engineer since October 2017.

Today, I’d like to share how was my experience taking part in SendGrid’s mail delivery hands-on. I will mainly write about some background information and concepts that were presented and also about the first part of the hands-on, that included the initial setup, a simple email delivery test and the use of SendGrid’s dashboard to check the results.

Introduction

SendGrid is an US based company represented by KOZO KEIKAKU ENGINEERING Inc. here in Japan.

As you may already know, it provides one of the most well-known cloud-based transactional email delivery services, but also includes an email marketing platform. This article will focus on transactional emails as it was also the focus of the hands-on.

Background Information

The hands-on started with the presentation of some background information about SendGrid and the company representing it in Japan.

Then, the presenter  showed how their service is used daily by large corporations to send transactional emails, such as sign-up notifications, password resets and invoices. And also how their tool is used to send marketing emails such as promotions, campaigns and newsletters.

After that, the subject was the challenges involved in email delivery as, according to ReturnPath, 20% of the emails don’t reach the inbox. Then, all the things we need to consider when working with emails were presented.

Mail delivery flow

Source: https://sendgrid.com/docs/Classroom/Basics/Email_Infrastructure/email_flow.html

Reputation

And, when working with emails, one of the most important things to consider is our sending reputation. This is a score that an Internet Service Provider (ISP) attributes to mail senders and it is a very important factor in email deliverability. The higher our reputation with a ISP, the more likely it will deliver our emails to the inboxes of recipients in its network. Low reputation, by contrast, may result in emails being recognized as spam or even discarded.

Each ISP decides which factors to consider when calculating this metric, but there are factors that are commonly used such as the reputation senders build around their IP and domain. You can read more about those types of reputation here.

After the explanation about reputation, the presenter showed us some practices that can be applied to increase our score. I won’t enter in much detail here and will briefly mention just two examples below. You can read more about these and other methods to increase email deliverability are mentioned in this article.

  • List Cleaning – the act of removing addresses that are inactive, reporting your emails as spam or leading to bounces. Keep trying to send emails to such addresses can eventually impact your reputation negatively.
  • IP Warm-Up – especially when start using a specific IP address, it is recommended to increase the amount of emails sent little by little. This will help ISPs recognize that you are sending wanted email.

The Hands-On

After the introduction above, we effectively started the hands-on, which was focused on using SendGrid’s Web API and interacting with its dashboard. In this article, I will only present the first part of the hands-on, containing information about a simple email delivery. The requirements for the hands-on were the following:

After logging in to the application, we are presented to the following screen:

Preparation

There are a couple of initial steps we will want to take before actually testing the Web API.

First, let’s enable plain text emails. By default, SendGrid automatically converts any plain text messages to multipart emails. As this is usually a unnecessary feature, let’s disable it.

Go go Settings > Mail Settings and under “Plain Content”, switch it to “ON”.

Plain content setting

Next, we are going to create a new API key. It will be used for authentication and authorization when using the API. Just go to Settings > API Keys and click the “Create API Key” button. Give it any name you want and choose the “Restricted Access” option, so we can customize the access level for the key. For each feature, we can choose one of: “No Access”, “Read Access” and “Full Access”. Read access allow us to just execute GET requests against that specific feature.

For the hands-on, we set “Mail Send” to “Full Access” and “Suppressions” to “Read Access”.

API access levels

Click “Create & View” and you will be presented to your newly created key.  You have to store it somewhere safe as it won’t be shown again.

Calling the API

After the initial setup steps, we started testing the API. It is nice that all the tests can be done in the API’s reference page:

https://sendgrid.com/docs/API_Reference/api_v3.html

In the side menu, select “MAIL SEND”. After the page opens, click the “Try it out” tab and paste your API key in the “YOUR_API_KEY” field.

Mail Send API reference

At this point, we can already start making calls to the SendGrid’s API. Just edit the “Request Body” to look like below (replace the recipient_email_address and recipient_name accordingly).

Then, click “SEND REQUEST” and the “Response” field should change to “202 Accepted”. Also, check your inbox as you should have received the test message.

The Activity Feed

We can use the dashboard to keep track of the sent emails. Just access the “Activity” menu in the sidebar. Click “Search” to list the sent emails and our test email should show up. If everything went fine, the email should show “Delivered” in the STATUS column. You can also click the message to display additional details.

During its life-cycle, our test email should have gone through the “Processed” and “Delivered” events. In the diagram below, you can check all the events a message can go through.

Email event flow

Source: https://sendgrid.com/docs/API_Reference/Event_Webhook/event.html

Conclusion

In this article, I shared some of the concepts presented in the SendGrid’s event and the first part of the contents of the hands-on. There are still some content to be covered in a future post, such as “Bounce Handling”, “The Tracking Feature” and “The Use of Templates”.


中国の深センに行きました2。めちゃ役に立つGoogle翻訳の活用。


こんにちは、リンクバルの根本です。

普段はtogetherというボタンを押したら異性がやってくるサービスを頑張っています。

さて、前回:中国の深センへ行きました1。行く前の準備~ホテルまで。では深センというより中国に行く前の現金や通信回線についてお伝えしました。

今回は、ITが発展している深センで見たものをご紹介します。

続きを読む


中国の深センへ行きました1。行く前の準備~ホテルまで。

深セン空港の天井

こんにちは、リンクバルの根本です。
普段はtogetherというボタンを押したら異性がやってくる飲み会マッチングをやっています。

技術革新が進んで世界最先端の都市と言われる深センに行ってきましたので記事を書きます。

中国(深セン)へ行く前の前準備

グレイトファイアウォール対策

中国はグレイトファイアウォール(金盾と現地ではいいます)と言われる国家でのネット規制が存在します。このためGoogleやfacebook、Twitter、Youtube、yahoo検索、LINEは通じません。普段業務でGoogle検索/Gmail/drive/Gsuiteなどを、コミュニケーションではfacebookメッセンジャー、LINE、を利用している方はネットが繋がっても仕事ができないことに愕然とされるでしょう。ホテルのwifiはこれになります。なお、AWSは繋がりました。

上記グレイトファイアウォールの規制から逃れるには3つ対策があります。

続きを読む


街コン運営をちょっとスマートにしたかった


4月よりエンジニアとして入社しました、18卒の小野と申します。

リンクバルではエンジニア採用でも当社のサービスである街コンの主催者を新人研修として行います。

今回はエンジニア目線の街コン運営について書きたいと思います

目次

・街コン運営で感じたアナログ
・改善案
・学びとおわりに

続きを読む


エンジニアが街コンのイベントスタッフをやってみた


初めまして、リンクバルのエンジニアの前田です。
今回は普段の仕事とは違うイベントスタッフとしてイベントに参加してきましたので、簡単ではありますがレポートさせて頂きます。

今回スタッフとして参加したイベントはこちらです

大規模×恋活イベント★ナイトミュージアムコン!イベント中、連絡先交換自由♪♪≪街コンジャパン主催≫

普段は会社でエンジニアとして仕事をしているのですが、イベントスタッフとして参加するのは今回初めてとなります。
しかも、開催規模が300人を超えている大規模イベントのスタッフとしての参加の為、とても緊張しました。

今回参加したイベントの大まかなスケジュールや僕の仕事内容は以下の通りでした。

当日の主なスタッフスケジュール

14:00:集合、会議室で打ち合わせ
15:15:会場の下見、各担当の確認
16:00:テーブル搬入、設営
17:00:受付開始
18:30:イベントスタート
20:30:イベント終了、後片づけ
21:00:撤収

僕のお仕事

14:00:集合、会議、打ち合わせ、会場下見
無線機チェック、名札作成などしてました。
16:00:テーブル搬入、設営
腕に力のあるスタッフは長方形のテーブルを2つ持ちで運んでいましたが、僕は1テーブルづつ運びました。
17:00:待合せスペースの入り口で弊社で開発しているマッティングアプリ「Couplink」の事前インストールチェック
Couplinkは会場でマッティングゲームをするためにインストール頂いています。
19:00:受付、Couplinkの代理投票役
※Couplinkの代理投票とは、Couplinkをインストールできなかった人でもマッティングゲームに参加することができる仕組みです。
20:30:お見送り、Together のチラシ配布
沢山チラシを受け取って頂けました!
21:00:解散

イベント参加者様を待合せスペースに迎え入れた後、イベント会場(鉄道博物館)に移動した時のイルミネーションが写真の通りでとても綺麗だったのが印象的です。

イベントスタッフは無線機で各持ち場の状況を頻繁に連絡を取り合って連携しています。
僕は受付でお客様のサポートをしたり、会場で使う荷物を取りに待機室に移動するなど臨機応変に対応していました。

イベント会場の鉄道博物館ではイベント参加者が電車にも入ることができるのですが、今回は一部の電車毎にそれぞれ以下のことができるように準備されていました。

鉄道博物館の電車内でできる4つのこと
・謎解き
・占い
・恋愛相談
・休憩

まさかここで恋愛相談ができる車両があるとは思いもしませんでしたし、鉄道博物館の関係者様にもご協力頂いた鉄道ガイドツアーはあっという間に受付締め切りで大変な人気でした!

この度、初めて鉄道博物館に入館させて頂いたのですが、珍しい電車が沢山あったり雰囲気も良かったのでプライベートでも行ってみたいと思いました。

感想

実際のイベントに参加してみると当日の大変さをしりつつも、お客様の顔が見れるので大変貴重な体験だったと思います。
イベントは2時間程度で終わりますが、企画からイベント開催まで時間を使って開催されるイベントは思い出にも残ると思うし、イベントスタッフでの参加でしたがとても心に残りました。

当社ではエンジニアの仲間を募集しております。
興味のある方はこちら↓からご応募ください。
http://linkbal.co.jp/recruit/


AWS Lambda(Go) + API Gatewayを触ってみた


みなさんこんにちは、リンクバルの船寄です。

昨年のre:InventでLambdaのGo言語サポートが発表されましたが、まだ触ることができていなかったので、この機会に触ってみました。

今回はその手順を紹介させていただきます。

このポストの内容

  1. Lambdaにアップロードする実行ファイルを作成(at Cloud9)
  2. Lambda functionの作成
  3. API Gatewayの作成
  4. 動作確認
  5. さいごに

続きを読む