HNHacker News
TopNewBestAskShowJobs

a-nikolaev

781 karma · joined June 20, 2012

https://github.com/a-nikolaev
submissionscomments
a-nikolaev··on I watched Gemini CLI hallucinate and delete my files
It can answer: "I'm a language model and don't have the capacity to help with that" if the question is not detailed enough. But supplied with more context, it can be very helpful.
a-nikolaev··on Gnuplotlib: A gnuplot-based plotting backend for NumPy
I'm using gnuplot for plotting too (the actual gnuplot application not a library that uses gnuplot as its backend).

And I usually keep computation and plotting separate. Computation produces data files, and a gnuplot script generates plots. This separation of computation and plotting allows updating charts later if needed, collected data can be reused in other plots, and additional data analysis can be performed and charts can be augmented.

So I personally don't see many advantages from integrating chart generation into computational pipeline itself (except for computation monitoring or maybe when user response is needed to direct computation). Because of that, libraries that encourage charts generation from a computed array instead of dumping that data into persisted files feels like an anti-pattern to me.

a-nikolaev··on Investigating Rock Radio with Rick Beato
This is like an artificially created mass extinction event (e.g. https://en.wikipedia.org/wiki/Extinction_event ). Without it the ecosystem could maintain itself for very long time changing slowly and gradually. An extincting event wipes out most of the existing organisms, creating open niches to be populated with something new and maybe weird-looking.
a-nikolaev··on Jaq – A jq clone focused on correctness, speed, and simplicity
jq feels like a much more robust tool than yq. I understand that the task of processing YAML is much harder than JSON, but:

- yq changed its syntax between version 3 and 4 to be more like jq (but not quite the same for some reason)

- yq has no if-then-else https://github.com/mikefarah/yq/issues/95 which is a poor design (or omission) in my opinion

So yq works when you need to process YAML, it can even handle comments quite well. Buy for pure JSON processing jq is a better tool.

a-nikolaev··on Flecs – A fast entity component system for C and C++
A collection (e.g. an array or a hash map) that stores things. Maybe more than one collection like that, different for each type of entity: monsters, items, etc. (Separate code paths to handle these different types of things.)

Keeping indexes/keys for references, and loops over these collections can do a lot without any upfront complexity of an entity system.

a-nikolaev··on Poll of Wikipedians concludes: Wikimedia fundraising emails are misleading
I think, Wiki fundraising message should be more informational, not an emotional cry for help and money. I myself don't want to be manipulated, give me the numbers and what you want to do with my money.
a-nikolaev··on Poll of Wikipedians concludes: Wikimedia fundraising emails are misleading
I think, Wikimedia's fundraising message should include the amount of money they have, the expenses they expect for the coming years (with a basic breakdown of how it is going to be spent), as well as a link to a detailed report of how much money they got and how they were spent for the previous years. Basically be transparent, b/c someone might want to spend their money on a different web project they like.
a-nikolaev··on OCaml at First Glance
Just to add to this, I wrote additional lecture notes for the class on OCaml I taught, which was largely based on this book.

http://a-nikolaev.github.io/fp/ - if anyone is interested in more learning resources.

a-nikolaev··on OCaml at First Glance
No parentheses can be nice for cleaner pattern matching, e.g. something like this:

  match a, b with
  | 1, 2 -> x
  | _ -> y
a-nikolaev··on Entropy Is Fatal
pretty much
a-nikolaev··on No one is certain what Roman bronze dodecahedrons were used for (2018)
Yeah. Maybe enclosing a particular type of hole could give more points or something like that. Also, one could put wooden pegs with numbers or other tokens in the holes to specify points that can be gained, or those tokens that can be collected. Such modifications can make the game more replayable. (One could also use this game as a sort of fortune-telling device, since solving a game requires randomization, and a player may end up in one or the other configuration at the end of the game.)
a-nikolaev··on No one is certain what Roman bronze dodecahedrons were used for (2018)
https://en.wikipedia.org/wiki/Icosian_game
a-nikolaev··on Science upside for Starship
Dreaming is fine, but Musk has a track record of not delivering on his over-optimistic promises. And a dream is not enough to overpower gravity and the laws of thermodynamics. There are very hard physical limits on how efficient a rocket can be, even in the most optimistic scenarios.
a-nikolaev··on Skeptical about electric-powered planes
Here's a video that's making a basically the same argument (although with a more sarcastic tone) that electric batteries don't have a sufficiently high energy density to power an economically competitive plane https://www.youtube.com/watch?v=dMmaG_3NnGs
a-nikolaev··on Ask HN: How did Python become the lingua franca of ML/AI?
Python is a kind of a new Fortran for this generation of scientists. (And Python makes things even easier, ofc, compared to Fortran.)
a-nikolaev··on “Illegal” Moscow state university network built by students (2002-2013)
As a person who lived in that dorm at the time, I don't think that the photo evidence is dangerous or incriminating for the author now. Maybe it could be ..somewhat.. incriminating at the time to share some of these details, but the existence of the network infrastructure was never a secret to the administration.

Let me try to explain, the network was quite organic for that place and time, I guess: The dorms administration really had no idea what internet is, and while the network wasn't officially sanctioned, it wasn't (very) actively prohibited either. It wasn't regulated, and obviously was a nuisance for the people managing the dorms. But at the same time I don't remember anyone being punished for maintaining it. It existed in a gray area so to speak: The network provided a utility to the students, but the school did not want to be responsible for it and also did not provide any alternatives. So the school administration turned a blind eye to the network for the most part, I think, until it was finally officially legalized.

Btw, I found a link to the dorms forum ("forum.local"): https://forumlocal.ru/ubbthreads.php it still exists, and its topics are going back to the times described in the article. Some old moderators are also still there (!).

a-nikolaev··on Hugo Themes ranked by GitHub Stars
A pedantic comment. I think it should be saying "5000 GitHub stars" instead of "5000 Git stars". Similarly, "GitHub Link" instead of "Git Link". Git ≠ GitHub.
a-nikolaev··on Procedurally generating a rounded box mesh
Okay, yeah, I agree that the more important part in procedural generation is to be able to produce a large population of interesting artifacts. The means to get there can involve more or less randomness (it can be a small seed input, a set of parameters, or a random sequence of numbers).

Even something like Mandelbrot or Julia sets (or similar fractals) are fully deterministic algorithms, but the choice of the position and scale (quite a small initial input) is sufficient to generate a large variety of interesting results => procedural generation.

The procedure must be making some kind of sequence of choices that leads to a set of diverging final outcomes. The choices can be prescribed by some kind of input value, or determined by a PRNG of the generation procedure itself (also actually a deterministic sequence).

However, not everything made by a computed program should be called "procedurally generated". Word docs are not a result of procedural generation. Arithmetic operators and sorting algorithms are not procedural generation techniques by themselves (although they can be used in procedural generation as building blocks).

a-nikolaev··on Procedurally generating a rounded box mesh
Demos are fine without randomness, but what we see here is an algorithm or a numerical method to make a mesh.
a-nikolaev··on Procedurally generating a rounded box mesh
Very nice visuals, but "procedural generation" does not seem to be the right term for this code. Maybe it should be called an "algorithmic technique" instead, or something like that?

Procedural generation normally is a randomized process that does not try to get an optimal solution. Instead, it typically aims to be a generator for a large diverse population of "interesting" outcomes, where "interesting" is often a subjective metric, but does not really have to be.

a-nikolaev··on Sri Lanka’s overnight flip to organic farming has led to an economic disaster
> “The ban has drawn the tea industry into complete disarray… If we go completely organic, we will lose 50 per cent of the crop, (but) we are not going to get 50 per cent higher prices,” he reportedly said.

To break even, you need to double prices (i.e. 100% higher), not 50% higher. Very strange expert.

a-nikolaev··on OpenMoji: Open-source emojis
Emojis are normally used inlined in text. So, I think, they should demo theirs the same size as they would be when inlined in text. Otherwise hard to tell tell the emoji quality. I'm also a bit concerned with the thick black outlines, they may look not as good at the small scale (may look too noisy or may overpower small color details).
a-nikolaev··on New Ways to Be Told That Your Python Code Is Bad
Probably b/c Python abuses the same keywords way too much. (But that shouldn't be such a surprise already to oppose this particular case.)
a-nikolaev··on A Big Study About Honesty Turns Out to Be Based on Fake Data
It's easier to gain reputation if you are fine with cutting corners here and there, or even make up things as long as no one can see that. And once you are at Harvard (or Duke for that matter), most people wouldn't even question your credibility.

EDIT: And to the point of not being able to fake that data well. Yeah, again, if we are in the business of getting credit points quickly, faking the data quickly makes sense too. No one would take a close look, right?

a-nikolaev··on Star Citizen Progress Tracker v1.0
Star Citizen becomes http://progressquest.com/ 2.0 ?
a-nikolaev··on Stabel: A pure, concatenative and statically typed programming language
Does Stable support polymorphic functions? What kinds of data abstractions are possible? (I.e. something like records / structs / classes / Lua-like tables?)
a-nikolaev··on Bunnyhopping from the Programmer's Perspective (2015)
The described way of increasing maximum velocity does not look realistic, it is not based in any kind of physics or bio-mechanics.

So, is it a suggestion to implement a broken game mechanic.. so that experienced players can transfer their skill to other FPS games? Nice..

a-nikolaev··on Air France cancels flights as Russia withholds clearance
My guess us that for the Russian citizens, Putin wants to show that: 1) Lukashenko is the good guy fighting terrorists, 2) EU politicians have mistreated Belavia Belarusian airlines, so Russia had to step in and defend their allies, 3) generally trying to show that he is more powerful than EU politicians.

In terms of actual long-term goals, I think, he aims to replace Lukashenko with a new pro-Russia president, so he tries to keep Lukashenko happy in the process (also making him more dependent on Russia internationally), and proving that the two countries are still best allies...

a-nikolaev··on Replacements for existing software written in Rust
That's awesome though!
a-nikolaev··on The disappearance of a Soviet skiing party in 1959
For Russian-speaking people, one interesting investigation of Dyatlov incident is ongoing here: https://www.youtube.com/channel/UCDZTS1BXsSHUkZeVK5T1q7w/fea... - The author is an artist who is looking for anatomical anomalies in the photos from morgue (i.e. wrong length of the bone -> possible fracture, etc). He also tries to find the correspondence between the found abnormalities and omissions made in the autopsy reports (i.e. for one of the victims whose photo indicates that they might be missing an eye, the autopsy report conveniently describes only the other eye...)
Page 1 of 11Next →