O'Really?

July 4, 2022

Join us to discuss the implications of the Open AI codex on introductory programming Monday 4th July at 2pm BST

Automatic code generators have been with us a while, but how do modern AI powered bots perform on introductory programming assignments? Join us to discuss the implications of the OpenAI Codex on introductory programming courses on Monday 4th July at 2pm BST. We’ll be discussing a paper by James Finnie-Ansley, Paul Denny, Brett A. Becker, Andrew Luxton-Reilly and James Prather [1] for our monthly SIGCSE journal club meetup on zoom. Here is the abstract:

Recent advances in artificial intelligence have been driven by an exponential growth in digitised data. Natural language processing, in particular, has been transformed by machine learning models such as OpenAI’s GPT-3 which generates human-like text so realistic that its developers have warned of the dangers of its misuse. In recent months OpenAI released Codex, a new deep learning model trained on Python code from more than 50 million GitHub repositories. Provided with a natural language description of a programming problem as input, Codex generates solution code as output. It can also explain (in English) input code, translate code between programming languages, and more. In this work, we explore how Codex performs on typical introductory programming problems. We report its performance on real questions taken from introductory programming exams and compare it to results from students who took these same exams under normal conditions, demonstrating that Codex outscores most students. We then explore how Codex handles subtle variations in problem wording using several published variants of the well-known “Rainfall Problem” along with one unpublished variant we have used in our teaching. We find the model passes many test cases for all variants. We also explore how much variation there is in the Codex generated solutions, observing that an identical input prompt frequently leads to very different solutions in terms of algorithmic approach and code length. Finally, we discuss the implications that such technology will have for computing education as it continues to evolve, including both challenges and opportunities. (see accompanying slides)

All welcome, details at sigcse.cs.manchester.ac.uk/join-us. Thanks to Jim Paterson at Glasgow Caledonian University for nominating this months paper.

References

  1. James Finnie-Ansley, Paul Denny, Brett A. Becker, Andrew Luxton-Reilly, James Prather (2022) The Robots Are Coming: Exploring the Implications of OpenAI Codex on Introductory Programming ACE ’22: Australasian Computing Education Conference Pages 10–19 DOI:10.1145/3511861.3511863

May 25, 2022

Join us to discuss teaching programming to Physics students on Monday 13th June at 2pm BST

Filed under: education — Duncan Hull @ 10:14 am
Tags:
CC BY-SA image of Bohr model of the atom by Jabberwock on Wikimedia Commons w.wiki/59id 

print(’Hello World!’) is all very well but it doesn’t help physics students solve the Schrödinger equation. Join us for our next journal club meeting on Monday 13th June at 2pm BST where we’ll be discussing a paper by Lloyd Cawthorne on teaching programming to undergraduate Physics students. From the abstract:

Computer programming is a key component of any physical science or engineering degree and is a skill sought by employers. Coding can be very appealing to these students as it is logical and another setting where they can solve problems. However, many students can often be reluctant to engage with the material as it might not interest them or they might not see how it applies to their wider study. Here, I present lessons I have learned and recommendations to increase participation in programming courses for students majoring in the physical sciences or engineering. The discussion and examples are taken from my second-year core undergraduate physics module, Introduction to Programming for Physicists, taught at The University of Manchester, UK. Teaching this course, I have developed successful solutions that can be applied to undergraduate STEM courses.

All welcome. As usual we’ll be meeting on zoom, details are in the slack channel sigcse.cs.manchester.ac.uk/join-us.

References

  1. Lloyd Cawthorne (2021) Invited viewpoint: teaching programming to students in physical sciences and engineering, Journal of Materials Science 56, pages 16183–16194 DOI:10.1007/s10853-021-06368-1

April 4, 2022

Join us to discuss spatial skills in engineering on Monday 9th May at 2pm BST

CC BY-SA licensed image of a Rubik’s cube via by Booyabazooka Wikimedia Commons w.wiki/He9

Spatial skills can be beneficial in engineering and computing, but what are they and why are they useful? Join us to discuss this via a paper on spatial skills training by Jack Parkinson and friends at the University of Glasgow. Here is the abstract:

