1. Coding Across the Curriculum
Cindy Royal
Associate Professor
Texas State University
croyal@txstate.edu
@cindyroyal
#codeacross
slideshare.net/cindyroyal
Introduction
Universities will need to begin to embrace coding across the curriculum
Computer programming is quickly becoming an expected 21st century literacy.
But coding is no longer limited to the realms of computer and information sciences.
Technology can be used to solve problems across a range of fields, but only if we have people in those disciplines who understand how to apply it.
Here are a few of the realities we’ll need to consider before we can effectively introduce coding across the curriculum.
Computer science doesn’t necessarily mean coding education.
Computer scientists proudly proclaim that their curriculum isn’t meant to teach tools.
It’s designed to introduce algorithmic thinking and problem solving agnostic of any specific technology.
While that is a reasonable stance in theory, in practice learning to solve problems requires one to DO SOMETHING.
And to do something, you have to apply the technologies at hand.
Yes, one must exercise judgment in selecting and applying the proper technologies and continue to develop and learn over time, but it’s ultimately what one does with technology that demonstrates competency.
While there is merit to the theoretical approach, its pure application seems less relevant to the specific needs of many disciplines.
Computer science is also primarily concerned with the development of large systems and languages that can support this type of problem solving.
Web and mobile development, which can be applied to a range of problems that require creative approaches to interactive and collaborative engagement, requires a different set of knowledge and tools.
But I think if computer science departments recognize the need for coding across the curriculum they can serve as an important hub for contextualized coding education.
Different disciplines require specialized context and support in delivering coding education.
While everyone who codes needs to understand the basics – data types, variables, loops, functions, how to apply algorithms – the ways in which these features are applied vary across disciplines like communication, the arts, humanities and science.
Coding may be used to develop a customizable data visualization, design an interactive work of fiction or develop an immersive museum experience. It can be used to create simulated learning environments or to explain difficult concepts.
It can seamlessly navigate the virtual and the physical, using cues from surroundings, past experiences and the social graph.
If we are going to take advantage of these opportunities, we’ll need to teach coding in the contexts that support these applications and more.
But students (and faculty) in these disciplines may not feel they have the background or mindset to code. We’ll need specialized support - which may mean small lab environments, personalized instruction and discipline-specific learning communities - in order to meet these broad-ranging needs.
Coding may be used to develop a customizable data visualization,
Coding may be used to develop a customizable data visualization, design an interactive work of fiction or develop an immersive museum experience. It can be used to create simulated learning environments or to explain difficult concepts.
It can seamlessly navigate the virtual and the physical, using cues from surroundings, past experiences and the social graph.
If we are going to take advantage of these opportunities, we’ll need to teach coding in the contexts that support these applications and more.
But students (and faculty) in these disciplines may not feel they have the background or mindset to code. We’ll need specialized support - which may mean small lab environments, personalized instruction and discipline-specific learning communities - in order to meet these broad-ranging needs.
design an interactive work of fiction
Coding may be used to develop a customizable data visualization, design an interactive work of fiction or develop an immersive museum experience. It can be used to create simulated learning environments or to explain difficult concepts.
It can seamlessly navigate the virtual and the physical, using cues from surroundings, past experiences and the social graph.
If we are going to take advantage of these opportunities, we’ll need to teach coding in the contexts that support these applications and more.
But students (and faculty) in these disciplines may not feel they have the background or mindset to code. We’ll need specialized support - which may mean small lab environments, personalized instruction and discipline-specific learning communities - in order to meet these broad-ranging needs.
develop an immersive museum experience
Coding may be used to develop a customizable data visualization, design an interactive work of fiction or develop an immersive museum experience.
It can be used to create simulated learning environments or to explain difficult concepts.
It can seamlessly navigate the virtual and the physical, using cues from surroundings, past experiences and the social graph.
If we are going to take advantage of these opportunities, we’ll need to teach coding in the contexts that support these applications and more.
But students (and faculty) in these disciplines may not feel they have the background or mindset to code. We’ll need specialized support - which may mean small lab environments, personalized instruction and discipline-specific learning communities - in order to meet these broad-ranging needs.
Collaborations are hard.
Cross-discipline efforts don’t come easily in the university environment.
Different missions and goals prevent natural integrations across departments.
And expecting one discipline to teach another discipline its specialized coding context is unreasonable and untenable.
But just because collaborations are hard, doesn’t mean they aren’t worth pursuing. Communication across departments to understand roles and expectations will be necessary to forge productive partnerships.
Collaborations in the professional community are another avenue to pursue in seeking support for programming curriculum.
Coders won’t be hired to support journalism, storytelling, art or science. They will be the journalists, storytellers, artists and scientists.
That’s the goal. Programming will be part of what the leaders and innovators in our fields can do.
Coding knowledge will be perceived as a spectrum, not something you either can or can’t do.
There will be a range of coders – people who understand enough to know what is possible, those who are increasingly able to solve their own problems with technology and the uber-coders - those who can forge new solutions with technology in specific areas.
But everyone will be expected to participate on collaborative, technology-oriented teams. Ignorance won’t be an option.
Code schools are filling the gaps that the academy has left wide open.
These for-profit entities - like General Assembly, MakerSquare or The Iron Yard - have popped up around the country over the past few years, charging students in excess of $10,000 to learn to code in a few weeks. They have jumped at a market opportunity.
While no university department could or should take up the exact model of these code schools, we can close the gap by defining the coding knowledge relevant to graduates entering our professions.
Curriculum will need to change.
Whether it’s new course modules, new majors or new collaborations, the integration of coding across the curriculum will require educators to rethink the ways a university education is delivered
Programming is simply a part of a larger disruptive trend in education.
We’ll need educators in every discipline who can teach coding.
That doesn’t mean we need completely new people.
It means we need people who recognize the opportunity and are curious about learning new approaches.
It means we have people who are O.K. with what they don’t know, but committed to giving their students the best possible introduction to coding skills that are meaningful and relevant in their field.
It means learning as we go and not always having all the answers, but modeling the ways in which we find the answers.
It means redefining what it means to be an educator.