About Myself
Hi there, I'm Benjamin, a San Francisco native and programming enthusaist/tutor. Feel free to check out a few of my projects - most are for the command-line, but I like building websites too.
I spend most of my free time coding. But when I'm not on the computer, I'm usually cycling or weightlifting.
What can I do?
Programming Languages
- Python I taught myself Python when I was a teenager, and it's the language I'm most comfortable with
- C/C++ My go-to when making smaller projects. I like knowing how the computer processes code behind-the-scenes
- Java My favorite statically-typed language, and I've toyed around with Minecraft mods :)
- TypeScript I'm not the biggest fan of vanilla JS, but this is a great alternative
- HTML/CSS/JS What this very website was built with - no website builder required 😉
- C# I use this while tutoring students who want to get into game development
Other
- React Makes website building much more palatable
- Django I used this for a while before learning React, it taught me a lot about web development
- PostgreSQL My default whenever I have to create something with databases, and I'm decent with SQL
Personal Projects
Crossword Generator
This is my most recent pet-project, which randomly generates mini crossword boards. Check it out!
2048 in C
A version of the game 2048 written entirely in C, runnable through the command line and playable with arrow-keys. Uses an interface library for C called ncurses.
Optimized Sudoku Solver
Also written in C, an optimized sudoku solver for the command-line using bitmasking.
Online CLI Chess
A multiplayer chess game in C++, designed to be run on the command-line. Using C's socket library, you can play with a friend on two different computers. The setup is contained in the Github's README.
Statistics Chatbot (WIP)
My university has an active Discord server, and I'm creating a website which collects detailed information about chatroom users: what times they’re active, who they talk most with, etc.
On the backend, all readable messages from the server are processed in batches, and relevant info is saved to a PostgreSQL database.
On the frontend, the data is neatly displayed on a webpage with help from Django's HTML templating and some Javascript.