Please feel free to submit updates.
Grant Erickson, Meg Woodford, and Mark Michaelis For general questions, we suggest asking in Teams so that others can help as well. We encourage people to work together and collaborate. Please feel free to help your fellow students out. Though it is possible to privately message people directly, as much as possible, we encourage open discussion on the main chat so that others can benefit as well. You can also send an e-mail to: [email protected]
We will be using GitHub for all class lectures and assignments. All work will be submitted via GitHub pull requests.
- Please sign up for a GitHub if you do not already have one.
- You can get added benefits for signing up for a free GitHub Student Developer Pack.
- Please fill out this form with your GitHub information. This is used by us so we can appropriately grade assignments.
This class will build on CSCD-371. It will be very difficult if you have not taken the CSCD-371 that was offered in Winter of 2022. We will be building on much of what was presented in that class. Here are the things the instructors will assume you already know in addition to all standard classes taken by juniors and seniors in the CS program as of Winter.
- Good grasp of the C# programming language
- Good familiarity with web development (as taught in the CSCD-371 Winter 2022) HTML, CSS, JS
- Familiarity with development environments like Visual Studio and VS Code
- Understanding of how Git source control works with the ability to perform standard development workflows
- Understanding of GitHub especially doing pull requests
- Good grasp of programming theory: OOP, data structures, etc.
- VueJs 2
- VuetifyJs 2
- NuxtJS
- TypeScript
- Jest
- npm
- ASP.NET Core 6.0
- SignalR
- Azure
- Azure AppService
- Azure SQL
- Azure Static Web App
- GitHub Actions
- Office Hours: Office hours are available before class on Tuesday's and Thursdays starting at 1 PM. To ensure that an instructor will be available, please schedule an appointment 24-hours beforehand by sending a meeting request email to [email protected]. Alternative times may be available upon request.
- A list of topics covered in class will be recorded by students in the Lectures markdown file. Please submit a PR to be approved. It will also contain a general schedule for the class, but this may be adjusted based on pacing.
- Homework will be hard and will take time to complete. Do not put it off.
- Start homework early and come to class with questions. Starting homework late is a recipe for disaster and pain.
- See the Grading System for more details
- All assignments and due dates are in Assignments
- Homework will be done in pairs. If you are experiencing issues, please contact an instructor.
- Code reviews are done individually
- The day homework is initially due we will typically go over the assignment in class. (no guarantees)
- .NET 6.0
- Visual Studio Code This can largely be used as an alternative to Visual Studio. Many of us also use it as our catch-all lightweight text/code editor.
- Azure for Students You will need to sign up for the free Azure student credits. This provides a place for us to deploy our application. The course work will be cross-platform. However, in class the instructors will be working on Windows in both VSCode (for front end) and Visual Studio (for back end).
- npm Node Package Manager will provide tooling for bulding our front end web site.
- Visual Studio 2022. Version 17.1 or later. The community edition is fine, though we believe most students should have access to higher SKUs with EWU's MSDN (this assumption may be wrong). Lab computers should have Professional already installed. This will install .NET 6.0.
- GitKraken Though you can do all of the git interaction from within Visual Studio or on the command line, GitKraken is free for open source work. It also provides a nice graphical version of the commit history so you can see how various commits and branches relate.
- GitHub Student Developer Pack Lots of great development tools and resources. The JetBrains products ReSharper (a plugin for Visual Studio), and Rider (a full C# IDE) are great tools for helping you write better code.
- JEST Unit testing extension
- Prettier code formatting extension
- Vetur Vue tooling
- Code Spell Checker
- Visual Studio Live Share This lets you easily collaborate with other people on a shared set of code.
- GitExtensions, GitHub Desktop, (or any other git tool): There are lots of options out there for working with git. If there is a tool you like, use it!
We will try to record class presentations so that students can review after the class. Recordings will be available in Teams.
Please note:
- Do not expect or rely on video recordings. We are not making any commitment to having video recordings of the class.
- Please keep all videos confidential. These videos are for people enrolled in this class. No videos or parts of videos should be copied/distributed/shared.