Hacker News new | ask | show | jobs
by tr97 536 days ago
Everything runs on AWS. The infrastructure is set up with Terraform. The Lambda retrieves three C1 level words in Dutch, their translations, and an example from ChatGpt. Those words are stored in DynamoDB so they will not be sent again. They are then sent to my email.

I didn't want to pay for expensive vocabulary apps that often start with beginner words while I am looking for advanced vocabulary, so I built it myself.

6 comments

The idea is really nice, but AWS sounds overkill? Using the same Python file with an Sqlite db (or a text file) and using an API like Mailgun to send the emails, it could run on any machine with a plain cron job?

I built a comparable system that sends me an email every day that I can respond to, to maintain a journal; it works like described above and has been running for about 5 years now with zero downtime.

Anyway the idea is really good!

> using an API like Mailgun to send the emails

Don't need that. You're already paying for (or self host) your primary email address right? That includes sending emails from that email address. Use those same login credentials to send emails to yourself, no need to contract a third party for sending a handful of emails per day, especially to yourself

Yep, might be a bit overkill, but as mentioned in other comments, this project was more for fun and learning, less for efficiency :)
I agree completely. As a Dutch myself: "overdaad schaadt", which also teaches some of our pragmatism. We tend to implement simple solutions. We have no time to waste when the water comes in.

Although, I appreciate the idea and wish luck with learning the language (as NT2 I assume). Questions welcome.

Could there be a way to instead of having the direct english translation, having it define the word in (simple) Dutch? I think this immersion would help improve understanding the language directly as opposed to route memorization, especially at the more advanced level you are targeting.
Honestly I was thinking about that. Or how to best display the new words, so I totally see your point. I might change this in the future, but for this first iteration I just thought: leave the English translation in and see how it works ...
AnkiDroid is a free, self-contained implementation of Anki for Android devices.

Are you reinventing a stove-pipe version of Anki, based on cloud services and e-mail?

Are you really going to send yourself 300 e-mails when 300 cards are due that day?

This is the opposite of Anki: words are shown only once.
For anyone else trying to achieve the same thing from scratch: if you have a Google account, Google Apps scripts might be able to do the same thing for free and without having to worry about VMs, storage, or anything else. You could store stuff on your Drive, or literally just search your own inbox for the existing word to check if it's already sent.
Goed gedaan!
The real learning isn’t language but cloud infrastructure.