
About me:
I’ve worked on things ranging from hardware in omni-directional treadmills and low-level programming to streaming 100’s of thousands of web data with various streaming technologies.
Have programmed in various languages ranging from C to Java, Scala to Clojure, JavaScript and even some languages that are in beta still – a.k.a Unison.
I also love photography, and anything related to cars, design and technology.
The goal:
Get you up and running with a simple, but secure, web API that can accept data from anywhere. Maybe an IoT device, or cell phone, or a web application.
For our case we are going to pretend we are sending some temperature data from an IoT device.
Digital Ocean has free credit for new sign ups, and we can use their cloud to deploy our application with the click of a few buttons.
We will also be storing our data in a relational database called Postgres.
Our API will also allow us to query and retrieve all temperatures from all IoT devices.
Tools:
•Digital Ocean
•Docker
•NodeJS & NPM
•Git & GitHub
•Terminal & Project Scaffolding
•VSCode
•cURL
Once you have Docker installed, make sure Docker Desktop is running.
The best way to learn is by doing, so get up and running quickly! This course is aimed for beginners with a mission. With various technologies such as Git, Github, NodeJS, Docker, and Digital Ocean's Cloud, we skip some of the mundane coding basics and dive into building a practical application. In this course I will show you how to build a small RESTful API with Node.js and deploy to the cloud within 30 minutes (excluding intro, some setup, and optional videos!). We will be collecting JSON data from IoT 'devices' and storing said data in a cloud hosted relational database called Postgres.
Some technologies used:
Docker
Digital Ocean
Git & GitHub
Node.js and NPM
VSCode
PostgreSQL
cURL
With the application will come some security and testing best practices that you'll be able to extend for more production-ready applications. After the getting started video, you will have a modern programming environment set up that will allow you to continue learning and building applications. There will be a bonus video where we explore extending our Docker setup to be able to deploy our application to any cloud provider, not just Digital Ocean.
Note that we will simulate sending IoT data by just posting random values to our cloud-hosted application.
Note that I'll primarily be developing on a Mac, but will provide hints on installing needed software for Windows.