Parse HTML for Book quotes with Python, Beautiful Soup, and WhatsApp
My first real paid job was working at the local library in high school. This was perfect because I love reading. With a monthly book stipend company perk and more time to read in my post-grad life, I've started using Goodreads to find new books and to keep track of what I've already read.
This post will go over how to parse the Goodreads quotes page. We'll target popular book quotes and quotes with a specific tag received as input from a WhatsApp message and then send a random quote as an outbound WhatsApp message.
Setting Up Twilio API Sandbox for WhatsApp
At the moment, only approved business accounts can use Twilio's WhatsApp API so we need to use the Twilio API Sandbox for WhatsApp to play around. Let's go on over to the Sandbox in our Twilio console. To activate it we must choose a Sandbox number, agree to ...
Re-Introducing Twilio Developer Evangelist Lizzie Siegle
I was so fortunate to have the amazing opportunity to intern on the Twilio developer evangelism team last summer. That mind-blowing and fun experience made my post-graduation decision to join full-time easier so here are four reasons why I am beyond excited to be back at Twilio as a Developer Evangelist in San Francisco.
1. I learned a lot.
Sure, I was a big fan of Twilio intern activities like lunch with our CEO, but I also loved the work itself. I had a blast writing some of the first Haskell posts for the blog and diving into Twilio Video and ARKit in Swift. Speaking about how to make music with Node.js at QueensJS was probably the best talk I'd given and I smile thinking about how much I practiced the talk with my NYC evangelist teammate Sam and mentor Greg hours before.
2. The Evangelism Team
I remember ...
Dive into ARKit on iOS with Swift and Twilio Programmable Video
Augmented reality has is showing up everywhere these days. Apple’s release of ARKit in iOS 11 and Google’s ARCore APIs are guaranteed to accelerate this trend by making augmented reality development accessible to even more developers and users.
We’re especially excited about the combination of augmented reality and real-time communications. In this post we’ll dive into a simple example on how to combine Programmable Video and iOS’s ARKit to share an AR experience with another user. In upcoming posts, we’ll show how to add interactivity to your AR communications apps.
What You Need
All anyone needs to develop with ARKit is
- an Apple device with an A9 or later processor (iPhone 6s or later, iPhone SE, any iPad Pro, or the 2017 iPad)
- iOS 11
- XCode 9 (both of which you can download here.)
We’ll also be using Twilio Programmable Video so you ...
Build a Reddit Slack Bot in Haskell
Do you like Reddit? Do you like bots? If you answered yes to one, both, or neither of those, then you are in luck. This post will go over how to build a Reddit Slack bot in Haskell.
This is the second Haskell post here on the Twilio blog. So if you haven’t read the first one on setting up your Haskell developer environment, check that out here.
What are Slash Commands?
According to the Slack API site, messages beginning with “/” are treated differently from other messages: they “enable Slack users to interact with your app directly from Slack” and all send their messages “…to the configured external URL via HTTP POST.”
In this post, we’ll build a custom slash command that shares a trending programming post from Reddit about whatever you pass it as a command. For example, if you typed /redditbot python, it would return an ...
How to Send an SMS in Haskell
Functional programming languages are gaining in popularity so let’s hop on that Haskell bandwagon. With Haskell, you can write clean, concise, and expressive code. Don’t believe me just yet?
Now let’s dive into setting up your Haskell developer environment by
- configuring two package managers
- installing Haskell
- making a “Hello, World” program
- sending our first SMS with Twilio using Haskell (get a Twilio phone number here)
IDEs for Haskell
There is no complete Haskell IDE (so if you want to make one, the market is wide open.) Many Haskellers use Atom because it has the language-haskell and ide-haskell packages, whose syntax-highlighting of aspects like import statements make it stand out. They also help ...
Reading Excel Spreadsheets with Python, Flask, and Openpyxl
Data stored in Excel spreadsheets can be hard to read with anything other than Excel and it’s especially tough to compare two specific datasets within all that data. One possible solution is Python. It can do the dirty work of finding the information for us while also being pretty fun.
In this post we will read NBA statistics from a Microsoft Excel sheet using the Openpyxl library. How will we know which statistics to look for and return? Text a Twilio phone number two players and a type of basketball statistic (like total points or three-point-shot-percentage) and then the SMS response will look up the statistics of the corresponding players like so:
Want to skip the tutorial and jump right into the code? No problem, head over to the complete code.
Otherwise, let’s get started.
Getting the Data
This post uses data for each player from the 2016 ...
Introducing Twilio Developer Evangelist Lizzie Siegle
As my now-teammate Sam Agnew once told me, a developer evangelist should have “the mind of a hacker, heart of a teacher, and soul of an entrepreneur.” The following anecdotes explain why this advice really resonates with me and why I’m ecstatic to be interning with the evangelism team in NYC this summer.
1. “Young, scrappy, and hungry.” – Lin-Manuel Miranda
Who would attend their first hackathon and not work on an app, and then sit awkwardly to the side while everyone else demoed? That’s embarrassing, right? Well, that’s just what this wide-eyed freshman who had only a month of CS education under her belt did. I did, however, attend workshops, work on homework, talk to mentors and hackers, and soak up the innovative and collaborative atmosphere. I still didn’t know what git was, and my definition of an API was spotty, but feeding off of ...