Schedule
Week 1: August 17
Before the first class, please read and follow the instructions in the “Getting Started” chapter of Preceptor’s Primer for Bayesian Data Science. This will get you set up with all of the tools we will be using in class. If you are having technical problems, please post a question on Discord or email me directly.
- Monday, August 17: “Getting Started” from the tutorial.helpers package and “Workspace” from the vscode.tutorials package.
- Tuesday, August 18: “Workflow” from the vscode.tutorials package.
- Wednesday, August 19: “Code” from the vscode.tutorials package.
- Thursday, August 20: “Quarto” from the vscode.tutorials package.
- Friday, August 21: Final Project Milestone 1 — Write down a topic which you find interesting to explore for your final project. Try to be more specific than just “baseball” or “stocks.”
Introduction to the tools we use for doing data science. Our goal is to create nice looking webpages with some interesting data/graphics in class by Friday.
Failure to submit your tutorial answers will result in you being removed from the course. It is not fair to your fellow students, with whom you will be working in small groups, for you to be unprepared.
Week 2: August 23
- Sunday, August 23: “Antigravity” from the vscode.tutorials package.
- Monday, August 24: “R4DS 1” from the misc.tutorials package.
- Tuesday, August 25: “R4DS 2” from the misc.tutorials package.
- Thursday, August 27: “R4DS 3” from the misc.tutorials package.
- Friday, August 28: Final Project Milestone 2 — Research publicly available data sets related to your topic. Write a few sentences describing a data set (or data sets) which you think might make for a good final project. Provide at least one URL which we can examine if we want. Make sure to include information about the number of observations in the data set. This is the same thing as the number of rows. Your data should also have more than 5 variables for each observation. This means that there should be at least 5 columns in the data set. If you cannot find a data source with thousands of rows and at least 5 columns, you need to choose a new topic.
The main goal this week is to get better at using AI for data science. NCF provides for the use of Antigravity, the main AI coding tool from Google. However, please be reasonable! Do not go crazy. Use Antigravity for your class work, tutorial assignments and final projects. Do not ask it to create a duplicate of TikTok for your use.
The tutorials associated with R for Data Science (2e) by Hadley Wickham, Mine Çetinkaya-Rundel, and Garrett Grolemund introduce you to key parts of the R language, our primary tool for data science. However, my main goal is to teach you about infrastructure, not code, because AI writes our code for us. So, we will also play around with Python, the other computer language most commonly used for data science.
Week 3: August 30
Sunday, August 30: “Terminal 1” from the vscode.tutorials package.
Monday, August 31: “R4DS 4” from the misc.tutorials package.
Tuesday, September 1: “GitHub Introduction” from the vscode.tutorials package.
Wednesday, September 2: “R4DS 5” from the misc.tutorials package.
Thursday, September 3: “GitHub Advanced” from the vscode.tutorials package.
Friday, September 4: Gratitude Email (Email) — The Gratitude Email should be sent to someone in the New College community. It cannot be sent to anyone in this class, including Preceptor. Good examples include a roommate, a teammate, a coach, a resident adviser, a teacher, et cetera. Your message will usually be short. This is a simple note.
The subject line for this email should be something like
Thank You. Feel free to change it.Saturday, September 5: Final Project Milestone 3 — Make a repo called
milestone-3. Create a Quarto document calledproject.qmd. Write some sentences about your plans for your final project. Include some thoughts about interesting variables in your data that you plan to use. Create at least one beautiful graphic, like the ones that we have created in class. Usequarto publish gh-pages project.qmdto put the file on the web. Submit the URL for that page.
In addition to finishing the tutorials associated with R for Data Science (2e) by Hadley Wickham, Mine Çetinkaya-Rundel, and Garrett Grolemund, we will continue our education in computer infrastructure, with a focus on the command line and on Git/GitHub.
We will send out a gratitude email.
Week 4: September 6
No class Monday because of the Labor Day holiday. No assignment is due Sunday for the same reason.
Monday, September 7: “Websites 1” from the vscode.tutorials package.
Tuesday, September 8: “Analyzing US Census Data” from the misc.tutorials package.
Wednesday, September 9: “Websites 2” from the vscode.tutorials package.
Thursday, September 10: “Terminal 2” from the vscode.tutorials package.
Thursday, September 10: Writing Resource Center Meeting Request (Meeting) — Schedule a meeting with the Writing Resource Center. Full instructions in Canvas.
Friday, September 11: Networking Email (Email) — Email someone in local government in your home town, or someone in business or in Sarasota. Full instructions in Canvas.
Friday, September 11: Student Success Meeting Request (Meeting) — Schedule a meeting with the Student Success Center. Full instructions in Canvas.
Saturday, September 12: Final Project Milestone 4 — Make a repo called
milestone-4. Create a Quarto website. You should download some data and make at least one nice looking graphic, using that data, and put the graphic on the index.html home page. Submit the URL for the website.Your graphic must be built from thousands of observations. If you cannot find a data source with thousands of observations, you need to choose a new topic. Submitting a website without such a graphic will be rejected, and you will be asked to fix it and resubmit.
Week 5: September 13
Sunday, September 13: “Devcontainers” from the vscode.tutorials package.
Sunday, September 13: CEO Meeting Request (Meeting) — Schedule a meeting with Career Engagement & Opportunity. Full instructions in Canvas.
Monday, September 14: “Baseball” from the misc.tutorials package.
Tuesday, September 15: “Our Codespace Starter” from the vscode.tutorials package.
Wednesday, September 16: “The Devcontainer Dockerfile” from the vscode.tutorials package.
Thursday, September 17: “Movies” from the misc.tutorials package.
Saturday, September 19: Final Project Milestone 5 — Submit the URL for a very rough draft of the website for your final project. The underlying repo should have a sensible name — like
stock-returnsor whatever — notmy-final-project. A sensible repo will generate a reasonable URL. Can you change your project from what you have discussed so far? Of course! You can change your project as much or as little as you want.Your homepage must show a graphic built from thousands of observations. That requirement started with Milestone 4 and holds for every milestone from here on. If you cannot find a data source with thousands of observations, you need to choose a new topic.
Recall that your goal is to have a project which a person who is honestly interested in your topic might spend 10 minutes looking at. There must be enough “substance” for a user to engage with. In general, that substance is contained in other tabs on your website. Tabs usually come in two flavors: Explorations and Stories.
An Exploration is a tab in which the user can explore your data. Perhaps there is an interactive plot which allows the user to click on something which pulls up more information. Perhaps there is a map which allows the user to zoom in on an area of interest. Perhaps there is a pull-down menu which allows the user to select a team or player to focus on. Regardless of the specific approach, an Exploration tab puts control in the hands of the user.
A Story tab tells a story. You, as the author, have found something interesting in the data, something that can be examined and placed into context. You may have found this by just poking around in the data with the same sort of exploration tools which you have provided to the user. You may have found it some other way. Regardless of the source, a story is fixed. The user does not make any choices. You have already decided what is interesting. You show a plot or a map or something else, often taken directly from the same tools the Exploration tabs uses, but with the result fixed, often as a static image. Around that image, you have placed text — not pages and pages of AI slop, but one to four careful paragraphs which explain what the image means, where it comes from, why it is interesting. You will sometimes supplement the fixed image with photos or diagrams or other material which helps to place the whole thing within a larger context.
Users who are already interested in topic X should enjoy exploring your data related to X and reading your stories about aspects of X.
For Milestone #5, you should have at least one Exploration tab and one Story tab. (Obviously, the tab titles are substantive, not “My Exploration Tab.”)
We have two goals this week. First, we continue our infrastructure education via a collection of tutorials which explain the tools behind our codespace-starter repo. You need to be able to create your own Codespaces and to customize them.
Second, you will create a very rough draft of your final project. Use AI for all aspects of your project. You will show this draft to the people you meet with from Career Engagement & Opportunity and from the Student Success Center next week. (You will meet with one person from each of those offices.)
You must schedule these two appointments yourself. The purpose of these appointments is to discuss your final project. Both NCF staff members will ask you the sorts of questions which an organization interviewing you would ask. You need a draft of your final project, including the website, to show off. Bring your laptop to these meetings.
We will also send out a networking email.
Week 6: September 20
Sunday, September 20: “Your Starter” from the vscode.tutorials package.
Monday, September 21: “Dotfiles” from the vscode.tutorials package.
Tuesday, September 22: “OpenRouter” from the vscode.tutorials package.
Wednesday, September 23: “Ducks” from the misc.tutorials package.
Thursday, September 24: “Models And Money” from the vscode.tutorials package.
Saturday, September 26: Final Project Milestone 6 — Submit the URL for an improved draft of the website for your final project. All the requirements from Milestone 5 still apply. In particular, the website URL (and, therefore, the repo name) will be descriptive of your project, ending with something like
soccer-analytics, notmilestone-6.In addition to the home page, your website should have at least 5 other tabs. The most rightward tab will be
About. The other four tabs will be some mixture of story and exploration tabs, the exact balance of which is left to your discretion. You may have more than 4 story/exploration tabs if you like.The goal of the project is to build something with enough “substance” that someone who is honestly interested in your topic will want to spend at least 10 minutes poking around, not because we are paying her to do so but because she finds your tools/presentations worth exploring. The goal is not for you to produce 50 pages of AI slop.
The
Aboutpage should have two sections. The top will include your name, a way to contact you (presumably your email address), your GitHub account, the URL for the repo for your final project and a link to New College of Florida. Feel free to include any other information about yourself that you like. The bottom will provide information about your data source, no more than a paragraph or so of text, but including any relevant links.As you work on this, keep in mind that you are responsible for being able to explain any aspect of the website. You may use AI to come up with the graphics (and the words) but you must be able to explain everything that the user sees. A good way to practice this is to give the URL of the website to a different AI (not Antigravity) and ask it to come up with questions that you might be asked during your presentations.
Week 7: September 27
- Sunday, September 27: “Terminal 3” from the vscode.tutorials package. This is the last assigned tutorial.
- Monday, September 28: Invitation for In-Person Presentation (Email) — Email a guest who lives nearby, inviting them to the in-person Demo Day. Full instructions in Canvas.
- Monday, September 28: Invitation for Zoom Presentation (Email) — Email a guest who lives far away, inviting them to the Zoom Demo Day. Full instructions in Canvas.
- Tuesday, September 29: CEO Meeting Confirmation (Meeting) — Confirm your meeting with Career Engagement & Opportunity. Full instructions in Canvas.
- Tuesday, September 29: Student Success Meeting Confirmation (Meeting) — Confirm your meeting with the Student Success Center. Full instructions in Canvas.
- Tuesday, September 29: Writing Resource Center Meeting Confirmation (Meeting) — Confirm your meeting with the Writing Resource Center. Full instructions in Canvas.
You will present your final project twice:
* On Wednesday night Sep 30 at 8:00 PM in Chae Auditorium in HNS. President Corcoran plans to attend.
* On Thursday night Oct 1 at 8:00 PM over Zoom.
You must invite at least one person to each presentation. I hope that you will invite your parents and grandparents to the Zoom presentation but that is not required. You must, however, invite someone. For the in-class presentation, you must invite someone from campus. You may invite however many people you like. If you play on an NCF team, I reserve the right to require you to invite your coach. If you have a schedule conflict, let me know and we will work something out.
- Friday, October 2: Final Project Milestone 7 — Submit the URL for your final project. The URL might be different from last week. You may have made major changes in response to audience feedback. Or maybe very little has changed. Either way, make sure that it is consistent with our checklist. The goal is for your project to be the first entry in your professional portfolio. Make it excellent!