The Evolution of Instruction Set Architecture

Welcome to part 2 of my series on Computer Architecture and Organization. In the first part, we covered the difference between instruction set architecture types like RISC and CISC, computer organization principles like Von Neumann and Harvard. We will now dive into the historical evolution of ISAs and their respective processors into their most current processor architectures, x64 and RISC-V, and how the taxonomic classification of a processor as being RISC or CISC is no longer truly applicable to processors of today.

Read More

Understanding Computer Organization and Instruction Set Architecture

“Electronic elements! We can use electronic elements to make gate circuits and combine them into computers! Such computers will be many times faster and take up much less space. I estimate that a small building will be sufficient… At the same time, due to the invention of calculus and the Von Neumann architecture computer, the foundation was set for the quantitative mathematical analysis of the motion of three bodies.” - Cixin Liu The Three Body Problem

Read More

Using Github Actions to Push a Containerized Streamlit Application to ECR and Deploy to an EC2 Instance

Recently, I used Github Actions to automate the deployment of a Streamlit application I was using for my capstone project, Charge Buddy. As we draw closer to the finish line, the risk that manual deployment introduces becomes too much at a certain point. Today, I wanted to go over the steps I took to write a simple Github Actions workflow that automated the deployment of our Streamlit application, along with a NGINX container for a reverse proxy. Streamlit cannot use HTTPS on its own, but a NGINX reverse proxy can enable us to use HTTPS in our application.

Read More

An Overview of Reinforcement Learning with Human Feedback

Introduction

After reading Cathy O’Neil’s book Weapons of Math Destruction. I wanted to learn more about machine learning techniques being used to mitigate and improve ethical and bias-related concerns for LLMs. Reinforcement learning with human feedback has become one of the major methods for accomplishing this. More importantly, proximal policy optimization (PPO), an algorithm developed by OpenAI, has become one of the forerunners to accomplishing this. I wanted to start to build an understanding by beginning at the fundamentals and working up to the context of PPO.

Read More

Learning about C#

I’ve had to work on some C# features for work lately, so I wanted to take some time to write down some of the weird things that I’ve learned. C# allows you to develop an application to be run in .NET.

Read More