The Dictionary Of Obscure Sorrows
A website to find words you might have never heard of
🚧 Under Construction: I’m working on filling this space still! Check back soon for updates.
What
This is a website which is meant to show a daily word from the Dictionary of Obscure Sorrows.
Why
My girlfriend loves words, specifically Merriam-Webster’s word of the day, and I had been itching to create a full stack app. Thankfully the stars aligned and I came up with a kind of illegal idea. If the author ever asks me to take the website down it will be taken down.
How
Why I chose the stack
I went with MongoDB as the database here because I wasn’t too sure about all the features that I wanted for each word. I personally have found that non-relational databases are sometimes a little easier just to play around with. The potential read heavy nature of the app also made MongoDB much more appealing, since it was easy to take the performance hit from denormalization of data on inserts
Express and React were just the default frontend and backend frameworks at the time, (and arguably still are), and I was comfortable just using them.
The process
Since this app had a fixed set of words, I started off by using an in memory database, not even sql-lite. I built individual data fetching functions which I could replace later as needed
The next step was getting the data into the database, which I used beautifulSoup for, guessing the structure based on the surrounding HTML. It was a basic webscraping exercise.
Afterwards, I just had to create a hashing algorithm which created one unique word every day, and iterated through them.
Result
It was succesful! I added words and stuff, and authentication, and I was able to also use it to invite my girlfriend to prom. It is commit hash on github.
Resources
Word effects from hyperplexed Not too sure what