You may have read how I recently learned to develop in Swift for iOS. Well, here’s a link to the app (BitLang) I set out to build during that learning process; now available on the iTunes AppStore.
More About the Inspiration and Background for Why I Chose to Build BitLang:
While on our “year long trip around the world” I found myself going back and forth between Duolingo (a language learning app) and Google Translate (a phrase translation app). While I love both products, they had a few shortfallings when it came to a couple of specific needs I had.
First, I wanted to learn from a pre-organized set of phrases that pertained to my immediate needs. I would then want to build upon that set of phrases with custom phrases of my choice.
Although I enjoy the general Duolingo-made learning process, it is built with a long-term lesson plan in mind. I am required to learn phrases like “Your horse ate my apples” to get familiar with the grammar of a language. What I want, however, is to learn phrases I can use for my one week tour through France. For example, due to travel plans this weekend I may just want to prepare myself to say, “May I have a local beer on tap?”, “Check please”, or “Two more red wines.”
Of course, I can accomplish my phrase-by-phrase translation needs using Google Translate, but it doesn’t do a great job organizing the translations by category or language. Also, it isn’t built to help me practice the phrases once I’ve looked them up.
I was frustrated by those gaps left between my favorite products. So, I posted feature requests to both product’s sites and got a “[not in our roadmap]” answer. (Which I completely understand and respect.) At first I was disappointed, but then I realized, “Hey, wait a sec, I know how to build things. Maybe I should just create a solution myself.” And so, BitLang was born.
The app is still a work in progress and is growing from its humble MVP beginnings. Here are the designs I mocked up for the first few iterations. Currently it just looks up phrases and allows the users to bookmark them into a single folder. It currently only translates for three languages: French, Spanish and German.
In the next few versions users will be able to login, view pre-made translation packages, and bookmark those packages. Beyond that I will start digging into deeper learning based workflows (quizzes and tests) as well as some community based features.
You can read more about the iterations I took in fleshing out the BitLang concept below.
Phase I
At first, I focused heavily on the learning part of the concept. Trying to simplify the lessons into premade (but pertinent) Q&A with very simple phrases. Users would translate a phrase one word at a time.




Phase II
Phase I became very complex, and the questions ended up getting pretty redundant. Also, I was missing the whole aspect of being able to generate a list of phrases that interest the user the most. For it all to work, the system would have to be made up of a custom lesson, not UGC. So for the next iteration I focused more on the “looking up of phrases” side of things. To make things even more challenging decided to build it while learning Polymer 1.0.




It was starting to come together, but as I mentioned in my key learnings for iOS development, I was forcing a web app model in what was obviously better suited for a native app. My lack of skills to develop in iOS has annoyed me for years so I figured it was time to make the move. That is when the BitLang app became to be.
Updates/Feedback
- Is really looking for a tool that provides gender along with translations. e.g. spanish: Cup -> Taza … should be … La Taza
- Is looking forward to the helpful learning side. One users suggests getting notifications for any words looked up. The interesting thing he asked here is: why should I organize things – If i’m looking it up I want to learn it so assume it.
- Big win: Tons of people find the same holes in language learning tools. I’m not the only one. People urn for crash course mixed with lookup.