Project planning (UG4, MSc, MRes, PhD)
This page provides information about working with me on projects at Edinburgh Uni (DI-project, MSc, MRes, internships, PhD..). These information aim at avoiding false perceptions and expectations. For many of you it will be the first time your are working on a research project in this area. Generally, visualization and human computer interaction (HCI) is a large area with a multitude of application possibilities and complimentary expertise. You don’t have to be an expert in visualization but you need to be passionate about it in order to learn it. Visualization is not trivial and it is nothing you learn by reading a book or listening to a lecture. It takes time, practice, and iteration.
Perhaps the most high-level suggestion about a visualization project I can give is: it depends. Research is by nature open. If we knew what we’re doing we wouldn’t (want to) do it. We want to find things and we do not always know what we will find. Be patient, and curious, and creative, and keep pushing.
Defining a (PhD/MSc) Project with us
There are two extreme cases and a set of gradual shades in between them.
- You are comming with you own project idea and we discuss if (!) and how I can help you with my expertise. It’s a good idea to check some of my papers (http://benjbach.net). I generally am interested in supervising projects in visualization and HCI, but there are many areas I am not an expert and I want to you make sure I can sufficiently help you and being able to catch up with that area.
- Often I propose a project. Please read the project carefully and when you email me, tell me why you are interested in the project and what are your thoughts about it. Proposed projects are often embedded in a larger research project and might include collaborations.
- If you do not have a project idea yet, tell me why you are interested in visualization and in working with me. Again, look at my work and prepare for a meeting (questions, examples you like, problems you think visualization might help, etc.). What doesn’t really work is asking me for ‘a project in visualization’. I will have ideas and I will explain them to you, but eventually you are the one who spends a lot of time with the project and you must want to do it.
The degree of research and engineering can vary across projects and largely depends on your interests and skill. However,
- it is very important that you take ownership over the project!
- This means that you lead the project, not me. I can give you ideas and directions, but the project success is your responsibility.
- Let me know if you are reflecting about doing for a PhD or whether you want to become a developer. Generally, I try to make projects as visible and usable as possible, through publication or online tools.
Framing/communicating your project
A lot of reserch is communication. The end users of your research are always humans, even though you optimzie an algorithm. If no one knows your research of finds it useful, it remains a personal exercise. Hence, focus on communicating your research.
How to do that?
- what is the problem you are addressing?
- Why is this important?
- Who cares?
- What would happen if nothing would be done?
- Research question: ideally, this is
- a single question (multiple questions should logically follow onto each other and be connected)
- easy-to-understand and memorize (think of something you can show on a single slide during a talk, for a few seconds)
- convincing: something your audience agrees with that this is important and unanswered
- directly related to / motivating your research: if the question is too general, your reader won’t understand the choices in your approach. Formulate the question so that your approach becomes totally logically to answer that question
- answerable: pick a question that your approach and methods actually can help answering, even if only partially.
- falsifiable: pick a question where more than a single answer is possible and your methods can lead to multiple answers. Avoid tautologies.
- Approach: this is very wide, but includes any relevant high-level approach to your question,
- e.g., the domain
- e.g., any technology,
- e.g., a conceptual idea / inspiration
- e.g., prior experience
- e.g., specific methods (see below)
- **Methods: **what are the tools you are employing to answer your question? These are all sorts of reserch methodologies. Make sure they are motivated and again logical to answer your question.
- Contribution: the contribution are your results, knowledge gain, and possible impact. See more information below.
- focus on your own work. Don’t spend too much discussing existing work but explain your work and its results
- show examples of your contribution as early as you can to show people what they expect from your writing/telling.
Framing a contribution
A contribution in visualization and HCI projects can be anything from the following list and potentially more.
- an application that applies visualization knowledge to a specific domain. The project will include a task-analysis, description of domain and challenges, existing solutions (why they fail), propose visualizations, implement the application, and evaluate it’s usefulness with representative end users. Often application require extensive engagement with data and making things work.
- a survey collects and organizes existing work. There is a methodology in gathering existing work (e.g. keyword search on google scholar), a grouping of projects, a discussion, and potentially a high-level framework of terms, concepts, and trends in the field. Surveys are good if you’re planning to continue working in the field and if there is an abundance of literature that requires being organized.
- a study focuses on thoroughly studying a specific phenomena in visualization. This can be an existing or simple to implement technique, a perceptual issue, or anything else. A survey includes a literature review of the current (insufficient knowledge), a set of hypotheses to test, and a study methodology that tests these hypotheses and reports on the results. Eventually, a study includes an ample discussion.
- a guideline report is a specific format of a survey that focuses on summarizing visualization knowledge and examples for a specific piece of information knowledge; e.g. ‘rainbow color maps’, or ‘node-link diagrams vs. matrices’ etc. A guideline report includes references, studies, a thorough discussion, and some suggestions on using that guideline.
- an visualization or interaction technique describes a novel solution to visualize a specific aspect of data (e.g. geographic networks, hierarchies changing over time etc.). A novel design is motivated by a survey that discusses limitations of existing techniques, supported by studies where necessary. A design should include design goals or some rational that drive your design, discuss design alternatives, explain the design, implement the visualization demonstrate what it can show (use cases). A strict user evaluation is not necessary but some formal or informal feedback helps you evaluating your contribution.
- a system or toolkit is a technical solution to a problem. A system helps creating or running visualizations, while a toolkit allows others to code visualizations.
Some projects combine aspects across these projects types, but it’s good to think about one main contribution.
More information on papertypes in visualization.
During your project you will engage in most of the following steps. Some of the steps are general to research and design, others are specific to data visualization and HCI, which naturally are the fields I can talk most about.
Use the below list to plan your project and include specific weeks into your timeplan. Discuss the plan with your supervisor.
- Literature research: Search for the related topics and use the literature to motivate your own research. The relevant conferences are ACH CHI, IEEE VIS, IEEE Transactions of Visualization and Computer Graphics, Advanced Visual Interfaces, EuroVis.
- Design your interface, technique, visualization etc. Use sketching, and persons. Iterate and ask your peers for feedback. No one is perfect and the more feedback you get the more you will improve. Eventually, people will judge the result, not how you have gotten there (that doesn’t legalize cheating).
- Implement your work. There are different languages toolkits. Building something for the web is generally a good idea because it increases visibility and the chance of being used. Common approaches for visualizations include d3.js and WebGL.
- Evaluate your work in some way. This can include a controlled user study, informal interviews, questionnaires, observations, data-tracking, etc. The specific method depends on your question and the technique. I will help with that.
- Writing takes time and there is no formal training in technical writing. Start as early as possible, iterate, collect your ideas, and tell a nice story that demonstrate your knowledge of the topic and you ability to put the contribution into context. More information here.