HNHacker News
TopNewBestAskShowJobs

archmaster

1,639 karma · joined February 13, 2019

hi! i make stuff. https://github.com/kognise
submissionscomments
archmaster··on Show HN: How did your computer reach my server?
Yeah, sorry, Hacker News has successfully made my server chug a lot :)

I'm working on it right now and hopefully will be working better soon! In the meantime I've increased timeouts so loading will be longer but it should work better.

archmaster··on Show HN: How did your computer reach my server?
Hi! I'm Lexi. I'm 17, and one of the things I'm interested in right now is gaining a deeper understanding of how computers work and showing that in new ways.

A few months ago I published https://cpu.land (discussion: https://news.ycombinator.com/item?id=37062422). After cpu.land, I felt a lot of pressure to make another Big Giant Thing but didn't really have anything compelling. So I just hacked away on personal projects and, through some coincidental learning on how the Internet works, ended up hacking together a traceroute program that could live stream to a website from scratch!

I realized I had never seen this sort of thing on the web before, and it was actually a kind of cool and novel way of visualizing the structure of the Internet, so I polished it up and built a pretty site around it. In the process, I learned some really interesting things about how BGP and the structure of The Internet, so I melted the traceroute tool with an article sharing that knowledge.

I'm still hacking on this and I'm sure my code will manage to break somehow, so please let me know if you have any suggestions! :)

(Side note: why Rust? I don’t think programming language choice matters that much, but I wanted to quickly write a very dependable low-level program, and I really like Rust’s error handling primitives. Why do you care about this?)

archmaster··on When gradient descent is a kernel method
Interesting article at first glance, although I definitely have to reread when I'm actually... awake

Is that my Water.css color scheme from so many years ago I see? :)

archmaster··on I'm 17 and wrote this guide on how CPUs run programs
Thank you so, so much for the kind words. I'm always learning, and I'm sure my style will change — hopefully for the better — but it's really nice to hear that cpu.land was anywhere close to as well-written as I was hoping!
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
I am glad you enjoyed and learned something, thank you!

Thank you for the nitpick on the 4004! I think I will actually make a minor correction about that.

I know about the Program Counter terminology, and explicitly chose not to use it to be more architecture-independent... but maybe it was a mistake not mentioning it at all, considering it's such absurdly prevalent terminology.

archmaster··on I'm 17 and wrote this guide on how CPUs run programs
I am really happy to hear that, because that was exactly my goal! Thank you.
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
I am very glad you liked it! Julia Evans is one of my biggest inspirations ever. I have a lot of her zines. SHE ACTUALLY READ MY ARTICLE EARLIER AND I JUST ABOUT EXPLODED https://twitter.com/b0rk/status/1689331862487932928
archmaster··on Arpchat – Text your friends on the same network using just ARP
justine tunney is an amazing inspiration! glad you enjoyed :)
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
I covered this:

> I talked to GPT-3.5 and GPT-4 a decent amount while writing this article. While they lied to me a lot and most of the information was useless, they were sometimes very helpful for working through problems. LLM assistance can be net positive if you’re aware of their limitations and are extremely skeptical of everything they say. That said, they’re terrible at writing. Don’t let them write for you.

https://cpu.land/epilogue#acknowledgements

To elaborate, I had perhaps 4-6 "conversations" with various GPTs. They consisted of me asking some question or expressing confusion about something I was having trouble researching in case the LLM could either pick up on my confusion and be helpful, or give me a better source to look through than Google. The latter approach never worked, it always made up bullshit, but the former did once or twice — before the conversation deviated into lies, at least, the models helped me get my thoughts straight.

At their best they felt like talking through a problem with someone smarter than me. At their worst they were a waste of time and actively misleading. They were usually at their worst. I did not use language models as primary sources for anything; where they helped me clarify my thoughts, that simply helped me know what to research normally, and the only other time I used them was to find a file in the Linux kernel that contained some code I was looking for but didn't know verbatim.

Otherwise, the article is entirely originally researched and certainly originally written.

archmaster··on I'm 17 and wrote this guide on how CPUs run programs
I have 10,610 songs in my music library, I listen to a lot of different music! Linkin Park, however, is quite popular — of course, "In the End" itself was widely shared as a meme when I was younger, but I've also just heard it playing out loud in the world.
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
That's true - some level of technical knowledge is assumed, but I'm fine with that. Every article needs an audience. I can't write something that's perfect for everyone.
archmaster··on Arpchat – Text your friends on the same network using just ARP
i see. hmmmmm ... that's not supposed to happen, and it works fine on both nixos and ubuntu for me. may be something funky going on, i'll see if i can take a look sometime soon.
archmaster··on Arpchat – Text your friends on the same network using just ARP
not sure if your formatting is messed up, but these commands should work:

    $ sudo setcap CAP_NET_RAW+ep ./arpchat
    $ ./arpchat
