HNHacker News
TopNewBestAskShowJobs

archargelod

1,112 karma · joined May 28, 2023

submissionscomments
archargelod··on Vibe coding as a coding veteran: from 8-bit assembly to English-as-code
> If someone asked how I built a side project Then you might have to say the truth: that you didn't build it, but Claude/OpenAI/Gemini built it under your supervision.
archargelod··on Google will allow only apps from verified developers to be installed on Android
Dumb phone, Linux on arm, Older devices with custom OS.
archargelod··on Why Nim?
I hated significant whitespace when I tried Python first time. Years later I found Nim and indentation didn't bother me as much.

Maybe we both just got bad first expression with most popular, but unfortunately not a good language? =)

archargelod··on Why Nim?
Nim has one of the most powerful metaprogramming systems out there. Hygienic templates, easy macros, but my favorite is the compile-time functions.

Nim compiler has an embedded VM, so any Nim code (that doesn't rely on FFI) can run at compile time.

archargelod··on Recto – A Truly 2D Language
A very simple query "PATH programming language" with SearXNG returns [1]. I think it matches your description perfectly.

> 2003

> PATH is a programming language that is similar to Brainfuck. This intuitive language requires a simple grasp of two dimensional space, one requirement that almost no other programming languages have.

[1] https://sourceforge.net/projects/path/

[2] https://pathlang.sourceforge.net/

archargelod··on I tried every todo app and ended up with a .txt file
I came to the same conclusion - nothing beats a simple text file.

But I've also built a simple chooser program for multiple todo files and notes. A very simple cli program that does basic fuzzy search over file names.

For example, I can type `mem mov` to open a `movies.note` file in notes directory. If I use a full name with `.note` extension and it doesn't exist - it will create a new note with that name and open it in editor immediately. It makes it easy to create new notes on the fly and open them in a few keystrokes.

For editing I use neovim with auto-save enabled, so I can keep editor open all the time without forgetting to save.

archargelod··on Objects should shut up
That's why the first thing I do on my new phone is disable the Google app. It does absolutely nothing useful for me, but never sleeps, eats resources and shows you advertisements.

I also hate the mobile apps that designed to be always on, always listening or nagging. So, I have the policy: if the app is only useful occasionally and it is active but I didn't start it - I disable it. And I'll enable an app when I need it, not whenever it wants me to use it.

archargelod··on LLM leaderboard – Comparing models from OpenAI, Google, DeepSeek and others
Still sounds like vibe coding. If they don't care about product, nothing is stopping them from taking the AI shortcut.
archargelod··on Pony: An actor-model, capabilities-secure, high-performance programming language
> Many modern languages require this as well. Go, Gleam, Rust

All the languages you listed do not support function overloading. Qualified imports and namespaces exist to avoid name clashes first, dependency tracking is just a bonus (and a chore).

archargelod··on Pony: An actor-model, capabilities-secure, high-performance programming language
This is solved by tooling. LSP will get you to symbol definition in a single key press. That's a lot faster then looking it up manually.

In my experience, it's even faster to git clone, open a project in neovim and navigate with LSP than browsing code with some online interface.

archargelod··on Pony: An actor-model, capabilities-secure, high-performance programming language
Using fully qualified imports is a Python tradition.

Python doesn't have a notion of public/private symbols (no, "__" prefix does absolutely nothing). It also doesn't have a good type system, so it can't have function overloading.

This is why you're required to qualify almost all imports in Python, to avoid name clashes.

Nim doesn't have this problem and also "fixes" a lot of other shortcomings[1] of Python.[2]

[1] - https://github.com/yugr/python-hate

[2] - https://github.com/nim-lang/Nim/wiki/Nim-for-Python-Programm...

archargelod··on Use Your Type System
Nim[0] supports subrange types:

  type
    Foo = range[1 .. 10]
    Bar = range[0.0 .. 1.0] # float works too
  
  var f:Foo = 42       # Error: cannot convert 42 to Foo = range 1..10(int)
  var p = Positive 22  # Positive and Natural types are pre-defined
[0] - https://nim-lang.org/docs/manual.html#types-subrange-types
archargelod··on What to expect from Debian/Trixie
I was trying to solve another problem related to mounting, ran `df -h` a couple times and noticed that:

  1) tmpfs is mounted to /tmp
  2) available size on /tmp is very low
  3) my free ram indicator in status bar is red
And then I tried downloading some files while looking at htop. It was immeduately obvious that it was the problem causing the hangs.
archargelod··on What to expect from Debian/Trixie
I'm using OpenSUSE Tumbleweed that has this option enabled by default.

Until about a year ago, whenever I would try to download moderately large files (>4GB) my whole system would grind to a halt and stop responding.

It took me MONTHS to figure out what's the problem.

Turns out that a lot of applications use /tmp for storing files while they're downloading. And a lot of these applications don't cleanup on fail, some don't even move files after success, but extract and copy extracted files to destination, leaving even more stuff in temp.

