<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Shawn Ng</title>
    <description>The latest articles on DEV Community by Shawn Ng (@shawnngtq).</description>
    <link>https://dev.to/shawnngtq</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F307898%2F768e7592-c30f-4f64-a0cf-896da88d591d.jpeg</url>
      <title>DEV Community: Shawn Ng</title>
      <link>https://dev.to/shawnngtq</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/shawnngtq"/>
    <language>en</language>
    <item>
      <title>Easiest Chat-as-a-Service</title>
      <dc:creator>Shawn Ng</dc:creator>
      <pubDate>Wed, 04 Mar 2020 15:41:55 +0000</pubDate>
      <link>https://dev.to/shawnngtq/easiest-chat-as-a-service-1pgn</link>
      <guid>https://dev.to/shawnngtq/easiest-chat-as-a-service-1pgn</guid>
      <description>&lt;h1&gt;
  
  
  Use case
&lt;/h1&gt;

&lt;p&gt;I am interested to build a marketplace PWA (progressive web app). I want to use chat as a service.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Devops: AWS&lt;/li&gt;
&lt;li&gt;Backend: Django&lt;/li&gt;
&lt;li&gt;Database: PostgreSQL&lt;/li&gt;
&lt;li&gt;Frontend: Undecided, but keeping it as basic as possible&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Top features
&lt;/h2&gt;

&lt;p&gt;I am looking for in chat as a service:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Security

&lt;ul&gt;
&lt;li&gt;Only the root user has access to unencrypted messages&lt;/li&gt;
&lt;li&gt;Service provider shouldn't be able to read them&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Data ownership

&lt;ul&gt;
&lt;li&gt;As a data-driven guy, I will like to own the data, and not the service provider&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Ease of usage

&lt;ul&gt;
&lt;li&gt;Write feature-packed chat with as little code as possible&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Ease of integration

&lt;ul&gt;
&lt;li&gt;SSO (Single Sign on); Able to authenticate and authorize users&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Independent of programming framework / language

&lt;ul&gt;
&lt;li&gt;Since I might change my backend depending on needs&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not sure if there's any software in the market that does it all.&lt;/p&gt;

&lt;p&gt;What I have in mind: a code snippet like Google Analytics, where all I need to do is to paste it in my PWA.&lt;/p&gt;

&lt;h2&gt;
  
  
  Possible software
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://sendbird.com/"&gt;SendBird&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;✔️ 1st Google result&lt;br&gt;
✔️ Seems easy to use&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.twilio.com/chat"&gt;Twilio Programmable Chat&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;✔️ Seems like a very good option as I might need other Twilio services&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://aws.amazon.com/appsync/"&gt;AWS AppSync&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;✔️ I will assume AWS can scale indefinitely and cheaper than the rest for the services provided&lt;br&gt;
✔️ Integrates well with other AWS services&lt;br&gt;
❌ Seems like lots of coding is required&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://getstream.io/"&gt;Stream&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;del&gt;❌ Limited SDK; Only React, iOS &amp;amp; Java&lt;/del&gt;&lt;/p&gt;

&lt;p&gt;See below: &lt;a href="https://dev.to/tschellenbach/comment/mm04"&gt;https://dev.to/tschellenbach/comment/mm04&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I have not tested any of them and wish to hear your experience. Thanks!&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>devops</category>
      <category>database</category>
      <category>security</category>
    </item>
  </channel>
</rss>
