Resources for the ambitious undergraduate or beginning graduate researcher in astronomy & astrophysics

Compiled by: Chris Matzner.  I appreciate any suggestions for edits and (non-commercial) additions to this page; please email me. It is perpetually under construction.

Starting research:
Choosing Topics & Advisors
Good Research Habits
Conducting research:
Literature Searches
    ADS | arXiv

    Linux/Unix | LaTeX | Emacs | vi
    Python | Matlab | Octave | IDL | IRAF | Mathematica | Maple | Numerical Recipes
    SuperMongo | GnuPlot | VNC
    Programming Languages
        Fortran 90 | Fortran 77C++ | C | Awk & Perl
Statistical data analysis
Expressing your results:
Giving Presentations | Writing effectively | Winning Posters | Composing scientific figures
Advancing in the research world:
Attending Meetings | Visiting Research Groups
Obtaining Good Recommendations | Teaching Portfolios
Creating a Web Page | Maintaining your CV | Writing Applications
Aspects of citizenship:
Outreach | Equity

Starting Research                                                                        [top]

Choosing research topics and advisors

In some cases you will have a choice of with whom and on what you would like to work.  There are many criteria to consider, which vary somewhat depending on the length and scope of the project.  These include clarity of the project's goals; ease with which they can be decomposed into lesser (still worthy) goals; relevance to the community; and relevance to a larger research theme.  Don't forget to consider your own passions and talents in making this choice!  You should never find research to be a drag.

If you are in a Master's or dissertation project, it is very beneficial to discuss your career plans with your advisor, and alert your advisor of any changes.   This affects your choice of project, which skills are most important to acquire in graduate school, and how best to divide your time between research and other activities like outreach.  It's also very important for your advisor's ability to apply for grants and build a healthy research group.

The U.Toronto School of Graduate Studies has a very useful handbook for students on graduate supervision. 
Also of interest are these outcomes of my discussions with graduate students at the University of Toronto:

Good Research Practices

1. Read Cole Miller's excellent guidelines [PDF] for beginning astrophysics research.
2. With the help of your advisor, break the project into smaller goals that can be done in sequence.
3. Agree to a timeline for accomplishing these smaller goals.
4. Discuss your progress with your advisor - in person or in writing - at least once per week.  If new goals arise, or progress slips, then you should revise the original timeline.
5. Keep a log of your research activities.
6. Get to know the project very well:
a. Read the important literature to for expertise in your project area and to gain perspective on its significance to the community.  This requires constant effort and it is best to maintain a pace of one or more papers every few days.
b. If there are simple calculations to be done to understand the basics of the problem, do these without waiting for prompting from your advisor.
c. Know, at the very least, what your own advisor has already published or presented on the topic.
7. Interact frequently about your research with those around you, to gain perspective and feedback on your project.  Critical discussion is crucial to the development of a good research strategy.
8. It is very rare for researchers to succeed if they consider research a 9-5 job.  Usually it takes more time and effort than that. But, one must balance it with other interests to avoid going insane.  If you are passionate about your work then finding this balance is worth the struggle.  If not, why do research?
9. Challenge yourself to go beyond the goals set by your advisor:
These steps make the difference between a mediocre effort and a stellar one.

Conducting Research                                                                        [top]

Literature Searches
To do research in a subject, you must become an expert in it.  Therefore, research projects must always be accompanied by very thorough surveys of the scientific literature.  If you find an unexplored avenue, unjustified assumption, or unexplained phenomenon in past work, this can be the basis for a new project.  Once you've chosen your project, map out the sequence of concepts and arguments about it by tracing the important citations backward to their source.  At the same time, you should know of any recent developments that might impact (e.g., scoop!) your research.  Here are some primary tools:

Your local library – the right place to start for finding books, journals, and electronic resources otherwise hard to find.

Here is a large repository of on-line texts, which may cover your topic of interest.

The on-line Handbook of Space Astronomy & Astrophysics by Zombeck has a broad discussion of useful facts and formulae.

CDS's AstroWeb – a large, comprehensive collection of astronomy-related internet sites and resources

