Metaphilosophy
Metaphilosophy is a website product that describes and visualizes the state of academic philosophy. This document provides product and technical specifications for its development. I'm still researching this product. If you can build it faster and better than me, feel free to do so, but please let me know about it.
Product specification
The following sections describe the purpose and scope of the Metaphilosophy product.
Objective
The objective of Metaphilosophy is to provide anyone interested in academic philosophy with descriptions and visualizations of who academic philosophers are, which topics they write and talk about, and how those philosophers and topics are related to each other. The descriptions and visualizations help provide clarity on the state of academic philosophy, which helps determine the future of philosophy as an academic discipline.
User stories
The following stories describes potential users for Metaphilosophy and their use cases.
Interested persons
People interested in philosophy can use Metaphilosophy to understand trends in academic philosophy and how topics relate to each other. They can use trends and relations to help them discover new topics or decide which problems are worth thinking more about.
- As a person interested in philosophy, I can see which topics academic philosopher are writing about.
- As a person interested in philosophy, I can see how topics are related to each other.
Academics
Academics include current and prospective teachers and students, such as professors and students of high school, undergraduate institutions, or graduate programs.
- As an academic, I can see which academic departments have many people thinking about the topics that I'm interested in.
- As an academic, I can see the number of faculty and graduate students at each academic department.
- As an academic, I can see the distribution of seniority rankings among the faculty at each academic department, such as "Assistant Professor", "Associate Professor", and "Professor".
Out of scope
The following stories are valuable and worth pursuing, but are likely out of the scope of this Metaphilosophy product because of the difficulty of obtaining such data.
- As an teacher or professor, I can see which academic departments have faculties that are diverse in gender, race, religion, and research topics.
- As an teacher or professor, I can see that I'm being paid equally to others of my level despite differences in gender, race, religion, and research topics.
- As an prospective student, I can see the employment outcomes of people who graduated from each academic department in philosophy.
Methodology
The methodology for Metaphilosophy is as follows:
- Scrape relevant websites for text.
- Process and analyze the text.
- Create visualizations of the text.
- Display the visualizations on an accessible website.
The analysis of the text can be standard data analysis and natural language processing. The visualizations can be scatter plots, word clouds, mind maps, bar graphs, histograms, pie charts, distribution curves, geographical maps, and other common and understandable visualizations. The visualizations can be in any file format suitable for websites, such as .svg
, .png
, or .jpg
.
Sources
Sources for the text data include:
- The Stanford Encyclopedia of Philosophy
- Internet Encyclopedia of Philosophy
- Websites of academic websites
Success metrics
The objective of Metaphilosophy is to improve awareness of the state of academic philosophy in hopes to interested persons discover philosophy better and drive greater diversity in the academic philosophy. The simplest success metric for improving awareness is increasing unique page views of the website.
Technical specification
The following sections describe how to build the Metaphilosophy product. As a guiding principle, build the product in a way that you can make its source public for others to repeat the research and recreate visualizations that Metaphilosophy provides.
Technologies
Python and TypeScript and promising technologies for building Metaphilosophy. Python has many libraries to obtain, analyze, and visualize text data, and some libraries can output the visualizations in file formats suitable for the web, such as .svg
, .png
, or .jpg
. TypeScript and React simplify the process to build a simple website for the visualizations.
Consider the following Python libraries:
pandas
scattertext
wordcloud
matplotlib
seaborn
plotly
bokeh
pygal
geoplotlib
Architecture
There's very little about the Metaphilosophy product that's distinct to or dependent on the academic discipline of philosophy. You can ask the same questions and write the same user stories about other academic subjects. In case you want to create similar visualizations about other academic subjects, you should build the product in a way that's agnostic to philosophy as possible.