Python + Ed: code for collaborative learning 

The University of Sydney offers a collaborative educational experience between students and lecturers by integrating innovative technologies into the teaching toolkit. The application of Python, a computer programming language, alongside Ed, a digital learning platform, offers the opportunity to enhance the learning experience by improving student engagement. The increased uptake of coding within the University of Sydney Business School, such as within the Business Analytics Discipline, is an exciting step forward in the future of education.   

Steve Tierney, a lecturer in the Discipline of Business Analytics, explains his experience of teaching Python using the Ed platform. We also speak with Michael Quinn, a University of Sydney student, who talks about his own experience of learning how to code in this new environment.  

Where is Python being used? In which units of study? 

ST: Python is now the de-facto programming language for Business Analytics units. It is used in introductory undergraduate units such as QBUS1040 Foundations of Business Analytics all the way through to our most advanced postgraduate units such as QBUS6850 Machine Learning for Business.

How long have you been using Ed for teaching Python?  

ST: The transition to Python started roughly around 2016, and I started using Ed to teach Python in 2018.  

What kind of things are students learning to code using Python on Ed? 

ST: Almost all courses I teach require programming. I use Python because it is so versatile. I’ve used it to teach programming fundamentals, data wrangling, visualisation, statistical modelling, and machine learning.

What are the reasons for using Ed to teach Python?  Does it better enable students to collaborate and work together?  

ST: We use the discussion board feature of Ed because it allows code to be inserted directly into each post/reply which can be run and modified in situ. No other tool provides this. 

The lessons feature allows us to write a set of interactive slides which contain the course material. Most importantly, there is a type of slide called “Challenges” where we set up a programming task for students which can be automatically or manually marked. The added benefit of monitoring individual/class progress in real-time allows instructors to jump into the student’s challenge and type alongside them in a google doc. Students can also complete these lessons in their own time and pace, including at home.

The workspaces feature allows students to create a space for their programming files which can be shared and collaborated on with their peers in real-time. This is quite useful for group projects. 

Finally, there is no software to install. Since it’s a web-based tool we can skip the tedious and error-prone process of getting students to install software on their own devices.  

What do you think about Ed as a platform for teaching Python?  

ST: It’s the best system that I’m aware of, although it’s not perfect! 

MQ: I thought it was a great tool to facilitate the teaching of the course. It was nice because everything was in one place: weekly tutorial work, information about the concepts, coding examples and access to the Q&A with the staff. The inbuilt functionality with the terminal, ability to run code and have it all autosaved and version-controlled was helpful.  I think it is good for students with little or no coding experience as it removes risk of any issues installing programs and packages. The instant marking feedback on the weekly questions (code comparisons to model answers) through Ed was helpful.

Do you have any additional comments for improvement?  

ST: I’d like to see better support for real-time class monitoring. 

The system is a little cumbersome to use. For example, in a tutorial, we filter students by which tutorial they are assigned to, and we can monitor the class list. It is very hard to determine which students are currently active in the classroom and which students are not. We waste a lot of time checking on students who started the exercises in advance of the class but who are not actually attending. 

It would be useful to have a better discussion board search. It can be difficult to find past posts with Ed’s search feature. For example, prior to posting, it would be handy for students to see a list of older posts that might already answer their question, which could reduce repetitive questioning.  

MQ: I think that for anyone looking to put the learning into practice needs to be familiar with using tools such as the command line. It would be useful to have a course material that briefly covers these more practically in detail. Also, it could be good to have a tutorial/workshop in Week 1 that we use to walk through these covers and overall setup.

What does the future of learning coding look like? 

ST: I think the future looks like a streamlined version of Ed. To teach effectively, we need engaging, interactive material and the ability to provide real-time support and feedback to students. Ed is close to achieving that goal.

Brendan Miu

Leave a Reply