Course evaluation: SNHU CS-370 Current/Emerging Trends in CS


I often find myself researching courses before taking them or before the term starts to get an idea of what to expect. In case you find yourself in a similar situation, my goal for this post is to provide you with enough information about SNHU’S CS-370 to inform your expectations.

What is covered in CS-370?

Contrary to the course’s name, CS-370 revolves around artificial intelligence, namely deep learning. The course starts with an introduction to artificial intelligence and compares machine learning to deep learning and eventually focuses on deep learning until the end of the course.

CS-370 uses Jypter Notebooks in Apporto for students to interpret and modify neural networks for solving various problems, such as handwritten digit recognition and developing a training function to solve the Treasure Hunt game.

I published several articles on some of the assignments for CS-370, and I think you will appreciate my comments on creating a training function for solving the Treasure Hunt game.

The qtrain function is the only assignment in CS-370 that requires students to actually code their own training function. The majority of the assignments revolve around making minor adjustments to boilerplate code and interpreting their implications.

The learning resources for CS-370 are Deep Learning with Keras and Applied Reinforcement Learning with Python.

I took this course with MAT-243 and seemed to balance the workload with relative ease; although, it was a challenge at times. MAT-243 helped inform most of my understanding of using Python libraries to generate graphs.

The biggest initial challenge was understanding how data is prepared for training and testing neural networks and having a semi-complete picture of what some of the boilerplate code was doing.

A typical week consisted of lots of reading from the previously mentioned books, a discussion post, and an assignment modifying boilerplate code and interpreting its implications, which was assigned on weeks that did not have a project due.

The weeks that had a project due were Week four and week seven, and the projects involved boilerplate code and interpreting deep learning concepts, such as the Markov decision process, Q-learning, or comparing machine learning to human learning.

CS-370 weekly assignments

How CS-370 influenced me

CS-370 made me realize that artificial intelligence is the future and that it will probably take me a long time to learn it as well as I have learned web development and programming.

The good news is that artificial intelligence is still in its early stages and anyone can enter the field and put in the effort to learn it and stand out from the crowd by creating side projects that showcase their skills.

My biggest challenge with artificial intelligence, namely deep learning, is that I need to take some time to comprehend the mathematical equations used in neural networks.

What I liked about CS-370

I enjoyed learning about AI’s accomplishments in solving games and personalizing a user’s experience on the web and its ethical and social concerns related to privacy laws and the GDPR.

Chapter one of Deep Learning with Keras was interesting because it compared artificial neural networks to biological networks and provided an overview of how some AI concepts were influenced.

I liked how easy it was using Keras to build neural networks and appreciate that I was able to use Jypter Notebooks on my MacBook instead of Apporto without having to account for discrepancies between software versions.

The instructor was also very relaxed and didn’t enforce his own agenda to complicate things.

What I disliked about CS-370

I didn’t enjoy reading Applied Reinforcement Learning with Python and felt that it didn’t serve my understanding for answering the assignment prompts. Some chapters in Deep Learning with Keras were also a waste of time and didn’t make sense because the course required us to hop between chapters. I felt that both books assumed the reader knew a lot of concepts and did not touch on them thoroughly, which resulted in poor reading comprehension.

Additionally, some of the code in Deep Learning with Keras had indentation errors and made it difficult to understand the code’s structure.

As a result of my dissatisfaction with the reading material, I learned everything I needed through web-search and YouTube tutorials.

Final thoughts

CS-370 was interesting and somewhat well structured except for the reading material. The instructor could have complicated things by a large margin, but he was helpful and engaging in the discussions.

CS-370 left a good impression on me and encouraged me to further my study in artificial intelligence.

Overall, I ended the course with an A.

CS-370 final grade