Kevin Song
I'm a student at UT (that's the one in Austin) who studies things.
Elements of Graphics
Elements of Graphics
Elements of Graphics
Elements of Graphics
Elements of Graphics
Elements of Graphics
Elements of Graphics
Elements of Graphics
Elements of Graphics
Elements of Graphics
Name: Kevin Song (he/him)
Email: kcsong@utexas.edu
Office Hours: Fill out Welcome Survey!
Undergrad: B.S. Chemical Sciences
Would have been an Elements student! (if we'd had an elements program)
Field | Project |
---|---|
Geospatial Imaging | Parallelization of Random Forests for Tree Carbon Estimation |
Consumer Medical | Machine learning-based pill identification algorithm |
Sociology | Simulation of collaboration and productivity in academia |
HPC Systems | Bitflip error tolerance in high-performance parallel computing |
Computational Bio | Flexible Protein Docking + Folding |
Medical Imaging | Virtual surgery and reconstruction of injured pediatric skulls |
Public Policy | Acceleration of agent-based simulation for COVID-19 |
Compiler Design | Reverse compilation of PTX for custom GPU architectures |
Chemistry | Optimal representations for polymer storage |
Name: Annabel To (they/them)
Contact: EdStem is best! (email/Canvas mail if needed)
B.S./Master's: Computer Science (Systems/ML)
(impostor syndrome, recruiting, grad school, etc.)
The focus of this class is interaction and exploration over lecture-based content delivery.
You'll learn a lot more from each other and by playing with the language than you will from me.
< Repeat #2 >
< Repeat #3 >
There will be one project and 4-6 hands-on assignments due every week during this term!
The syllabus has a lot of detail on course policies--make sure you skim it!
I can sit up here and talk for 20 minutes about specific things you need to worry about when using the constructs we discussed in class.
...and y'all still won't remember what I said, because the human brain doesn't work that way!
Or I can design an assignment that takes about 20 minutes which will expose you to most of the points I want you to learn about.
Short assignments meant to be at least half-completed in class.
Goal: get practice working with small concepts, to make it easier to build the large projects later on.
Nominal due time: 3pm the day before the next class.
Actual due time: when I go to review them for the next class.
Aside from a ban on AI help, you can solve these however you want.
During the review of the last class's material, I may, time permitting, review one student's hands-on activity from the previous class.
If no volunteers, I'll select one from the submissions.
Three primary means of assessment in this class:
This class is primarily based around discussion, activities, and learning from each other.
Attendance measured by Instapoll.
You are given four days of absence, no questions asked. For each additional day you are absent, your final grade is lowered by one full letter.
Miss 9 days and you are guaranteed to fail the course.
Unless...
You can make up unexcused absences by writing an essay discussing an interesting topic covered in the class you missed.
This should not be a recap of what was covered in class!
Presentation days of class cannot be excused either through grace or essay--you need to let me know if you can't make it to those.
Will be based on the contents of your daily index card submission.
Each index card will ask you for the following:
Reasonable answers will get credit.
Attendance quizzes may count for participation as correctness if too many people goof off on them!
Short assignments which you will have some time to do in class
Expected time: 20-40 mins each
Will be due based on material covered in class. Due dates on Canvas will reflect optimistic times, but if you miss class, check with Lectures Online (or ask on EdStem).
Please try to work on these during the dedicated in-class periods! Late submissions will generally not be accepted.
Extended take-home assignments which require some in-depth thinking. Most projects will be solo, some towards the end may allow groupwork.
Use of AI tools is allowed on these, subject to the restrictions described later.
Final project is a separate grade category: you come up with an idea you want to work on (I will approve or suggest modifications). You will create a project and a presentation for the class.
You should focus on doing the projects well and hitting all the required points. (This is more than sufficient to earn an A in this class).
Extra credit is at the level that I would expect CS majors to implement in graphics. Graphics is known as one of the most challenging upper-division courses in our major.
Extra credit is entirely not worth the amount of work (relative to just doing the regular points well). Extra credit is (mostly) there if you want to challenge yourself and learn more.
Work
Points
If you want to challenge yourself or have an excuse to do some in-depth study of more advanced topics, try these out!
You don't have to complete them to get partial extra credit.
3. The registrar gives me a deadline to submit grades by.
This means that you will not be able to:
Please don't try to turn in the last project 4 days after grades are due.
Put a comment that clearly specifies the following:
// This function from WiSaGaN on SO, used under
// CC-BY-SA-4.0 https://stackoverflow.com/a/11237235
int max1(int a, int b) {
if (a > b)
return a;
else
return b;
}
This will need to be modified for LM output!
If you cheat on an assignment, the minimum consequences are:
Bard, GPT, and friends are amazing tools.
Are going to change the way we program computers.
Also come with hazards...
Fun fact: it took me an additional 10 or so messages to get GPT to correctly identify the months which were wrong.
You need to know enough about the subject to be able to correct the LLM when it goofs.
Alt interpretation: if all you can do is type questions to the AI and echo its response, you're already obsolete.
It is possible that being able to recognize when something is wrong will be a more valuable skill than being able to write the right thing in the first place!
But this is just wild speculation on my part.
You may use any LLM you would like for projects for this class, subject to the following rules:
My claim: the day that you no longer need to break down a problem with an LLM is the day this certificate becomes meaningless.
Need to practice breaking down problems and building solutions back up.
What is the general skeleton of a program that solves problem Q?
Please write a program that has features X, Y, and Z, is nicely commented, no more than 30 lines long, solves problem Q
How could you add feature X to this program?
How could you add feature Y to this program?
Yes, it is.
Stick to rules 2 and 3 and I will forgive you if you occasionally cross the line on rule 1.
If you do not use any LMs, submit a file which states this (project pages will have details).
Additional details in syllabus
If a piece of code was not written by you (or your group), tell me where it came from.
(HINT): If I needed a working version of these programs for my own use, I'd write it myself or, in a pinch, ask a language model.
Some things look like good ideas and are actually good ideas!
Some things look like good ideas but are actually terrible ideas!
Some things look like bad ideas but are actually great ideas!
Need to figure out for yourself whether something works or not.
Have to develop your own emotional bookmarks for "good" and "bad"
This exploration is crucial to learning, but it leads to slower completion!
This exploration is crucial to learning, but it leads to slower completion!
This exploration is crucial to learning, but it leads to slower completion!
This exploration is crucial to learning, but it leads to slower completion!
Never Let Schooling Interfere With Your Education
Unfortunately, we don't know how to evaluate you on how much you learned.
So we evaluate you on how good your work is.
Remember that the goal is to learn the landscape, not to get from point A to point B as fast as possible.
By Kevin Song
I'm a student at UT (that's the one in Austin) who studies things.