Categories
Engineering Concepts Tutorials

How Does Memoize Work?

If you’ve worked as a front end software engineer, chances are you’ve had to work with memoization. This becomes even more of a need with more complicated or data-heavy apps. Since it’s a good thing to know, this post will teach you how it works and how you can implement it yourself. So, how does memoize work?

Categories
Artificial Intelligence Opinion

Yes – We Should Pause AI Research

Much has been said and a lot of criticism has surfaced since OpenAI’s release of ChatGPT. On one hand there are those who are (more often than not) extreme proponents and on the other hand skeptics and those against it. Even I have expressed skepticism in the past. In this article I’ll mainly address why we should pause AI research, and specifically research on LLMs. I will also talk about an unreasonable attack on the open letter against LLMs surpassing human intelligence, and why I’m against using LLMs commercially.

Categories
How Things Work Opinion Web Advertising

“My Phone is Listening to my Conversations”

I’ve heard a lot of times from people of a wide variety of professions that genuinely believe that their phone is listening to their conversations and based on those conversations they receive ads. I have some good and some bad news. The good news is that your phone isn’t actively listening to your conversations. The bad news is that the way companies show you ads (often referred to as “surveillance capitalism”) is a lot scarier than you might imagine.

Categories
Mental Health Opinion

On Burnout

Being a software engineer can be a highly rewarding job. For me the ability to work on hard problems and push a machine to its limits, while creating meaningful and useful software that people want to use is one of those rewards. However, as much as it can be rewarding, it can also be extremely stressful and engineers can find themselves feeling burnt out very often, as I have, throughout my tenure.

Categories
Game Dev THREE.js Tutorials

Let’s Create Procedurally Generated Asteroids

Computer graphics and procedural generation have always interested me. I find it so amazing that computers can generate the same graphics over and over again given one simple seed! So, naturally, I wanted to get my feet wet and build something. The simplest thing I could think of was to create procedurally generated asteroids with THREE.js.

Categories
Artificial Intelligence Opinion

AI Is A Lot Scarier Than It Seems

We have all seen a movie or TV series, from time to time, which portrays Artificial Intelligence either as something evil or as a benevolent sidekick. Both of these portrayals are correct, but at the same time wrong. Artificial Intelligence is here to stay, grow, and evolve. However, it’s growing scarier at an increasingly fast rate.

Categories
Network Scanning Network Security

Gathering SSH Banners from your Networks

The internet is a vast place and an irreversible wasteland where anything goes, really. There are so many devices online that have so many different ways of connecting to and communicating with one another that it’s only natural that there are so many live exploits.

If you’ve ever set up your server with password authenticated SSH, you might’ve noticed hundreds of bots trying to brute-force their way in. And that’s just the tip of the iceberg. This is why it’s so important to keep all the software you run up-to-date.

Categories
Full Stack Tutorials

Build a GeoIP Service for Fun and for Profit

There exist many paid-for geoIP services. However, they charge quite a lot of money to do something as simple as provide information about IP addresses. What is significant about these services is how simple they are to implement and host. Engineers use these services in a variety of cases throughout their career. So, the point of this post is to show how to implement and host one.

Categories
Malware Security Spyware

A Script that Tells us When a Process Uses our Webcam

Nefarious programs distributed over the internet are constantly targeting us. Having our identities or money stolen are among the biggest fears of people. However, it turns out that we are more afraid of being watched through our cameras/webcams. This is the reason today we will build a script that will continuously monitor the usage of our webcam. If a process accesses the camera, then a notification will pop up. Simple, right?

Categories
Decentralized Networking UDP Stream

Build a Decentralized Terminal Chat – Part 1

We, as a species, are very reliant on communication because we are very social. We also love and value our own privacy and constantly try to undermine the privacy of others. It’s in our nature. While seeking privacy, we came up with encryption. In this article I will build a decentralized UDP terminal chat that features full encryption and transactions based on public-private key cryptography.