The Central Hub of Toad Knowledge

Does your IoT device need an antenna upgrade?

I've long been curious about the effectiveness of the built-in antennas that are attached to common WiFi modules. Can that tiny, serpentine PCB track really match the performance of a "real" antenna? How does it even work? I set up a quick test to find out. Using a pair of ESP8266 development modules, I set up a test measuring gateway ping times, and sending the resulting values to AWS IoT Core. Messages are routed to Firehouse, stored in S3, and aggregated with Athena. (AWS has put together…
By Dylan Tack, Director of Engineering
July 6, 2018

IoT Business Value: Reducing Time Spent Monitoring

Like anything else in its early lifecycle, the Internet of Things (IoT) has a ton of hype but there are still a lot of unknowns when it comes to the actual business value. Maybe you heard C3 IoT advertising on NPR, maybe your electric utility put a smart meter on your house, or maybe you got a chuckle from Juicero.
By Sasha Friedman, Senior Product Manager
July 5, 2018
An open agenda, with a pen lying on top next to a cup of coffee.

How To Be a Rebel at Work

I saw the What Rebels Want illustration make its way across Twitter recently, and it immediately resonated with me. This illustration perfectly captures how I feel and how I work, and what I strive for in my roles. It’s what I want every company, every manager that I work for to understand about me.
By Angela Riggs, QA Engineer
June 7, 2018
Angular and Django logos connected by cans on a string

Angular API Calls with Django: Authentication with JWT

Curious about how to make API calls with Angular 6 and the HttpClient service? This tutorial will show you some techniques for building a decoupled micro-blogging application using Angular 6 and the Django Rest Framework (DRF). Along the way, we will learn the following: How to set up the back end of the app using Django and the Django Rest Framework API Creating a simple Angular 6 single-page app which can query the API Authenticating users with JSON Web Tokens (JWT) Ready? Let's get started!
By Keith Dechant, Software Architect
June 4, 2018
whispering

Your Serverless Function has a Secret

Your Serverless function has a secret... maybe it's a password for a remote API, a private key, or signing certificate. These secrets have to be stored somewhere, and in the old days that usually meant just a plaintext config file on your server. Sure, you could encrypt it, but then you have to put the key on the server, and you haven't gained anything except a bit of obfuscation. Or you could use more complex schemes, like Hiera-Eyaml, which is a small improvement, but you've really just moved…
By Dylan Tack, Director of Engineering
June 1, 2018
Screenshot of code with Angular and ReactiveX logos

Angular 6: Upgrading API calls to RxJS 6

With the release of Angular 6.0 in May 2018, the framework has been updated to depend on version 6.0 of the RxJS library. RxJS 6.0 has some breaking changes compared to RxJS 5.5 and older, specifically in the handling of some of the methods of the Observable class. This will affect the way Angular developers write API calls and handle other asynchronous processing in the future. This post outlines some of the changes and how to update your API calls to the new syntax.
By Keith Dechant, Software Architect
May 23, 2018
WOCinTechChat

How Static Code Analysis Taught Me About Change Management

Recently, I helped spearhead our department’s adoption of centralized static code analysis. I worked with one of our mobile engineers to research various tools and create a decision matrix for comparing options. I’ve introduced new tools to my team before, but this was my first time selecting a tool that would be rolled out and used by my entire engineering department. It was also our department’s first time trying centralized static code analysis.
By Angela Riggs, QA Engineer
May 21, 2018
garage sale old cash register

Machine learning is like a garage sale

Machine learning is a field of computer science where mathematical systems “learn” from massive data to adjust their internal models using linear algebra and statistics. It is not a new discipline; machine learning has actually been around for decades but only recently did it get the exposure to make it popular.
By Meghane Hardin, Software Engineer
May 21, 2018

Google IO 2018: Android has a Jetpack

One of the biggest announcements for Android™ developers from Google IO 2018 was the announcement of Android Jetpack.  Android Jetpack is a collection of libraries and guidelines for developing Android applications. Most of these libraries we have seen before, including the Architecture Components released last year at Google IO.  Some, are the newly refactored Support libraries, which have been renamed AndroidX.  
By James Simshaw, Senior Software Engineer
May 11, 2018

Google IO 2018: Android Things 1.0

We’re just starting the week of Google IO 2018 and already there’s a major announcement, before the event’s official start.  Android Things has been moved out of beta is now at version 1.0.
By James Simshaw, Senior Software Engineer
May 7, 2018