100 Research Ideas

Role

Individual Contributor

Scope

Frontend Development, Interface Design, Research

Brief

Creating a repository of research ideas/ topic encompassing design and technology

Introduction

This is a repository of 100 research ideas/ topics that interest me. These ideas mainly focus on concepts in Human-Computer Interaction, Emerging Technologies and Psychology, but are also open ended and have no defined boundaries.

There is a chance that some of these ideas are being actively explored in academia or the industry. This list is designed to be a reflection of me as a person.

Universities and people of academia - any takers for these research ideas? I’d love to hear from you and collaborate!

You can find the list here: ideas.vikramsm.com

Motivation

A little bit of history first. I used to regularly maintain a book of ideas throughout high school and the first two years of undergrad. Although the frequency of entries has reduced, I have been fortunate to explore my interests through work and personal projects.

I have always been interested in research and working with other likeminded individuals to contribute to novel projects that fall in the intersection of design, technology and society.

I believe creating such a repository can be a stepping stone for me to collaborate with these people, but also encourage other people view the world of design through a different lens.

Here is a glimpse into some of the notes I’ve taken over the years:

Process

I was super excited to work on this project. I have designed and developed websites earlier, but this was the first time I’d be doing an end-to-end project and actually deploy it for the world to see.

I wanted to work with a framework and do as little manual work as possible, so I chose to build this with Docusaurus. Docusaurus is a documentation and content-focused framework by the folks at Facebook (Meta). I really like how lightweight and fast the entire package is, and how quickly I managed to set up my site from scratch.

For the UI, I took inspiration from Chakra UI but the components are pre-styled out of the box.

Some Python

I wanted to spend as little time doing manual chores and focus most of my effort on developing a quality repository. Some of the ideas date back to as far as 2016, and were written on books or pieces of paper. I didn’t want to sit around writing every single post manually, even though I would later expand upon the ideas that I like better. I decided to automate the process of creating markdown files for the content with Python.

My knowledge of Python is nothing to write home about. With some (a lot of) help from the internet, I wrote a script that would convert items from a CSV file into markdown files along with appropriate frontmatter syntax.

Here’s the script if you wish to implement it yourself:


    import pandas as pd
    import os
    import frontmatter

    df = pd.read_csv('data.csv')

    output_dir = '100_ideas'
    os.makedirs(output_dir, exist_ok=True)

    sidebar_count = 2

    for index, row in df.iterrows():

      heading = row['Heading']
      body_text = row['Body Text']

      filename = f'{output_dir}/idea-{index + 1}.md'
      md = frontmatter.Post(f'# {heading}\n\n{body_text}\n')

      md['sidebar_position'] = sidebar_count
      sidebar_count += 1


      with open(filename, 'w') as file:
          file.write(frontmatter.dumps(md))

      print(f'{len(df)} Markdown files created in {output_dir}')


Result

If you saw the website before you read the entire post, you already know what it looks like. I am quite happy with the styling and the performance of the website.

I wanted the users to be able to get to the content as quickly as possible, and quickly scroll through the entire list with very little effort.

Learnings

This project was a much needed change from the pure design projects I have been working on recently. Currently, the website is very lightweight and doesn’t have a lot of moving parts.

I am already thinking about how to approach v2 and how to improve the user experience, and make it more interactive. In the future, I plan to explore the following:

  • optimising content delivery and performance
  • making the website SEO friendly
  • enabling discoverability and contribution
  • adding analytics

Thank you for your time!