Professional Me Allen Cao Software Developer SF Bay Area

About me

I am an undergraduate student at the University of California, Berkeley pursuing a B.A. in computer science. I am based out of SF Bay Area and Vancouver; I call both locations home.

Some activities I enjoy include: coding fun Python projects, tutoring computer science, writing short stories (will begin publishing some on this website), playing guitar, and binging history YouTube videos.

The best way to reach me is through my email allencao@berkeley.edu (I typically respond within a couple hours). Feel free to contact me about anything (hiring, getting access to private repos, or casual chatting)!

Programming Languages


Frameworks/Applications


Featured Projects

Pathfind Visualizer

Pathfind Visualizer

 

I developed a website using React to display the results of pathfinding algorithms. Users can generate walls on the display grid to create unique graph traversals. Runnable pathfinding algorithms include Dijkstra's, A*, DFS, BFS, and Greedy Best First Search. For an extra touch, I also implemented maze generation algorithms for the pathfinding algorithms to run through, such as Randomized Prim's and Inverse Randomized Prim's (which I self-discovered).

I am working on adding more algorithms in this project. Expect recursive division maze generation soon (or later... I'm pretty busy these days)!

Check it out!
Perpetual Crusades

Gitlet

 

I created a version control system for both local and remote repositories. Gitlet supports init, add, commit, rm, log, global-log, find, status, checkout, branch, rm-branch, reset, merge, add-remote, rm-remote, fetch, push, and pull. Note that this was a school project, so if you want to see the source code please contact me.

Check it out!
LawScraper

LawScraper

   

I created a web scraping bot that scrapes government legislative websites and grabs key information on newly passed laws. At a certain time everyday, the bot sends an email containing short summaries of new laws to a mailing list. In addition, I created an Express process that manages a website for mailing list sign-ups and sends the web scraping bot the updated mailing lists.

Check it out!
Escape Stanford: a 2D Maze Escape Game

Escape Stanford: a 2D Maze Escape Game

 

Escape Stanford is a 2D maze exploration game built with Java StdDraw; the objective is to continuously enter spiral portals until the player reaches the exit of Stanford. World generation is pseudo-random and seed-based. In addition, flowers are randomly placed in rooms, indicating a mini-game where the player has the opportunity to collect coins to gain (or lose) points. This game also supports custom avatars and an option for countdown timers during mini-games. Note that this was a school project, so if you want to view the source code please contact me.

Check it out!
ClownBot

ClownBot

 

In this silly project, I used discord.py to create a Discord bot that photoshops big red clown noses onto faces in an image. The bot uses a pre-trained PyTorch facial recognition model to identify key features of a face and then proceeds to estimate the location of the nose before finally drawing a red nose. Feel free to invite this bot to your own Discord server. For specific instructions, invite the bot to the server and type ".help" in any chatroom in the server.

Check it out!
Invite to Discord server!
Scheme Interactive Shell

Scheme Interactive Shell

 

I built a Scheme shell that reads single line Scheme commmands and outputs the results (you may be familiar with a Python Shell; this is the same thing but for Scheme). It supports many Scheme commands: define, if, cond, and, or, let, begin, lambda, quote, cond, car, cdr, cons, enumerate, merge, nondecreaselist. Note that this was a school project, so if you want to view the source code please contact me.

Check it out!
LawScraper

Crossroads January Resistance

 

Game made for a bunch of friends with January birthdays. Text is in Comic Sans.

Check it out!

Teaching Resources



Microblog

8/9/22

"Stop this train, I want to get off and go home again."

8/6/22

I still haven't had deep dish.

7/20/22

I've been listening to much John Mayer lately.

6/4/22

OMW to Chicago.

4/17/22

Low-temp cooking is boring but rewarding.

3/19/22

The John Mayer concert has significantly worsened my tinnitus.

2/1/22

1/19/22

1/14/22

1/1/22

12/19/21

12/11/21

12/9/21

12/3/21

That is all.

llama
11/27/21

10/23/21

9/12/21

8/12/21

7/13/21

7/4/21

6/6/21

1/13/21

12/30/20

10/30/20

9/6/20

9/5/20