Overview
Being an effective programmer is not just about writing code, it’s about designing solutions to problems in a way that a computer would understand, i.e. designing and implementing algorithms. However, most introductory courses focus exclusively on the implementing, ignoring the design elements. Over two sessions, this course will introduce you to some fundamental principles that are the basis of writing computer code in any language and should enable you to write, develop and debug your code more effectively. This course is aimed at anyone who is currently programming or thinking about learning to program.
Course objectives
This course will covering the following:
- what an algorithm is and the role it plays in coding.
- a number of computational thinking approaches and concepts for developing algorithms.
- how to differentiate between bugs related to syntax from those related to the underlying algorithm to facilitate more effective troubleshooting.
Pre-requisite knowledge
There is no pre-requisite knowledge and the workshop is designed to be appropriate for anyone interested in any programming language.
Workshop format
This a hybrid workshop run over 2 sessions. The schedule can be found here.
Upcoming course dates
Dates | Time | Venue |
---|---|---|
Friday 12th April, Friday 19th April 2024 | 1pm-4pm | Training Room 4, Old Library, Streatham Campus |
Start course
If you are unable to attend any of the dates above the notes for this course are available here and are freely available to work through in your own time. Please note that you will need to have completed the set up instructions above.
Follow up courses
On completion of these course you will be invited to join a network of other participants. This is a supportive forum for you to ask follow up question and receive tailed invites to follow on courses.
Feedback
Please remember to complete a feedback survey. Our workshops are under continual review and your experiences, suggestions and criticism are invaluable for shaping the direction of this initiative. This is especially important if you complete the materials in your own time as it enables us to measure impact. If you have ideas on other courses you would like to see then please contact Eilis Hannon: E.J.hannon@exeter.ac.uk.
Join us
If you are interested in becoming part of our community of workshop helpers, leaders and developers please contact Eilis Hannon: E.J.Hannon@exeter.ac.uk.
Acknowledgements
This course has been developed by the University of Exeter’s Coding For Reproducible Research Team (https://uniexeterrse.github.io/computational-thinking/acknowledgements.html) who are enthusiastic about sharing their skills with the wider research community. If you have benefitted in any way from this course and want to support its long term sustainability then please take the time to complete our feedback survey, recommend it to your colleagues, and enthuse about it to your senior leadership team.
This workshop is brought to you by:
- The University of Exeter Research Software Engineering Group
- The Institute of Data Science and Artificial Intelligence
- The University of Exeter Researcher Development Programme
- The University of Exeter Doctoral College