An open API service indexing awesome lists of open source software.

https://github.com/chrisrzhou/dev-2020

My developer journey leading up to 2020
https://github.com/chrisrzhou/dev-2020

2020 reflections resume

Last synced: about 1 year ago
JSON representation

My developer journey leading up to 2020

Awesome Lists containing this project

README

          

A resume of sorts, but mostly a writeup that will be committed as a checkpoint in my journey as a developer.

---

## Table of Contents
- [tl;dr](#tldr)
- [Projects](#projects)
- [Tools](#tools)
- [Interests](#interests)
- [Influencers](#influencers)
- [Experience](#experience)
- [Education](#education)

## tl;dr

### Scope
What data I cannot render, I do not understand.

With my projects, I try to manage or reduce the entropy of the problem space, and not add to it.

### Values
I value **specs/schema-driven** development. A problem can only be solved if its boundaries can be well described.

I value working with people more than working on problems. Human problems can only be solved by people working together.

I value learning, and respect the idea that everyone is both the teacher and the student. From experience, real progress is rapidly achieved when everyone is able to learn and evolve a system together.

### Beliefs
I believe the cost of software development will eventually approach zero. Therefore, I prioritize building **cheap** interfaces that are easy to understand/use/refactor/compose/deprecate.

I believe that a progressively fair world can only be achieved if tooling, knowledge, sharing, and learning is increasingly made **open**.

## Projects

### Active
- [`unified-doc`][unified-doc]: A unified way to work with all kinds of documents.
- [`tdast`][tdast]: abstract syntax tree spec and utilities for working with tabular data.
- [`react-globe`][react-globe]: `react` + `three` globe component.
- [`react-wordcloud`][react-wordcloud]: `react` + `d3` wordcloud component.

### Planned
- [`surveyless`][surveyless]: JAMStack serverless survey app
- `unidash`: JAMStack visualization app
- `geneticjs`: JAMStack application to setup, run and visualize genetic algorithms.
- `???`: open up scientific knowledge locked behind journals.

### Archived
- [`google-globe-trends`][google-globe-trends]: JAMstack application to easily render globe visualizations based on Google Trends using `react-globe`.
- [`wordcloud-generator`][wordcloud-generator]: create and share wordclouds. Built using `react-wordcloud` and `unified-doc`.
- [`three-glow-mesh`][three-glow-mesh]: create glow mesh with any `three` geometry
- [`qraffiti`][qraffiti]: fun app to generate creative QR codes.
- [gists][gists]: My beginning journey into JS and dataviz.

## Tools

I am open to using any tools in the problem space.

### Using
`d3`, `docz`, `gatsby`, `git`, `graphql`, `lerna`, `md`, `mdx`, `microbundle`, `react`, `redux`, `netlify`, `theme-ui`, `three`, `typescript`, `xo`, `unified`

### Used
`flow`, `r`, `py`, `sql`

## Interests

Things that I never stopped working or caring about:

- [Open source][me]
- [JAMstack][]
- [unified][]
- Cheap development
- Documents, content, knowledge
- Dataviz

## Influencers

These people and initiatives heavily influence how I learn and approach problems:

#### People
- [@wooorm][wooorm]
- [@mbostock][mbostock]
- [@jxnblk][jxnblk]
- [@gaearon][gaearon]
- [@kikobeats][kikobeats]
- [@mrdoob][mrdoob]

#### Initiatives
- [`unified`][unified]
- [`gatsby`][gatsby]
- [`netlify`][netlify]
- [`theme-ui`][theme-ui]
- [`observable`][observable]
- [`ramaworks`][ramaworks]

## Experience

A resume of my job experience, with personal developments external to work highlighted in blockquotes.

### Frontend Engineer, *Evisort*
Feb 2020 - Present

Built UIs relevant for contract management and integration with NLP/ML pipelines. Bootstrapped and scaled out a design system with progressive documentation.

> Dived deeper into the document/content/knowledge domain area. Researched and used [`unified`][unified] to ship the [`unified-doc`][unified-doc] open-source project which provides a unified set of document APIs to solve similar problems across document formats.

### Frontend Engineer, *Roam Analytics*
Jun 2019 - Feb 2020

Built innovative and novel UIs that empower human workflows in NLP/ML pipelines (annotations, search, highlight). Bootstrapped and scaled out a design system with progressive documentation.

> This was the start of my interest in the document/content/knowledge domain area. At this point, I am fairly fluent with rapid and cheap UI development, design systems, and progressive documentation.

### Data UI Engineer, *Facebook*
May 2015 - Jun 2019

During my time at Facebook, I designed and shipped multiple data UI products.
- **Rabbit**: Tableau-like data exploration, visualization and dashboarding tool built in `react` + `redux`.
- **Survey Insights**: Visualization and insights dashboard capable of analyzing survey results from third-party sources (e.g. Qualtrics). Built in `react` + `redux` + `graphql`.
- **fbFiddle**: Facebook JS fiddle supporting internal JS modules.
- Various data UIs and visualization components.

> I kept exploring simpler and open approaches of the problems I faced at work. `react-globe`, `react-wordcloud` were direct formalizations of some work I did at Facebook. Learned about JAMStack and migrated personal projects onto Netlify/Gatsby!

### Business Intelligence Analyst, *NRG Energy*
Apr 2011 - May 2015

Self-taught `r`, `py`, `sql`, `vba`, `js`, `d3` to automate traditional marketing reports managed in Excel.

> Unknowingly, my interests and work were already JAMstack-focused (despite the term not being official yet). These pet projects were all statically built when I was just learning `js` and `d3`: https://bl.ocks.org/chrisrzhou

## Education

### B. in Physics & Mathematics, *Rice University*
2006 - 2009

[gatsby]: https://github.com/gatsbyjs
[jamstack]: https://jamstack.org
[netlify]: https://github.com/netlify
[observable]: https://github.com/observablehq
[theme-ui]: https://github.com/system-ui/theme-ui
[unified]: https://github.com/unifiedjs/unified

[gists]: https://bl.ocks.org/chrisrzhou
[google-globe-trends]: https://google-globe-trends.netlify.app
[qraffiti]: https://qraffiti.netlify.app
[react-globe]: https://react-globe.netlify.app
[react-wordcloud]: https://react-wordcloud.netlify.app
[surveyless]: https://surveyless.netlify.app
[tdast]: https://github.com/tdast/tdast
[three-glow-mesh]: https://github.com/chrisrzhou/three-glow-mesh
[unified-doc]: https://unified-doc.netlify.app
[wordcloud-generator]: https://wordcloud-generator.netlify.app

[me]: https://github.com/chrisrzhou
[gaearon]: https://github.com/gaearon
[jxnblk]: https://github.com/jxnblk
[kikobeats]: https://github.com/kikobeats
[mbostock]: https://github.com/mbostock
[mrdoob]: https://github.com/mrdoob
[wooorm]: https://github.com/wooorm
[ramaworks]: https://rama.works/