Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Wunderbar – Learn language while working on your Mac
60 points by mertbio 8 months ago | hide | past | favorite | 42 comments
Hey everyone,

I've been living in Germany for a while now and struggling to pick up German. Even though I finished a B1 level language course, remembering all the common German words has been tough. I've tried a bunch of apps, but couldn't stick to any of them.

Last month, I had an idea. I thought, what if I could see a German word and its meaning on the Menu Bar of my Mac? That way, I could learn new words while working without needing to set aside dedicated time.

The app uses a spaced-repetition algorithm, so you'll see the same word multiple times until you've got it down. And even after you've learned it, you'll still see it again to make sure you don't forget.

After making the app, lots of people asked me to include other languages, therefore I’ve added languages like Spanish, French, Dutch, Swedish, Japanese, and Italian.

You can download the app here ($3.99): https://wunderbarapp.com

There's no subscription or anything like that. You pay once and it's yours forever.

Let me know what you think!




Sometimes I feel a little sad for Mac users for that they live in an ecosystem where everything is a product.

Using Sway & Waybar, I have this script that puts a new random Swedish word on my bar every minute, and its translation on hover:

  #!/bin/env python
  import json
  import random


  def read_file(file_path):
      with open(file_path, "r", encoding="utf-8") as file:
          return [line.strip() for line in file]


  file_path = "/home/bjesus/Notes/live/swedish.md"
  lines = read_file(file_path)
  line = random.choice(lines)
  text, tooltip = line.split(":")
  data = {"text": text, "tooltip": tooltip}
  print(json.dumps(data))

To make it clear - this is nothing against Wunderbar or anything like that - I wish it all the best and clearly I agree with the use case, and for sure it does a few more things than the above script.


> Sometimes I feel a little sad for Mac users for that they live in an ecosystem where everything is a product.

No need to feel sad.

macOS users can do exactly the same, for free, with an app like xbar [1] or bitbar [2].

[1] https://github.com/matryer/xbar

[2] https://macmenubar.com/bitbar/


Big corporations are pushing more and more ads, FOSS developers are being exploited... but a Solo-Developer charging 4€ for an App that'll likely never make a return on his time-investment anyways: that's sad.


Sometimes that solo dev is learning a GUI framework, or maybe doesn't have big goals other than a few downloads and having fun coding something new in the evenings. If I had side projects I'd be happy with beer money more than disappointed that I didn't make FU money.


I should've added a /s

It's great that OP is releasing his personal project and he has every right to charge for it.


I think it would be better to just show "[flag] [word]" in the menubar. (The flag to remind you why there's a random word like "gozar" in the menubar, heh)

The problems with showing the translation to your native language are:

1. Takes up too much space. On a 16" Macbook Pro I already had to remove various apps from the menubar just for Wunderbar to appear (Apple could handle that better). "complementario <-> complementary" takes up half of the menubar space.

2. Doesn't actually test whether you know the word or not. It's very easy to think you know a word when you see it along with its translation, yet when you hide the translation, you realize it's only at the tip of your tongue. It's why flashcard are so humbling.

I think it'd be better to click the word to summon the popover that reveals the translation + sentences and then answer "I did/didn't know this word".


Thanks for the feedback! I’m going to add this as an option in the next version.


Thanks for crafting and sharing this, Mert. Noticed the relatively small (3.3 MB) size; is a network connection required for audio or other features?


Thank you! No, not at all. I just use Speech API on Mac for that. All the words are also included in the app.


Super - thanks! Please consider adding an option to remove the flag emojis and arrows; had to remove the volume, battery, and Bluetooth icons before I could see Wunderbar on a 13.6" M2 MacBook Air. It just disappeared again, and even removing the WiFi icon did not help until it cycled through to another word pair.


There is already an option to remove the flags. I will try to come up with a better solution for this issue.


Sorry to have missed that option; I'd only been able to access the options panel once (can't find a way to display it when the menu bar words are not displayed). Perhaps an option to hide the known-language word (which would be revealed in the pop window when clicked) might help users on smaller screens.


great design approach and thanks. It's refreshing to see apps that don't require continuous online access. I wish there was a badge for that


[Hi from Argentina!] I was going to ask about words that have too tanslations, for example from Spanish to English you have "vino" -> "wine" (noun) or "come"(verb). But it looks like you are not allowing any combination of languages, so I guess you are doing the tranlation table with a lot of curation.