We have been training spatial skills for Computing Science students over several years with positive results, both in terms of the students’ spatial skills and their CS outcomes. The delivery and structure of the training has been modified over time and carried out at several institutions, resulting in variations across each intervention. This article describes six distinct case studies of training deliveries, highlighting the main challenges faced and some important takeaways. Our goal is to provide useful guidance based on our varied experience for any practitioner considering the adoption of spatial skills training for their students.

see [1]

All welcome. As usual we’ll be meeting on zoom, details are in the slack channel sigcse.cs.manchester.ac.uk/join-us. Thanks to Steven Bradley for suggesting the paper

References

  1. Jack Parkinson, Ryan Bockmon, Quintin Cutts, Michael Liut, Andrew Petersen and Sheryl Sorby (2021) Practice report: six studies of spatial skills training in introductory computer science, ACM Inroads Volume 12, issue 4, pp 18–29 DOI: 10.1145/3494574

February 15, 2022

Where have all the women gone?

Public domain image of Margaret Hamilton standing next to a print out of software that she and her MIT team produced for the Apollo Guidance Computer in 1969 via Wikimedia Commons w.wiki/4mXY

Computing is too important to be left to men, but where have all the women gone? While women continue to play a key role in computing they are currently under-represented in Computer Science. How can we change this and what evidence is there for practices that get more women into computing? We discussed this paper by Briana Morrison et al [1] on Monday 7th February at journal club. Here is the abstract of the paper:

Computing has, for many years, been one of the least demographically diverse STEM fields, particularly in terms of women’s participation. The last decade has seen a proliferation of research exploring new teaching techniques and their effect on the retention of students who have historically been excluded from computing. This research suggests interventions and practices that can affect the inclusiveness of the computer science classroom and potentially improve learning outcomes for all students. But research needs to be translated into practice, and practices need to be taken up in real classrooms. The current paper reports on the results of a focused systematic “state-of-the-art” review of recent empirical studies of teaching practices that have some explicit test of the impact on women in computing. Using the NCWIT Engagement Practices Framework as a means of organisation, we summarise this research, outline the practices that have the most empirical support, and suggest where additional research is needed.

There is lot of stuff in this paper, and we barely scratched the surface. Personally, one of the things I found useful was the National Center for Women in Technology (NCWIT) Engaging Practices Framework which I’d not seen. These have advice on how to make computing a more inclusive subject for all students, not just women. Some of the guidelines include:

  1. Make it matter (e.g. by making interdisciplinary connections and addressing misconceptions)
  2. Build student confidence and professional identity (e.g. by encouraging a growth mindset)
  3. Grow an inclusive community (e.g. by using well-structured collaborative learning and avoiding stereotypes)

The evidence for which approaches work isn’t particularly strong, see Jane Waites lightning talk slides, but there is some evidence to suggest these practices can help to make small steps in the right direction. The evidence is outlined in the paper.

References

  1. Briana B. Morrison, Beth A. Quinn, Steven Bradley, Kevin Buffardi, Brian Harrington, Helen H. Hu, Maria Kallia, Fiona McNeill, Oluwakemi Ola, Miranda Parker, Jennifer Rosato and Jane Waite (2021) Evidence for Teaching Practices that Broaden Participation for Women in Computing in Proceedings of the 2021 Working Group Reports on Innovation and Technology in Computer Science Education DOI:10.1145/3502870.3506568

December 23, 2021

Join us virtually in Durham to discuss Computing Education Practice (CEP) on 6th Jan 2022

Filed under: education,Uncategorized — Duncan Hull @ 10:40 am
Tags: , ,
Picture of Durham Cathedral by Mattbuck on Wikimedia Commons w.wiki/4acc

The ACM Computing Education Practice (CEP) conference is aimed at practitioners and researchers in computing education, both within Computer Science departments and elsewhere. The conference provides a platform to share and discuss innovations and developments in the practice of computing education. CEP is a community, not just a series of proceedings; everybody is encouraged to participate even if they are not presenting. We have an exciting programme of talks and workshops scheduled which will be of interest to anyone teaching Computer Science including:

  • Narrowing and Stretching: Addressing the Challenges of Multi-track programming by Steven Bradley and Eleni Akrida, Durham University
  • Automated Code Tracing Exercises for CS1 by Sean Russell, University College Dublin
  • Feedback and Engagement on an Introductory Programming Module by Beate Grawemeyer et al Coventry University 
  • Gender parity in peer assessment of team software development projects by Tom Crick et al Swansea University
  • Promoting Engagement in Remote Computing Ethics Education by Joseph Maguire and Steve Draper, University of Glasgow
  • Co-constructing a Community of Practice for Early-Career Computer Science Academics in the UK by Tom Crick et al 
  • Assessing Knowledge and Skills in Forensics with Alternative Assessment Pathways by Joseph Maguire
  • Little Man Computer + Scratch: A recipe to construct a mental model of program execution by Noman Javed, London School of Economics
  • Application of Amazon Web Services within teaching & learning at a UK University by Dan Flood Coventry University

The conference will be held online on Thursday 6th January 2022. More info and registration at cepconference.webspace.durham.ac.uk/programme. We look forward to seeing you there. 

On behalf of the UK ACM Special Interest Group on Computer Science Education (SIGCSE) uki-sigcse.acm.org/about/

September 6, 2021

Join us to discuss why computing students should contribute to open source software projects on Mon 6th September at 2pm BST

unlocked padlock by flaticon.com

Why should students bother with open source software? Join us to discuss why via a viewpoint piece published by Diomidis Spinellis of Athens University and Delft University of Technology published in the July issue of Communications of the Association for Computing Machinery. [1] Here’s the introduction 

Learning to program is—for many practical, historical, as well as some vacuous reasons—a rite of passage in probably all computer science, informatics, software engineering, and computer engineering courses. For many decades, this skill would reliably set computing graduates apart from their peers in other disciplines. In this Viewpoint, I argue that in the 21st century programming proficiency on its own is neither representative of the skills that the marketplace requires from computing graduates, nor does it offer the strong vocational qualifications it once did. Accordingly, I propose that computing students should be encouraged to contribute code to open source software projects through their curricular activities. I have been practicing and honing this approach for more than 15 years in a software engineering course where open source contributions are an assessed compulsory requirement. Based on this experience, I explain why the ability to make such contributions is the modern generalization of coding skills acquisition, outline what students can learn from such activities, describe how an open source contribution exercise is embedded in the course, and conclude with practices that have underpinned the assignment’s success

All welcome, as usual, we’ll be meeting on Zoom see sigcse.cs.manchester.ac.uk/join-us for details.

References

  1. Spinellis, Diomidis (2021). “Why computing students should contribute to open source software projects”. Communications of the ACM64 (7): 36–38. DOI:10.1145/3437254

July 7, 2021

Would YOU want to live in Alan Turing’s house?

The blue plaque on Alan Turing’s house, commemorating his work in cryptography which founded both Computer Science and Artificial Intelligence as new disciplines. Picture by Joseph Birr-Pixton on Wikimedia Commons w.wiki/3aYW

The house where Computer Scientist Alan Turing spent his final years is currently up for sale. The estate agent describes the property on 43 Adlington Road, Wilmslow as a Victorian family residence of significant historical importance. Wilmslow and the surrounding Cheshire countryside is popular with Manchester commuters, including many Man United, Man City & England football stars. Even if you could afford its premier league price tag, would YOU want to live in the house where Turing’s life ended so tragically? 

Turing was found dead at this house, on the 8th June 1954 by his cleaner. The cause of his death the previous day was established as cyanide poisoning. He was just 41 years old. When his body was discovered, an apple lay half-eaten by his bedside. 

The coroner recorded a verdict of suicide.

At the end of his life Turing was suffering mentally and physically. The homophobic British authorities were using a form of legalised torture, known as forced chemical castration, to punish him for being homosexual. At the time, homosexuality was a crime. Turing put on a brave face and joked about his castration (“I’m growing breasts!), but it must have been horrible to endure.

If you’re feeling suicidal or tortured, you don’t have to struggle with difficult feelings alone. If you’re suffering from emotional distress or struggling to cope a Samaritan can face your problems with you. Whatever you’re going through, samaritans.org are available 24 hours a day, 365 days a year. They respond to around 10,000 calls for help every day. No judgement. No pressure. Call them free any time, from any phone on 116 123.

