Madison, WI


Mark

Hi! I'm Mark Cui Pan . My Chinese name is 潘子早 .


I'm a self-taught software engineer and entrepreneur.

I've lived all over the US - in Madison, WI; Austin, TX; Menlo Park, CA; New York, NY - and spent two years in Hong Kong.
One of my favorite hobbies is thinking about human habitat.

I grew up in Wausau, Wisconsin (ginseng capital of the world).

I gather materials relating to my twin passions of automation and economics on a page called Autonomy, and I keep a collection of my written works on my blog.

Some of the places I've worked...



Splitwise
Oct '22 - present

Splitwise lets you split expenses with friends. I'm a proud member of the server team.


Meta
Aug '21 - Oct '22

I hacked on Shops as well as product tagging in Communities.

Doximity
Aug '19 - Aug '21

Doximity is the world's leading professional medical network.


Great Lakes Bioenergy
Feb '18 - Jul '19

The GLBRC is a division of the Wisconsin Energy Institute. I built tools to catalyze research being done by the center's scientists in field-to-fuel optimization.

Freelance
Jun '16 - Sep '17

When I wasn't teaching myself to code on LearnEnough, edX, Coursera, or Udacity, I taught others. I used the excellent Khan Academy to help students reach their learning goals.

Keystone
Oct '15 - May '16

I worked in the Hong Kong office, helping students and their families navigate the complex world of university applications as an Education Consultant and Instructor.


University of Wisconsin
Sep '11 - May '15

I went to college here, in Madison. It's a lively place, with a big hill you have to climb a lot. I graduated with a Bachelors in Molecular Bio and a certificate in Chinese.

Wausau West
Sep '07 - May '11

I went to high school here. It was one of the first schools in the nation to use flex-mod scheduling, which allowed me to take so many classes that they actually overlapped with each other.

Some of the things I've made...



Optimize Your Grow
Dec '17

Ian Atkins was having an issue with requests timing out while his server was busy solving a gnarly optimization problem. I hacked together a solution and learned about task queuing and Heroku's process model. The result is this proof-of-concept for a site that will help farmers and scientists alike minimize the operating costs of vertical farms and indoor grows.

"Mark solved a problem with Heroku timing out that had shut down progress on our site for months. Mark is a great communicator and even though he was new to Julia (the programming language used to run our site), he had everything working within a few days of getting started on the project."

- Ian Atkins, Engineering Designer @ Dr. Greenhouse

Game of Fifteen
Nov '17

Originally implemented in C for a CS50x assignment, this is the second iteration of my take on the classic 15-puzzle. To help me retain what I was learning better, I wrote every line from scratch using JavaScript. What I learned is that JS is a huge pain in the butt when you don't know what you're doing. Fortunately, there are many excellent videos for mastering the good parts. I made this before learning about responsive web design, but that will be the next thing I implement it now scales to various devices. I'm still having trouble getting it to work properly after device rotation though, so for now, the game is best played on a computer with a keyboard.


Breakout
Oct '17

This little project served as my introduction to the functional programming paradigm. I wrote a sillier version of this app using the Phaser game framework just for fun.

Twitter Clone
Winter '16

A much-simplified version of the actual Twitter, this resulted from months spent going through Michael Hartl's Ruby on Rails Tutorial. I learned the Model-View-Controller pattern and how to do version control with Git. This project also introduced me to SQL, unit tests, integration tests, Bootstrap, and Sass. The final (for now) product is deployed on Heroku.

Kanjure
Summer '15

This is a work in progress, since I'm in the process of learning enough Android and Swift to build it out. Touching a Chinese character brings up its definition and pinyin/jyutping pronunciations.


Nannon Bot
Fall '14

I wrote this as part of the Introduction to Artificial Intelligence course that I took in college. I actually wrote several Nannon players implementing various algorithms, but the most successful one used a Bayesian network as its model. Our professor ran an intra-class tournament, and my Bayes net player placed 12 out of 37.

qPCR Concentrations Calculator
Summer '14

There's a reason I traded wet labs for DRY computing. As a research assistant, I spent too much time punching numbers into Excel and running simple calculations on them. Enter this Python script. It takes a TSV file of measurements from a Qubit device and spits out the volumes of substances that need to be mixed together in order to synthesize cDNA.


Other Coursework-based Projects

I've also implemented binary search, merge sort, a password cracking algorithm, and JPG resizing and recovery algorithms in C.

Other Personal Projects

I'm currently working on building a personal budgeting app as well as what I hope will become the "Common App" for renters.

A little more about me...


I like reflecting on my assumptions and discussing controversial ideas with people who hold different assumptions. Topics that really excite me are criminal justice, education, automation, China, and entropy.

I'm a huge Miyazaki and Pixar fan, I love playing video games with great story (or beautiful code), and I admit that I play the viola and like it. I also enjoy hiking, ultimate frisbee, eating spicy things, and listening to podcasts.

Most of my relatives live in Hong Kong, so I travel there now and again. The blend of British and Chinese influences makes it a fascinating city to visit. If you've never been to East Asia, it's a great place to start.


A short story I wrote for a biology class assignment was published in audiobook format. I write whenever I'm struck by a thought or a feeling that I want to capture and explore.

I live deliberately for the things that matter most to me. Nothing beats the mutual understanding that comes from a good conversation.

Here's a shoutout to my dear friend, Anny, for having been instrumental in my development as a developer. I look forward to all the amazing things we're going to build together.

And here's my resumé...