Learn Some Coding

Our central activity as a science lab is working with data. Our lab relies heavily on mainstream scientific coding languages to do this; primarily Python and R. If you plan to advance in the lab, doing an independent study or honours project, and certainly as a grad student, you will need to learn how to work with data in those languages. This is perhaps one of the most valuable and generalizable skills you can learn, as coding skills are increasingly in demand for many jobs, even outside of "pure" programmer jobs.

SURGE Discover Programming Series

SURGE periodically offers introductory coding workshops, focused on Python and R. Check their website at surgeinnovation.ca to see upcoming events.

Neural Data Science in Python (aaron's Textbook & Course)

The NESC 3505: Neural Data Science course provides an introduction to the Python programming language. As added bonuses, this is a lab course, so you'll get lots of hands-on practice and it satisfies a degree requirement. Note that while no coding experience is required, previous psychology, neuroscience, and scientific experimentation training helps students better understand the neural data, and allocate more attention to acquiring and honing coding skills.

Neural Data Science is based entirely on open-source materials, and Aaron has written a textbook specifically for the course, providing an introduciton for everyone, with or without prior coding experience. The textbook lives at https://neuraldatascience.io

Self-Directed Learning: DataCamp

NCIL has a subscription to DataCamp, which is an excellent online platform for learning and normally very expensive to access. DataCamp also has an app so you can do a lot of lessons wherever you have your phone! Aaron typically sets up a free account for the lab every term. For the current access link, please see NCIL Core/Resources on Basecamp.

Programming Classes

Science students can take several introductory and upper-level computer science classes at Dal. CSCI 1105.03 and 1110.03 are mutually-exclusive options for an introductory computer science class. You should take CSCI 1105 if you have no prior computer programming/coding experience, or CSCI 1110 if you have previous programming experience (e.g., a past high school or university class in programming, or independent programming experience). In addition to the intro classes, CSCI 2202.03 Computer Modelling for Scientists and CSCI 2203.03 Data Science for Everyone have no prerequisites, and do not assume prior programming experience.

Last updated