HN user

altgans

105 karma
Posts4
Comments37
View on HN

Awesome, and yes, totally makes sense -- you are more learner-centric that way.

Having the full sentence context is actually one of the things I have been thinking about a lot -- this helps both the learner as well as the POS detection in Stanza. I always decided against, because I wanted to build agnostic flash-cards.

However, as your approach allows on-the-fly generation of flash cards, you always stay close to the learner progress. I could (e.g.) pick some Gutenberg fairy tales, allow the learner to read them in their target language and provide bi- and omni-directional translations across all languages. Creating flash cards from the source material keeps the learner in progress (context), allows to learn new words step-by-step (discovery), as well as providing a fun learning experience and measurable progress. Similarly, instead of fairy tales, we could use some series in combination with its subtitles. This allows video-progress. Awesome x2!

Sidenote: The awesome part about HN is that I get to chat with like-minded people and directly grasp some new inspiration. Probably I ought to visit some in-person hacker spaces :)

Very cool!

Are you willing to share more technical details?

- Which data sources do you ingest?

- How do you transform and enrich the data? How does your pipeline look?

- What are your key challenges?

- Which tools do you use? What is your 'stack'? (Stanze, wordfreq, Whisper, wn, ...)

Background: I am currently building a multi-lang vocabulary hub for language learning. The goal is to match core words/lemmas to their senses/concepts, and then be able to generate multi-language flash cards.

I am still stuck on the sense alignment and fingerprinting (example: should 'to shop', 'einkaufen', ' alışveriş yapmak' and 'go shopping' point to the same concept of 'shop'?), but in a later stage I want to allow user-submission and data enrichment for IPA, pictograms [1] and audio.

[1: https://arasaac.org/pictograms/search]

Use-case (the dream): I come back from language class, I input new vocab and I output new Anki cards that work across all my fluent languages.

Currently, I mostly find myself knee-deep in problems of linguistics, NLP, Python and getting an LLM to do exactly what I want. At the same time it is a super fun project, and really makes me feel the joy of programming again. LLMs are magic, time just flies by, and all the random projects I always wanted to do suddenly materialize.

For coding, I mostly use free Gemini and some deepseek-v4-flash via openrouter to keep a tight oversight and understand the problem space. Maybe this slows me down, but agentic code jsut does not align with me. Overall, I haven't spent more than 2 € in total.

So far, surprisingly, the biggest problem is the lack of high-quality, free input data (example: English has the Oxford 5000 words as core vocabulary, but it is difficult to find the same for e.g. Turkish).

2nd place is the lack of high-quality synsets/wordnets (cross-language is mostly incomplete), and the 3rd place is getting LLMs to reliable play to their strength (on paper, a LLM is the perfect tool to provide multi-lang sense equivalents)

I plan to do a full writeup sometimes, but first I need it to work :)

On Writing Well 2 years ago

There was another article/blog on hackernews some time ago along the lines of 'I'm an editor, here is how I edit my friends texts' with some really good advice.

Unfortunately I can't find it anymore -- if someone knows which post I mean, I'd appreciate sharing it with me again.

Interesting approach. I am currently looking for jobs and went the 'career coaching' route for my CV. I did a few iterations with my coach until I got my current result (ideally I had a link):

