Hacker News new | ask | show | jobs
by amjoshuamichael 472 days ago
Yeah I found this article super weird. Explaining pointers & dereferencing is reasonable, but doing it in the context of Zig specifically, like Zig is the first language to feature dereferencing, is odd. Especially since pointers are such a fundamental part of low-level (really, any) programming. Also not sure why it's posted here?

Edit: Going through this author's website, it seems like a lot of their posts are about rediscovering low-level programming concepts through Zig. Like this article, where they discover you can't compare strings directly, and you have to use memcmp:

https://www.openmymind.net/Switching-On-Strings-In-Zig/

They claim that they blog because they "find that [they] retain things better when I write about them." No problem with that. Just a little odd to see on the hn front page, I suppose.

1 comments

> rediscovering

I think this is just "discovering". While you (and I) probably discovered these things with assembly or C languages, it's perfectly reasonable or even appropriate for newer generations to have these kinds of experiences with Zig or Rust.

Absolutely, like I said, there's no problem with what this person is doing or the way that they're exploring computers, I'm just confused as to why it's being posted here.
Maybe the place is not reserved to old grey beard? :)
I honestly don't understand his displeasure at the article being posted here. It reeks of elitism to me.
Maybe I'm wrong and this is new to a lot of people! I have a limited perspective based on my programming journey, which winds mostly through gamedev, graphics programming, and DSP, both (typically) low level domains. But I think if the title if the article were more accurate, (e.g. "What are pointers?"), my reaction would be more clear. I'm also kinda taken aback by the "old grey beard" comment. Look at all the kids using Rust, Zig, even C and tell me that this is obscure knowledge.

When I took my first programming class at RIT, visualizing the stack, variables, and pointers was one of the first classes we had. It's one of those beginner diagrams that I feel like everyone is familiar with. But I can understand that there are programming domains with equivalent complexity which don't require that base knowledge. I apologize if I came off as elitist.

> I'm just confused as to why it's being posted here.

It's more topical than many articles posted here imo. But topical is in the eye of the beholder.

My understanding is that the only qualifier for something on hackernews is that it has to be "deeply interesting":

https://news.ycombinator.com/newswelcome.html

Deeply interesting tech, or otherwise.

Is it?

When learning piano you first learn how to play rudiments and then you move up to more complex scores.

Otherwise you end up writing an article about how Ravel' Scarbo is amazing because it involves playing with two hands at the same time.

https://youtu.be/2BT7_owW2sU?si=VNpy3K6UXSkAsn7u

I don't think people understand how abstracted most modern developers in today's world are.

If learning Piano was an example then everyone would have like you said learn the basic of everything and then build up on it. Modern day people learn multiple different chords and somehow string them together. If you do EE you have have learned how the piano works before you start playing the piano.

Worth remembering most people in programming today start with Javascript / Python or Ruby.

At least Python can be as complex as C++, it is a matter of actually bothering to go through all major manuals in https://docs.python.org/3.

Those languages are hardly more abstract than learning Lisp or Prolog back in the day, other than (with exception of JavaScript) finally embracing dynamic compilers.

It boils down to how much one actually cares to learn and is curious to improve themselves.

There's amateur and outsider musicians for sure, I've seen them. They learn by hearing, usually listen to pop or rock, not classically trained.

More common with guitar than piano though.

Similarly they are most popular with Javascript than with C

not when you can let an ai play the notes for you
Rediscovering is a perfectly fine word for one person discovering for the first time what others have discovered before.