Intro to Coding

Term: Spring 2024
Instructors: Yoli Martinez (email) and Soo Oh (email)
Announcements: Berkeley Slack #j220
Lecture: Mondays, 6-9pm in 106 North Gate (Upper Newsroom)
Class website: This is it (you’re here!)
Turn in assignments: Use the class link for bCourses

Office hours



Lectures and assignments

Jan. 22: About the class; Intro to HTML


Jan. 29: The HTML document and semantic HTML; Getting started with accessibility


Feb. 5: More HTML elements


Feb. 12: Accessibility and design; Intro to CSS


Recommended reading for acccessibility
The following links have different sections; you are free to read whatever interests you.

  • Images tutorial: dealing with decorative images, images of text, etc.
  • Tables tutorial: different kinds of tables with different kinds of header rows and columns

Helpful Codecademy tutorials
We don’t have lecture next week! You can catch up with HTML or get ahead on CSS with the following Codecademy tutorials:

  • Learn HTML, everything in the Syllabus except the “Forms” section
  • Learn CSS, specifically the first set of lessons called “Syntax and Selectors”

Feb. 19: Presidents Day

No lecture

Feb. 26: More CSS


Helpful Codecademy tutorials

Mar. 4: Even more CSS + Review


Mar. 11: More CSS / Wireframing


Mar. 18: Layout and HTML frameworks


Mar. 25: Spring break

No lecture

Apr. 1: Advanced CSS; Basic JavaScript


Apr. 8: More JavaScript


Apr. 15: GitHub and Terminal + Study Hall

  • Preliminary lecture slides TBU


Apr. 22: Career workshop + Study Hall

  • And food!


  • Project presentations next week

Apr. 29: Presentations

Final class

You’ll be presenting your work in progress to the class for feedback.

  • Peer Feedback is due April 30 (day after lecture) at 11:59 pm.

May 6: Final Projects due

No lecture

Submit Final Project by 11:59 pm.

About the Class

Changelog (for everything below)

Course description

It is increasingly hard to work in journalism without having a basic understanding of how your work will be presented online. In this course, you will be introduced to basic concepts, terms and approaches to web development, including:


By the end of the semester, you will have the tools and knowhow to efficiently communicate with newsroom developers, graphics reporters and designers, whether you want to collaborate on creating a newsletter, a story page or even a site for your documentary or podcast. Or, you might even be interested in becoming a newsroom technologist yourself.

How you present the work, the layout, page hierarchy and interactive elements are at their core critical editorial conversations that require the same thoughtfulness and discussion as any other journalism endeavor. Expect to have those critical conversations in this class, too.


Required tools


Office hours

We’ll wait up to 10 minutes for your arrival, and then sign off.

You will lose 1 point if you:

Otherwise, you’ll get up to 1 extra credit point a week for every office hour you book and attend.

Class expectations

The success of this course depends on the level of commitment of each student. It’s up to you to carry out your class work and speak up about any concerns or difficulties you have. In return, we will do our best to provide a clear lesson plan, give you timely feedback, and advise you so you can achieve the course’s objectives.

The Student Code of Conduct is in effect at all times. Additionally, all students must follow the COVID-19 Health & Safety Response.

Attendance and punctuality

Classes will be held in person.

We meet 13 times for lecture during the spring semester. There will be no lectures on President’s Day and Spring break.

Two unexcused absences will result in dropping a full letter grade; three unexcused absences will result in an F.

We’ll adhere to Berkeley time and start lecture promptly at 6:10 pm. If you’re going to be late, message both Yoli and Soo in the J-school Slack. One of us will try to monitor the Slack near the beginning of class. Be the least disruptive as you can when you arrive to not disturb the lecture and other students.

We’ll have one ~15-minute break in the middle of class. Occasionally, we will end the class early.

A lecture may be remote for COVID-19 related quarantines, poor air quality due to fires, power outages, instructor illness or exposure, changing public health guidance, etc.

If you’re sick or have a family emergency, email us anytime before lecture to let us know. (If it’s really an emergency, email when you get the chance — you don’t have to get in touch from the back of an ambulance!)

