Readit News logoReadit News
Akronymus commented on OCaml as my primary language   xvw.lol/en/articles/why-o... · Posted by u/nukifw
gerdesj · 16 days ago
GEDCOM was developed by the Mormons and was not really designed to encompass the rich diversity of human relationships. You can seriously overload the notes fields!

Genealogy is really hard but it is important to not get too bogged down with formality and get the data stashed in one form or another. Genealogy "facts" decay with a horribly short half life. It is also important to accept all "facts" as is and not try to interpret them too much - that's something else.

I'm 55 years old and have memories dealing with my grandad on my mother's side who was born in 1901. So, within reason, I can record some second hand facts going back to very early C20. My parents were born 1942/3. etc etc. However, the gold standard is written evidence of a fact.

I think that genealogy really needs to discover systems like Elastic/Open Search and not try to coerce the data to a fixed schema.

Everyone thinks their family tree is a tree. No it really isn't - it's a thicket!

I have a relative that my uncle found from Padstow in Cornwall in C16 - her first born was probably a bastard fathered by the local squire's son. There's a soldier from WWI whom the family "knowledge" from around two generations ago was convinced he was a deserter. It turns out he was honorably discharged and emigrated to Canada. On of my G^5 dad died from septicemia after punching a window in a drunken pub brawl.

All of the above has documentary evidence, expect for the desertion thing, which turned out to be bollocks. Oh there is a good chance of a mass-murderer back in C18 near Devizes, Wiltshire!

This is where IT gets really interesting. How on earth do you go about genealogy data? You are sure to piss off someone(s) who want to wear the rose tinted specs and if you think modern politics are a bit challenging, why not try to deal with politics across centuries and the random weirdness that is your own family 8)

Akronymus · 16 days ago
> How on earth do you go about genealogy data?

My extremely naive approach would a scheme where you have a header containing a list of used types of information fields, then a list of entries for people, then relationships (genealogical descendants, familial relationships with a start and end date (optional, YMD format, that you only fill in with as far as you know, so if you only know the year, you just set that.)) then a list of various events, then a list of supporting documents with a confidence value, where each document has a list of people and a list of events they are relevant to. then a list of basically freeform fields, that can link to events, documents, people, etc. where the types are defined in the header.

typing this out at 2 in the morning, so sorry for the incoherence.

Akronymus commented on Streaming services are driving viewers back to piracy   theguardian.com/film/2025... · Posted by u/nemoniac
dilDDoS · 16 days ago
I actually think pirating encourages a healthier approach to watching TV/movies. I've fully made the switch to pirating instead of subscribing to any streaming services, and it's led to me thinking more critically about what I want to spend time downloading and watching rather than just flipping mindlessly through endless amounts of readily available garbage on a streaming service.

I do still have Kanopy though, which is great for me but obviously depends on your library.

Akronymus · 16 days ago
For me, I only seek out media I plan to actually watch. Rather than flipping through what is available and choosing from there. Currently it is stargate sg1/atlantis what I am watching.

