David Hacker

Hello! I'm an undergraduate at the University of California San Diego (UCSD), and I am pursuing a B.S in computer science with a minor in mathematics. I am particularly interested in information security, privacy, malware analysis, and practical applications of cryptography, specifically with respect to various cryptosystems, cryptanalytic methods, and zero-knowledge proofs. I also enjoy learning about and working with natural language processing, graphics & data visualization techniques, and distributed computing.

Additionally, I'm a big fan of the Unix philosophy, *nix systems in general, Vim, Firefox, i3-gaps, and URxvt. You can find my dotfiles here.

You can usually reach me at dmhacker (at) protonmail (dot) com. My resume is listed here.

Some Projects

Alexa YouTube Skill
Star
This is a skill that you can use to have Alexa play audio from YouTube. The project walks you through the setup process.

Arch Linux Kernel Patcher (Surface devices)
Star
For anyone with a Surface device who wants to run Linux comfortably, chances are you will need jakeday's patched kernel. However, all of his compiled binaries are for Debian-based distros. If you want to use Arch Linux on your device, this utility will help you compile the kernel yourself.

Graphical GDB
Star
Designed for UCSD's CSE 30 class, this program acts as a graphical wrapper around the GNU Debugger (GDB). You can easily view your program's state, registers, variables, etc. in a nice GUI while still using traditional GDB commands from the terminal to manipulate your program.

And many more on GitHub!
Follow @dmhacker

Cool Visualizations

Travelling Salesman Problem: Hill Climbing v.s Simulated Annealing
Received over 2900 upvotes on /r/InternetIsBeautiful. Link to the post.

2D Feedforward Neural Network
Watch as a neural network is trained in your browser. Optionally supply your own training set.

3D Adaptation of Langton's Ant
Based off of this research paper. Configure what path it generates using your own ruleset.

3D Function Plotter & Grapher
Useful tool to help with visualizing volumes of solids of revolution (calculus I).