We will make course materials available on this website and can help you to a reasonable extent. However, it is ultimately your responsibility to catch up with the class.

Participation in class

Participation is worth 5 points per lecture for ~12 lectures.

You’re expected to adhere to the Guidelines for Dialogue & Community Expectations.

Set your phone to silent or Do Not Disturb mode before class begins. Do not answer calls or text during class. If it’s an emergency, quietly step outside to take the call. If you need to use the restroom, you can go without asking for permission, but do your best to not disturb the lecture or other students.

Students should not check email, social media, notifications, or the news during the lecture portions of the class. Participation points will be docked if you get caught texting or browsing while in class.

Try your hardest to receive feedback constructively. Your work will be subject to intensive and substantial editing in the future. Learning how to give and take feedback is a tremendous part of learning how to grow as a human and as a journalist.

What should you do if you’re feeling sick?

No matter how OK you feel, don’t come to class if you think you’re contagious (with a cold, flu, strep, coronavirus, etc). Lectures are recorded; however, there is a risk that the wifi is choppy, the recording messes up, or some other problem. Again, it’s ultimately your responsibility to catch up with the class. Talk to us about how.


All assignments must be submitted on time in bCourses. There will be no exceptions made for late assignments except for DSP, medical reasons, and family emergencies.

An assignment will be dropped a full letter grade for every 24 hours that pass after the deadline, starting the minute after the deadline (e.g. an assignment with no mistakes will be graded as 90% one minute after deadline, 80% one minute and 24 hours after deadline, and so on).

Homework is typically assigned at Monday lecture, then due the coming Saturday at 11:59 pm. We’ll do grades on Sunday. We’ll review homework at the beginning of the following Monday lecture. We’ve made changes to this policy before, with feedback and participation of the class. We’ll see how things go!

Just FYI, lecturers are often out of the loop when it comes to what’s going on at the School of Journalism. If something is impacting your work, please come to us and let us know.

Grading rubric

Assignments and participation is estimated to be at 400 points total.

AAt least 90% of total points
BAt least 80%
CAt least 70%
DAt least 60%
FBelow 60%

Academic dishonesty and plagiarism

The high academic standard at the University of California, Berkeley, is reflected in each degree that is awarded. As a result, it is up to every student to maintain this high standard by ensuring that all academic work reflects their own ideas or properly attributes the ideas to the original sources. These are some basic expectations of students with regards to academic integrity:

What does proper attribution mean for code when Googling and using are the norm?

So glad you asked! If you were stuck and found code online to help you, link to the resource in your documentation, either in the code comments or in a markdown block for a notebook. Make sure you format or rewrite the code in the preferred style of your programming language (single or double quotes, snake_case or camelCase, and so on).

AI tools and ChatGPT

ChatGPT and other similar tools can be pretty good at answering basic coding questions. But sometimes they’re not. And it can be hard to tell if the code is good or not unless you know how to code. We’ll likely be able to tell whether you wrote your code yourself based on what we learn about you and the kind of code we’ve seen ChatGPT produce.

Try to complete the work on your own before turning to ChatGPT. You’ll be expected to understand the code you’re turning in.

If you use ChatGPT, make sure you tell us the exact prompt you used. Also, write a sentence about what you learned from ChatGPT’s response.

Failure to cite AI tools or properly attribute code you found on the internet will result in warnings, docked points, and a possible F in the class.

Disabled Students’ Program

UC Berkeley is committed to creating a learning environment that meets the needs of its diverse student body including students with disabilities. If you anticipate or experience any barriers to learning in this course, please feel welcome to discuss your concerns with us.

If you have a disability, or think you may have a disability, you can work with the Disabled Students’ Program (DSP) to request an official accommodation. DSP is the campus office responsible for authorizing disability-related academic accommodations, in cooperation with the students themselves and their instructors. You can find more information about DSP, including contact information and the application process here: If you have already been approved for accommodations through DSP, please meet with us so we can develop an implementation plan together.

Students who need academic accommodations or have questions about their accommodations should contact DSP, located at 260 César Chávez Student Center. Students may call 642-0518 (voice), 642-6376 (TTY), or e-mail

Additional student services