NASA ADS – get to know it. It can find and often display most astronomy articles, display lists of their references and citations and 'related' and 'also-read' articles to the one you've chosen. It also generates automatic LaTeX and BibTeX citations to the articles (using a standardized citation format); see the bottom of any abstract page. These, in turn, can be used to construct the bibliographies of your scientific reports and articles.  It is often updated with new, useful features.  Recently, it has gained the capacity to generate email updates on topics of your choice, and to generate, organize, annotate, and share "private libraries" of selected articles. 

The arXiv preprint server - A forum for the circulation of papers before publication.  You can sign up for daily emails of all astrophysics (astro-ph/) abstracts, for instance, but be ready to spend half an hour each day reading through them.   Most astronomy departments have a daily or weekly meeting to discuss the most interesting of these.  You may also submit refereed publications or conference proceedings.  Some people stick to the rule that articles should only be submitted after they have been submitted to journals or after they have been through one referee report.  There is no injunction against this, but it's probably not a bad idea, especially for a first publication.  Note: some, but not all, arXiv preprints are searchable via ADS if you click "arXiv" in the query form.

In addition, here are several excellent pages compiled by the Astronomy & Astrophysics Library at the University of Toronto:

Computer Literacy and Useful Scientific Software

Start with the Astrobites guide to astronomical software and the AstroBetter Wiki (computer section) for quick introductions.  Some of the languages discussed below (Python, HTML, etc) can be learned rapidly from sites like CodeAcademy; for a low-level introduction, Khan Academy's programming pages are not bad at all.

Linux and Unix – Preferred operating system for scientific work. Note, Mac OS X is Unix-based (open the Terminal).

LaTeX – a typesetting language for writing scientific documents, including means to typeset equations and formulae and to include figures, tables, etc. This is far faster and more flexible than Word, believe me. In fact, it's practically the only way to produce scientific papers in astronomy.

Emacs – a sophisticated text editor with many commands and “modes” that are extremely useful for editing specific types of documents, viz. C or FORTRAN progams, LaTeX documents, etc.

vi a text editor with a completely different set of rules from Emacs, and a fierce following. Note, there is a vi-mode in Emacs, so you can get the best of both worlds.

Python - a free, open source and extendable interactive data language that has become very popular, and therefore increasingly useful.   Thousands of python packages and modules have been created for most common tasks, including:
There are many tutorials and blogs on Python usage.  I especially like:

Matlab – an interactive language for data manipulation and visualization.  Unlike Python it is neither free nor open source; on the other hand, it has the advantage that functions follow a standard protocol andand documentation is easy to access.

Matlab's syntax for doing operations on arrays and matrices has some commonalities with Fortran 90. It is especially useful if augmented with functions and routines (<function>.m) that perform common tasks (differentiation, trapezoidal integration, zero-crossings) on two-column arrays that define “functions” y(x).

Matlab has the capacity to produce publication-quality figures, which are easily generated and whose properties can be edited from the command line or via GUI tools.  It major drawback is that its TeX interpreter is limited to a range of symbols that does not include, for instance, the Sun symbol (\odot).

Octave – a free package (included in recent RedHat Linux releases) that is very similar to Matlab (to the point of using the .m filename extension) but which (for now) lacks a number of useful features. It employs GnuPlot for its graphics output.

IDL similar in style to Matlab, but with a different (I say worse) syntax; more commonly used among astronomers. It therefore has available a wider range of pre-existing routines specifically for astronomical use.

IRAF – a package specifically for astronomical data reduction.

Mathematica – an environment for the symbolic (and numerical) manipulation and solution of equations. For instance, Mathematica shares with Matlab and IDL the ability to solve ordinary differential equations given sufficient boundary conditions (although the degree of user control is generally lower with Mathematica); however, only Mathematica (or Maple, or a few other symbolic math packages) can symbolically solve a differential or algebraic equation in closed form.

Maple – a mathematics package similar to Mathematica. More Canadian.

Numerical Methods

