For anyone interested in applying to HackNY in the future, I’ve decided to put my application responses here in case they help you.
Tell us why you wrote this code and what it does. This code is written in ReactJS. It’s a React component that handles a live blog of speech summaries in a meeting.
At Haverford, every semester, our student body meets to discuss our self-governed honor code. This meeting is held in our college gymnasium, where it can often be difficult to hear who’s speaking because of poor acoustics. Last semester, I consulted with my friend who was on students’ council to build a website that allowed people to follow the meeting live on a website. This code is the primary logic for handling speech summaries/other interesting tidbits from the meeting. The website is available here: https://haverford-fig.github.io/plenary/
It was really cool for me to watch other people following plenary through my website, and also getting e-mails from students abroad, who were really appreciative of the fact that they were able to follow the meeting through the website. I really believe in getting people involved in their local political processes and this project is just one of the ways that this manifested.
Please provide links and descriptions of two of your own best coding projects, in any language.
I wrote this code when I was the backend developer for a team at HackPrinceton Spring 2015. Our hack was a Digital Humanities hack that analyzed text from the New York Times to determine its political leanings on different issues from gun control to abortion over time.
This server was built on Google App Engine at the behest of one of my teammates. I’m particularly proud of this code because Indico.io (the machine learning API I used) was not compatible with Google App Engine. I hence debugged over 100 python tracebacks over chat with one of their mentors in order to modify their API to make it Google App Engine compatible. Not bad for a Saturday evening.
Winner: Most creative hack, Google CodeU Hackathon, Mountain View, 2016 I wrote this code at a Google hackathon in Mountain View. It uses a machine learning API to give you Wikipedia search results that correspond only to your political beliefs (the project was tongue-in-cheek). Uses a simple TF-IDF ranking implemented in Java and a crawler that indexes to Redis.
Tell us about a time you built something awesome in code. How did you choose it? Why did you enjoy it?
I’ve always loved Duolingo and I’ve always wanted to build something with their website. Sadly, they don’t have an API and don’t plan to create one. At HackMIT this year, I took matters into my own hands. I reverse-engineered the browser GET and POST requests and created a python backend that served as my own “Duolingo API”.
My partners then connected my reverse-engineered ‘python API’ into a Twilio server written in Node that allowed people to text Duolingo. Our end-goal was to empower people in remote communities to learn a new language through SMS. We submitted this to and won the KPCB Build For Good Challenge. It was a phenomenal experience not because I won anything, but merely because it was the first time I truly felt I was creating something beautiful from reverse-engineering something. It was the first time I truly felt like I was hacking.
Why is hackNY right for you?
I first attended a HackNY hackathon in the spring of my first-year. A mentor helped me write my first POST and GET request using JS and I learned the basics of using Node.js and the Mongoose MongoDB driver. My hack ended up falling apart that weekend, but I distinctly remember that that was the hackathon that I made the most friends in. Some of the people I hacked alongside are still my very close friends to this day. Despite ‘failing’ in the traditional sense, I felt so accomplished, having learned more than I’ve ever learned at a hackathon by reaching out for help when I needed it.
HackNY is right for me, because it’s an organization built around the ethos of accepting that one is always learning. I loved my hackathon experience at HackNY because it was an environment in which I was never afraid to admit that I needed help. I’m always learning, and I think HackNY is a program that understands, respects, and nurtures that attitude.
Tell us about what you hope to learn this summer.
I spent my past summer at Facebook, which was an incredible experience for me. While working in a large company was a great experience, I felt like I was working on a small part of a product that didn’t feel as impactful as I’d like. I’m really interested in being involved in a more intimate company where my work has more relative impact. As someone interested in working in NYC after graduation, HackNY gives me the opportunity to connect with like-minded students interested in working in such intimate environments.
This summer I hope to learn what it’s like to be a more proactive engineer in a smaller setting. I want to learn how to take initiative in small teams and how to guide direction of my own product. A criticism I have of my own work last summer was that I was often too dependent on my mentor for guidance. In a small startup setting, I believe the burden will be on myself to take ownership of my product.
Tell us about social good initiatives that you are excited about or problems you would like to see solved by social impact projects, why they are important to you, and what you would hope to accomplish with social good as a part of hackNY and beyond.
In my college freshman writing seminar, I wrote a paper on the systemic violence of misogyny in tech. That paper sparked a flame that has become a passion for social justice in the social spaces I occupy. This year, I volunteered as a peer awareness facilitator at my college, which means I lead a group of freshmen weekly conversations on race, class, gender and other visible and invisible identity markers.
These experiences, coupled with interactions I have had at my friends’ predominantly white and male workplaces in San Francisco over the summer, have convinced me that tech has a long way to go in terms of building inclusive work environments. I make a point of asking all companies I interview at about their diversity initiatives and I take these answers seriously.
I might need a little more convincing that ‘social good’ projects are going to fix things. Often times, the questions of inclusivity and diversity lie deep inside of a company’s corporate culture. For example, a project on ‘social good’ at Twitter isn’t going to fix the company’s policies on harmful content. The discussions that we have around inclusivity in tech are core to the industry and the work we do and I don’t know if social good side projects help. If there is work at HackNY about fundamentally questioning and redefining a company’s corporate culture, that is work I’d like to be a part of, but I am a little bit skeptical about the concept of ‘social good’.
Is there a particular technology or industry you’re currently interested in? How come? Where do you see it heading in the future?
Keep an eye out for exciting going ons in government.
While the current state of US politics do make me question my belief in the future of digital government, a class on public policy I took last year taught me that the majority of work in government is done by unelected bureaucrats who were here before the current president, and will most likely be here after the current president. I’ve been keeping a watchful eye on the Obama Administration’s efforts with the Presidential Innovation Fellows, 18F, and the US Digital Service. These efforts, along with that of the Government Digital Services in the UK as well as the Digital Transformation Office in Australia, tell me that the public sector is finally adopting agile and modern software engineering practices to make public services usable and even delightful. Take the Consumer Finance Bureau (http://www.consumerfinance.gov/), which has used modern content-writing techniques to overhaul their website and make traditionally terse consumer finance laws readable to anyone with a Grade 8-9 education, as an example. Take the USCIS, where 18F is building a new website to help demystify immigration law (https://my.uscis.gov/). These examples show us that we are witnessing a radical transformation in how government designs services for the public.
I say this because I feel traditionally in tech, we see government as this huge bureaucratic nightmare dedicated to stopping creativity. Here, we see the opposite. Here, organisations of government are using techniques we use in the private sector to drive voter turnout, enroll people in health insurance, improve public transport, guard consumers from fraud, and so much more. If tech embraces and starts working with government, I think there is so much potential to truly develop services with public good in mind.
Discuss your technical skills/proficiencies/languages and experience
In addition to experience with full-stack development, I’m currently an avid functional programmer. This past summer, at Facebook, I worked on building spam-fighting systems that scale with Haskell and Hacklang (a PHP dialect). Facebook does really interesting work with scaling Haskell as a highly concurrent and parallel platform for fighting malicious behaviour on its product. My interest in functional programming has also extended into my academics. In school right now, I’m doing research in in practical applications of type theory in functional programming languages. As part of my research, I implemented part of a database where if initial connection succeeds, all subsequent queries are guaranteed to be type-safe and no runtime type checking is required. Most people think functional programmers are divorced from pragmatic software engineering, but my work experience and research shows that functional programming can serve very practical purposes.
While I’m most interested in functional programming work, I also have work history outside of it. The summer before my summer at Facebook, I was working at a small web design firm in Taiwan. As they were scaling their business, they wanted a website to help them track employee attendance and payroll. I built them a web app over the course of the summer in ReactJS, Redux and Firebase. A writeup about the work I did that summer is here: (https://share.tenten.co/building-attendance-tentens-internal-hr-app-288ce248df17). I’ve also built several web apps for the student body at my college in ReactJS and Django.
When you’re not coding, what do you like to do?
As a student in a liberal arts college, I’ve had the opportunity to take classes far from the traditional domains of computer science. I’m finding, however, that these classes are still helping me understand my major in a new way. Taking German Cinema, for example, has helped me understand principles of visual hierarchy. I can apply the concepts of framing, and building coherent visual language in a film to making design beautiful and clear to a user. This is just one example of how the breadth of my coursework is widely applicable in its multi-disciplinary nature.
I’m an avid language learner. Apart from being bilingual in Mandarin Chinese and English, I am conversant in Spanish, Arabic and Esperanto while learning countless more. I’m in an a cappella group that sings non-American music from Britain to Bulgaria. I’ve served on my school’s honor code council and play on the college rugby team. Being a self-governing school, Haverford has also enabled me to pass a school-wide resolution banning discrimination against people based on English ability.