<commit_before># I delight in making, creating, and exploring.

> Why is programming fun? What delights may its practitioner expect as his
> reward?
>
> <NAME>, _The Mythical Man-Month_

<!-- TODO: make this better -->

Between school, hackathons, and my free time, I always find myself gravitating
towards programming. I absolutely love working on projects, whether alone or
with others. Over time I've accumulated a portfolio of projects that I'm
particularly proud of.

- [Autolab][autolab] is a project I joined recently and now regularly contribute
  to. It aims to vastly improve the process of teaching programming-based
  computer science classes through "autograding," allowing instructors to spend
  more time educating.

- [TeXDown][texdown] was a small experiment to build an online note-taking app
  that combines the expressiveness of Markdown, the power of LaTeX, and the
  editing speed of Vim. After building it, I realized I preferred alternative
  methods of note-taking, but it's still a nifty little project that I'm very
  fond of.

- [TuneMachine][tunemachine] started out as a hackathon project. It aims to be a
  "time machine for your Spotify tunes." It's built with CoffeeScript and
  React---my two favorite web technologies at the moment.

This collection of projects only scratches the surface; some of my "smaller"
projects are actually the most interesting. I've created or contributed to a
number of [Vim][vim-repos] and [LaTeX][latex-repos] repos, done a fair bit of
[shell scripting][shell-repos] for my dotfiles and personal `bin/` repos, and
worked on some really cool [Carnegie Mellon-specific projects][cmu-repos]. I
also enjoy giving back to [open source projects I use][oss-repos].


# I believe strongly in education.

> Open the encyclopedia. Open the dictionary. Open your mind.
>
> <NAME>, _The Last Lecture_

Sharing my talents and knowledge with others thrills me. I've been a teaching
assistant for [15-150 Functional Programming][150] and [15-131 Great Practical
Ideas for CS][131]. The degree to which CMU embraces undergraduate TAs means
that I've been able to actively participate in and give real feedback to help
make these courses all the more valuable to students.

Other than being a TA, one of my favorite ways to engage and connect with the
tech community at CMU is by leading talks and workshops. Two of my more popular
talks have been [Vim as an IDE][vim-talk], a talk to introduce people to Vim
plugins and help them embrace their editing environment, and [JavaScript
Fundamentals][jquery-talk], a workshop introducing the fundamentals of
JavaScript by writing a full-fledged web game.

I'm also a part of [ScottyLabs][sl], a student organization at CMU dedicated to
improving the campus tech community through hosting educational events and
developing useful services. Our biggest attraction is [TartanHacks][th], a
400-person hackathon held yearly. Organizing and mentoring at a hackathon is by
far one of the most exciting and action-packed events I've experienced.

Teaching has always been a passion of mine, and I get to live it out every day.


# I reflect on what I've learned.

> You are all computer scientists.<br>
> You know what FINITE AUTOMATA can do.<br>
> You know what TURING MACHINES can do.<br>
> For example, Finite Automata can add but not multiply.<br>
> Turing Machines can compute any computable function.<br>
> Turing machines are incredibly more powerful than Finite Automata.<br>
> Yet the only difference between a FA and a TM is that<br>
> the TM, unlike the FA, has paper and pencil.<br>
> Think about it.<br>
> It tells you something about the power of writing.<br>
> Without writing, you are reduced to a finite automaton.<br>
> With writing you have the extraordinary power of a Turing machine.
>
> <NAME>, _Advice to a Beginning Graduate Student_

Writing is a way for me to collect my thoughts, distill my knowledge, and share
my discoveries with others. I publish my writings at [Bits, Bytes, and
Words][blog], my personal blog, and occasionally at the [Autolab Development
Blog][autolab-blog]. For the curious, here's a sampling of my posts.

- [Autolab: Autograding for All][autograding] is a piece written for the Autolab
  blog outlining the benefits of autograding and how it improves student
  learning in computer science classrooms.

- [Noteworthy Dotfile Hacks][dotfile-hacks] dissects my sophisticated [dotfiles
  setup][dotfiles] to place the interesting parts at the forefront, making it
  easier for others to incorporate the interesting bits into their setups as
  well.

