About Me

My hero's journey.

Hi, I'm Gregory Gaines, a full-stack software engineer and aspiring blogger who specializes in building serverless microservices. My goal is to make the internet more accessible and fun.

I started programming at 12 years with C++ and Java. I created binary search trees and hacked almost every video game console I had. Soon after, I learned about emulation which jump-started my passion for computer science.

My first jobs were at startups working on simple WordPress / PHP sites with HTML, CSS, and JS. Then, I got a taste of FAANG with a great job at Amazon Web Services where I got to see the true power of the cloud at work. Next, I moved on to Google solving massive problems and having tons of fun doing it!

When not programming, I enjoy watching anime or reading manga while critiquing its narrative's strengths or flaws. Some of my favorites are Hunter × Hunter and Toaru.

You can reach me on Twitter, LinkedIn, GitHub, Reddit, or by mail at gainesagregory[at]gmail[dot]com.

What I'm Up To

My Current Goals.

Inspire others

  • Got sent a message expressing how much my article inspired them. I am ecstatic!

Complete GBA emulator

  • Complete ARM7TDMI CPU
  • Complete LCD
  • Write SPU
  • Correct memory timings

Write more interesting articles

  • Come up with more interesting things to write about, but they take so long to accurately pen down.

Demo the power of Flutter and Golang

  • Trust me, what I have in store is amazing!

Get out the house and sleep more.

  • I should make some friends.
  • Find some cool places to go.
  • Get a full eight hours of sleep.

Work Experience

Professional Work.

[object Object]

Google

Jul 2021 - Present

Software Engineer

Amazon Web Services

Amazon Web Services

Jul 2020 - Jul 2021

Software Development Engineer

Hamilton Multimedia LLC

Hamilton Multimedia LLC

Mar 2017 - Mar 2020

Software Engineer

Air Care Companies Inc.

Air Care Companies Inc.

Apr 2019 - Oct 2019

Technical Developer

Latest Posts

My Latest Writings.

Emulator Development

My Attempt at Running a Gameboy Emulator in Google Sheets

0 views

You must be thinking "only an idiot would try to run a Gameboy emulator in Google Sheets"? And you'd be right! I was on Google Sheets one day and thought this is boring, and you know what's not boring? Gameboys!

Reverse Engineering

Adding Save States to an Emulator

0 views

Learn how to add save states to your emulator by using utilizing software design patterns so you'll have infinite chances to catch that shiny Pikachu.

My Watchlist

My Future Watches.

Dragon Ball Super: Super Hero

Dragon Ball Super: Super Hero

JoJo no Kimyou na Bouken Part 6: Stone Ocean

JoJo no Kimyou na Bouken Part 6: Stone Ocean

Mahou Shoujo Madoka★Magica Movie 4: Walpurgis no Kaiten

Mahou Shoujo Madoka★Magica Movie 4: Walpurgis no Kaiten

Mob Psycho 100 III

Mob Psycho 100 III

Neon Genesis Evangelion: The End of Evangelion

Neon Genesis Evangelion: The End of Evangelion

Shingeki no Kyojin: The Final Season Part 2

Shingeki no Kyojin: The Final Season Part 2

My Q&A

Interesting Facts About Me.

Favorite programming language?

I'm going to say Java. I feel at home writing it, and anything I build feels concise and structured.

How many hours of sleep you get a night?

const hoursOfSleep = 3;
console.log(hoursOfSleep < 8 ?
'Not Enough' : 'Just Right');

Favorite anime?

It has to be between Toaru or HxH. With HxH, seeing a shōnen tell a story on a massive scale while staying narratively coherent is beyond impressive.


Side characters can get about 8 minutes of screen time and out-develop many anime's main characters, but I won't say any names.

What hardware / software do you use?

My MacBook is for web development or any low-power tasks. My desktop (AMD Ryzen 5, NVIDIA 2060) is for beefy tasks that would kill my Macbook. 😨

Your favorite programming project?

I have to go with emulators. Retro game consoles have a big part of my childhood, not to mention the countless ones I have burned up, shorted out, or outright broken.


I get a massive sense of satisfaction when I develop an emulator and have a game boot up while holding the original copy that I played years ago.


Not to mention that developing an emulator is one pinnacle of computer science and research beyond just the programming, with a dabble of electrical engineering thrown in the mix. Don't you get excited thinking about it!

Hobbies

When not programming, I enjoy watching anime or reading manga while critiquing its narrative's strengths or flaws.

Support Me

Help Support What I Do.

Got A Question

Ask Me Anything.