So you've done some programming in the past, and are wondering whether you should waive DDDII.
Here are some reasons that students in the past have still found it worthwhile:
- A primary focus of the course is familiarizing future managers with modern software development workflows, mostly centering around GitHub: version control, pull requests, code reviews, continuous integration, automated deployment, project management, etc. If you don't already have a solid process in place, then it might be worth seeing this one.
- If you haven't built full-stack applications in the past, particularly with Ruby on Rails — it's just a joy. In the past, students who already knew how to program but had never done full-stack applications from soup to nuts got even more out of the class than beginners, because agile web development with Rails is like a superpower.
- You're welcome to outpace the rest of the class and work on your own advanced projects, with guidance from me and the TAs.
If you still want to discuss waiving the course, then please prepare the following before our call:
- A sample of your prior work that I can look at, ideally a full-stack application. (If all you have is some Java code from homework for a prior course, or C code for an embedded system, then I think there's still a lot you can get out of this course.) A GitHub or Gitlab repository is ideal (if it's private, you can give me access as @raghubetina).
- Be ready to describe the steps you would take if you had to set up a new software project today. What would you use for version control? What third party services would you use (for, e.g., exception monitoring, analytics, etc)? What would be the workflow you would institute for developers on your team? How would a new feature go from idea to deployment?