- [Google Chrome: A Memory Hog][chromemem] walks through the process of
  constructing a bash-oneliner, emphasizing their usefulness in solving rather
  complicated tasks. I use the contents of this article as an example when
  teaching [Great Practical Ideas][131].

- [Ruby Virtualenvs][ruby-virtualenvs] solves a long-time problem I've had about
  Ruby gems. By default, the Ruby `bundle` command to install gems provides no
  sandboxing of dependencies between projects. Through clever use of the Python
  `virtualenvwrapper` package, we can elegantly solve this problem using
  existing tools.


# I mix work and passion.

> ... but I like what is in the work---the chance to find yourself. Your own
> reality---for yourself
>
> <NAME>, _Heart of Darkness_

<!-- -->

> My heart is in the work.
>
> <NAME>

I've had two wonderful opportunities for summer software engineering
internships. Through them, I've been able to discover my talents and
preferences, meet new friends, and enjoy myself.

- At [Bloomberg][bloomberg] I worked on an internal financial simulation tool in
  C++ that enabled developers to prototype and test their apps. I got the
  opportunity to participate in the design, implementation, testing, and
  deployment of a complete project, which was invaluable as a rising sophomore.

- At [Dropbox][dropbox] I worked on some super-secret unreleased stuff! When it
  releases I'll be sure to elaborate, but suffice it to say that it lit up the
  room when I would demo my feature. I worked primarily using TypeScript and
  React.

Having lived in both New York and San Francisco, I'm still undecided on where
I'd like to move when I graduate college in 2017. I'm a Midwesterner at heart,
but I enjoy being close to my college and intern friends on the coasts.
Regardless of where I work, though, I hope to find somewhere I can live out my
passions.


[autolab]: https://github.com/autolab/Autolab
[texdown]: https://github.com/bezi/texdown
[tunemachine]: https://github.com/jez/tunemachine
[dotfiles]: https://github.com/jez/dotfiles

[vim-repos]: https://github.com/search?l=VimL&q=user%3Ajez+fork%3Atrue&ref=searchresults&type=Repositories&utf8=%E2%9C%93
[latex-repos]: https://github.com/search?l=TeX&q=user%3Ajez+fork%3Atrue&ref=searchresults&type=Repositories&utf8=%E2%9C%93
[shell-repos]: https://github.com/search?l=Shell&q=user%3Ajez&ref=searchresults&type=Repositories&utf8=%E2%9C%93
[cmu-repos]: https://github.com/search?utf8=%E2%9C%93&q=user%3Ajez+cmu+fork%3Atrue&type=Repositories&ref=searchresults
[oss-repos]: https://github.com/search?o=desc&q=user%3Ajez+fork%3Aonly&ref=searchresults&s=updated&type=Repositories&utf8=%E2%9C%93

[150]: http://www.cs.cmu.edu/~15150/
[131]: https://www.cs.cmu.edu/~15131/

[vim-talk]: https://github.com/jez/vim-as-an-ide
[jquery-talk]: https://scottylabs.org/wdw/frontend/
[sl]: https://scottylabs.org/
[th]: http://tartanhacks.com/

[blog]: http://blog.jez.io/
[autolab-blog]: http://autolab.github.io/

[autograding]: http://autolab.github.io/2015/03/autolab-autograding-for-all/
[dotfile-hacks]: http://blog.jez.io/2015/03/10/noteworthy-dotfile-hacks/
[chromemem]: http://blog.jez.io/2014/12/29/google-chrome-a-memory-hog/
[ruby-virtualenvs]: http://blog.jez.io/2014/12/22/ruby-virtualenvs/

[bloomberg]: http://www.bloomberg.com/
[dropbox]: https://www.dropbox.com<commit_msg>Update about.md<commit_after># I delight in making, creating, and exploring.

> Why is programming fun? What delights may its practitioner expect as his
> reward?
>
> <NAME>, _The Mythical Man-Month_

<!-- TODO: make this better -->

Between school, hackathons, and my free time, I always find myself gravitating
towards programming. I absolutely love working on projects, whether alone or
with others. Over time I've accumulated a portfolio of projects that I'm
particularly proud of.

- [TuneMachine][tunemachine] started out as a hackathon project. It aims to be a
  "time machine for your Spotify tunes." It's built with CoffeeScript and
  React---my two favorite web technologies at the moment.