perhaps try sudo on the arpchat binary if not
archmaster··on Arpchat – Text your friends on the same network using just ARP
From my testing, it can break through a lot of things!
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
Glad you like the PDF! Fun fact: it's actually the print stylesheet output of the one-pager edition. Hit Ctrl-P on https://cpu.land/editions/one-pager (pref. in Chrome)
archmaster··on Arpchat – Text your friends on the same network using just ARP
Hey, I made this! I also made this other thing on HN today (https://news.ycombinator.com/item?id=37062422), really cool to see ArpChat as well (guess someone went through my profile). It was a super fun project and I learned a lot about networking.

I actually got a chance to use it in a totally-offline setting a bit ago, which was fun! ... however, I then found a major bug that was causing tons of latency, and I fixed it but I haven't gotten around to building new artifacts yet, so you might want to build from scratch if you're planning on testing it out in a real setting for some reason. I also added fun username colors and message times. I promise I'll upload a new release soon!

If you're interested, I wrote an article about a year ago about how ArpChat works: https://kognise.dev/writing/arp

archmaster··on I'm 17 and wrote this guide on how CPUs run programs
LWN is one of my favorite websites. I learned more from LWN articles (probably mostly yours lol) than most other resources on the internet when researching for my article. I actually quoted you from 19 years ago! https://cpu.land/epilogue#bonus-tidbits
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
I think you are very correct, and I don't like it. There should be more "online books" that are in depth and correct!
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
Thank you + I hope you enjoy! I would really appreciate your feedback if you finish.
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
re Figma: that's a good idea, I can definitely include SVGs

I'll check out Gustavo Duarte's posts!

archmaster··on I'm 17 and wrote this guide on how CPUs run programs
I am a big fan of Learn You a Haskell! Was absolutely lovely when I was learning FP.
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
"Wrong" is perhaps not the most accurate word. I most often found information to be either extremely oversimplified such as to be unhelpful, or outdated and no longer relevant for current systems. Although, yes, some things were just wrong.

There are courses and presentations and books, but there aren't many websites or articles — and that's the learning style that works best for me. Undergrad programs will teach a lot of what I covered (though certainly not all, and it really depends on the program) but I believe that knowledge should not be gatekept on going to college.

archmaster··on I'm 17 and wrote this guide on how CPUs run programs
I'm glad you enjoyed it!

> It's also a very good idea to write these types of resources when you teach yourself something new because it clarifies your thought process and helps you identify parts that are still unclear even though you initially thought you understadn them etc.

I found this to be very much the case. As I wrote the article, I discovered so many things that I didn't properly understand. It partially took so long because I ended up going down mini rabbit holes every step of the way. And now I understand stuff a lot better!

archmaster··on I'm 17 and wrote this guide on how CPUs run programs
Interesting! I've always been most interested in conveying information to people — human-computer interactions, interface and app design, educational writing like this article. Before I got into programming I was OBSESSED with this amazing circuit-building thing called Snap Circuits as a kid (highly recommend, definitely get a starter set for your kid if you haven't already), but even with that I just wanted to build fun systems — intercoms, doorbells, security systems, robots. From that I did more advanced electronics stuff with Arduino, and that's how I got introduced to real programming.
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
Thank you! Looks hardware-y and very interesting, I may well read through it at some point.
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
Oh, thank you for the suggestion! I of course know of Tanenbaum by reputation but I've never read the book.
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
When many people read an article on the web, they keep their eyes in one small vertical area on the page and scroll to shift the text (rather than reading the whole visible area and then scrolling to the next "page"). However, when you reach the end of the scroll area, you're suddenly forced to move your eyeline down the page. Adding a bunch of space adds means you can keep scrolling the text to be underneath your eye-area. (sorry for the crufty explanation lol, it's kinda hard to visualize)
archmaster··on I'm 17 and wrote this guide on how CPUs run programs
I taught myself everything — my parents are not technical and sorta disliked computers (which I'm sure helped motivate me lol).

So what helped me most was just experimenting a lot, banging my head against a wall repeatedly. When I got stuck I just had to keep trying. Knowing I could Google problems was really helpful, but I also had to learn how to Google. I was motivated by the amazing feeling of finishing something I built, and also the fun of learning and then applying that knowledge.

It's hard to remember my tiny self so I wish I could give better advice. I most of all wish that I had a mentor figure, someone I could ask for questions or who could show me where to look, or even just be a role model. Getting into open source and talking to people online was amazing, although I didn't start that until I was ~12.

It took me a really long time to get where I am. There are probably more efficient ways to do so other than banging my head against things. But it does work! So just encourage them to keep going, and MOST IMPORTANTLY, FOLLOW THEIR INTERESTS!

archmaster··on I'm 17 and wrote this guide on how CPUs run programs
Hi! I'm Lexi, I wrote this article/mini-book.

There's a classic question of "what happens when you load a website?", but I've always been more interested in "what happens when you run a program?". About 3 months ago, I was really annoyed at myself for not knowing how to answer that question so I decided to teach myself.

I taught myself everything else I know in programming, so this should be easy, right? NOPE! Apparently everything online about how operating systems and CPUs work is terrible. There are, like, no resources. Everything sucks. So while I was teaching myself I realized, hey, I should make a really good resource myself. So I started taking notes on what I was learning, and ended up with a 60-page Google Doc. And then I started writing.

And while I was writing, it turned out that most of the stuff in that giant doc was wrong. And I had to do more research. And I iterated and iterated and iterated and the internet resources continued to be terrible so I needed to make the article better. Then I realized it needed diagrams and drawings, but I didn't know how to do art, so I just pulled out Figma and started experimenting. I had a Wacom tablet lying around that I won at some hackathon, so I used that to draw some things.

Now, about 3 months later, I have something I'm really proud of! I'm happy to finally share the final version of Putting the "You" in CPU, terrible illustrations and all. I built this as part of Hack Club (https://hackclub.com), which is a community of other high schoolers who love computers.

It was cool seeing some (accidental) reception on HN a couple weeks ago while this was still a WIP, I really appreciated the feedback I got. I took some time to substantially clean it up and I'm finally happy to share with the world myself.

The website is a static HTML/CSS project, I wrote everything from scratch (I'm especially proud of the navigation components).

I hope you enjoy, and I hope that this becomes a resource that anyone can use to learn!

archmaster··on Putting the “You” in CPU
lol water.css never escapes me

glad you like it :3

← PreviousPage 2 of 4Next →