SuperMongo a popular graphics package that can read data files, perform simple manipulations on them, and graph their output. Generally it is not as powerful an analysis package as Matplotlib, Matlab or IDL; nevertheless, its graphical output can be very clean.

GnuPlot – a less powerful, but perhaps more straightforward, graphics package

VNC – Not a software package. Instead, VNC is an efficient means to turn a window on your machine into a 'distant monitor' on an external machine. VNC uses compression to speed the transfer of mouse movements and keystrokes from your computer to the distant one. VNC comes standard with recent RedHat Linuxes, and versions are downloadable for Windows and for Mac OS X.  You can get by with just the viewer on your own machine. You run 'vncserver' on the machine you want to log into, and 'vncviewer' on your local machine.
The first time you use VNC, it will prompt you for a password.  Do not forget this, as it remains your VNC password for all future sessions.  I suspect that a file must be deleted to establish a new one.
You may have to set up a 'ssh port tunnel' in order to get through the firewall on the distant machine; under Linux this can be accomplished with 'vncviewer -via user@<remotehost> localhost:<port>' where <remotehost> is the name of the distant computer and '<port>' = '4' corresponds to actual port 5904 (offset of 5900). 
To set up port tunneling under Windows, use an ssh program like the free one from to log into the remote machine; define a profile for that login.  Then select "edit->settings->Connections->tunneling" and add a new connection of type TCP with the destination port both equal to 5904 (or 5900 + desktop number assigned by the server).  The listen port can be 5901, for instance.  Then run VNC viewer; you should be prompted for your VNC password and the host.  For the host, type "localhost:1" if you have mapped the distant port onto 5901.
SSH tunneling is strongly recommended and often mandatory, as VNC does not encrypt the information it transfers.

Programming Languages:

Statistical data analysis
Introductory resources:
Bayesian statisitical techniques for more advanced analysis:

Expressing your results                                                                        [top]

Giving Presentations

Science is gaining knowledge by applying logic to the world around us.  Every scientific presentation must establish that some important question is at stake, and how logic is used to understand it.  

As communication tools, presentations leave a lasting effect on the audience -- either that you really know what you're up to and how to convey your results (and enthusiasm) to them, or that you don't.    For this reason it's a good idea to think through the process of constructing and presenting a talk.  My tips:

0. Choose an interesting topic and make sure you know what you're talking about.  You should know the subject, the background, and what the important questions are, as well as the details relevant to your own presentation.  If this is missing, the following stylistic points won't amount to much.
1. Practice your talk at least twice, preferably in the presence of someone who can give substantive critical feedback.
2. Start by giving the audience a sense of who you are, why you're interested in your subject, and what makes the topic (or your approach to it) distinctive.  That is, establish some rapport with the audience and give them a sense of what's at stake so they'll stay awake.   Along these lines,
3. Explain up front what central question will be addressed in the talk and why this question is interesting and important.   Never launch into a complicated argument until you've thoroughly established why the audience should care about it.
4. Make sure each element of the talk has a point that builds toward the goal of the entire talk, and take time to remind the audience of these points and goals at regular intervals.
5. Make sure you speak clearly, include pauses at important places, maintain eye contact with your audience, and stop to ask for questions.  Treat questions with respect and interest, even if they seem derogatory.  If possible, incorporate aspects of the questions into the talk. Do not be afraid to say "I don't know."  Difficult questions should be postponed for discussion afterward.
6. Strive to be clear and concise.  Use your practice runs to streamline the discussion and to eliminate extraneous comments.  Be careful not to repeat yourself. Avoid jargon terms and excessive detail on overheads; make sure what is shown is legible and easily comprehensible, and that all graphs and figures (and their axis labels) and equations get explained in words.  Be careful to check the units of any equation, and make sure that every variable is defined as soon as it is introduced.  Many tips for clear expression are offered in the writing advice section. 
7. Interest the audience.  Do it through analogies, posing questions and puzzles, (brief) relevant anecdotes, etc... not jokes, unless you're naturally funny.  Act naturally at all times.  Make sure that the audience feels they have learned something, even if it is only how to explain something clearly that they already knew.  This takes a lot of work, so start preparing your talk early.
8. Express enthusiasm for your subject.  The inflection of your speech and your gestures and body language should convey this. Speaking of body language:  do not pace or fidget; at the same time, don't stand motionless or hide work on the blackboard with your body; don't read your overheads.
9.  Some people think opening outlines are essential; others eschew them.  Be careful to use an outline only as a teaser for what's to come; don't fall into the trap of discussing material that will be properly introduced later.  I prefer not to include "Conclusions", "Summary," and "Future Directions" in the outline: these elements should exist in any talk and it wastes time to say them.  Stick to items that distinguish your work.
10. Finish your talk early enough to practice it several times. Did I say this already?  This is more impotant than trying to include last-minute results, although it may not feel that way at the time. Pay close attention to the critique of your test audience, and respond to it!   Be willing to cut or reorder material, or start over entirely, if you need to.

