Node.js Talks Uncategorized

Building an API with Visual Studio Code and Node.js

At the April Austin Microsoft Developer Meetup, I gave a talk about using Microsoft’s Visual Studio Code to build web applications and API’s with Node.js. I also showed everyone how to quickly and easily deploy those Node.js web applications to Microsoft Azure’s App Services.

We used both Express and Hapi to build web applications – one was a simple Hello World web application, and one was a simple API that returned meetups as JSON.

This was a fun presentation to give – there was a lot of discussion with the whole group, as we talked about some interesting areas of Node.js, Azure, and Visual Studio Code – for instance, we found out that VS Code has support for conditional breakpoints for Node.js (right click on the breakpoint, select edit, and then set your condition), and we spent some time digging through the Azure Portal for logging.

Talks Uncategorized

Running in all 50 States – 50 States, 50 Marathons

Earlier this month, my wife Cheri and I finished running a marathon (or longer) distance in each of the fifty states of the US by finishing the Maui Oceanfront Marathon in Hawaii. It was a goal I’d worked on since my first marathon, in Maine, in October 2008.

I gave a talk on running in all 50 states today at Link Coworking as part of the Link at Lunch series, and I wanted to share the slides.


Developing a Student Media App Presentation

I had the opportunity to give a talk about developing mobile apps for college student media publications today at the ACP/CMA College Media Convention here in Austin today.

We had a great discussion about pitfalls around developing in-house native apps for college newspapers and magazines.

Android iPhone Development Phonegap Talks Twilio

Twilio Signal 2015: Video of my Talk

My Talk at Twilio’s Signal 2015 Conference, Using your web development skills to build Twilio-powered apps for Android and iOS, is now up as a video. If you’re interested in adding voice to your mobile apps using the Twilio Client Plugin for PhoneGap, this video is a short intro to the topic. If you have any questions about mobile app development with Twilio, I’d be happy to talk about it!

Android iPhone Development Phonegap Talks Twilio

Twilio Signal 2015: Build Twilio-Powered Apps for Android and iOS

Talks Twilio

Voice and SMS for Your Apps with Twilio – Talk for AirConf 2014

At AirConf 2014, I gave this talk on Twilio for developers who haven’t used it before, or who haven’t used it much. I also set up a few live demos for people to try, so that was fun!

Talks Twilio

Speaking at AirConf 2014 on Twilio: Voice & SMS for your Apps!

I’ve been one of the Twilio (an API for Voice and SMS) experts at AirPair for a while. AirPair is a great little service that matches up software developers with experts in the field – trying to implement in-app purchase on iOS ? There’s probably an expert on that. Want to migrate from MySQL to MongoDB for your Django application? Find that expert on AirPair. The idea is that you can hire those experts on an hourly basis forĀ a video interview where they help you out.

Because I like working with Twilio, and I’ve done a lot of work advising developers on how to use Twilio in various projects, I agreed to give a talk during AirPair’s first conference – AirConf – on August 6th, at 12 pm Central Daylight Time/5pm Greenwich Mean Time. Why is the time so important? It’s a virtual conference, conducted over Google Hangouts. So you don’t have to be in the same physical location as I am for the conference – no travel necessary!

I’m covering Twilio for beginners, so if you’re not familiar with Twilio, this is a great talk to attend. If you’ve already used Twilio in a few applications, it’s probably going to be a lot of things you already know, like how to send or receive an SMS. I’m going to try and be as language neutral as possible in my talk – I’ve used the Twilio API from Java, Ruby, Objective-C, PHP, and Javascript, and it all basically works the same, so that shouldn’t be an issue. I’m still looking to have an excuse to use Twilio from C# or Python!


Android Hackathon Talks Training

Android Training Class: AppHack Austin – November 9, 2013

I’ll be giving a training class on Android development as part of the AppHack Austin hackathon on November 9 from 3pm-5pm.

It’s a mobile app hackathon, so you can enter an iOS, Android, Windows Phone, Blackberry, or HTML5 mobile app if you want to. Don’t know how to do any of those? Take my intro class on Android development – focusing on what you need to know to create an Android app that calls out to a REST API. From there, you can do a lot of cool mashups with APIs.

Bring a recent laptop (4 gigs or more of ram is nice) – and preinstall the Android developer tools ( – it’s a big download. You can use OS X, Windows, or Linux. Also bring your Android ohone or tablet and it’s charger, and you can start building apps for your own device with no signup or payment required!

There’s a discount code embedded on the Eventbrite page as a riddle.

If you can’t make it to the class, keep an eye out for my new project – Building Mobile Apps – online courses for iOS and Android app development.

Feel free to email me at jlinwood at with any questions!

Ruby Social Media Analytics Talks

Ruby Talk from 2011: Twitter Streaming API + MongoDB

I gave a talk at the Lone Star Ruby Conference in 2011 on Consuming the Twitter Streaming API with MongoDB. The talk was recorded, but just recently uploaded to YouTube. This was one of the first talks I gave at a professional conference, instead of just a meetup, so I practiced in front of a few of my software developer friends who didn’t know Ruby, MongoDB, or the Twitter Streaming API. Watching this, I’ve definitely improved my speaking style over the past two years, but that’s more than ok.

For those of you following along, the code referred to in the presentation is Tweeter Keeper, at GitHub here:

Drupal Planet iPhone Development Talks

Drupal and Mobile Video – Dallas Drupal Camp 2013 – iPhone App and Presentation

Earlier this month, I spoke at the Dallas Drupal Camp about Drupal and mobile video. I’ve worked on a couple of projects for clients this year and last year that involved uploading and displaying videos from a mobile app on iOS and Android. Some of them have used Drupal for the server, others haven’t used Drupal at all. Mobile video can only be done through a native app (or PhoneGap), as HTML5 hasn’t provided support for uploading video through input types yet.

One of the obstacles to using Drupal as a video platform is getting everything set up – even though there are plenty of video modules, it can be tough to set up the Video module with Zencoder as a transcoding solution and Amazon S3 for storage and content distribution. Making this a lot easier if you are either starting from scratch or building out a proof of concept/minimum viable product is Octopus Video (, a Drupal 7 distribution developed by Heidi Software and Symphony Themes. In effect, it’s a private YouTube distribution, which you can then extend using normal Drupal 7 modules and views to become a corporate training video archive, the back-end for a consumer-facing mobile app for cat videos, or whatever you want.

I gave a lightning talk about Octopus Video to the Austin Drupal User’s Group, and everyone there seemed pretty enthusiastic about the topic, so I decided to take it a step further and give a talk on it at the Dallas Drupal Camp this year.

In addition to sharing a lot of tips and tricks I learned from using Octopus Video as the server for a video-based mobile app prototype, I also created an open source iPhone app (Apache-style license) to show off some of the things you can easily do – upload video, display a list of videos from a Drupal video, and then play back videos stored on Amazon S3.

The GitHub repository for the open source iPhone app is here:

This was a quick demonstration project for the Dallas Drupal camp, not extracted from a commercial project, so it’s missing a lot of the extras that would make it a polished app. I’ve added a few of them as issues to the GitHub project, and if I can find some more free time, I’d like to keep moving forward with it.