BIDS Senior Fellow David Anthoff led this project, which was offered through the UC Berkeley's Undergraduate Research Apprentice Program (URAP) for the Spring 2020 and Fall 2019 academic semesters.
Participants in this project worked on the core data science software stack for the julia programming language, building the equivalent of pandas on Python and the tidyverse on R for the julia programming language, and covering DataFrame types, query languages, file IO, distributed query execution, database connections, plotting, data visualization, etc. This project focused on both usability and high performance with the goal to create the next generation platform for big data science work.
For the Fall 2019 semester, this project was seeking multiple undergraduate students to fill different roles:
- Core software developer: You would be fully integrated into the software development process. Depending on your skills you might start out by writing performance benchmarks and test suits, but I would coach you to contribute code to the core packages themselves over time, involve you in design decisions etc. Other tasks would include writing documentation and participating in the wider julia open source community.
- Technical writer: you are an English major with a strong data science/technical bend? Here is your opportunity to use both of your skills at the same time. You would help write documentation, users guides, tutorials etc. This might also involve other media, like videos etc.
- Web design: you would create, maintain and manage a web and social media presence for the project.
Qualifications: Highly motivated students that are driven and self-organized for all three positions. You should also be a team player who enjoys working with other students on this project. --- For position 1 (core software developer) Required: very strong software development skills and experience (not just a couple of intro classes); familiarity with the design and internals of database systems; familiarity with common data science stacks (Python, R, julia etc.); self motivated; organized. Desirable but not essential: familiarity with the julia programming language; participation in open source development. --- For position 2 (Technical writer) Required: excellent English writing skills, strong programming skills, familiarity with tools like dplyr, pandas etc. Desirable but not essential: familiarity with the julia programming language; participation in open source development. --- For position 3 (Web design) Required: strong design background, knowledge of HTML and other web technologies. Desirable but not essential: Experience in creating and maintaining a web and social media presence for a project.