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:

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

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.

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.

Managing and checking references

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

Blogging

Do and don't

Do

Don't

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:

You don't need permission, a lab, or a PhD to start. Start small, be useful to people, and write down what you learn.