Tag Archives: CPSC 310

Course Review: CPSC 310

Introduction to Software Engineering

“The only things that matter are lives and money.”

Text: (none)

Prof: Dr Elisa Baniassad, Dr Gail Murphy, Dr Marc Palyart

Elisa shares a lot of her experience, and how things work in the “real world”, which is helpful for an engineering class. She is also pretty approachable and sympathetic to any concerns that you might have. Dr Murphy created a lot of useful examples, and live-coded in class which was also a great way to learn. Dr Palyart followed a similar approach to Dr Murphy.


Difficulty

The on going “agile development” project during labs is the only thing that really matters. It is where most of your learning takes place, and you don’t get a lot of help for that, so its pretty tough. The classes look at various buzzwords, design patterns and software development processes and these are assessed in the exams. The in class material is not very hard to understand at all.


Key Concepts

Design of Web Applications

Implementation with TypeScript, JavaScript, Mongo etc

Software development processes

Testing


 Hard Concepts

 

Networking: If, you, like me, have never taken a networking course, a lot of how the internet etc is working will seem like magic.

Nodejs: Return of asynchronous programming. Common source of bugs.

Git: Took me a while to get comfortable uploading etc with git.

Self-learning: Sometimes, you just have to use google and your own ingenuity to come up with a band-aid solution to get stuff working when you understand less than you would like and don’t have time to learn more.


Conclusion

Project is great experience, working as a group and learning new skills. Really hard though! Classes are okay, not much you couldn’t read from a book.