We threw out a lot of ideas that had some potential. Then we decided instead of making something random, we should pick a category and base our project off of that. We learned about the “Best Socially Beneficial Hack” award. We came up with the idea to help people learning a new language understand slang, idioms, and other expressions in foreign languages. At first we wanted to do a translator that translates idioms because to many non-english speakers, idioms can be hard to understand. We later decided that since there’s many forms of slang, we should make a database of the slang terms.
What it does
While our project looks simple to understand, it can still be helpful to someone learning a new language. Our project will highlight slang, idioms, and other expressions present in the user provided text. The user can move their cursor over the text to see a definition of the slang term. As an added feature, if the user hovers over the highlighted word then the definition of the word will be shown in a text box.
How we built it
We decided to make a webpage because we felt that was the best format for our project. We then decided to build our program using python because some of our group members were familiar with it. We looked up a list of slang words from berlitz.com and loaded them into a Google Spreadsheet. We exported the spreadsheet into a Comma Separated Value file, (CSV) that could be used by our program. We decided to use github because it allows us to collaborate on writing the code. We used visual studio code so everyone had the same programming environment. We used the flask package in Python to quickly build a website that is powered by Python.
Challenges we ran into
We ran into many challenges along the way. One of the biggest challenges was that three out of the four members on our team had little to no experience with coding plus never having been to a hackathon. This made it harder because the one member who did have experience had to spend much of their time teaching everyone else and getting the proper software needed to code. Another challenge we had was with the words themselves, we compiled them and had issues with cleaning up the text. We also had a challenge with the text box on the HTML page size correctly due to the complexity of HTML layouts. Our final challenge was with the highlight and definition functions. The highlight function gave us some trouble because it wouldn’t highlight certain words. Then with the definition function, it wouldn’t show the definition for words in different capitalizations. We fixed this by making the word checking case insensitive.
Accomplishments that we're proud of
We are proud of how we were able to put together a project despite only one person in the group having coding and hackathon experience. Along with that we are proud of how fast the three members without experience were able to learn. Something else we are proud of is our idea because even though we have a team member who is an english major we were still able to find a way to incorporate their abilities. Finally we are proud of the coding languages we were able to learn.
What we learned
One of the biggest things we learned is how much thought goes into the idea for the project. This is called the brainstorming process. We threw out many ideas but had problems with expanding on them and had to restart multiple times. We also learned that coding can be tedious and stressful but rewarding in the end. We learned HTML, Python, Git, and CSS. We also learned how to use the programs: Github and Visual Studio Code.
What is the potential for Slang Translator
The potential for our project is to help people learning a foreign language by highlighting text in formal or informal writing that does not mean the literal translation would suggest. Our project could also include the origin of the slang word and when the word came into use by people. We could also include other statistics such as the slang’s popularity or show the word used in a sentence. We could also add a function that reads out words for those who are visually impaired.