- [TeXDown][texdown] was a small experiment to build an online note-taking app
  that combines the expressiveness of Markdown, the power of LaTeX, and the
  editing speed of Vim. TeXDown gave me a great venue to experiment with
  perspectives that I eventually brought when I worked on the [Dropbox Paper
  team](#i-mix-work-and-passion-).

- [Autolab][autolab] aims to vastly improve programming-based computer science
  classes through "autograding," allowing instructors to spend more time
  educating. Autolab is developed completely at CMU, so there's a strong sense
  of community among the developers.

This collection of projects only scratches the surface; some of my "smaller"
projects are actually the most interesting. I've created or contributed to a
number of [Vim][vim-repos] and [LaTeX][latex-repos] repos, done a fair bit of
[shell scripting][shell-repos] for my dotfiles and personal `bin/` repos, and
worked on some really cool [Carnegie Mellon-specific projects][cmu-repos]. I
also enjoy giving back to [open source projects I use][oss-repos].


# I believe strongly in education.

> Open the encyclopedia. Open the dictionary. Open your mind.
>
> <NAME>, _The Last Lecture_

Sharing my talents and knowledge with others thrills me. I've been a teaching
assistant every semester except freshman year, TA'ing the classes [15-150
Functional Programming][150], [15-210 Parallel and Sequential Data Structures
and Algorithms][210], and [15-131 Great Practical Ideas for CS][131]. The degree
to which CMU embraces undergraduate TAs means that I've been able to actively
participate and give real feedback to help make these courses all the more
valuable to students.

Other than being a TA, one of my favorite ways to engage and connect with the
tech community at CMU is by leading talks and workshops. Two of my more popular
talks have been [Vim as an IDE][vim-talk], a talk to introduce people to Vim
plugins and help them embrace their editing environment, and [JavaScript
Fundamentals][jquery-talk], a workshop introducing the fundamentals of
JavaScript by writing a full-fledged web game.

I'm also a part of [ScottyLabs][sl], a student organization at CMU dedicated to
improving the campus tech community through hosting educational events and
developing useful services. Our biggest attraction is [TartanHacks][th], a
400-person undergraduate hackathon held yearly. Organizing and mentoring at a
hackathon is by far one of the most exciting and action-packed events I've
experienced.

Teaching has always been a passion of mine, and I get to live it out every day.


# I reflect on what I've learned.

> You are all computer scientists.<br>
> You know what FINITE AUTOMATA can do.<br>
> You know what TURING MACHINES can do.<br>
> For example, Finite Automata can add but not multiply.<br>
> Turing Machines can compute any computable function.<br>
> Turing machines are incredibly more powerful than Finite Automata.<br>
> Yet the only difference between a FA and a TM is that<br>
> the TM, unlike the FA, has paper and pencil.<br>
> Think about it.<br>
> It tells you something about the power of writing.<br>
> Without writing, you are reduced to a finite automaton.<br>
> With writing you have the extraordinary power of a Turing machine.
>
> <NAME>, _Advice to a Beginning Graduate Student_

Writing is a way for me to collect my thoughts, distill my knowledge, and share
my discoveries with others. I publish my writings at [Bits, Bytes, and
Words][blog], my personal blog, and occasionally at the [Autolab Development
Blog][autolab-blog]. For the curious, here's a sampling of my posts.

- [Autolab: Autograding for All][autograding] is a piece written for the Autolab
  blog outlining the benefits of autograding and how it improves student
  learning in computer science classrooms.

- [Noteworthy Dotfile Hacks][dotfile-hacks] dissects my sophisticated [dotfiles
  setup][dotfiles] to place the interesting parts at the forefront, making it
  easier for others to incorporate the interesting bits into their setups as
  well.

- [Google Chrome: A Memory Hog][chromemem] walks through the process of
  constructing a bash-oneliner, emphasizing their usefulness in solving rather
  complicated tasks. I use the contents of this article as an example when
  teaching [Great Practical Ideas][131].

