What is Happy News?
Happy News is a news website (mobile app coming soon) that aggregates news from different countries, analyzes them using AI on a ‘happiness quotient’ and publishes only the happy ones to the readers. Keeping in mind my A-level commitments, I automated the whole process (keeping my manual intervention to the minimum once setup was complete) using different technologies such as Natural Language Processing, which is a new AI domain, python code and Linux. This is not any commercial endeavor, but my outreach to the community to spread positivity around the world and help with the mental health of the general public.
Why did I build Happy News?
2020 has been a challenging year for the world as Covid-19 has brought in a deluge of negativity all over. The negative news is not limited only to people’s health, but also to the failing world economy and had several geopolitical tensions cropping up the world over. However as I looked around, the news is not all gloomy all over. There are shoots of positivity growing in different places in the world which are just not getting the news space that it should get in people’s mind. More so now than ever, I felt such news need to be actively promoted, as positivity needs to be spread, not only for our mental health, but also for the world economy and easing of tensions amongst countries. Hence my endeavor to share positive news from the world over and bring it to your lap, so you feel happy, healthy and mentally safe.
How did I build Happy News?
- First challenge was to identify the different Sources of News Articles. For this I used API’s made available by NewsAPI (https://newsapi.org/), to fetch news articles from the World over. All news are categorized into Headlines, Business, Entertainment, Science, Sports and Health for every Country. I currently fetch news from 8 countries including USA, UAE, India, UK, Canada, Australia, Singapore and Switzerland, keeping in mind the mix of UAE’s citizen and expat makeup. I also fetch twitter feeds from major news sites and search twitter for happy news topics, such as ‘Birthdays’, ‘Pets’, ‘Celebrations’ etc. which gave me many positive news articles to display.
- Next I used Sentiment Analysis, which is a relatively new development in the Artificial Intelligence and Natural Language Processing (NLP) domains. NLP helped me to break down every news text into the different words, vectorize them, measure the frequencies and extract the sentiment of each article. Using python and different NLP packages, I did this sentiment analysis and assigned scores. Based on the sentiment score, I decided whether a news is positive news (score >0.30) or negative (score < 0.15) or neutral (between 0.15 and 0.3). I only publish positive scores, and show a small sample of neutral news, completely suppressing the negative news articles.
- For some countries, such as for U.A.E and Switzerland the news was in native language (Arabic and German). I used a python language translation package to convert all such news to English before publishing on the website.
- The complete process is automated with the help of few python programs and Linux cronjobs, that automatically fetch news every few hours, translates it, analyzes the sentiment and based on that publishes it. Considering my A-Level commitments, I wanted this automation for the service to continue serving the community, even when I didn’t have the time to manually oversee this project.
- I do not own any of the news content published on this website. They all come from NewsAPI.org.
- For the UAE and Switzerland news articles, I use the python GoogleTranslate package to translate these news text from Arabic or other languages to English. This happens automatically and I do not intervene to validate the meaningfulness of these. Hence any wrong or meaningless translations are attributed solely to the python googletranslate package (it behaves just like the normal Google translate page on the web).