Very importantly: pay attention to the talks you experience. Think about what makes them good or bad.  How long does it take to figure out that a speaker doesn't know what he or she is talking about, or that they don't have a clear point?  What is the difference between a well-practiced talk and an unprepared one?  Does a particularly slick presentation add or detract from the scientific points? 

Writing Effectively

Many of the tips for presentations also apply to written expression.  Written documents should be clear, consise, and understandable to those outside your specialization.  It is worth the effort to find simple ways of explaining complex ideas.  Your paper or report should have a point, thesis, or central question which is stated immediately and that organizes the entire document.

Speaking of organization, the most important element of a well-written paper is a logical flow: a conceptual structure that is apparent in the abstract and outline, and which is not broken up by extraneous sentences and thoughts.   Papers with good logical flow are easy to read and easy to skim; their sentences are not confusing; and their sections are joined by transitions that help to remind the reader where the argument is headed.  Of course, you can only achieve this if you really know what point you're trying to make, so it is worth spending the time to figure this out in advance.
Very importantly: pay attention to the way papers are written, and take note of the elements that really strike you about the very good ones.

Creating Award-Winning Posters

See Jason Wright's excellent advice page for winning posters as well as this tutorial.

Composing Scientific Figures

A good science paper has roughly one figure per scientific point. The primary rules for figures, as defined by Edward R. Tufte in the influential book The Visual Display of Quantitative Information, are clarity, precision, and efficiency.  See
For articles, I prefer figures that can be understood at a glance, rather than requiring a lengthy caption or careful comparison to a legend.  This helps readers scan your article, comment on it at preprint discussions, or display your figure during a talk.   This means: adding text to the figure to explain curves and symbols where necessary, keeping it visually simple and clear, and making lines and text large enough to be understood from the back of a lecture hall.   

Colour is an excellent way to add easily-understood information, but keep in mind: (1) many men
(7-8%) are colour blind, so use software like SimDaltonism to test your figure; (2) People still print papers on grayscale printers, so use a printer to test it too.  Many of the world's best figures were printed in black and white: take note when you see a particularly good example, and think about what can be accomplished with line and symbol styles, hatching, and careful attention to layout.

Very importantly: pay attention to the figures that grab your attention and make a simple point.  How was this accomplished?  Would some interesting figure stand on its own when projected in a lecture hall?

Advancing in the research world

Obtaining strong letters of recommendation

Professors are impressed by curiosity, creativity, dedication and tenacity, interest and enthusiasm, and initiative. (In short, “spark”.) Very beneficial also is the ability to carry projects through to their conclusion without cutting corners, and the ability and willingness to discuss your work and ask questions of others. A good letter of recommendation contains specific examples of these traits (and other positive qualities, including how the student functions within a group or in collaboration). For this reason, it is vital to create specific instances to refer to! And, it does not hurt at all to keep a log of your research activities for later reference (by you or your prof.).

Many good research practices will manifest themselves in good letters.  So, establish a schedule and a set of expectations with the professor early in the project, and then provide them with regular progress reports.  Professors will vastly prefer honest assessments of what can be done by when, to reasons for slipped deadlines after the fact. 

