Working With Margo

Working With Margo

Welcome to Systopia and my research group! My goal is to support you in your learning how to be a (better) researcher. We typically do this by working together on one or more research projects, where working together often means that you do a lot of the day to day work, but we regularly discuss what you're doing, what challenges you're facing, how you are solving a problem, and how we communicate the work to the rest of the world. In particular, I will spend a lot of time talking about writing -- how we need to tell the story of your work, not just report on what you've done.

In addition to supporting your becoming a researcher, I'm always available to offer advice, although you'll discover that I frequently listen hard to what you're saying and tell you what I'm hearing. That is, I try hard to be more of a sounding board and brainstorming partner than someone who has all the answers, because I do not.

And at the end of your time as my student, I will help you find the job that is right for you and transition to the status of lifetime advisor -- you are always welcome to reach out, fill me in on what you are doing, and ask for my advice that isn't really advice.

What I ask of You

To make the most of our time together, I have a few guidelines. I'll try to give you a pithy one liner but then explain why I believe that these guidelines are important for your success.

  1. Don't Hide. It is more common than not for things to go badly at some point during graduate school. You might be struggling to make progress; you might get a paper rejected; you might have something bad happen in your life; you might fall ill. Such events are entirely normal. All I ask is that you keep showing up. I would much rather you show up and report that you weren't able to make much progress than you cancel or fail to show up for a meeting. If I sense something is troubling, I will ask if you're OK. I want you to know that I care about you and will, to some extent, worry about you, but I will not pry. If you want to share what is going on, please do (especially if it's related to your research, but even if it's not, share what you want to share and/or talk about). If you don't want to talk about it, I will not push. If something happens, and I feel that I cannot provide adequate assistance, I am more than happy to assist you in a search for someone who can.
  2. Send status reports: Our lab has a mailing list called progress-reports@cs.ubc.ca. If you are on the list, then you get to see everyone's status reports, but the price of admission is that you have to send a weekly status report yourself. The goal of sharing status reports is that it helps us create a cohesive and collaborative intellectual community. You may find others interested in your work; peers who might be willing to help; or other projects where you might make a contribution.

    As your supervisor, I find these reports extraordinarily helpful (especially if you send them sufficiently in advance of meetings, so that I can have read and digested them before we meet; sending them 12 minutes before the meeting does not accomplish this; sending them even the morning of the meeting may not accompish this as my days are often packed). They let me make better use of the time we have together. Rather than having to absorb your status in real time, I can do that beforehand, perhaps ask you questions, and then use our time together to help you get unstuck, help you look ahead at next steps, pour over data, or engage in any other activities that help move your work forward.

  3. Attend Systopia Reading Group There is a joke that a PhD (and a research masters) is the process of learning more and more about less and less until you know absolutely everything about nothing. While clearly an exaggeration, a research undertaking is a deep dive -- you are trying to become expert in an area. However, expertise alone is not the goal -- a research degree should prepare you to adapt to a changing world; in computer science those changes occur with alarming frequency.

    Given how challenging it is to keep up in one's own area, how on earth do you simultaneously keep track of what's happening in other areas? Activities such as reading group serve exactly this purpose. No one will hire you hoping that you will spend your entire career working on exactly the same kinds of problems on which you are currently working. They want to see both some curiousity about things not in your area and the ability to think critically about information that is presented to you.

    As a presenter in reading group, you gain experience translating your own area (or your own interest) into something that is accessible to others. We have all experienced talks where it felt like the speaker was talking to the three experts in the room and the rest of us got nothing out of it. You don't want to be that speaker -- presenting a paper gives you an opportunity to practice communication -- and communication is (at least) 50% of the goal in research.

    Participating in someone else's paper presentation gives you a glimpse into a different area. If you don't read the paper, then you cannot form your own opinions on the work; you become a passive listener and are unlikely to take anything away that you can pull out months or years later at an interview. You will undoubtedly read papers in different levels of detail. At the very least, before you walk into reading group, it will be helpful if you can figure out the fairy tale the paper tells (context, problem, solution, why it matters). You probably want to understand what the authors believe they have contributed to knowledge. Ideally, you will then have formed your own opinions about the work: do you think that they are addressing an important problem? Did they convince you that they have found a good solution to the problem? Do you believe their results? How well was the paper written? What do you wish they had done better? There is likely to be at least one thing you can take away from any paper to help you be a better researcher.

    Getting a lot out of reading group means putting in the effort -- read the paper. You need not go through every teeny tiny detail as you would if you were presenting, but if you don't read the paper, it's difficult to engage. And that's the second part of getting something out of the activity: engage. Ask questions, offer your opinions? Figure out if those in the area saw something you didn't. It's 100% OK to love a paper that others don't; it's also OK to hate a paper that others seemed to love. You will learn both about computer science and yourself if you push yourself to engage with material outside your own area.

  4. When people ask about OUR work, if it's YOUR work, reply Whether it's a student or a faculty member, having someone interested enough in your work to reach out is a huge win! Respond and be helpful. You never know where such a query might lead.
  5. Do not expect to push papers out at the last minute I appreciate that deadlines slip, but in my experience, papers written in the three days before a deadline rarely get in. Start writing early, long before the research is done. Continue writing as you learn more about the work. Come to meetings with pictures and graphs that may eventually end up in papers. Plan on finishing a complete draft with ample time for me to review it and then for us to get some external feedback.
  6. Stay on top of administrivia There is one of me and many of you. I cannot keep track of all your deadlines and when forms are due. That is your job! I am typically pretty good at giving you rapid turn around on easy signatures. But, if you have to submit a piece of writing, I appreciate a couple of days to read it and potentially discuss it. Your goal should be that I never get a nasty gram from the grad office asking anything about you!

    A corollary to this is, "Check your pay stubs!" If you do not think you are being paid what you should be, please ask me. We have enough errors on this front that I want everyone to do their part -- you spot the error; I fix the error. And if you aren't getting paid at all, definitely speak up.

  7. Learn to write Research that is not communicated has little, if any, value. When we submit papers, I want them to be the very best work we can do. They should be a pleasure to read -- that means they must be accessible to people outside our tiny project team. I have become quite insistent that we develop the paper before and while we conduct the research and that we focus on the story we are telling.

    I will spend a lot of time working on our papers, but I ask that you do your part before sending work to me. Read it over end to end! You might be amazed that I have to say that, but far too often I've seen students work on sections in random order and never read the paper end to end. I can always tell -- there are inconsistencies, redundant sections, and lots of other telltale signs. Run your work through spell check. Run it through a grammar checker. Use genAI tools responsibly and thoughtfully.

    Strive to make your writing just a little bit better each time you send me something.

  8. Use the right communication medium We run the lab on Discord, which provides a great mechanism for group discussions and quick messages. However, Discord is not good for me for items that I cannot respond to immediately.

    If you have a quick question that I am likely to be able to answer without having to do extensive research or without having to think hard, Discord is great. E.g., Can I come by office hours tomorrow at 10? Are we meeting today? What room are we using today? Think of things I can reasonably take care of in the couple of minutes I have between meetings.

    For things that require more thought or time, please use email. E.g., The paper at [link, repo, pdf] is ready for your review. I was thinking that my next project could be ... what do you think? Could you write me a letter of recommendation for X?

  9. Keep the Systopia web site up to date The only thing worse than having no web site is having one that appears to be unchanged since the dawn of time. Do not let our Lab website look that way. Everyone can edit the website (read the instructions about how to do that -- the website is a github.io site, whose repository lives in the Systopia organization to which you should have been added; if you have not, let me know), so if everyone does just a little maintenance, we'll be in great shape. What does this mean for you? If you have a paper published, put it on the web site and add it to the news. If something good happens, add it to the news. Keep the parts of the web site that contain your research area up to date. Make sure that your picture is on the site and that the link on it goes to ...
  10. Maintain a personal web site You are now in the business of producing research and your personal web site is where you advertise that. Keep it up to date. Put your papers there. Put links to your code repositories there. Assume that prospective employers will look at it; leave a good impression.
  11. Attend Lab Social Events This does not mean you have to attend all of them, but the people you meet in graduate school are the beginnings of your professional network. You will continue running into these people throughout your career. (When I first wrote this, I was scheduled to have dinner with a colleague from grad school I hadn't seen since I graduated.) Get to know your fellow lab mates -- you never know who might need your expertise for a side project or who might be able to help you on your work. Research does not have to be a lonely undertaking!
  12. Do Your Part Things do not "just happen". Be a good lab mate. Keep your area clean. Do your part in doing some of the communal cleaning. Volunteer to do things -- organize an activity, host a guest, book meeting rooms, take pictures, etc. Again, the lab is big enough that we don't need everyone to do something every term. But do your part. You are part of the community -- we want you to both contribute to that community and benefit from it.
  13. BUT: Don't take on so much service work it interferes with our research There are extremes. You do not have to do everything. And please chat with me before taking on service activities that will consume a significant amount of time. I rarely say no, but I like to help you think through the consequences and the potential impact on your research progress.

My Commitments to You

  1. My goal is to produce outstanding students, not papers.
  2. Learning to ask the right questions is the most important part of becoming a researcher. I will help you learn to identify good research problems, but I will not just give you a problem to work on.
  3. I try my best to be as responsive as possible. If you have asked me something and I haven't responded after a day or two (and I'm not attending an event during that time), please feel free to ping me.
  4. I will give you honest and constructive feedback.
  5. I will do my best to be respectful in my communication with you -- I do sometimes tease and joke, but I strive to never cross the line into being hurtful. If I ever do that, I want to know. I promise not to be defensive.
  6. I will be open to feedback and constructive criticism.
  7. I will meet with every student at least once a week. These meetings might be in group settings, as the group collective is frequently more useful than I am alone.
  8. If you would like a one on one meeting, just ask. Although my schedule is crazy, I can usually find time within a day or two.
  9. I will do my best to fund you. I may suggest that you TA, because I think it's part of your overall education, but I will normally pay you a full stipend so that if you TA, you can earn extra money.
  10. If you have a paper accepted to a workshop or conference, I will send you to the conference (funding permitting).
  11. If you want to attend an event where you are not presenting, ask. I don't promise to always say yes, but I'm happy to have the conversation.
  12. With very few exceptions, I do not expect that you are available 24/7. I may send email early in the morning, at night, or on weekends, but that does not mean I expect a reply. Exceptions are when we are working hard to a deadline. In a perfect world, that should never happen, because we'll have papers written a couple of weeks before a deadline. In the real world, this sometimes happens. (I do reserve the right to be grumpy when it does.) And sometimes I am working to a deadline and I'd like to showcase your work -- it's my way of advertising you and your work. I do my best to let you know, in advance, if I'm likely to want to do that and might need materials or ask you questions.
  13. I will support you (and encourage you) to seek out fellowships and scholarships that acknowledge how awesome you are and help you get more funding than stipends allow and, ideally, also help me out by allowing me to shift some funding when you are particularly successful.
  14. I will schedule (at least) one meeting a year where we assess how our working relationship is going. I will enter these with an open mind and accept constructive criticism and work hard to do better by you in whatever way I can.
  15. If you decide that I am not the right advisor/supervisor for you, I will respect that decision, help you find a new advisor/supervisor, and bear you no ill will.
  16. After working together, I expect that our relationship lasts a lifetime. One of my greatest joys and privileges is when past students take the time to update me on what's happening with them or get together. (I have one student who annually drives up to Surrey for a catch-up lunch, and every time, I am grateful and delighted.)