Yeah, this is not a problem if you have 4X more ram than the size of files you download. Surely, this is a case for most people. Right?

archargelod··on The force-feeding of AI features on an unwilling public
If I want to use ChatGPT I will go and use ChatGPT myself without a middleman. I don't need every app and website to have it's own magical chat interface that is slow, undiscoverable and makes the stuff up half the time.
archargelod··on Are we the baddies?
AI Entrepreneurs
archargelod··on Show HN: I AI-coded a tower defense game and documented the whole process
I am so relieved to hear this. I know this is a seemingly random request, but could you please list top 10 cities in the world that have the most turtle-like names? It's an urgent issue, matter of life and death.
archargelod··on The Future of Flatpak
I find Appimage to be better alternative to Flatpak: no install, persistent through linux installations, no issues with themes, icons, Xorg config; in practice - take fraction of flatpak storage size, optional sandboxing with external tools like firejail, easier to run from terminal / dmenu / rofi, very easy to tinker with and fix.

There's just one problem: they don't integrate with desktop without an additional application. We need a feature where dropping an AppImage into "~/.local/share/applications" would automatically detect it as a ".desktop" file and make it appear in the DE menus.

archargelod··on Lune: Standalone Luau Runtime

  I can think of couple:
  - Toolchain size: Nim, Zig ~100MB; Rust >1.5GB
  - Compilation Times
  - Micro-dependency Culture
archargelod··on Lipu sona – Toki Pona Learn the language of simplicity
toki! mi sona e toki pona tenpo pini. mi pali e musi nimi kepeken ilo lua tawa sona pona pi toki pona. musi ni li esun ala. o kama lukin - https://janakali.itch.io/tokdle
archargelod··on Jules: An asynchronous coding agent
Anymore? For me it always sounded too childish or sarcastic. I would expect to see "Blazingly Fast" on a box of Hot Wheels or Nerf Blaster, not a serious tech product.
archargelod··on A leap year check in three instructions
This website eats newlines, unless you double them (one of the annoying features of markdown). You can use codeblocks by putting 4 spaces before each line:

    int main() {
        // this should be properly formatted
        return 0;
    };
archargelod··on Python lib generates its code on-the-fly based on usage
The repo name made me think it's a tool that stops you from using a project if it detects python:

"fuck, it's python!" *throws it in the garbage*

archargelod··on The world could run on older hardware if software optimization was a priority
So you're telling me that if companies want to optimize profitability, they’d release inefficient, bug-ridden software with bad UI—forcing customers to pay for support, extended help, and bug fixes?

Suddenly, everything in this crazy world is starting to make sense.

archargelod··on VMOS – Virtual Android on Android
This can emulate (more like chroot) older Android versions.

I remember using it to run some Lolipop (Android 5) games that are no longer working since Android 7-9.

Some people use VMOS to sandbox apps that require google services, so their main Phone OS stays clean from this garbage.

Also, since Huawei is famously prohibited from using google services on their devices, Huawei users often use VMOS to circumvent this restriction for selected apps that wont work without GMS.

archargelod··on Show HN: I built a hardware processor that runs Python
Comparing Nim to compiled Python is almost insulting.

Smaller binaries, faster execution, proper metaprogramming, actual type safety, and you don't need to bundle a whole interpreter just to say "hello world"

archargelod··on Pipelining might be my favorite programming language feature
Add a couple more arguments to each function and you'll get that first variant is a lot nicer:

    a(axe).b(baz, bog).c(cid).d(dot)
vs

    d(c(b(a(axe), baz, bog), cid), dot)
archargelod··on Understanding the Origins and the Evolution of Vi and Vim
I actually use vis daily, alongside NeoVim - for opening very large files.

Most editors choke at couple MB, Vis can open 10 Gigabyte text files with zero delay.

archargelod··on Blue Prince is a roguelike puzzle masterpiece
With real roguelikes (aka games on a grid with turn-based combat), I believe they're not designed to be fair at all. There's so much rng involved, so you will get unexpected and unfair deaths and lots of them.

Roguelike community has a saying - "losing is fun". And while I only played a few traditional rl games and finished none of them, I had great experience while constantly "losing" only a few hours into the run.

In most roguelites I play, losing isn't fun - it's frustrating. There is often very little variety in earlier stages of the game, so if you're bad (and I am) you're stuck replaying the same section for hours, only to get good RNG, go 1 level farther and immediately die to some new mechanic or difficulty spike.

One exception is The Binding Of Isaac, this is probably the best roguelite game I've ever played and nothing comes even close.

archargelod··on Nintendo unveils Switch 2 ahead of June 5 launch
Or just grab a replacement sticks from aliexpress. A set of 4 sticks is around 2-3$. I've changed them twice in 8 years of using a console.
← PreviousPage 6 of 11Next →