My opinionated guide to starting research early
My research journey started in a non-traditional way.
Most Malaysians only start doing research in their master's. I started way back in early secondary school, all thanks to Melwin Cheng, who got me into research early on.
This is an opinionated guide for high schoolers in Malaysia like me who want to work on cool research projects early. I only cover stuff I've experienced, from my own point of view, so take it with a grain of salt. If you want a more general guide, I wrote one that a lot of professors reviewed: MYResearchGuide Research Handbook.
I also borrowed ideas from a few guides I like, mostly on how projects work and how to write. They're all in the reading list at the bottom.
What research is
Scientific research itself is to push what humans know a little further. You find something nobody has known yet, then present evidence so others can check/reproduce it.
Two words to remember: claim and evidence. A claim is something like "my method is better than the old one". Evidence is the experiment, numbers or proof that says whether that's true. A cool idea with no evidence is just an opinion.
Research also isn't a solo thing. A big part of research is collaborating with other people, getting feedback, and explaining your work so others can follow it. It’s totally different from what most science competitions (eg olympiads) we had in secondary school The genius alone in a room is mostly a myth.
Starting early
The usual route is undergrad, then a master's or PhD with a supervisor. The good thing about this is that you get a mentor, a lab, and people to ask when you're stuck. It has downsides too. Academics are under pressure to publish a lot, which pushes many of them toward quick, safe projects.
If you start early, you get none of that. No supervisor, no lab, and usually nobody at school who has done research before. That's the actual hard part, more than the maths.
But what I do is reach out to professors or researchers who are willing to mentor you; that helps a lot, especially if they can provide you with free compute credit, which you can save tons of money.
What you need
It depends on which field you want to work in. For me, I do AI research, so knowing some maths and coding with A LOT OF READING should be enough that you can run your own experiments without begging someone else to do it. Which maths depends on the field, but linear algebra and calculus come up a lot in ML.
You need to read a lot and keep notes. Every project sits on top of older work, and the more you've read, the easier it is to connect ideas.
You also need to learn to explain things clearly, in writing and out loud. This matters more than people think. And also, you need patience. Most things you try won't work. That's normal, not a sign you're bad at this.
And you need taste too, which basically means knowing which ideas are worth your time. Nobody has it at the start. It's not only about picking topics. It's also noticing which weird result is worth chasing, and choosing the experiment that actually tells you something. You build it by trying things and finding out you were wrong.
The good news is you don't need money (at least for the early stage). Papers are free on arXiv, Google Colab gives you free compute sufficient for the early stage (you need huge compute when you scale up over time), and most tools I list below cost nothing.
How to read papers
Papers are hard to read at first. Everyone struggles, so don't take it personally.
Don't read from top to bottom like a book. Read the abstract, then look at the figures and captions. A good paper can be understood roughly from those alone. Then read the intro, skim the method, and spend real time on the results and the limitations.
Then write down three things: what is the claim, what is the evidence, and what would make this claim wrong. Also find the one key experiment the main claim depends on, and ask yourself how you would have thought of it. That's how you slowly pick up taste.
Keep your notes somewhere you can search later; I always use Google Docs for the sake of convenience.
Your first project
If you have no mentor and no idea what to work on, reproduce a paper. It's a solid first project.
Pick a paper with public code and a small setup. Run it. Try to get the same numbers as the paper. If you can't, figure out why, because that's where you learn the most. Then change one small thing and see what happens. That's already a tiny research project.
The four stages of a project
I think of a project in four stages.
First you pick a problem. For your first project or two, lean on a mentor, or extend an existing paper. Don't worry about being original yet.
Then you explore. At the start, you don't even know the right questions. So mess around, plot your data, and follow whatever looks weird (but put a time limit on it, more on that below). A lot of beginners feel stuck here because they think they should already have a clear hypothesis. They don't. They're still exploring, and that's fine.
Then you try to understand. Now you've got a guess that you could prove wrong, so test it, and try to break it. The boring explanation you forgot to check is usually the one that ruins your result.
Finally you write it up. Squeeze everything into a few clear claims with Frankenstein merge and build a case that a sceptical stranger would accept.
P.s. Always keep a doc of interesting results as you go. It makes it easier to spot connections later.
Evidence
Not all evidence is equal.
Beating strong baselines is strong evidence. Beating a weak baseline you built yourself is weak. Working across many datasets is strong. Working on one toy example is weak. Numbers and statistical tests beat "the graph looks good".
A few habits that help:
- Try the simple baseline first. Simple methods are often hard to beat.
- Change one thing at a time. If you change the method and the data together, you can't tell which one made the difference.
- Look for the boring explanation before you get excited.
- Write down where your method fails. Reviewers will find the limits anyway, so it's better if you say it first.
Be sceptical of your own results. Most findings are wrong by default. Being careful has to be part of your process, not just a feeling you have.
How to work without getting lost
Prioritise. You don't have infinite time. Write down your goal, check regularly if you're still working on the most important thing, and drop weak directions. But don't switch so often that you never learn anything.
Move fast. Shorten the time between having an idea and seeing a result. Run quick and dirty experiments on small data first. Try to find out as early as possible if a direction is doomed. Just don't go so fast that you get sloppy.
Don't dive too deep into rabbit holes. Curiosity is good, but one interesting side question can eat weeks. Give it a time limit, like a few hours or a day. Then ask yourself if it helps your main goal. If not, write it in your highlights doc and come back later. Just don't overcorrect and switch topics every two days either.
Also, you'll often not know the right next step. Pick your best guess and go. When you're starting out, what you learn matters more than whether the choice was perfect.
Novelty
Novel just means nobody has published it yet. Not "nobody I know did it".
Everyone worries about this, especially beginners. Check the obvious papers, see who cites them, then start. If you accidentally redo something, you still learned how to do research. And if you can mostly solve a problem without knowing it had been solved, that's a good sign.
Also read older papers, not only the last few years. Lots of "we're the first to do this" claims only cite recent work.
Research communities
This is where most of my papers came from.
Communities like EleutherAI are groups of researchers and volunteers who work on projects in public, usually on Discord and GitHub. You don't need a degree or a connection. You just need to be useful.
How to do it: lurk for a week or two first and read what people are working on. Then pick a small task. Fix a bug, add an evaluation, improve the docs, reproduce a result. Look at what's already open instead of asking "what can I do?" with nothing in hand. Finish what you say you'll finish. A small thing done properly beats a big thing dropped halfway. Expect boring work at first, and ask about authorship early, because norms differ between projects.
It's not a favour to you either. These communities are busy. The deal is you help them, and they help you back.
Cohere Labs has a community too, and Roads to Research is one of its programs. There are others, so find one that matches what you like.
Emailing researchers
Researchers get a lot of emails. Yours has to make the decision easy.
What gets ignored
- "Can you mentor me?" and nothing else
- The same email sent to twenty people
- Asking them to give you a topic
- Expecting to be walked through everything
What usually works is a short email that shows you read their work, mentions something small you already tried, and asks one clear question. Show them you can move without being pushed. Here's a real example of a student cold email if you want to see one.
Even after you get a mentor, don't send them a messy pile and ask them to fix it. Give them something polished so they can help with the big picture.
Writing and publishing
Writing forces you to see what you actually understand. You'll spot missing experiments while doing it. Results alone don't count; you need the paper.
- Start with an ugly first draft, early. Fix grammar later.
- Explain the project to a friend first. If you can't do it in a few sentences, the paper will be confusing too.
- Tell one story, not three.
- Use fewer words. Cut filler.
- Don't oversell, don't undersell. Say clearly what's new.
- Say what your work can't do.
- Read good papers to see how strong writing works.
- Don't leave it to the last night before a deadline.
A preprint on arXiv lets people read your work early and stops you getting scooped. It isn't a formal publication though.
Blog posts are great for small results, explanations, and negative results that would never fit a paper.
Peer-reviewed venues (journals, conferences) are still the gold standard, but they're slow and hard to do alone (I mean you can, but it’s relatively harder with no resources and feedback).
Open source code is valuable too, even if it doesn't count as much as a paper.
Using AI
I think AI is fine for things you could do yourself, just slower. Boilerplate code, LaTeX templates, grammar checks, a first pass at literature, or brainstorming other explanations for a result.
It's a problem when you use it to skip the parts that make you better. If you can't check what it gave you, don't use it. It can sound confident and be wrong, and it can flatter bad ideas. Some tools replace your effort, and some help you grow. You want the second kind.
Writing is the other trap. AI text reads smoothly but often says nothing, and people can tell. Let it fix your grammar, but write the argument yourself.
TL;DR: use it to go faster at things you understand. Do the hard thinking yourself.
Useful tools
Nobody needs all of these. Pick a few and stick with them.
Finding papers
Searching for papers isn't only for reading. It's also how you check if your idea was already done. Find the papers anyone doing your idea would have to cite, then look at who cites them.
- Semantic Scholar: search papers, see what a paper cites and who cites it, find PDFs, save papers into libraries, and get email alerts for new papers or specific authors.
- Citrus Search: start from a few papers and get a visual map of related work.
- Perplexity: describe what you're looking for in normal words when keywords fail. Always open the sources and check them yourself.
Managing and checking references
- Zotero: free and open source. It exports BibTeX for LaTeX, and tries to find free PDFs from a paper's DOI.
- CiteTrue: good for citation checking but with free limit per day
Writing papers
I always use pdflatex + VS Code. It takes a bit more setup than an online editor, but it works offline, and you keep everything on your own computer. This video makes the setup easy.
If you'd rather not install anything, Overleaf is the standard online LaTeX editor. Several people can edit the same document, which is great with collaborators. The free plan has limits, so check what you get.
There's also Prism, a free workspace for scientists with GPT built in (but it always crashes, so I don’t really like it)
Notes
- Obsidian or Logseq: note apps where you link notes together. Notes are Markdown, and math works too. Good for paper notes and your highlights doc.
Blogging
- GitHub Pages is the easiest free option, and supports LaTeX through Markdown. You can build the site with Jekyll or Hugo. Pick one and don't overthink it.
Do and don't
Do
- Work on something you actually care about. You'll need that when it gets boring.
- Understand the terms before you use them. If you can't explain it simply, you don't get it yet.
- Try to break your own results before someone else does.
- Show your work early, even when it's ugly.
- Write down everything you try, including what failed.
- Say what your work can't do.
- Cite the people whose work you built on.
- Finish what you commit to.
Don't
- Don't chase ideas on vibes. Make them precise first.
- Don't spend days on a side question without checking if it helps your main goal.
- Don't sound like a LinkedIn post. Plain words beat hype.
- Don't oversell your results.
- Don't send the same email to 20 professors.
- Don't get upset when experts ignore you. Check if you gave them a reason to reply.
- Don't pay to get published or to get feedback.
- Don't let AI do your thinking or writing.
- Don't wait until it's perfect to show someone.
When it gets hard
It will. You'll hit dead ends, fail hypotheses, and have weeks when nothing works. Feeling shit is really common, even for experienced researchers. Your standards are probably too high.
Also, don't wreck your life for this. Other stuff in your life still matters, and a project that survives one bad month is better than one that burns you out.
Reading list
Most of the ideas in this post were shaped by these:
- MYResearchGuide Research Handbook: my longer, more general version.
- The Hitchhiker's Guide to Research: doing research outside academia, plus evidence, novelty and AI.
- Neel Nanda's research process sequence: how to think about a project and prioritise.
- Writing a good scientific paper, Michael Black: paper writing and storytelling.
- How to write ML papers, Jakob Foerster: a short guide on the same topic.
- How to write a scientific paper, Jari Saramaki and The Art and Arcana of Scientific Writing, Jason Alan Fries: more writing help.
- Roads to Research, Cohere: a community program with regular sessions on how ML research really works.
You don't need permission, a lab, or a PhD to start. Start small, be useful to people, and write down what you learn.