Visiting a Research Group or Prospective Institution

Whether visiting for an undergrad project or for a faculty job, remember that there is only one chance to make a good first impression.  Your hosts are taking time out of their schedule to meet with you, just as you are for them.  Even if you know that you will not join their group, there is ample opportunity for future interactions -- so make your best effort.  This includes listening attentively to their research activities, asking challenging questions, and maintaining a friendly and outgoing demeanor.  Do not feign knowledge or skills you don't have.  If possible, prepare in advance by looking up their projects, papers, websites, and collaborations.

Maintaining a Teaching Portfolio/Dossier

Although this site is primarily about research, teaching is an equal part of the job description for graduate and professorial (and sometimes postdoc) positions.  Teaching well is also a noble end of its own.  When applying for jobs that include a teaching component, it is essential to provide some indication of your past experience.  This is best accomplished with a teaching portfolio in which you present curricula, syllabi, assignments, student testimonials and evaluations, etc., that may be of use in this regard.  Writing a portfolio also stimulates self-reflection on how to teach well!

Very importantly: pay attention to the way teaching is done well and poorly.  If you are reading this site, you may still be taking classes; but very soon you may find yourself on the other side of the lecture hall with chalk in your hand!   When you begin teaching, do not just take the path of least resistance, and replicate the courses you took.  Instead, seek out advice from your university and local experts.    

Maintaining your CV

A strong and well-maintained CV (curriculum vitae, or vita) is always useful.  Here is the LaTeX file for my CV (as of June 16) and here is the PDF it generates.

Creating a web page

In the sciences, your institution almost certainly provides hosting for web pages, and it is often expected that you will have one.   You may be able to rely on your institution's staff pages (by providing some of the relevant content).  To create your own pages, you will need some combination of the following:
This page was created with Komposer.  Most of my website was edited directly in HTML and CSS from an original template.

Writing Applications

There is a wealth of advice online at the University of Toronto Writing Centre's site on Application Letters and Résumés (within Writing Advice). Purdue University also has a comprehensive set of advice files.

Attending Meetings

It is never too early to think about attending meetings in your field of research; there are often special financial aid packages from societies like CASCA, AAS, or your institution, and the meeting organizers often have extra money to aid young researchers. (I paid my own way to a very good meeting on starburst galaxies in the south of France when I was in the third year of graduate school.) A list of meetings is available at

Do not forget the reasons for going:
    1. To meet and interact with scientists working in your field, opening possibilities for future collaborations, employment, etc.;
    2. To present and defend your own work before the people who are most interested;
    3. To concentrate on the conference topic in a setting with minimal distractions.
Additional personal reasons, like sightseeing or visiting friends and family, are fringe benefits that must not distract from these goals, especially if grant money is being spent.   That said, many conferences include excursions; also consider extending your trip to allow time to explore.
Aspects of Good Citizenship                                                         [top]

Engaging in Outreach

Research is conducted for the public good, and especially in a field like astrophysics this requires outreach: presenting the fruits of our labour to the public.  Research institutions and granting agencies are devoting increasing resources toward outreach; at U. Toronto the Dunlap Institute and its outreach portal are prime examples.  Outreach takes many forms, including:
Within a research career, creative outreach is a sign that you are vigorously engaged and interested in science, that you care about the wider implications and context of your work, and that you are willing to make a bit of extra effort to contribute positively to society.  As a side benefit, you'll gain extra experience at talking and interacting with others.

But, practice moderation!  Outreach cannot replace a strong research program, and any serious distraction can stymie your progress.  For this reason you should speak to your advisor about your outreach plans and how they will contribute or detract from your research goals.

Working for Equity

It should be obvious to anyone at a research institution that large portions of society -- e.g. women, minority groups, indigenous populations -- are poorly represented.  Other underrepresented groups exist but are harder to detect.  Our challenge is to correct the biases and behaviours that maintain this situation, while sustaining the highest standards of research and ethical behavior.   At the very least: listen to, be respectful of, and welcome people not like yourself.

Page maintained by Chris Matzner
Last revision August 2017