- [Let's Have a Chat About Encryption][encryption-post] is a based on a real
  dialogue I once had. It discusses topics surrounding encryption's usage,
  impact, and importance, as well as how it related to the Apple v. FBI case.


# I mix work and passion.

> ... but I like what is in the work---the chance to find yourself. Your own
> reality---for yourself
>
> <NAME>, _Heart of Darkness_

<!-- -->

> My heart is in the work.
>
> <NAME>

I've had three wonderful opportunities for summer software engineering
internships. Through them, I've been able to discover my talents and
preferences, meet new friends, and enjoy myself.

- At [Stripe][stripe] I worked on [Checkout][checkout], a fully-featured online
  payment form that makes it as easy a possible for merchants to start accepting
  payments. I love Stripe's mission of building developer-facing tools to
  advance the internet and create a more economically interconnected world,
  and the engineering culture and rigor keep me engaged.

- At [Dropbox][dropbox] I worked on [Dropbox Paper][paper], a product that
  completely re-envisions notetaking (at the very least, I think so!). It
  focuses on real-time collaborative, rich-text editing. Think Google Docs, but
  without all the parts that feel too much like Microsoft Word and with a
  gorgeous design to boot. My project was to build out rich-text embeds (think:
  YouTube videos, Google Drive docs, Spotify songs) from the ground up. The
  high-impact, small-team vibe was an intensely positive experience.

- At [Bloomberg][bloomberg] I worked on an internal financial simulation tool in
  C++ that enabled developers to prototype and test their apps. I got the
  opportunity to participate in the design, implementation, testing, and
  deployment of a complete project, which was invaluable as a post-freshman
  undergrad.


Having lived in both New York and San Francisco, I'm still undecided on where
I'd like to move when I graduate college in 2017. I'm a Midwesterner at heart,
but I enjoy being close to my college and intern friends on the coasts.
Regardless of where I work, though, I hope to find somewhere I can live out my
passions.


[autolab]: https://github.com/autolab/Autolab
[texdown]: https://github.com/bezi/texdown
[tunemachine]: https://github.com/jez/tunemachine
[dotfiles]: https://github.com/jez/dotfiles

[vim-repos]: https://github.com/search?l=VimL&q=user%3Ajez+fork%3Atrue&ref=searchresults&type=Repositories&utf8=%E2%9C%93
[latex-repos]: https://github.com/search?l=TeX&q=user%3Ajez+fork%3Atrue&ref=searchresults&type=Repositories&utf8=%E2%9C%93
[shell-repos]: https://github.com/search?l=Shell&q=user%3Ajez&ref=searchresults&type=Repositories&utf8=%E2%9C%93
[cmu-repos]: https://github.com/search?utf8=%E2%9C%93&q=user%3Ajez+cmu+fork%3Atrue&type=Repositories&ref=searchresults
[oss-repos]: https://github.com/search?o=desc&q=user%3Ajez+fork%3Aonly&ref=searchresults&s=updated&type=Repositories&utf8=%E2%9C%93

[150]: http://www.cs.cmu.edu/~15150/
[210]: http://www.cs.cmu.edu/~15210/
[131]: https://www.cs.cmu.edu/~15131/

[vim-talk]: https://github.com/jez/vim-as-an-ide
[jquery-talk]: https://scottylabs.org/wdw/frontend/
[sl]: https://scottylabs.org/
[th]: http://tartanhacks.com/

[blog]: http://blog.jez.io/
[autolab-blog]: http://autolab.github.io/

[autograding]: http://autolab.github.io/2015/03/autolab-autograding-for-all/
[dotfile-hacks]: http://blog.jez.io/2015/03/10/noteworthy-dotfile-hacks/
[chromemem]: http://blog.jez.io/2014/12/29/google-chrome-a-memory-hog/
[encryption-post]: http://blog.jez.io/2016/04/17/lets-have-a-chat-about-encryption/

[stripe]: https://stripe.com/
[checkout]: https://stripe.com/checkout
[dropbox]: https://www.dropbox.com
[paper]: https://paper.dropbox.com
[bloomberg]: http://www.bloomberg.com/
{'fraction_non_alphanumeric': 0.0887284444179247, 'fraction_numerical': 0.013604630347872786, 'mean_word_length': 4.622274404562227, 'pattern_counts': {'":': 0, '<': 39, '<?xml version=': 0, '>': 95, 'https://': 31, 'lorem ipsum': 0, 'www.': 9, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3531571', 'n_tokens_mistral': 5237, 'n_tokens_neox': 4870, 'n_words': 2120}