Your feedback has been sent to our team.
10 Ratings
Hours/Week
No grades found
— Students
I actually took this course over the summer session. I have never written a review on course forum before, but this course has really poor reviews and I do not see why. Professor Graham was very helpful to all the students in the class and the course material was interesting. The goal of the class is to personally develop an app and to get it onto the google play store. While this is more open ended than most courses, with fewer direct answers or templates, it was more fun to be creative. Give this course a chance and you may end up making something you are proud of.
Graham gets a bad rap. If you enroll in his classes, expect some fluidity with the assignments and grading scale. This isn't because he's disorganized or lost, it's because he values student feedback *too* much. Graham prefers that assignments be challenging and that you put trust in his system to deliver a grade which matches your performance, all factors considered. It can be frustrating at times when things change, but putting trust in his system has worked well for myself and the others I know in his classes.
My perspective is probably a bit skewed since I came into this course with a fair amount of experience with React (the course is taught in React Native which is very similar). The reviews about Graham aren't incorrect - he's definitely a bit unorganized and it shows in the class. That being said, his intentions are still very good and he's absolutely willing to help you succeed if you reach out. The entire course was taught online (besides exams) through pre-recorded videos - I personally enjoyed this since I could selectively watch lectures based on prior knowledge, but this may not be best for everyone. Assignment descriptions can be a bit vague and typo-ridden. The TA on Piazza was a blessing and definitely clarified a lot of confusion throughout the course.
If you're a self-driven student looking to go into software engineering who is willing to put the time into learning the content, I would definitely recommend this class. React Native is rising quickly in popularity and learning React (the web equivalent) will be very simple after this course - both are very good tools to know for real-world SWE jobs. The course also covers other cool tools like Firebase and Figma.
The content itself is interesting and useful for industry. He also ended up getting people from UVA to talk about monetizing apps and CEO of Expo to give us talks. The prof is really nice, but he's not very good at passing what he knows to the class. He goes really fast and it's been hard to grasp concepts in the class. His midterm was super difficult, too. The average was in the 40s and he ended up heavily curving everything. I knew some React, but even for me, it was hard to know what was going on. The assignments ranged from being easy to really difficult and this was really frustrating because I never knew what to expect. I did enjoy the end project, but there was definitely not enough time given to do them. Take this class if you're okay with a more inexperienced professor and don't mind some disorganization in structure.
Terrible professor. Terrible course. Heard it used to be one of the most popular classes when Sherriff taught it but Graham completely ruined it. Lectures are very unorganized. You basically don't learn anything and expect to google everything on your own in order to do the assignments. Labs are unrealistically difficult. Expect to spend your whole week on it. Exams do not reflect what we learned in lecture and the average of the midterm was a 40/100. Worst part is, he thinks it's normal to get bad grades and is really inconsiderate of students. He only holds one office hours and sometimes is not even there. Probably the most frustrating course I have taken at UVA.
1. He changed the grading policy three times in the first half of the semester including a failed attempt to completely cancel lectures and let students watch his videos. Originally, lab was 30% of the final grade. And then he decided to make lab all optional and not graded. Then he switched back to 30% of grading and make labs graded. What will he do next? Nobody knows :(
2. The average of midterm is 40 out of 100. Most of exam questions are multi-choice questions. They are graded on ALL OR NOTHING :(
3. Lectures are mostly about online coding, which is essentially online debugging :(
4. Before the semester began, there were 30~ people on waitlist. Now there are 20 empty spots :(
5. Don't take this course :(
Do not take this class if you do not know JavaScript, JSX, ReactNative, or expo because you will not learn it from him and it's difficult to find resources to help you. Do NOT take any class ever with Daniel Graham even if he changes this class, do NOT take it.
Daniel Graham is a nice guy, but he can't teach. You can tell he really likes what he teaches and knows a lot, but he's not good at relaying this information. He has no organizational skills. He doesn't have a real/concrete syllabus and frequently changes projects. For example, he gave us this in class assignment (in class assignments are nowhere to be found in the grade breakdown). Within 12 hours of it being due, he changed it to be called "Project 1" and made it 5% of our grade.
There are no assignments for this class so we don't have the opportunity to actually implement what we learn in class. His lectures are awful. He "live codes" which is just a disaster. Every class he runs into bugs and it takes him 30 minutes to debug it (lectures are 50 minutes long). Then we just watch him try to debug his code so no one knows what he's actually trying to do. Most of his lectures are him trying to debug his code and apologizing for the bad lecture. He gets really flustered when this happens it's uncomfortable. He's a new professor which is quite evident from his lectures. He posts his code from lecture, but it's undocumented so I never know what anything is actually doing. He also uses new technology (expo, sketch) randomly in class and doesn't tell you to download it ahead of time so it's easy to get lost in lecture when you're trying to download software and follow along. If you run into an error, he will basically just tell you to google it.
He taught all of the material really quickly like within the first half of the semester. In class, he said he's going to get a bunch of guest lecturers...but according to the schedule we still have more material to cover? Very confusing.
He's extremely unclear about literally everything, especially due dates. We have this semester long project that's supposed to be due at the end of the semester, but no one knows if it's due at the end of the semester or 4/4 because that's the last checkin day. Also, he set up weekly checkins which were originally optional, but now they aren't? He gave us an in class coding exam in which we were to build a ReactNative app in 50 minutes. We don't have assignments, so it's pretty difficult to do something in 50 minutes that you've never done before. In the exam, we had to call an API, but it crashed because everyone was calling it at the same time. Everyone immediately emailed him after the exam (he was in Prague...) and his solution to remedy the situation was to give us 30 more minutes. The API still wasn't working.
He has 4 office hours a week for ALL of his classes so you basically just wait in line after all of the Algo students and by then his office hours are over. He hardly responds to piazza posts which are mostly students just wanting to know what the assignment is, the grade breakdown, or when the project is due. He has 2 TAs that don't have office hours and don't have anything to grade because there are no assignments, so I'm not really sure what they do besides show us video tutorials when Daniel Graham is not there.
MobileApp used to be one of the most popular electives in the CS department when Sherriff was teaching it. This class at the beginning had a waitlist of like 80 people and now there are 10 spots open. I wouldn't take this or any class with Daniel Graham ever again. I took comp arch when Graham co taught with Reiss, and he was bad then too, but at least he had Reiss to save him them.
Get us started by writing a question!
It looks like you've already submitted a answer for this question! If you'd like, you may edit your original response.
No course sections viewed yet.