Interview Guide

Student Experiences and Perspectives on Learning to Code in 2024

Author
Affiliations

Joe Marsh Rossney

UK Centre for Ecology & Hydrology

University of Edinburgh

Published

September 1, 2024

Modified

August 29, 2025

Abstract

This interview guide was used by interviewers during interviews with students (i.e. it was open on a second screen). Note that these were semi-structured interviews and hence this served as a loose guide and not a protocol.

How to use this guide

NoteLayout

1.1 Question header (for easy reference)

Italicised text are suggested wording for the ‘main’ question.

  • Bullet points are potential follow-up questions.
Tip

Sometimes there are some further annotations.

1 Starting the interview

  1. Say hello, and thank the student for taking the time to participate.

  2. Introduce yourself and your role in the project very briefly.

  3. Tell them that before the interview starts you will just run through a few aspects of the interview so that you’re both on the same page.

    • Treat this more like a conversation than an interview.
    • Feel free to take the conversation in any direction you feel is important or interesting.
    • You can decline to answer any question.
    • It’s ok to mention people by their names, since these will be redacted from the transcription.
    • Most importantly: The purpose is not to judge or compare, but to simply listen to a wide range of experiences and perspectives.
  4. If they have not already completed the Informed Consent Form, stop here! They will have to do this now, while you wait (though it shouldn’t take long).

Caution

If the student has not completed the Informed Consent Form you cannot proceed with the interview!

  1. Ask them if they have any questions.

  2. Ask them if they are happy to move onto the interview and for you to start the recording.

  3. Start the recording by going to More > Record and transcribe > Start recording. This should start both the recording and transcription, but you should double check by opening the live transcription in the sidebar.

  4. Ask the student to confirm, for the recording, that they have read the Participant Information Sheet and completed the Informed Consent Form.

2 Warm up questions

2.1 The path that led you here

Why don’t you start by telling me a little about yourself, and how you came to study physics at Edinburgh? What was the path that led you here?

2.2 Feelings towards your degree

And how are you finding the degree overall?

  • Are there any courses that you have particularly enjoyed so far?
  • Are there any courses that you’re particularly excited about taking?

2.3 Plans for the future

What about after your degree? Do you have an idea about where you’d like to go next?

3 Programming background

3.1 How did you start?

Tell me about how you started programming.

  • What made you decide to start learning?
  • Why did you choose these courses?
  • What made you stick with it?
  • Was it more a strategic decision, or are there particular aspects that you enjoy?

3.2 Tools and approaches

Are there particular tools that you often use when coding?

  • How did you discover these tools?

3.3 Collaboration and group work

Do you usually work by yourself, or collaboratively?

  • Is that because you enjoy working alone/as a group?
  • Was it more of a social thing or did it really help you?

3.4 Experience with university courses

How have you found your programming courses so far?

  • Are/were they a good level of difficulty?
  • Are/were the topics interesting, or not quite what you would have liked?
  • Do/did you find lectures/workshops helpful?
  • Do/did you find the TAs helpful?

4 Enjoyment of programming

4.1 An enjoyable project

Can you think of a particular example of a programming project that you enjoyed?

In 30 seconds, could you tell me a little about the project, assuming I’m not entirely familiar with it?

  • Why did you think of this project?
  • Was it e.g. the nature of the assignment, or anything to do with the people around you (lecturer, friends, …).
  • Did you go beyond what was directly asked for in the assignment?
  • Do you feel that your project was unique?
  • Were your decisions based on your personal interest/taste, or looking up best-practices, or …?
  • Can you think of any fun or interesting ways to take the project forward?

If they cannot think of a project they found particularly enjoyable, then pivot the discussion to what prevented them from enjoying a project.

By ‘project’ I’m including any assignments for your courses, not just the final one - e.g. for Computer Simulation, both the checkpoint tasks and the final project. But a project could also be something separate from a university course, e.g. a side project or hackathon or anything.

They may want to talk about multiple projects or a whole course that they enjoyed. This is ok, but try to prompt them to give specific examples.

4.2 Using existing code (if applicable)

EITHER

If you found some existing code on GitHub that you could modify for your purposes, how would you have felt? Would you have used it?

OR

If your lecturer had given you a skeleton code to start with, how would you have felt? Would you have used it?

  • Is there something important about starting from a blank slate?

4.3 What kinds of activities do you enjoy?

NOTE: consider moving this after the specific project question, so that they can ‘surprise themself’ when they move onto the general question. This way round, the specific question could just be an elaboration on the general.

What kinds of programming activities do you most enjoy?

  • More creative?
  • More problem-solving?
  • Design? User-facing? Showy?
  • Or low-level, niche, technical?
  • Are there any aspects of programming that you particulary dislike?

4.4 Creativity

Would you say programming is (a) building, (b) engineering, (c) crafting or (d) art?

  • Feel creative?
  • Like a blank slate and creative freedom?

5 Formative experiences

5.1 Important people or feedback

Can you think of anyone who has been particularly important or influential to you, in terms of your development as a programmer? Perhaps someone who taught you a lot or gave you some important advice or feedback?

  • What did they do/say that was so important?
  • What is the most valuable piece of advice or feedback you have received?

That’s fine. Ask them about the most valuable advice or feedback they’ve ever received.

5.2 An important project

