Every Thursday from 7pm to 9pm in Soda 306.
Cubstart is a Decal offered by Hackathons @ Berkeley (the team behind Cal Hacks). It's an introduction to building fullstack web applications. By the end of the course, you'll:
- Be able to ship real-world projects.
- Have experience with a range of technologies, both frontend and backend.
- Be able to take initiative as a developer.
- Feel comfortable debugging on your own.
This class will meet once a week every Thursday. Each session will have a different theme (see below for the calendar). After a brief mini-lecture, each student will work on a project of their own. For example, for our first session, every student will make their own personal website. At the end of each session, students will share what they've made with their peers and course staff.
The last four weeks will be dedicated to your final project, which is ideating and building a viable product/application. You’ll work with a team or alone; we will be offering office hours support along the way. Besides the final project, there'll be no homework for this semester.
All students should join the class' Ed Discussion: edstem.org/us/join/QBybhC. We encourage you to make your posts public as other students may have similar questions. If you need to contact us about a private matter, please make a private Ed post.
Students should make a PR to this repository every week with the project they made that week. There'll be a corresponding folder, eg. week1
. Final projects should be submitted as a GitHub repository.
We do not enforce prerequisites, but prior coding experience of any kind is recommended (high school course, CS10, CS61A, etc). Students should come to the first session of class w/ an IDE (we recommend VSCode), Node.js, and GitHub Desktop installed.
Above all, bring positivity and curiosity to class! The more you give to the class, the more you'll get out of it.
Week 1 (6th February): building a personal website with HTML.
Week 2 (13th February): styling our personal websites using CSS.
Week 3 (20th February): making our personal websites move with JavaScript.
Week 4 (27th February): making API calls from our personal website.
Week 5 (6th March): building a chat app with Socket.io. [lecture may be canceled due to CS70 midterm, TBC]
Week 6 (13th March): customizing our chat apps, with CSS & JavaScript (Part 1).
Week 7 (20th March): customizing our chat apps, with CSS & JavaScript (Part 2).
Week 8 (27th March): saving our messages in a database.
Week 9 (3rd April): building a cookie clicker game with React.js
Week 10 (10th April): improving our cookie clicker games.
Week 11 (17th April): final project team formation and ideation.
Week 12 (24th April): final project worksession.
Week 13 (1st May): final project worksession.
- All students are expected to follow the Berkeley Honour Code: "As a member of the UC Berkeley community, I act with honesty, integrity, and respect for others.”
- You can get conceptual help, but you must not submit code from other sources, such as other students or Stack Overflow.
- Generative AI may not be used for any assignments; students are expected to be able to explain their code if asked.
- Students may only work in groups for the final project.
- If a student plagiarised or uses generative AI, they will receive no credit for assignment and receive an immediate NP at the instructor's discretion.
- Late work will not be accepted, however, we're flexible with extensions (reach out!).
- If you need any accommodations, please contact the course staff via a private Ed post.
- This Decal is a space for everyone. Cal Hacks is dedicated to providing a harassment-free experience for everyone and we do not tolerate harassment of participants in any form.
Attendance (70%): students will be offered two drops. Students must attend the first session, otherwise, they'll be dropped.
Final project (30%): projects will be graded on creativity, ingenuity, and technical skill.
To pass the class, you will need to earn a grade of 70% or more. This course is fast-paced and highly cumulative. Your success will depend on your active and consistent participation. However, we understand that emergencies and personal matters do come up.
If you have an extenuating circumstances and have used up your drops, please reach out via a private Ed post.
We look forward to having you in this class! And we can't wait to see what you make.
Reach out if at any time you need help, we're always here for you.