Welcome to CUSP, and the Urban Computing Skills Lab (UCSL)!

Like CUSP itself, the Masters program in Applied Urban Science and Informatics is a unique program that brings together people from diverse backgrounds and career paths who have found a passion for applying analytical skills to problem-solving in an urban context. We’re glad that you’ve decided to become a part of it. Wherever you are, and wherever you come from, welcome.

Because of that wide variety of backgrounds, you may be entering CUSP with very little computer science background, or you may have quite a bit. We’ll talk more about this in a moment, but remember that we hope this course will be helpful for both groups.

And remember that even if you’re not coming to us with all of the skills in the UCSL already in place, that you were accepted to this program for a reason! Many many students have started where you are, and all of them have mastered the skills for their next careers. The UCSL is the first, not the last, step in that process.

What, then, is Urban Science? It’s harder than you might think to define, especially given how ubiquitous the term has become. At CUSP, we see Urban Science as an emerging research domain at the intersection of interdisciplinary sciences that seeks to utilize large-scale data in an effort to understand and address urban challenges.

With this in mind, it might be best to think of Urban informatics not as a new domain of knowledge to learn, but a new set of skills that you can apply within your current area of expertise. Or better yet, a set of skills you can use as a footbridge to your next.

Before We Begin!

Most of the instruction in this course takes place in the EdX environment to which you should have access. These Jupyter Notebooks are more of a “working area” and will not have all of the information that you’ll find in the EdX area. Think of this as the “workbook” that goes with the “notebook.”

The important thing to remember is that while much of the instructional material is here, the answers to questions that begin with “How do I…” can largely be found in the Introductory module of the course found in the EdX environment.

Using this Lab

We think the best way to move through the course is to have both environments open at the same time, so that you can glean the information in the EdX environment but also practice as you go in the Jupyter Notebook area in a kind of split screen set up.

Many students find that playing around with the code in the Notebooks is a very effective way of learning how the code responds. In the Jupyter Notebook environment you can change what’s in the code boxes and see how it affects the results.

Alternatively, some students may find that they work best by creating a new notebook (you can learn more about that in the introductory section of the EdX environment) and typing the code directly. While more time consuming, doing so has distinct benefits: typing the code gives practice with the syntax and typing error free code. Many beginners struggle with finding the syntactical errors (typos) that can cause code to run incorrectly, and this is one way to get practice in spotting and/or avoiding it.

All learners are different, and you might find yourself learning best from this sort of experimentation.

Mohit Sharma
Mohit Sharma
Senior Software Development Engineer, DevOps

DevOps engineer with a strong Linux background and over a decade of experience designing, automating and managing mission critical infrastructure deployments by leveraging SRE principles and other DevOps processes. Expert in scripting using python with an emphasis on real-time, high speed data pipelines and distributed computing across networks.