MUTEGIbeatrice / Welcome_Email

Welcome email from the UoEO Computing Department

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Welcome to the Computing Department

Practical Application

In addition to the provided reading list you were sent, the various videos and weblinks below are to introduce you to the basics of the programming languages to be used during your course. If you are comfortable with them, some of the links may not be suitable for you and advanced study links have been provided, where applicable. Transcripts are available on all the video sites.

You will not need to download the various software for the programmes (unless you already have them). This is because you will be using an online Integrated Development Environment (IDE), Codio, for all the programming languages used during your course. Where applicable, an online platform is linked for you to use for your practice here.

Please read more about Codio from their website. You will have access to Codio during your first module.

GitHub - Used in all courses for team projects, collaborative coding and your e-portfolio.

You will need to create a GitHub account once you complete your course registration. if you have one already, please ensure you use separate repositories for your studies. You can upgrade your account with a student pack by applying here and help guide is available here.
We encourage you to learn more about this popular platform using their training - First Day on GitHub and First Week on GitHub. You can also review a shortened guide and the GitHub YouTube channel. The GitHub Learning Lab is a great place to start getting some practice.

Python (Used in most courses, including object-oriented programming)

https://www.learnpython.org/ - Beginners, focus on “Learn the Basics” and “Data Science Tutorials”.
To practice, please use the Python shell or https://codingbat.com/python.
Another site for good practice, especially for beginners, is the Python eBook project.
Finally, for a whistle-stop tour why not take a look at Kaggle's Python training which also provides certificates of completion.

SQL (Used in modules involving databases)

https://www.khanacademy.org/computing/computer-programming/sql. Please note that Khan Academy is a good site for practicing.

Java (Also helps you understand object-oriented programming)

https://www.oracle.com/technetwork/java/javase/java-tutorial-downloads-2005894.html
An online practice space - https://codingbat.com/java

R (Sometimes used in tandem with Python, especially for Mathematical programming)

https://swcarpentry.github.io/r-novice-gapminder/
For advanced programmers needing to understand R, take a look at “Advanced R” or “R for Data Science”, both by Hadley Wickham.

C/C++ (Used in specialist/advanced object-oriented programming modules)

https://www.learn-c.org/ and https://www.learn-cpp.org/ cater to both beginners and advaced programmers. Take a look at https://www.cprogramming.com/ as well for more practice.
Advanced programmers, take a look at http://www.icce.rug.nl/documents/cplusplus/.

For all these programming languages and many others, take a look at https://www.w3schools.com/ for some more information and practice.

Data Science and Artificial Intelligence training

Take a look at the short courses offered by Kaggle, many of which are included in both programmes. This will be a great introduction to each module and your programme as a whole. To be sure of which ones to complete, compare them your programme's module titles. Don't forget to pick up your certificates of completion when you complete each one.

You may find it helpful to keep referring to these resources throughout your course. A link to this page will also be made available on your induction module on the learning platform.

Key Computer Science Concepts

Below are notes to help you review some key Computer Science concepts before you start your programme.

  • Computing Fundamentals

https://www.khanacademy.org/computing/computer-science. The Khan Academy website is great for learning fundamentals on any subject and this part of the site introduces various aspects of computer science, starting with algorithms.
https://introcomputing.org/ This site from Stanford University's Introductory Course descibes the nature of computers and also provides a platform fo you to practice.
https://composingprograms.com/ This site offers more text on covering the fundamental aspects of programming and computer science.

  • Style Guides

There is a need to be consistent in the style you use when writing code. The consistent style ensures that your code is:

  • Understandable
  • Amendable
  • Reusable
  • Sustainable

Group/team work is a key aspect of a computer science practitioner’s everyday work life. So, it is essential to ensure you have a consistent style, whichever coding language you use. During the course, this will help to ensure your group can collaborate efficiently on projects. It will also ensure that your work can be assessed correctly by your peers and tutors.

Most organisations have their own guides for the various programming languages used in a project. One commonly used source for Python is PEP8. However, if you are a beginner, this might be a difficult document to read. A simplified version can be found here and on this site.

For SQL, SQL style guide by Simon Holywell is widely used. Finally, for R, tiddyverse is a popular style guide, which is based on the Google Style Guides. If you would like to review the Google Style Guides for the coding languages discussed, you can start by focusing on sections covering:

  • Indentation
  • Maximum line length
  • Line spacing
  • Imports
  • Whitespace
  • Naming Conventions
  • Comments
  • Quotes
  • Compound Statements

These are areas where mistakes commonly occur, making it difficult for team members to follow your code or creates issues with adaptation (even for you!) later down the line.

  • Debugging

A dreaded process by most computer programmers but highly essential to your work. It refers to the process of interpreting and diagnosing the cause of errors in your programme. John DeNero descibes the process of debugging quite succinctly on his website.

Finally,

Please remember that your tutor is on hand to help you with your programming queries. You can also learn a lot from other students as you all bring to the course varying expertise from diverse educational and professional backgrounds.

Welcome again to the University of Essex Online Computing Department. We look forward to working with you all.

About

Welcome email from the UoEO Computing Department