(It would be nice to read more details, just for curiosity. Idiomatic examples are difficult. Do you have more than one example for each word?)

I expect a bigger market in "Something -> English" instead of "English -> Something" that is described in the landing page. Wait a minute, is it bidirectional? Perhaps you can edit the description to highlight the most common case or explain that it can be used in the other direction.

You are using the British flag for English. Do you support American English too? I don't remember all the differences, but an example is "color" vs "colour".


Hey! Thanks for the feedback. The app also supports German or Turkish -> English. I’m planning to add more languages but I’m prioritizing them based the feedback I receive. When it comes to the example sentences, I can add more but I’m also waiting for WWDC24 because Apple might introduce an on-device LLM since I don’t want to have any network request from the app.


At 100 bytes per sentence, you could fit 10000 example sentences in a megabyte, and compression would increase that by a factor of 6 or so. I don't think you need an on-device LLM to have enough example sentences.

If you don't know where to get that many sentences other than using an LLM, try Tatoeba https://tatoeba.org .


I was thinking about adding a button to generate a new sentence actually, the size wasn't my concern.

I didn't know about Tatoeba, thanks for sharing it! It is not going to only allow me to add more sentences, I will be also able to add more languages to the app!


Great idea! I've bought the app. Could you add Hindi please?

Also, is there any way to hide the British flag but keep the target language flag?


Thanks! I will add Hindi into my list.

Right now, there is no setting for that but I'm planning to add a different section for the settings since it grew quite fast. Then, I can also add this option there.


Love the idea. You might want to consider adding a profanity filter. joder -> to fuck just popped up for me, and if I put this on my work computer, which I would like to, I'd have to turn it off before screen sharing.


Thank you! Sorry for the problem. I will check it out.


One of the most helpful, semi-passive things I did for learning Spanish was changing the language on my phone (once I got to a certain level). It makes all daily phone time at least a superficial way of getting in contact with the language.

Yes there was plenty of difficulty navigating the phone at first, but I was surprised at how much muscle memory took over. And it helped me develop my very cheesy joke / deflection to buy time to formulate my response: está cargando (it’s loading).


I love the idea. Is there any way you could add in the functionality for the user to upload a dictionary for a specific language? I would gladly pay $20+ for a pro version.

I’ve been trying to learn Kannada, a South Indian language that my parents speak. Most apps like Duolingo and Babbel don’t support Kannada, so it’s been hard to be consistent.


Thank you! In the short term, I feel like that might require too much work comparing to adding new languages but in the long term, I might add a functionality for that.


Is there a way to make this available to older versions of mac os? I'm 1 version behind 13.4 but would love to buy this.

I'm not upgrading due to breaking compatibility issues with plugins in my audio workstation software


Unfortunately, that would require too much work for me because I’m new to macOS development and I’ve used the latest APIs for the app, like SwiftData and so on. :(


I just purchased the app, but I thought it supported Russian. I would be happy to have it, but otherwise, I will have to learn Swedish.


Thanks for buying it. I might add Russian in the future, please check the changelog page time to time.


Can't tell from the web site or FAQ: what is the minimum macos version required? I'm stuck with Monterrey.


Thanks for the feedback! I’m going to add this information into the FAQ. The minimum required version is 14 because of the APIs that I’ve used in the app.


great idea. I've found setting device language for MacOS/ Windows / iOS into your practice language to be a very helpful way to learn. You can easily navigate menus thanks for visual familiarity, so you pick up technical words really quickly.

When I was practicing, I would put my devices into Spanish or Finnish.


Looks great! Could you add serbo-croatian by any chance?


Thank you! I’m going to add it into my list but I can’t promise right now.


"listen the pronunciations" should be "listen to the pronunciations"


Or "hear the pronunciations". Would suggest changing "Only Most Common Words" to "Only the Most Common Words" as well.


Thank you both! I will make the changes tomorrow.


If these sort of corrections are helpful, I'd suggest changing "How the spaced-repetition algorithm works?" to "How does the spaced-repetition algorithm work?"


I err on the side of making grammar suggestions anyway, because my foreign friends seem to appreciate it.

I think they're especially helpful in this case. Grammar mistakes on a language learning app may undercut someone's confidence in what the app is teaching.


Thanks! I will also change that.


Does it have Anki integration?


No, not right now.


For convenience: https://wunderbarapp.com




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: