For The "Real World"

17 Dec 2020

I have always felt that teaching should be about providing students with skills for the world. Sure, someone might need to find the derivative of cosine at their job one day, but the ability to look at a problem, recognize what they know and what they are solving for–that applies to far more than just math class. Similarly, where ICS 314 teaches concepts of software engineering, the skills and experiences I have acquired extend far beyond the classroom and computer science field.

Since starting the ICS program, I have noticed that computer science involves a lot more collaboration than I first thought. Granted, most classes, from Kindergarten, push group assignments on the notion that in the “real world” you will need to work with others. Given how coding has so many dependent parts in order to function correctly, however, the amount of “working together” that I have experienced in ICS 314 was unexpected.

Software engineering and computer science involves a large and diverse community of coders, hackers, etc. On one hand, such a vast pool means greater competition for jobs and necessity to create something unique. On the other hand, this community has helped create many wonderful things together. Open-source development exists as a public collection of various software and is fueled by those providing new code, helpful fixes and improvements, and those who borrow it for their own applications. Forums for help, like Stack Overflow, are another essential part of the open-source community and allow teaching and learning to happen on a global platform.

Learning to navigate open-source environments–the how-to and etiquette–has been vital to my growth within the field of computer science, but also as a human invested in helping the world and lifelong-learning. While “smart questioning” made for a lesson in how to best get help on errors and bugs in my code, it mostly taught me the importance of learning how to ask better questions. Good communication becomes incredibly essential with the large collaboration that open-source is, but good communication is essential everywhere. Developing the skill of asking questions–questions that will get you the answer you are looking for–applies to any environment and community. It is quite difficult to find the solutions to problems you cannot explain; to get help on issues you cannot define.

With the COVID-19 pandemic putting classes online and social interaction being hindered, communication has become even more important. The ability to collaborate from a distance and ask questions without being there to physically show someone the problem have become staples of the 2020 world–classrooms included. Thus, teaching for the “real world” students already exist in–not the career they might graduate into–has never been more crucial. The capacity for teaching and learning concepts specific to subjects, like software engineering, and applying those skills towards more general experiences, makes all the difference.