While everyone can have a good old nosey at Turing’s house through the estate agents window, no-one needs to suffer like its famous former resident did. Personally I think I’d find this property an enigmatically haunted house to live in, knowing that this was the place where a great man’s life ended in such tragedy. How about you?

Turing’s House: Copper Folly, 43 Adlington Road, Wilmslow, Cheshire, SK9 2BJ

  1. Rightmove details www.rightmove.co.uk/properties/109329428
  2. Savills.com details in a single pdf file bit.ly/alan-turings-house
  3. Turing’s house in Google maps goo.gl/maps/krMM3A2JfgTUVFfm8
  4. GCSE computing: Alan Turing: Creator of modern computing bbc.co.uk/teach/alan-turing-creator-of-modern-computing/zhwp7nb
  5. Alan Turing’s Manchester by Jonathan Swinton describes what it was like to make new friends and lovers in the smog-bound, bombed-out city of Manchester from 1948 to 1954 manturing.net
  6. Leslie Ann Goldberg, Simon Schaffer and Andrew Hodges discuss Turing’s ideas and life with Melvyn Bragg https://www.bbc.co.uk/programmes/m000ncmw
  7. Breast enlargement in men undergoing chemical castration https://en.wikipedia.org/wiki/Gynecomastia

Acknowledgements

Thanks to Alan O’Donohoe for spotting Turing’s house on the market and to Joseph Birr-Pixton for publishing his picture of Turing’s blue plaque on Wikimedia Commons.

June 3, 2021

Join us to discuss cognitive load on Monday 7th June at 2pm #SIGCSE

Filed under: education — Duncan Hull @ 8:07 am
Tags: , , , ,

Cognitive Load Theory provides a basis for understanding the learning process. It has been widely used to improve the teaching and learning of many subjects including Computer Science. But how can it help us build better collaborative learning experiences? Join us to discuss via a paper by Paul Kirschner, John Sweller, Femke Kirschner & Jimmy Zambrano R. [1] From the abstract:

Cognitive load theory has traditionally been associated with individual learning. Based on evolutionary educational psychology and our knowledge of human cognition, particularly the relations between working memory and long-term memory, the theory has been used to generate a variety of instructional effects. Though these instructional effects also influence the efficiency and effectiveness of collaborative learning, be it computer supported or face-to-face, they are often not considered either when designing collaborative learning situations/environments or researching collaborative learning. One reason for this omission is that cognitive load theory has only sporadically concerned itself with certain particulars of collaborative learning such as the concept of a collective working memory when collaborating along with issues associated with transactive activities and their concomitant costs which are inherent to collaboration. We illustrate how and why cognitive load theory, by adding these concepts, can throw light on collaborative learning and generate principles specific to the design and study of collaborative learning.

Thanks to Nicola Looker for suggesting this months paper. As usual, we’ll be meeting on zoom, see sigcse.cs.manchester.ac.uk/join-us for details.

References

  1. Kirschner, Paul A.; Sweller, John; Kirschner, Femke; Zambrano R., Jimmy (2018). “From Cognitive Load Theory to Collaborative Cognitive Load Theory”. International Journal of Computer-Supported Collaborative Learning13 (2): 213–233. DOI:10.1007/s11412-018-9277-y

May 5, 2021

Join us to discuss what goes on in the mind of Teaching Assistants on Monday 10th May at 2pm BST

Filed under: education — Duncan Hull @ 11:13 am
Tags: , , , , , ,
Thinking icon via flaticon.com

Both graduate and undergraduate teaching assistants (TAs) are crucial to facilitating students learning. What goes on inside the mind of a teaching assistant? How can understanding this help us train TA’s better for the roles they play in education? Join us to discuss via a paper by Julia M. Markel and Philip Guo. [1] From the abstract:

As CS enrolments continue to grow, introductory courses are employing more undergraduate TAs. One of their main roles is performing one-on-one tutoring in the computer lab to help students understand and debug their programming assignments. What goes on in the mind of an undergraduate TA when they are helping students with programming? In this experience report, we present firsthand accounts from an undergraduate TA documenting her 36 hours of in-lab tutoring for a CS2 course, where she engaged in 69 one-on-one help sessions. This report provides a unique perspective from an undergraduate’s point-of-view rather than a faculty member’s. We summarise her experiences by constructing a four-part model of tutoring interactions: a) The tutor begins the session with an initial state of mind (e.g., their energy/focus level, perceived time pressure). b) They observe the student’s outward state upon arrival (e.g., how much they seem to care about learning). c) Using that observation, the tutor infers what might be going on inside the student’s mind. d) The combination of what goes on inside the tutor’s and student’s minds affects tutoring interactions, which progress from diagnosis to planning to an explain-code-react loop to post-resolution activities. We conclude by discussing ways that this model can be used to design scaffolding for training novice TAs and software tools to help TAs scale their efforts to larger classes.

This paper was one of nine best papers at SIGCSE 2021, there’s a video of the paper presentation on pathable.sigcse2021.org. All welcome. As usual, we’ll be meeting on zoom, see sigcse.cs.manchester.ac.uk/join-us for details.

References

  1. Markel, Julia M. and Guo, Philip (2021) Inside the Mind of a CS Undergraduate TA: A Firsthand Account of Undergraduate Peer Tutoring in Computer Labs SIGCSE ’21: Proceedings of the 52nd ACM Technical Symposium on Computer Science EducationMarch 2021 Pages 502–508 DOI: 10.1145/3408877.3432533 (open access)

April 15, 2021

I wish I’d read this book when I was doing my PhD!

Anyone for a game of PhD bingo?

Published this year by Oxford University Press, How to Get Your PhD: A Handbook for the Journey by Gavin Brown [1] is essential reading for anyone thinking of doing, or trying to get through, a PhD. I wish I’d had this book when I was doing mine, here’s why:

I thoroughly enjoyed my PhD and given the chance I’d do it all again. I was lucky to be able to do research guided by a great supervisor (Robert Stevens) and it was rewarding being part of a big and friendly lab. There were loads of opportunities to get involved in all sorts of other projects along the way. Thankfully, I also had some good mentors and met tonnes of interesting people from all over the world. I am very grateful to Robert, Carole Goble and everyone else who made it possible.

Despite all the good stuff, there’s plenty I could have done better. Hindsight is a great teacher. Gavin’s book would have helped me do a better PhD but hadn’t been written at that time – I wish it had been. I wish that I knew what I know now, when I was younger. [2]

Alongside serious technical advice on the mechanics of doing a PhD, Gavin’s book provides a good overview of some the psychological and emotional hurdles every PhD will encounter. Unlike a lot of similar books (there’s already tonnes of self-help PhD guides out there), this one is written in first person singular which makes for a more engaging and shorter read. Serious advice is balanced by the books light hearted tone, with plenty of humour, such as the game of PhD Bingo, shown in the picture on the right. Like most students, I ticked all those boxes (BINGO!) apart from the “you will read this book” box. Don’t be that person, Read The Friendly Manual! RTFM. Read THIS Friendly Manual!

The handbook also includes personal stories which help get key messages across, not just from Gavin, but a distinguished bunch of scientists, engineers and mathematicians who have contributed to the second part of the book including Nancy RothwellVictoria BurnsSteve FurberLucy KissickHiranya PeirisMelanie LengJeremy WyattDavid HandCarolyn VircaShakir MohamedJonny Brooks-Bartlett and Jennifer Polk.

So if you’re wondering about doing a PhD, or you’re currently doing one, go and read Gavins book. I’m not just saying that because (disclaimer) Gavin is a colleague of mine. I’m saying that because I wish this book had existed back when I did my PhD. It’s packed full of sound advice and I heartily recommend you read it!

References

  1. Brown, Gavin (2021) How to Get Your PhD: A Handbook for the Journey, Oxford University Press, ISBN:9780198866923
  2. Lane, Ronnie and Wood, Ronnie (1973) “Ooh La La.” In Ooh La La. The Faces. “I wish that I knew what I know now, when I was younger…”

Next Page »

Blog at WordPress.com.