I first looked at Canva templates, but apparently nowadays you are supposed to do black/white and no fancy designs for ATS readability. Then I tried it with Google Docs b/w resumee template, which kinda got me to write actual skills. Then I approached the coach, got her template and iterated, and then I also added some rules from here (https://principiae.be/pdfs/ECV-1.01.pdf).

I also involved ChatGPT to analyze job postings and to get the mix of keywords in my resumme right. Tools like https://tagcrowd.com/ also help with that. For example, I am targeting 'IT analyst' roles, and it does make sense that I have the word 'analysis' a few times in my CV.

E: mine is basically structured the following way

Name

Title

Summary

3x5 ATS keywords/skills specific to my profile and role

last ten years, also written in a way that 'gamifies' ATS: 'Year, worked as ROLE at Company, did XYZ'

--page 2--

Education (degree + grades)

Skills Training

Languages

Some more IT skills (programming languages, project management, ...)

E2: I obviously have no idea what I am doing, but I got three interview proposals for 10 applications, so I guess 30%.

Imo the problem with Org-mode is that it "afterloads" all the complexity into the :PROPERTIES: drawers. Those quickly transform into unreadable hideous beasts of metadata that _require_ you to use Emacs. Every plugin developer likes to create their own set of properties, which directly leads to the problem of "multiple Markdown flavours". Extensibility is not always good.

Interesting that this has a name. I've been doing this naturally for quite some time now without knowing the science behind it; it just feels "right" for me.

Thinking about it, whenever I had a job where I ate lunch with coworkers (besides my breakfast+dinner combo) I noticed that I gained lots of weight.

I've been intensively using Orgmode for a year and a half (wrote my thesis in it) and then abandoned it to switch to Markdown.

Orgmode quickly turns into not-quite-plaintext with humanly impossible to read and very distracting data structs stuck inside the text. I think these were called "Properties"?

For me the beauty of plain-text is that it can be read and written in any Editor without needing syntax highlighting. Here Orgmode fails for me, as I found it unreadable and unusable without an Emacs-esque toolkit.

The Curse of NixOS 4 years ago

I am a NixOS user, but am interested in Guix. Based on a cursory look I have some questions:

- How big is Guix on GNU? Does it throw wrenches in your way if you do anything "unfree"? How easy is it to install the nvidia-drivers? - How is the package ecosystem? 20.000 official packages seems a little low? Are there community packages? How easy it is to create your own packages? Why is the Neovim package only at version 4.4 [1]? Isn't version 5 officially released? - How good is the documentation? - Is there a project roadmap? Are there any issues preventing adoption?

[1] https://guix.gnu.org/en/packages/neovim-0.4.4/

Write shitty code 5 years ago

I recently made a similar observation: Write shitty!

Background: I am writing a novel. In the beginning I sat down and obsessed with every little detail, spending multiple days figuring out the perfect formulation and text flow. And then I would maybe change a little thing in the story-line and have to start over again. This really sucked the whole fun out of the writing process.

Then I changed my approach: I just write whatever comes to my mind, independent of whatever I just wrote before. Doesn't matter if the previous scene had character A as sidekick, if I like character B more, then I simply switch them. Some scene is way over the top and doesn't make sense? Doesn't matter, I write it. Writing is fun again. I sit down, get into deep-work-mode and just write. No constraints, no thinking.

Granted, this is only draft #0 and I will probably have a rude awakening when I have to merge all my writings for the next iteration of drafs drafts, but so far I am rolling!

I personally use literate programming to maintain my "dotfiles", mainly NixOS [1], and I _love_ it. I like to describe all possible alternative tools, why I don't use them, possible tools that look nice, random ideas and blog posts that describe parts of my config, add TODOs and screenshots, ... in short everything that is really ugly to do inside source code comments. Also I gain structure; adding headings to a 3000 LOC config is very nice.

For tangling I use lmt [2], as it works with Markdown and also play nice with Emanote [3] (full syntax highlighting inside the code blocks.). That means all my "dotfiles" are inside my Zettelkasten [4] and can be navigated like any other note I have.

[1] https://nixos.org/

[2] https://github.com/driusan/lmt

[3] https://github.com/srid/emanote

[4] https://zettelkasten.de/

I Miss RSS 5 years ago

Haha, I literally just set up Newsboat[1] and this is my second article I read from the comfort of my terminal :) So far Newsboat is great: Everything configurable with text, fast and effortless. The key-binds took a little bit, but now I can even do stuff with hjkl!

I will take the opportunity to ask about two issues I am currently facing.

- Is there a feed for Github discussions?

- Does anyone have some ideas/sources for bookmark scripts? I found [2], but I am not really sure what it does.

[1] https://newsboat.org/

[2] https://github.com/gpakosz/.newsboat/blob/master/bookmark.sh

---

E: To add, in my opinion the killer feature of Newsboat is the fact that all links get appended to the article, similar to how I added the two links below my post. In Newsboat I can just press the corresponding number and open the link!

Does anyone know what the phenomena is called where you think about something/hear about something and then suddenly you stumble across multiple instances of it in the wild?

Just yesterday I began configuring the textwidth/wrap porperty in my Neovim. I went to bed thinking that maybe a hard-capped width of X*2 cahracters would be better, so I can fit more text "into a square" -- which basically means that I focus on a point in the middle of the text and see X characters left, right, up and down.

Now today, the first article I read is about the same exact problem :)