Now I’d like to you think back and pick a project that you feel has contributed a lot to your development as a programmer. It can be the same project we just discussed, or a different one.

Could you tell me a little about the project, assuming I’m not entirely familiar with it?

  • What made it so important?
  • How did this project change/shape your thinking? What is different about the way you think/work now versus before?

5.3 Overcoming challenges

Were there any particular challenges that you faced during this project?

  • How did you approach/overcome these challenges?
  • How did you feel at the time? (Having fun? Stuck? Frustrated? Bored?)
  • How did you feel once you’d overcome the challenge, or completed the project? (Satisfaction? Pride?)

6 Generative AI

I want to move the conversation on to Generative Artificial Intelligence (AI), by which I mean the technologies behind things like Chat-GPT, Google Gemini, Github/Microsoft CoPilot etc.

6.1 General attitudes

Firstly, I’m interested to understand how these technologies seem from your perspective.

  • Are they something you find interesting?

  • What sorts of places do you get information from?

  • How familiar are you with these technologies?

  • What, if anything, have you used them for?

  • Do you feel on the whole positive, negative or neutral towards it?

  • Or is it mostly based on your personal experience?

6.2 A project where you used Generative AI (if applicable)

I’d like you to think back to a recent project where you used generative AI. It can be one that we have already discussed.

Tell me about the project.

  • How exactly did you use generative AI during this project?
  • What was that experience like?

6.3 Overcoming challenges (if applicable)

Were there any particular challenges that you faced during this project?

  • How did you approach/overcome these challenges?
  • Did GenAI affect the way you approached them?
  • Do you think you could have overcome the challenges without generative AI?
  • Did you find AI more/less useful than talking to friends, classmates, TAs, lecturer?
  • Can you remember how you felt during this time? (Fun, stuck, frustrated, bored…)
  • How did you feel once you’d overcome the challenges, or completed the project?

6.4 Reflections (if applicable)

What do you feel you learned from this project?

  • Did the project help you to become a better programmer? If so, how?
  • How did this project change or shape your thinking?
  • Do you think it would it be fair to say that the AI was like a collaborator or co-author of your code? (Or do you view it as ‘just a tool’?)

Take opportunities to prompt the student to compare their experience pre and post AI.

6.5 Comparison with fun/important project

Thinking back to your ‘fun’ project, can you reflect on how generative AI might have changed your experience?

How about the ‘important’ project?

  • Do you enjoy coding as much?
  • Do you feel like you’re learning more quickly?
  • With the above, would you have answered the same when you were a novice?
  • Does it change how creative you feel?
  • Does it change how confident you feel?

6.6 Why not use GenAI (if applicable)

So you have never used GenAI to help with programming. Are there any particular reasons for that?

  • Do you feel like you don’t need it, or it won’t be useful?
  • Are there any other factors that contribute to your decision not to use it? (e.g. general discourse, peer group, lecturers)

6.7 GenAI for learning to code

Thinking back to when you first started learning to code, how do you think your experience would have been different had you been able to use generative AI tools?

  • How so?
  • What do you think about the idea of introducing generative AI into introductory programming courses?
  • Do you think there is any role for generative AI to play in helping people learn to code? If so, what is it?
  • What if the overall difficulty of the courses was increased?

Probable bias towards their own experience being preferable.

6.8 GenAI and career plans

Has generative AI changed the way you think about your ambitions for a career at all?

  • Have you changed your mind about anything because of it?
  • Has it changed the way you think about the future in any other way, not necessarily related to your career?

7 Closing

So that’s all of the questions I had - at least all that I have time to ask! Thank you so much for this conversation, it was really interesting!

7.1 Is there anything I’ve missed?

Is there anything else you would like to add? Perhaps something that you feel is relevant that we didn’t get a chance to cover.

7.2 Ending the interview

  1. Stop the recording.

  2. Thank the student once more for their time.

  3. Remind them that they will receive their voucher by email in the next few weeks.

  4. Check with the student that they know how to get in touch with you if they have further questions about the project or things to add.

  5. Say goodbye and end the meeting.

Reuse

Citation

BibTeX citation:
@online{MarshRossney2025,
  author = {Marsh Rossney, Joe and Hogarth, Sarah and Gabriel Garcia
    Elizondo, Polux and Galloway, Ross and Smith, Britton},
  title = {Experiences of {Learning} to {Code:} {Perspectives} of
    {Undergraduate} {Physics} {Students} in 2024},
  date = {2025-08},
  url = {https://ExpLrnCode-2024.github.io/},
  langid = {en},
  abstract = {This site provides access to research materials and
    outputs produced during the \_“Experiences of Learning to Code”\_
    project, which was run by a staff-student collaboration in the
    School of Physics \& Astronomy at the University of Edinburgh from
    June-\/-December 2024. The study sought to understand how the
    experiences of undergraduate physics students taking programming
    courses have been changing due to the sudden availability of
    Generative Artificial Intelligence (GenAI) systems. The main inquiry
    took the form of a series of semi-structured interviews with 24
    student participants, whose experiences span the periods before and
    after the advent of GenAI.}
}
For attribution, please cite this work as:
Marsh Rossney, J., Hogarth, S., Gabriel Garcia Elizondo, P., Galloway, R., & Smith, B. (2025, August). Experiences of Learning to Code: Perspectives of Undergraduate Physics Students in 2024. https://ExpLrnCode-2024.github.io/