Author: Nic Raboy

My Activity Report For 2018

December 24, 2018 Nic Raboy

The 2018 year is winding down so it is time to reflect on some of the things that have happened in terms of The Polyglot Developer and all of its channels.

Let this be a statistics report for everything that has happened on the blog, YouTube channel, and podcast. If you're interested in adventuring into the world of technical content production, this will give you some perspective into what to expect.

Read More

Manage Sessions Over HTTPS With Node.js And Vue.js

December 17, 2018 Nic Raboy

A long time ago when I had been exploring session management in Node.js, I had written a tutorial titled, Session Management in Your Express.js Web Application. This was a basic tutorial that is still very functional today, however little things have changed since then when it comes to how the web works. For example, in 2015 HTTPS was never a requirement and we weren't exposed to all the frontend web frameworks that exist today.

When you start introducing things into your web applications such as HTTPS or micro-services that operate on different origins or ports, or frontend frameworks, session management can get a little more complicated. We're going to see how to maintain a session for a user using Node.js with Express.js on our backend and Vue.js on our frontend, in this tutorial.

Read More

The Community Contributions Of 2018

December 10, 2018 Nic Raboy

With the 2018 year coming to an end, I wanted to take a moment to appreciate the guest content that was submitted and published on The Polyglot Developer this year. While I love sharing technical content with everyone, I love it even more when the community gets involved and does the same.

Let's take a look at the guest tutorials that appeared on the blog and the guest authors that wrote them.

Read More

Manage Passwords With GPG, The Command Line, And Pass

December 3, 2018 Nic Raboy

There are a lot of password managers on the market, some in the cloud, some local, all with features that may or may not be useful in all circumstances. I'm personally an advocate of being in control of your secure information and shedding reliance on closed source or cloud alternatives. This is why I use pass, the standard unix password manager.

The pass application is Mac and Linux compatible, but Windows support probably isn't impossible. The application works by maintaining a list of password files that have been encrypted using GPG, a widely used cryptography software. Decrypting the files will result in access to your password information.

We're going to take a look at using pass and see why it is a convenient option for password management.

Read More

U2F Authentication With A YubiKey Using Node.js And jQuery

November 25, 2018 Nic Raboy

About a week ago I had written about using HTTPS with Node.js and hinted at hardware based two-factor authentication as my reason for needing it. In case you're unfamiliar with 2FA, there are numerous approaches ranging from HMAC-based one-time passwords (HOTP) and time-based one-time passwords (TOTP) which are software based, to the hardware based universal two-factor (U2F) standard.

If you've been keeping up with the blog, you'll remember I had written a tutorial titled, Implement 2FA with Time-Based One-Time Passwords in a Node.js API, which focused on the software side of things. I recently picked up some YubiKey dongles and thought I'd try my luck with the hardware side of things.

In this tutorial, we're going to see how to implement U2F functionality in our Node.js powered RESTful API and interact with the API and our hardware dongles using jQuery in the web browser.

Read More

Create A Self-Signed Certificate For Node.js On MacOS

November 19, 2018 Nic Raboy

I recently picked up a Yubico U2F hardware key and thought I'd try to create a web application that was protected with two-factor hardware-based authentication. Things were going smooth until I realized that it is mandatory to be using HTTPS within your application, even when testing locally. HTTPS is common, but I'd never actually set it up with Node.js because I had always been using services like Cloudflare that configure it for you. The problem is that these services are for live domain names, not necessarily localhost.

While we're not going to explore U2F hardware keys in this tutorial, we're going to take a look at creating and installing a self-signed certificate for use in Node.js within macOS.

Read More

Building Amazon Alexa Skills With Node.js, Revisited

November 12, 2018 Nic Raboy

A little more than two years ago, when the Amazon Echo first started picking up steam and when I was first exposed to virtual assistants, I had written a tutorial around creating a Skill for Amazon Alexa using Node.js and simple JavaScript. In this tutorial titled, Create an Amazon Alexa Skill Using Node.js and AWS Lambda, we saw how to create intent functions and sample utterances in preparation for deployment on AWS Lambda. I later wrote a tutorial titled, Test Amazon Alexa Skills Offline with Mocha and Chai for Node.js, which focused on building unit tests for these Skills and their intent functions. Fast forward to now and a few things have changed in the realm of Skill development.

In this tutorial we're going to see how to build a Skill for Alexa powered devices using Node.js and test it using popular frameworks and libraries such as Mocha and Chai.

Read More