Can you elaborate a bit more on why ZFS is great? I am currently thinking about doing "one final install" for my system, and am undecided between BTRFS and ZFS.

I noticed that most "hip" people use ZFS, but based on my meager research it seems actually recommended and designed for "big" data-center setups.

Why is ZFS good for small PC setups?

---

If am being honest I just want something that works reliably, is easy to extend and doesn't require maintenance. Maybe ext4 is good enough?

I think you can get going with little to no knowledge. Setup the system, choose a few cool options and packages, and go rebuild. Simple as that.

The difficulty comes from the advanced topics. Modularizing your setup, writing your own packages, generally going off the beaten path.

I did not do any of that (yet). I will in the future, but I am fine with my low-level setup. One machine, one user. A bit later I moved to Nix Flakes (which is just an additional wrapper file around the previously written config) and added a few overlays.

My trick: I downloaded every single public "NixOS" dotfile repository I could find, and then just used "ripgrep" to find anything I was interested in.

Another cool trick I read is setting up a VM to test a small config and get a feeling for it, and then decide if yo want to proceed.

For lmt/markdown: I believe yes, to the extend the editor allows for it. It is seemingly just like regular mardkown code blocks. I get the correct syntax high-light in the ``` code blocks. I don't have lint/LSP setup yet (currently moving to Neovim), so I can't say anything about that.

Literate/.lit: I don't know, I guess not.

Emacs/orgmode: Yes, this also does syntax highlight. And you can edit the code-block in a separate window as if it was a "real" source code file. I've been using this for almost two years now. Personal opinion: I don't think the benefits of Emacs outweight the cons.

That sounds like a nice way to do it, too. I heard about it before, but don't know R, so I didn't really consider it.

The reason I chose lmt is that it correctly keeps the markdown language syntax of the code blocks. That means I can put my literate config into my Zettelkasten [1] or [2] and watch it pretty-print in the browser.

There are also literate [3] and org-babel [4], but I don't think they are future proof. .lit is a random format and .org basically requires Emacs+orgmode.

1: https://github.com/srid/emanote

2: https://wiki.dendron.so/

3: https://github.com/zyedidia/Literate

4: https://orgmode.org/worg/org-contrib/babel/intro.html

With Home-Manager (HM) you can "bake" your dot files into the config [1]. That means they are stored in your "generation" and then get symlinked to the right directory.

Either you write the dotfile directly in your config (Nix syntax) or you write the file like normal, and then tell HM to store it. I like the second version better, as I find it more natural.

The problem with the "baking" approach is that it is very annoying to do a small change to a config: you have to rebuild the system every time.

[1] https://rycee.net/posts/2017-07-02-manage-your-home-with-nix...

I switched to NixOS half a year ago. The reason? I fell in love with literate programming (I use [1]); being able to write (and read) your whole OS configuration is the dream!

There are few bad sides to NixOS though.

The community consists mostly of programmers, which means I am missing some creative tools (mockups, mindmaps, ..). In the future I will be able to provide/build them myself, but it is not a smooth transition from my previous arch setup.

Also the whole documentation sucks: There are three (!) official manuals + the home-manager manual + Nix pills + YT + random blogs where I have to piece everything together.

Still I find NixOS superior to every other OS (windows, linux) I have tried so far. I just feel free and am not afraid to fuck up anything [2], as I can just go to a previous generation when it doesn't boot.

Lastly, I can save my whole config in git and am free to try new tools -- If I don't like them, I just remove their line in my config. No more chasing after random install folders! (Except in home..)

[1] https://github.com/driusan/lmt [2]: All the "hacker" stuff: kernel modules, network hardening, ...

Arabian Nights 5 years ago

Is there an archive of the whole collection? My internet is unreliable and I usually try to get everything offline.

The worst is when you start making suggestions after listening to two sentences. If you assume that the other person is as intelligent as you are, then something you came up with after two minutes of listening is not useful -- they have probably considered this already.

I disagree. This has nothing to do with intelligence. It is all about connecting different domains of knowledge. You know and have experienced things they haven't.

Now you listen to their description of the problem, and transfer it to your domain of knowledge:

"Hey, this sounds exactly like an issue my friend Josh had a few weeks ago."

This is also why stories of the "king asking the farmer" or "CEO asking the cleaning lady" are so common --- it is all about the point of view.

---

Where I agree with you is "listen first, speak later". Don't interrupt until they have finished telling their story.