Many people are surprised to learn that for most of my school years, I despised math.

Seriously, I hated it.

People are usually taken aback, given that I work in AI and Data Science.

However, there was always one branch of math that always fascinated me.

Numberphile explores the wondrous world of trigonometry.

Edge computing in the context of IIoT brings compute closer to the origin of data.

Without the edge computing layer, the data acquired from assets and sensors connected to the machines and devices will be sent to a remote data center or the public/private cloud.

This may result in increased latency, poor data locality, and increased bandwidth costs.

Here’s an interesting article on edge computing.

Edge computing is an intermediary between the devices and the cloud or data center. It applies business logic to the data ingested by devices while providing analytics in real-time. It acts as a conduit between the origin of the data and the cloud, which dramatically reduces the latency that may occur due to the roundtrip to the cloud. Since the edge can process and filter the data that needs to be sent to the cloud, it also reduces the bandwidth cost. Finally, edge computing will help organizations with data locality and sovereignty through local processing and storage.

The London “festival of A.I. and emerging technology” that takes place each June.

This year, due to Covid-19, the event took place completely online.

(For more about how CogX pulled that off, look here.)

One of the sessions veered towards privacy.

One of the most interesting sessions I tuned into was on privacy-preserving machine learning. This is becoming a hot topic, particularly in healthcare, and especially now due to the interest in applying machine learning to healthcare records that the coronavirus pandemic is helping to accelerate.

In this tutorial course from freeCodeCamp.org, you will learn JavaScript by coding 7 retro grid-based games.

Learn by doing and have 7 great projects for your career portfolio by the end of the course. Each game is done with minimal styling for you to take and make your own.

Course contents:

⌨️ (01:55) Memory Game – Level 1
Code: https://github.com/kubowania/memory-game
Learn:
• push()
• querySelector()
• SetAttribute()
• getAttribute()
• appendChild()
• Math.random()
• sort()
• For loops
• createElement()

⌨️ (11:39) Whack-a-mole – level 1
Code: https://github.com/kubowania/whack-a-mole
Learn:
• querySelector()
• addEventListener()
• setInterval()
• classList
• forEach()
• Arrow functions

⌨️ (19:47) Connect Four – level 1
Code: https://github.com/kubowania/connect-four
Learn:
• querySelector()
• addEventListener()
• onclick
• classList.contains()
• classList.add()
• For loops
• Arrow functions

⌨️ (27:37) Nokia 3310 Snake – level 2
Code: https://github.com/kubowania/Nokia3310-Snake
Learn:
• querySelector()
• addEventListener()
• setInterval()
• keyCodes
• pop()
• unshift()
• push()
• classList.contains()
• classList.add()
• classList.remove()

⌨️ (43:10) Space Invaders – level 2
Code: https://github.com/kubowania/space-invaders
Learn:
• querySelector()
• addEventListener()
• Switch cases
• keyCodes
• indexOf()
• includes()
• classList
• setInterval()
• clearInterval()
• push()

⌨️ (59:06) Frogger – level 2
Code: https://github.com/kubowania/Frogger
Learn:
• querySelector()
• addEventListener()
• setInterval()
• clearInterval()
• forEach()
• classList.contains()
• classList.add()
• classList.remove()

⌨️ (1:19:38) Tetris – level 3
Code: https://github.com/kubowania/Tetris
Learn:
• querySelector()
• addEventListener()
• Array.from()
• getElementsByClassName()
• Math.floor()
• Math.random()
• forEach()
• classList.contains()
• classList.add()
• classList.remove()
• setInterval()
• clearInterval()
• some()
• style.backgroundImage
• splice()
• concat()
• appendChild()
• Arrow functions