Also, a lot of movies/series are only available dubbed here. (I really effing hate "Sie" in dubbed media. So much so, that it's one of the major reasons I go for subbed in english, at most)

Akronymus commented on OCaml as my primary language   xvw.lol/en/articles/why-o... · Posted by u/nukifw
gerdesj · 17 days ago
"I feel if OCaml had got its act together ..."

The great thing is we have choice. We have a huge number of ways to express ideas and ... do them!

I might draw a parallel with the number of spoken languages extent in the UK (only ~65M people). You are probably familiar with English. There are rather a lot more languages here. Irish, Scottish, Welsh - these are the thriving Brythonic languages (and they probably have some sub-types). Cornish formally died out in the sixties (the last two sisters that spoke it natively, passed away) but it has been revived by some locals and given that living people who could communicate with relos with first hand experience, I think we can count that a language that is largely saved. Cumbric ... counting still used by shepherds - something like: yan, tan, tithera toe.

I am looking at OCAML because I'm the next generation to worry about genealogy in my family and my uncle has picked Geneweb to store the data, taking over from TMG - a Windows app. His database contains roughly 140,000 individuals. Geneweb is programmed in OCAML.

If you think that programming languages are complicated ... have a go at genealogy. You will soon discover something called GEDCOM and then you will weep!

Akronymus · 16 days ago
From the gedcom wiki page it doesnt seem that bad. At least the data format itself. But it seems like its very easy to screw up working with it.
Akronymus commented on F-Droid build servers can't build modern Android apps due to outdated CPUs    · Posted by u/nativeforks
snake42 · 17 days ago
You can always lift machine code to assembly. Its a 1 to 1 process.
Akronymus · 17 days ago
It definitely isnt a 1:1 process, as there are multiple ways to encode the same instruction (with possibly even having some subtle side effects based on the encoding)

https://youtu.be/eunYrrcxXfw

Akronymus commented on GitHub is no longer independent at Microsoft after CEO resignation   theverge.com/news/757461/... · Posted by u/Handy-Man
arielcostas · 18 days ago
And as a casual Excel user (to get data from CSV, remove some rows, move few things around, etc.) it isn't even great. You can't open two files with the same name because Excel seems to have some "global state" between windows; to the point where you might be hitting Control+Z to undo some changes, and it's undoing stuff on the other spreadsheet without you noticing.

Doing something as "simple" as a LEFT JOIN of data requires having two separate documents (or one, but saved on your system), open them in the Power Query editor (if it's the same document you do it twice, once per table) which creates two "queries", and then you can either use one to join against the other, or create a third one "joining" them. In the end, you get three new sheets on your docs: the original tables and the merged one.

Then there's the annoyances: if you use Excel in English (US at least), apparently you get a CSV separated by actual commas "," (ASCII 0x2C) but using it in Spanish (Spain) you get it separated by semicolons ";" because commas actually separate number decimals. Meaning whenever I build a program that parses/writes CSV, I need to consider the chance it's using semicolons and commas instead of commas and dots. Not that it's non-standard: CSV doesn't specify a delimiter, but you could stick to the same format everywhere, or give an option to customise, or create "Tab-Separated Values" (essentially CSV with tabs separating values).

Another one is formulae, that also change based on language, and their arguments separator also changes. In en_US you'd use `=SUBTOTAL(109,B2:B7)` while in Spanish it's `=SUBTOTALES(109;B2:B97` (plural instead of singular, and semicolon instead of comma). Meaning any guide, documentation or tutorial in English requires me having to "guess" how the function is translated, and manually changing commas to semicolons.

With all this, I mean to say: Excel isn't even that great for the "normal" user. Or perhaps I'm too "power user" for this and just lazy enough to bother with it instead of using "proper" tools like Python or R.

Akronymus · 18 days ago
I hate the localized function names quite a lot too. In german it even uses umlauts in some of them.
Akronymus commented on Zig's Lovely Syntax   matklad.github.io/2025/08... · Posted by u/Bogdanp
flohofwoe · 20 days ago
That's why "real programmers" use English keyboard layout regardless of the physical keyboard ;)

Curly brace syntax would never have been invented in Europe (case in point: Python and Pascal).

Akronymus · 20 days ago
Oh for sure. I am using qwerty myself. And my fav language (f#) has relatively few curly braces.
Akronymus commented on Zig's Lovely Syntax   matklad.github.io/2025/08... · Posted by u/Bogdanp
pjmlp · 20 days ago
Having @ and .{ } all over the place is hardly lovely, as is having modules like JavaScript's CJS.
Akronymus · 20 days ago
It's especially bad on a qwertz keyboard as well.
Akronymus commented on Historical Tech Tree   historicaltechtree.com/... · Posted by u/louisfd94
wongarsu · 23 days ago
Obviously something of this magnitude will have blindspots. This tech tree seems to be vastly underselling the impact of advances in metallurgy and precision machining. As well as most of what you might call "basic science".

This leads to e.g. the Gas Turbine just appearing out of nowhere, not depending on any previous technology

Akronymus · 23 days ago
A lot of those things are incremental improvements that build onto each other, like refining an alloy by a few % many times over to end up with something entirely different.

How would one determine what is sufficiently different to deserve a node?

But 100% agree, incremental improvements are the vast majority of advances.

Akronymus commented on Ask HN: What do you dislike about ChatGPT and what needs improving?    · Posted by u/zyruh
zveyaeyv3sfye · 23 days ago
Like with anything LLM. It doesn't "know" anything.

It simply compliess without knowing who you are talking about. And you uphold the illusion by not questioning it.

All it does is produce deterministic output based on it's training data.

Akronymus · 23 days ago
It doesnt even really comply, Id say.It just predicts whats the most likely next text token.
Akronymus commented on PHP 8.5 adds pipe operator   thephp.foundation/blog/20... · Posted by u/lemper
sumeetdas · 25 days ago
The first typed programming language where I've seen pipe operator |> in action was in F#. You can write something like:

  sum 1 2
  |> multiply 3

and it works because |> pushes the output of the left expression as the last parameter into the right-hand function. multiply has to be defined as:

  let multiply b c = b \* c

so that b becomes 3, and c receives the result of sum 1 2.

RHS can also be a lambda too:

  sum 1 2 |> (fun x -> multiply 3 x)

|> is not a syntactic sugar but is actually defined in the standard library as:

  let (|>) x f = f x

For function composition, F# provides >> (forward composition) and << (backward composition), defined respectively as:

  let (>>) f g x = g (f x)
  let (<<) f g x = f (g x)

We can use them to build reusable composed functions:

  let add1 x = x + 1
  let multiply2 x = x \* 2
  let composed = add1 >> multiply2 

F# is a beautiful language. Sad that M$ stopped investing into this language long back and there's not much interest in (typed) functional programming languages in general.

Akronymus · 25 days ago
There are also ||> and |||> for automatically destructuring tuples and passing each part as a separate value along.

And there are also the reverse pipes (<|, <|| and <|||)

F# is, for me, the single most ergonomic language to work in. But yeah, M$ isn't investing in it, so there are very few oppurtunities to actually work with f# in the industry either.

u/Akronymus

KarmaCake day3901July 30, 2019
About
email: akronymus@akronymus.net website: akronymus.net
View Original