Teaching
I have taught two graduate courses at Western, on scientific programming in Python and on machine learning in astronomy, and all their materials are free on GitHub. I also supervise students in my group and mentor students through outreach programs.
How I teach
My main teaching goal is that a year after a course, students can still describe its main ideas and know where to find the books or online resources that let them use the material quantitatively again. My lectures therefore focus less on memorizing and reproducing proofs and more on a solid understanding of the underlying physical concepts.
Most lessons follow the same pattern: a short piece of theory, a worked example, and then a task the students do themselves, often helping each other. I ask for anonymous feedback after every lecture (what was great, what could be better) and adjust as the course goes on. I try to set up an environment in which we tackle the material together, as equals.
I put computation into every course I teach. Much of modern physics and astronomy is a matter of implementing a physical model and letting numerical methods use large amounts of data to answer the big questions. I aim to train “π-shaped” people: scientists with broad general knowledge and deep expertise in two areas, typically their science and computing.
Courses
| Course | Level | Term | Materials |
|---|---|---|---|
| Astronomy 9506S: Data Mining and Machine Learning in Astronomy Seven lectures on data handling, fitting, maximum likelihood, Monte Carlo errors, unsupervised and supervised learning and neural networks, followed by a self-directed project in which each student applies the methods to a problem from their own research. Weekly stand-ups and co-working sessions. |
Graduate | Winter 2023 | GitHub |
| Astronomy 9505Q: Scientific Programming in Python I started this course in 2017 as an unofficial graduate course; it became an official course in the department, Astronomy 9505Q, in 2022. Ten lectures on scientific computing: Python basics, file handling, numpy and plotting; regression (least squares, RANSAC, Theil-Sen), minimization and fitting of non-linear models; numerical integration, interpolation, Fourier transforms, signal processing and wavelets; object-oriented and parallel programming, Cython; and astronomical applications with astropy and astroquery. Faculty members attended as well as students. |
Graduate | 2017–2022 | GitHub |
Student feedback on my courses has been overwhelmingly positive.
Open course materials
All lecture notes, code and exercises are on GitHub under the MIT licence, free for teaching or self-study (Python course, machine learning course). Homework includes estimating the age of the universe from a galaxy catalogue and predicting asteroid albedos.
How I mentor
I treat every student as a full member of the group from the first day, with a real problem to own. I choose projects so that the work ends up in use: in a paper, in the GMN or contrail pipelines, or in tools our partners rely on. A meteor flux method written by an undergraduate in my group is now used by NASA's Meteoroid Environment Office, and many students co-author our papers.
I want students to leave with skills that serve them whichever way they go: careful science with honest uncertainties, but also software engineering, working with external partners, and explaining results to non-specialists. Former members of the group have gone on to PhD programs at Cornell and Western, to software and data engineering, to finance, and to co-found their own company (see the group page).
Talent is distributed equally, but opportunity is not. I make room in the group for students who would not otherwise have a way into research, through programs such as B.L.U.E. and the GMN Outreach Project.
Mentoring and outreach
I got into science through a volunteer astronomy club in a small town in Croatia, and I try to give students in a similar position the same chances I had.
- Research supervision. I have supervised more than 25 students, from first-year undergraduates to PhD candidates; see the group page. Student projects have gone into operational use, including a meteor shower flux method now used by NASA's Meteoroid Environment Office.
- B.L.U.E. mentor. Since 2024 I have mentored students in Western's Black Leadership University Experience program, who worked on contrail detection with my group.
- GMN Outreach Project. Funded by private donors, the project gives meteor cameras and a curriculum on astronomy and computing to high schools in 12 countries, so students can take part in real research.
- Višnjan School of Astronomy, Croatia (2011–2017). I mentored groups of high school students each summer in meteor science, programming, image processing and data analysis.
- Public talks. I regularly speak at public nights, astronomy clubs, schools and in the media about meteors, satellites and contrails.