A Beginner’s Guide to
Computer Science Research
Research and innovation is the heart of development in any field of study. Unfortunately, many schools and colleges
fail to teach the important skills that
are essential to pursue research work.
Most likely these skills are taught during one’s postgraduate studies, either
at a master’s level or at the beginning of
a doctorate degree. During my undergraduate studies I wanted to do personal research to keep myself up to date in
the computer science field, but I was not
fortunate enough to have guidance on
how to effectively do it. After practicing
for the past few years and talking with
different researchers I came up with a
set of steps, which work well for me and
for others who have followed them.
1. Select a subject area that you like.
There are so many topics and subject
areas in computer science. Instead of
blindly following one’s advice, I personally believe you should like your research topic.
2. Search databases and relevant
search engines. Whenever people think
of searching for something, except in
the physical world, they always prefer
Google. Most people use search en-
gines and encyclopedias such as Baidu,
Yahoo, Bing, Wikipedia, etc., but you
should keep in mind the sources might
not be trustworthy. It is advisable to
search for relevant keywords or “some-
thing” related to the research topic us-
ing scholarly search engines or databas-
es or archiving systems such as Google
Scholar, Microsoft Academic Search,
ACM Digital Library, IEEEXplore Digi-
tal Library, INSPEC IET Digital Library,
DBLP, Scopus, ScienceDirect etc. This is
not an exhaustive list of scholarly data-
bases and search engines, but it covers
some of the most widely-used ones.
3. Sort scholarly articles and research
papers. Research papers in general can
be classified into “argumentative” or
“analytical” research papers. In an argumentative research paper the author
introduces an argument by providing
logical evidences, whereas in an analytical research paper the author basically
analyzes a topic or logic and provides a
personal view or perspective regarding
that topic. After reading the abstract
and judging the title of the paper you
should at least have an idea about what
type of research paper is at hand. After
you identify the type of research paper,
you should judge whether it is essential
to your research or not. It is also helpful
to use reference management software
such as Reference Manager, EndNote,
BibDesk, etc. in order to “visually” summarize the research article. Along with
this, you can also make notes on important relevant references in order to get
a broader view of ideas and concepts
proposed in the article. If possible, try to
make note of relevant keywords, which
will help you search for relevant articles
to support your research. This can be
thought of as a future investment in
your research work.
4. Reading articles/papers in an elaborative way. Here, I would suggest reading “How to Read a Paper”
1 by S. Keshav,
which basically proposes a three-way approach to reading a paper effectively and
5. Brainstorm and innovate. This is the
most important part of your research,
where you need to think and brainstorm
about the concept proposed in the article. After reading the article you should
ask yourself the following questions in
order to completely understand the article and proceed with your research:
˲ What is the problem
addressed in the paper?
˲ What is the solution?
˲ How are the solutions evaluated?
used to evaluate the solution, etc.)
˲ What are the assumptions
in the paper?
˲ What are the limitations of
the research in the paper?
˲ What is the main prior work?
˲ Can I/we improve it?
Ideas for future work!
˲ What is the overall
assessment of the paper?
Once you have asked these questions
and answered them, it’s time for you to
produce your own views, ideas, or theories regarding the arguments or analysis provided in the article.
1 Available at http://ccr.sigcomm.org/online/
Somdip Dey is a postgraduate student at the School
of Computer Science in the University of Manchester,
pursuing a M. Sc. in advanced computer science with
specialization in computer systems engineering and
computer security. His research interests include
information security, applied cryptography, computer
systems, parallel and multi-core computing.
of scientists and engineers are
male, although only 49% of the
U.S. population identifies as male.
55% Students who identified as Native American took
the AP Computer Science exam in
2012; that is .3% of the total number
of students who took the exam.