Previously on CS410J...
Another term with a 100% remote class. We got through and learned some interesting stuff along the way.
- What do you wish you had known before taking this course?
- I wish I knew more about TDD
- Prior to taking this course, I wish that I had known more about the REST API and Java. I had worked with the REST API before, but not with Java apps that use it. Having prior knowledge of this topic would have helped to streamline my Project 4 workflow.
- I would like to know about android development and unit test before this class because I spent an amount of time studying these things.
- I wish I had known more about basic networking as that was the hardest concept to grasp and apply to Project 4.
- I wish I knew more about the build tools: Maven and Gradle. While I appreciate the instructor doing a good job to make it easy to use the tools by having configuration files already set up, I was confused at the start with how to work with them. I also wish I had some experience working on the Android side, as I think this had the steepest learning curve given how different Android development is from typical Java-only development.
- Since I had a lot familiarity with wide variety of applications of Java, none of the concepts surprised me. Even though, I had no previous experiences in test-driven development of codebase and this was new to me and I found it amazing. I am glad that it added one more skill to my skillset.
- I wish I had more unit testing experience before taking this class. I had some struggles with it.
- I wish to learn latest Java programming language feature, programming in a object oriented language, object oriented programming language features, and Java project management tools.
- I wish I had more knowledge in android development.
- I wish I had a bit more experience with working with Android Studio and developing in that area. The last project in particular took a lot more googling and learning on my own, not that it's a problem but it would've been nice to have a slower introduction to that whole area.
- That the first several weeks were more of an introduction and the latter half of the course is more concerned with the advanced topics. I almost did not take the course because I had used the language very little, but I am glad I ended up taking it.
- The instructor is very patient and helpful so not to worry so much!
- I wish I had some experience developing android applications.
- Can't think of anything. Class was as expected.
- More design patterns, best practices, something that would help me wrap my head around all the wrapping of readers and writers better.
- I wish to know more knowledge about Java and Android Studio.
- More of the basic data structure APIs, like the Collection series.
- The difference between the three major types of variables that you will deal with. Primitives, String type, and other Android/User/Oracle defined classes. That passing a primitive only passes the value and you will for the most part never be able to modify the value of a primitive variable outside of its scope. And that for instance string concatenation creates a new object.
- more knowledge of Java and android
- Although I had a maybe 5 or so weeks worth of experience with Java, I wish I had spent more time working with the language to be slight more comfortable with it. I did review before the term started but some of the concepts in class were beyond the scope of the review. I also wish I had known at least a little bit about android and HTTP/server material too.
- Test Driven Development
- I wish I had more experience with maven; I still don't entirely understand how it works.
- I wish I knew more about Test Driven Development and JAVA. I took one java class around 8 years ago, and figured since there wasn't a pre-req one could go in blind. I was wrong. Should've taken the "programming intesive" part far more seriously.
- That its very easy to get behind
- I think I had sufficient knowledge before taking this class.
- I think the course provided everything I needed to know
- Nothing. After attending the first class I found everything to be good and on the first day itself the professor has explained how is the class going to be and all. So was very well prepared from day1.
- Be t much more, seems appropriate for my level.
- App development
- I wish I had read about servlet Programms and android studio before taking this course. I have worked on the JAVA before but it was long time ago. These two points were new for me, but It was managable.
- I think the syllabus was I want to know before taking this course. What's more, the tools we use may help if knowing before taking this course.
- I wish I had known more about Test Driven Development.
- I think that the best thing to know before the class is java core API and some basic knowledge of unit testing.
- I suppose I wish I had known the length of time to complete some of the projects. That wasn't really an issue though (just my procrastination).
- I had a little experience with Java, but none with web applications or Android. I don't think that's a bad thing, because we were eased into it enough that I picked it up relatively quickly.
- I struggled most with the web app. So I wish I knew more about web applications and the different ways a web application can be hosted and ran with client / web interfaces.
- I may be an outlier on this one because I've been doing object-oriented programming for almost a decade, but honestly felt really prepared for this class. The only thing I really struggled with was the quizzes, but I don't think a lack of prior knowledge was my problem with those.
- A bit more about Android-- I knew nothing at first, so it was tricky! But rewarding.
- I felt I just the right amount of background. Any more and it may not have been as much a learning experience. Maybe I could have been a little more familiar with Android/IDEA
- Java core api's, collections, file operations, writing unit tests, especially abstract use of input/output streams, command line execution of Java program.
- That I have to put in a lot of work and keep practicing.
- I wish I was a little bit more fluent in Java
- More experience with GUI debugging, git, and using others APIs would have been useful
- What is the most important thing you have learned in this course?
- TDD and learning a language on the fly
- Learning how to create Java apps that interact with the REST API alongside creating fully functional Android apps. These apps are used frequently in the real world and knowing how to create/work with these apps is a critical skill.
- The most important thing that I learned was unit tests. The second is refactoring.
- I think the most important thing I've learned in this course is unit testing. This class is the first I've done true unit testing, and it really showed how important it is and how easy it makes debugging a program.
- You don't need to know everything at once. Sometimes you can get lost in the sea of documentation out there when learning how to work through a problem. But there were many times in this class I just had to trust what I knew and work off of that. (ie the build files and system, prior knowledge of web servers, etc.)
- I always had this bad habit of diving into writing code just by looking instructions and not doing any hand-written plan or something. As mentioned before, the test-driven development had somehow taught me a lesson that its not always the case and I need to plan evne a little before attacking. I learned it the hard way and I feel this is the most important thing that occured to me during the coursetime.
- Attend lectures and rewatch lecture recordings to fully understand live demo code and how to approach to the projects.
- I learned to be a better problem solver in this class.
- The most important thing I learned is to develop tests (emphsize on "developement of tests"), I spent a lot of time thinking about test cases, writing test code; and documenting code using Javadoc accurately and concisely (when I review my past projects in this course, I can immediately know the purpose and logic of the piece of code I am seeing). For myself, these two points I mentioned (documentation and developent of tests) are very likely to be ignored in school projects, and most of the time are spent on building features before deadline. But in this course, I feel that the requirement for software features are simple and easy, I can finish building required features (for all 5 projects) in a very short time, but I spend a lot of time developing tests, writing documentation, refactoring code, and make the codebase to be easy to manage and scale, this is exactly a very important activity in software engineering.
- The most important thing I have learned in this course is the ease and imporance of Unit Testing. At first when I learned it was such a big part of this class, I was so worried because I didn't understand how useful it would become, and how much it enhanced my programming experience. I am excited to implement more test driven developement in the future.
- I think the most important thing I have learned from this course is that unit testing is key in writing quality code. Writing unit and integration tests frequently as you code is beneficial much in the same way pair programmer is in that your code's logic and behavior is constantly being assessed. I've also learned that these tests do not necessarily mean that the code as written is perfect. Learning how to use Intellij's line coverage tool was also a valuable learning experience, as well as git version control through that IDE.
- Test driven developement, I'd never understood testing before, but now I plan to use it everytime because I don't think you can keep a project going without it.
- I learned the complete cycle of developing an android application from writing core functionality to designing user interfaces.Also learned the advantages of coding with others in pair and mob programming.
- Hard to put a finger on one specfic thing. I suppose getting practice with event driven programming in projects 4 and 5 was very educational and not something I have done a lot of. Over all just the required almost daily programming of this class definetly improved my overall computer science abilities over the course of the last 8 weeks.
- I think the last two projects really taught me a lot. I had very little to no experience creating a front end and back end of an application running on a server so I really appreciated the REST project. And project 5 was great because I had zero mobile development or GUI development experience and now I don't feel so intimidated by either.
- I learned how to create an Android application using Java. I learned how to interact with different Java objects and libraries.
- I think working more with libraries and APIs and using the tools out there that exist. Also, how to approach coding better. Some of the best moments of the course were watching David code and seeing how he approaches problems and uses tools/libraries/IDE.
- Through writing these assignments I finally learned a good methodology for designing and organizing functions and constants in an imperative programming language . I finally learned modularity. To make functions that only do one very specific task and never combine two different tasks in one function even if it saves time for that project. Put all the validation functions together in a validation class. All globals in a globals class. Make a validation function for a type of data that is entered into an ADT as a static member of that ADT.
- writing Test cases and android
- Other than a lot of useful syntax/server knowledge, I think test driven development has been the most important thing. At first I thought it seemed somewhat strange, but now I really see why it is so powerful and useful to catch design errors quickly before coding too much of a program. You also get the hang of it quickly and it starts going faster.
- The power of a good test suite.
- 1. Integration and Unit Testing 2. Java Collections 3. Java Servlet 4. Android Studio
- I'd say for course-work, the most important thing was TDD. While it was painful learning and coming up behind on the curve, it actually proved vastly useful as the examples and experience let me translate that over to another class project. Personally I think the most important thing I've learned, is that it's ok to not know something. That's why I'm in a class. Helped a ton with my anxiety issues.
- I'm much more comfortable with java in general and more experience with REST and http
- Aside from a more firm grasp of Java, I think I learned a lot about the process of software development and techniques that make this process go smoother, such as the use of test driven development and cleaner code formatting.
- Definitely interactions with the servlets and android development
- I have learned about the server client programming and Android Programming. The remaining java stuff I have atleast had an idea what it was but these things were pretty new to me. So I have got in depth knowledge of these things
- Unit testing and tdd
- Java programming. OOP. Testing.
- I would say android application is the most important and fun think I learned in this project.
- I further understand programming. I think this is the most important thing. Because no matter what the language, the most important of the ideas of programming.
- Test Driven Development was very important.
- The most important thing from the class was the ability to learn fast and find a solution for real-world development problems, such as working with servers and writing an android app.
- The most important thing that I had learned was how to progressively build a Java application using test-driven development. I can't honestly say that I did test-driven development for the entire course, but each project (aside project 5 I suppose) showed me how useful it is to have tests upon implementing new classes/methods or refactoring.
- I think both the web application and Android application things were the most useful. While making command line programs is useful when starting out, that's not how most practical applications are made. We need to be able work with an interface, libraries, and tools; and know how to find the documentation that explains how these work.
- Unit tests - I read A LOT of job postings just for fun (lol) and I always see something related to unit test experience. Conceptually I knew what it was but never seen it performed. I have never been exposed to unit tests in my own trials through learning programming, so the unit testing was huge.
- Previously, I have not had very much experience with unit testing and test driven development. In this class I got a lot of good experience with both of those, and I will rely on them a lot more in future projects.
- To stop worrying about my editor and imbrace IntelliJ! Only slightly joking. I was completely wowed by IntelliJ and AndroidStudio and how much work they saved me. I have a totally different perspective on IDEs now. I also learned a lot about the Java language, and after learning so many other languages, I had a fresh new take on the language. It seems like a language that comes from really cool design philosophies.
- The Android ecosystem, using IDEA and some of the great all round features of the java language.
- How to work with others code, especially implementing abstract classes. Test Driven Development, Servlets and Android development basics, maven.
- Consistency and practice. Also to pay attention to details and follow up with different queries of people and get your doubts clarified. Start early so have time to complete.
- Use of IDE and abstract classes
- Test-driven development is something I plan to make use of going forward. I've already started using it in my machine learning programs to make sure the bits of my code work before I spend time trying to train my model. The whole idea of TDD was a huge eye opener for me.
- If you could give one piece of advice to someone taking this course in the future, what would it be?
- It is very stressful and confusing at the beginning, but push through and it will all make more sense.
- Start your assignments early and work on them every day. (Don't wait till the last day to start) Don't be afraid to ask for help if you are stuck.
- I think students should deeply understand OOP if they want to be more comfortable in this course.
- Definitly attend lectures , if you can't. Definilty rewatch lecture recordings if avalible.
- Start projects early. Start setting up your PC as soon as possible. Never procrastinate.
- Learn "some" Java beforehand, but really learn some build stuff before you start so you can ask good questions about it, why certain decisions were made, etc. I've found that programming in Java is relatively easy, but there's a bunch of tools and ways to do things out there which would be nice to know about before you start.
- I would definitely recommend someone to take this course who are struggling with the same problem I had, as I explained previously.
- Try to start the assignments as soon as they get assigned. Do not procrasitnate.
- I advice that if you find that there is no algorithmic difficulty or technical difficulty to develop software required for these 5 projects, it is a good time to thinking about test cases, documentation, and software maintance, it is a very good opportunity to spend time producing good quality codebase. For android project, it is also a good time to experience MVVM architecture, using Room as persistent storage, and other concurrent and asychronuous computation library Java provided as I did.
- I would say: This class is a fair amount of work and does take some level of self discipline to keep yourself on track with the projects. HOWEVER, I highly reccomend this professor. He is always happy to help with any issue and is very understanding. Great communication throughout the class, fun and interactive lectures.
- I would tell someone, that unless they are pretty well versed in Java, Java and web servers, and Android Studio, that they should not take other courses that require too much. I took a really light load for the Summer quarter and I am glad I did because it gave me ample time to focus on this course. Having a good amount of time allowed for a degree of freedom to experiement more (such as in Android Studio, or just improving Project 2 or 3's command-line parsing etc.) than I would have had otherwise.
- Focus on TDD with the first project, I didn't, and once I made the effort it was actually really easy, and made your grades look a lot nicer.
- I would suggest them to develop basic programming skills prior to this course, since this is an andvanced programming course , it would be easy if they have strong foundation for object oriented programming.
- Code daily.
- Be prepared to spend a lot of time programming and time manage well. While none of the assignments were overly difficult, they can take a lot of time.
- Watch the lectures. It contains a lot of information that can help you go through the projects and quizzes.
- Play around with IntelliJ and git before the course so that you can just stay focused on programming.
- Never combine tasks into one giant function. Never combine for instance all your validation functionality into one function. Separate date validation from time validation from owner/name validation. For each type of validation, have a driver validation function that calls on multiple helper validation functions where all the main logic is. Pass variables around and through these helper functions even if it requires more typing. So use the gearhead philosophy: "Spend a little now, or spend a lot later." Don't cheap out on your initial code because making changes to make it conform later is costly.
- Take light course with this course as this courses need more time to spend on the projects. But good course to learn.
- Start the projects as early as possible, it will benefit you down the road and give you more time to get help if needed.
- Have fun, attend lectures, and leave some time for projects.
- Finish project 1 in week 1. and When running android studio, turn off antivirus, enable "Compile independent modules in parallel" in android studio settings under compiler, and disable the camera extras. This is the most resource absorbing program you will ever use, and if you don't address ways to speed it up early on, you will waste hours staring at a frozen screen.
- Seriously brush up on TDD and Java. Moreso the TDD, as
- Get your work done early so you have enough time to fix the many many errors that you will definitely get
- The projects in this class can be quite tedious at times, so make sure to start as early as possible on them.
- There is a video playlist and notes. The quizes are based on those. Please realize this before I did (Week 5). I know now that they have been referenced the whole time haha
- I would recommend students to take this course. But the schedule and work load of other courses should be light when some one is planning to take Java. I have taken only 1 course along with Java so it was quite easy for me to work on and do some productive work in Java.
- Tdd all the way.
- Start early on the projects!
- I would say take this opportunity to learn the Java concepts. This couese is covering all important aspects of coding in Java like file handling, servelet, and android app. It is a good course and you can easily score good marks as well.
- Read each document provided carefully
- Ensure you have a clear understanding of how to get the operating environment (git, Intellij, etc) setup.
- Ask questions and be an active participant in-office hours. By communicating and sharing your ideas during office hours, you will be able to observe different approaches to development.
- If you're in doubt or unsure of something in an instruction, contact the instructor (David) to clear it up rather than make an assumption that would affect your submission grade.
- Start the assignments when they're assigned! Always found it funny when people start blowing up Slack or Discord when it was due in eight hours. You're going to hit a few more snags than you think you will.
- 1. just do it 1a. maybe get an early start on the projects
- Practice the test driven development.
- Imedietly, prior to taking quizzes, study the javadocs for any classes mentioned in the lecture notes, and many subclasses of those classes, even if the subclasses aren't mentioned in the lecture notes. I didn't do this, and it hurt me qutie a bit.
- Start on the homeworks immediately and do a little bit every day! I have no idea what it would be like if I put even a little bit of work off in this class, but it wouldn't be pretty. The assignments aren't hard, but can be a lot of work.
- Don't be stressed over the projects. Get started early and if code isn't working, leave it for a day and it will work when you come back!
- For all the projects that are needed for this course, you dont have to go through internet searching for answers, lecture notes and screencast in the course website has all the answers needed to complete project efficiently and has good enough content to cover all basic knowledge.
- Do things on time. Listen to class. Look out for slack channel.
- Take the time to watch all the lectures and read the PDF
- What made you stay in this course?
- David Whitlock. He is an amazing professor and he cares about your success more than any other professor.
- The prospect of gaining new skills related to Android and REST API development. Considering how fun it is to work with Android's UI components for Project 5, I stayed on knowing that I would use these skills often in the future.
- I really like the content of this course and the teacher. I've learned a lot of things from this course.
- I needed this course for the Programming Intensive credit, and I think Java is a great language to learn.
- I enjoyed it! Dave is a great instructor, very patient with his students and always helpful. The assignments definitely took some time, but they weren't overly challenging (I think they could be a little harder honestly). I wanted to learn some Java development and it seems like I have learned! And I appreicate the web server and Android projects for helping us get experience outside basic command line applications.
- There are several things: * No matter how many new languages are born, Java is the language that I always has a special place since it is the first language that I loved coding. * I was so excited by your method of teaching with the appointment project. i.e., developing a single project over the course time. * Exposure to new methods (like TDD) and new ways of deploying same project (as an CLI app, as a web app, as an android app).
- I like Java, the professor was awesome, and I needed a programming intensive elective.
- Before project 4, the "test driven approach" makes me stay in this course. But when I developement project 4 and 5, the technical stack required for these two project really attracts me, and I am willing to continue developing more features for android app and self-learning more android developement by reading documentation, and migrate project 4 servlet to spring boot.
- The frequent live demos keep me interested. I learned a lot in each leture.
- One of the most frustrating things was when I would turn in a project and get that dreaded message from Whitlock saying "hey... there's a problem here". Normally with other courses something like that would cause nothing but anxiety, because everyone knows there is so much weight in these projects. However, the ability to fix your mistake and resubmit eased so much of that, and made me feel like it's okay to make mistakes, and my work is still worth being credited even though things didn't go perfectly the first time. I sincerely appreciate that grace!
- I thought the material was perfectly covered wtih respect to pace and clarity. Help was easily obtained when needed. The projects were also interesting.
- As the term progressed, I saw more real world use of the class. TDD, continuing a project, working with someone else's code and eventually creating an app!
- This course covers almost all the concepts in java.I gained more confidence in coding from the programming assignments.I liked the course structure and curriculum, the way the course is designed and taught.The assignments are designed to provide a good hands-on experience developing java.
- A lot of direct correlation with my current java based internship.
- I really wanted to learn a language more in depth than I've had the oppunity to do in any other of my classes, and Java seems to be in high demand.
- I need the credits to get the degree.
- I want to be a better programmer and I really like the way Java is set up as a language, classes/files/syntax. Also, heard really good things about the class.
- I don't want to delay graduation any further, and I saw that there was still a chance to squeak by and pass even though I couldn't really get to the Koans.
- Interesting topics and project
- A desire to strengthen my abilities with java and expand my area of knowledge when it comes to programming. I previously had no experience with servers/servlets/android so learning about those was a good thing to have in my tool belt. Also getting more experience with interfaces was a part of it too.
- Need the credit for elective, and I was doing well in the class with no reason to leave the course.
- Realized how important Java was to modern programming.
- There were options to quit? But in all seriousness, it was fun and interesting once I got the hang of the project at hand. Pure nightmare until then but, I think that's more an internal thing with me.
- The teacher/graders are willing to work with you
- I stayed in this course because I think that the teaching that this class offered on how to use Java and the experience that it offered in software development was valuable.
- The teacher is helpful and enthusiastic, and the material has real world application. I feel more prepared for internships. I'm currently learning C# at multnomah county, and this class makes me feel more prepared for that.
- The work which the Professor gives as assignments made me learn things that I have not done in past. I have learned Java in my undergrad but have not implemented many things as I did now in this course. Mainly the learning of new techniques made me stay in this course.
- It was mildly entertaining
- very beneficial and practical
- Structure of the course and Syllabus. It was really good to develop next project on the top of the previous project. And by the end develop a new app. So, it was really great.
- Every time I program, submit and modify, I can feel that I am making progress.
- Needed the course for graduation requirement.
- One of the reasons I stayed in the class is that I like to be challenged, and this class provided me with it. There were a lot of new things to learn and it was really enjoyable.
- I stayed in the course due to how much I felt that I was gaining from doing the assignments and pair/mob programming. (That is, aside from the need for a programming intensive class requirement to do my capstone the next two terms).
- I actually really enjoyed it, and I'm glad it was the "P" course I chose! It wasn't impossibly hard--just the right amount of challenge, in my opinion. Plus, I wanna graduate.
- A few things... I like java and programing in general. I enjoyed the exposure to unit tests and other practicle practices in industry, Also I didnt do so bad so I saw no reason to drop.
- I've never dropped a course after the first couple of weeks. Even though sometimes it took a lot of time, the course was fun, and not too difficult.
- The excellent professor! Seriously, if Dave was an RPG character, he would have max charisma stats. I also really enjoyed writing in Java-- I know some people don't, but I like programming a lot.
- Create learning experience, very interesting and extremely well taught/organized.
- The main thing that motivated me to stay back is that Prof David is reasonable and able to understand any difficulties that one may face while performing projects. He made sure that he give oppurtunities to correct any issues in the project. This provided hope for person like me, who is a naive coder, to continue irrespective of any mistakes that I make during the projects.
- To advance my knowledge and put in a lot of my efforts.
- Graduation requirement
- The amount I was learning week to week made me stay. Even though the workload was high and sometimes consuming all the materials and actually grokking everything felt like drinking from a firehose, I could see just how much I was progressing and that was pretty cool.
- If you had to remove one lecture from this course, which would itbe? Why?
- The projet setup lectures. I would make them videos. It was too hard to keep up with you and it got a little stressful.
- This is difficult for me to answer because I found all of the lectures to be useful for review and further development of Java skills. However, of all the lectures I attended, I would remove the Week 2 lecture because I feel that the material about test scenarios covered in that lecture could be easily picked up or learned in a "flipped" classroom format or in one of the existing lectures. The lecture could be replaced with a handout that describes a sample set of test cases and encourages the student to brainstorm on their own.
- I think the current lectures are great, so I don't think we should remove any lectures. Moreover, I want to practice more in android development, but I know that we don't have time to focus on it because we just have 8 weeks,
- All the lectures were extremely useful, and I can't think of any particular lecture that seemed less useful than the rest.
- I'm not sure.... I guess the first one since a lot of that was basically review of other programming language concepts. I will say it again: a lecture going into more depth with the build tools would have been great. Or perhaps a project/lecture dealing with Groovy/Kotlin/Scala or something else that runs on the JVM.
- I honestly never thought of removing a single lecture from the course. Instead, if we had more time, I wanted to even add more classes on few things like: * More focus on TDD, * Even more sessions of pair/mob programming, * Deploying the project in GUI apps using Applets.
- There is not a lecture that I would remove.
- I would remove core Java API lecture. I think core Java API can be self-taught, especially for a computer science student, self-learning a new programming language is a necessary skill.
- I think everything in this class are reasonable and necessary to help me to achieve what's expected to leanrd.
- I would probably want to remove the Mob Programming lecture. I surprise myself by saying that because I actually really enjoyed the Peer programming, it was one of my favorite lectures. However for whatever reason, and it could just be my personality type, I did not feel like the Mob Programming was very fun for me. I think I felt more afraid to speak up in my group and it was harder to feel like I learned something from the experience, other than what it was like to work on a small project with that many people. But I do understand and appreciate the importance of that experience/lecture.
- I thought all of the lectures were valuable, however if I had to remove a live lecture or parts of various live lectures, it would be the the stuff the covers setting up the environments. It felt, at times, some of the commands were different (maybe due to MacOS, Windows etc), and a few times I wasn't sure if we were supposed to be SSH'ed or on our local machine. There were a few other things that added up to make following along somewhat difficult. Perhaps assigning a set-up assignment with written instructions prior to lecture might be best. In the end though, I was grateful these lectures were recorded and posted very quickly after lecture.
- I think all were really useful, but if I had to pick one, it would be the Android Fundamentals. Only because I think I struggled to understand all the onPause stuff, and I didn't have to deal with it too much for Project5. But it's still important to understand if you want to do more with Andoird.
- Every lecture was so efficient that I learnt something out of it .I don't think any lecture have to be removed because each and every lecture teaches the concepts to work on the projects.
- umm they all felt pretty essential to what ever project we were working on at the time.
- That's a tough one, I really don't feel I'd remove any of them, I found all of them incredibly helpful. Maybe I would remove the mob and/or pair programming parts and spend that time doing more in class examples. The in class examples were the most helpful to me as the supplemental API lectures were really difficult for me to follow without seeing any real world examples or use cases, but when you would go over examples in class than the API stuff stuck.
- I don't like mob programming. It had too many people, and it took too much time to set up. I learned nothing from that lecture. We can move the schedule earlier to learn about Android Studio.
- Probably the first lecture considering it was mostly just setting up. Really enjoyed the last four lectures with coding demonstations.
- This is a really hard question because I'm guessing you have feedback from 100s of students now and in every lecture you are addressing what students have asked for. Almost all the lectures were crucial for me to complete the assignment. Especially the web/REST lecture where you showed how Servlets work and how to test them. I would have never been able to write those servlet tests that have 15 statements in them with all kinds of nesting and calls without looking at the screencast. And so since I didn't need the week 7 lecture (which was a relief since I've been marathoning this last project) I'd say the week 7 lecture. I didn't need it to complete the last assignment and I already had enough to do with Project 5 and studying for the final.
- For me all lectures were important. Every letcture covers important topics. So can not remove any lecture.
- I would say lecture 4, it was useful to see how to set up project 4, but I think it was a little confusing when we started debugging the code and doing tests. It was more helpful the following week when we started working on changing the code to handle appointment books.
- Personally it would be the Java Review / basics. I understand some people haven't used Java so it is required. But I have spent a fair bit of time using Java so it was a lot of pointless review for me.
- none
- I can't specifically pick out any one lecture. I know I skipped one, which hurt but it was to make a deadline for another class project. It was a godsend having the recordings, obviously for the one skipped lecture, but even for the rest. Being able to go and see the lecture again with the examples. And A+++ on having the videos with time segments. Truly above and beyond and greatly appreciated.
- The android class. it was very informative but it was also intense
- I think the first lecture of was probably the worst since it felt the longest of all the lectures. A large portion of the time was spent giving instructions on how to set up the project respository, which is something we should be able to do on our own. Maybe this segment of the lecture could be cut to make the other important aspects of the lecture more digestable.
- None. I enjoyed them all.
- No I don't feel like removing any lecture from here. But as I already mentioned in my previous survey as well If in the class also there were some explanation of topics as in the videos which Professor posts that would be more helpful. Because what we listen in class impacts more than what we look as a video due to the interactive nature and lessons that happen in class.
- Not really sure
- app development
- I do not feel any lecture from this course I want to remove. Sometimes due to long time of lectures it was tiring at the end. But in the later term assignments like pair programming and mob programming saved me.
- Pair programming because if I really don't know how to make progress at that time. But I think I know how to do it after I've done it once.
- The last one about testing in Android seems unnecessary if there's not going to be an evaluation of that in the assignment.
- I wouldn't remove any. I would like to have additional lectures on web and android.
- I'd remove the lecture after the final probably. I haven't seen the lecture obviously, but I imagine that most people are a little burnt out after project 5, the individual final, and the group final. So, I think that students attending would naturally be less attentive and less likely to learn as much out of the lecture than previous lectures.
- I think they were all useful. We know how to do OOP, but it's good to brush up on Java syntax the first time. Setting up the development environment was necessary. File I/O is kinda tricky, so that was good too. Unit testing and app development are obviously the most important part. Keep it all!
- If I HAD to remove one it would be one near the end about the android studio. For me, I was almost complete with my last project so the lecture itself was going over things I've learned from building P5.
- That's tough. All the core Java API stuff is kind of crucial. So, either the web unit or the android unit would have to get removed. Between the two of those, I think I would opt for removing the web unit. Most of the conceptual content of the web unit could be found in a docker or web development class, whereas the android development is somewhat more unique to java.
- Hmm... none, really! I really liked the mob programming, maybe having another one of those could be fun.
- That's a tricky one. I thought it was bare bones as it was. I'd have to say please don't remove any of the content.
- I wouldn't remove anything, in fact needed more time with the professor for some complex projects 4 and 5.
- None. Everything seems important. Probably the koans.
- Though the android app was interesting and creative, it felt a bit rushed as to learning how to maneuver everything
- I was gonna say functional programming but then I remembered that included lambda expressions. In an eight week course, there's not a lot of fat to be cut, especially since everything builds on what came before. I guess dependancy injection, because in terms of work to understand to reward it felt the lowest, but that's only if I had to remove one.