Live data from Hacker News

Show HN: Building a web server in assembly to give my life (a lack of) meaning

github.com

91–100 of 246 posts

Re: Show HN: Building a web server in assembly to give my life (a lack of) meaning

#91

Earlier quoted context omitted.

It's far more exciting than sad. Got an idea that you'd need assembly language for - now you can do it instead of..... never doing it because it would have been impossible for you in any practical way. Look to the positive instead of lamenting something that never would have happened. It's unbelievably exciting that you can now program a computer virtually without the limitation of your ability to hand code it.

> Got an idea that you'd need assembly language for - now you can do it instead of..... Nobody actually needs a web server built in assembly language, it serves no practical purpose. And I say that as someone who learned to program 6502 assembly language in 1983 and has sporadically used assembly of various architectures since. The absurdity of building it would have been the curiosity draw pre-LLMs, but when it exis…

> Can't wait until we learn to harness it to supercharge the most important and valuable thing we do as a human society in modern times: stuff increasingly intrusive ads in front of everyone at all times.

Wasn’t it used for that before anything else? Google invented transformers and had LLMs internally before chatgpt got released. Presumably they were using them for ads, because their public demos were insane things like talking to the moon.

Re: Show HN: Building a web server in assembly to give my life (a lack of) meaning

#92
If you actually start writing big stuff in assembly, esp a macro-assembler, you'd quickly realize it is more verbose, but not fundamentally that different from higher level programming. You basically need to get a hang of how to build abstractions with procedures and macros and you'd be good to go. Reading assembly effectively is often much harder than writing it.

Re: Show HN: Building a web server in assembly to give my life (a lack of) meaning

#93
post #88

Earlier quoted context omitted.

It has always been possible to do it. LLMs are not a particular enabler for that. The difference is that now it is worthless: there is no learning, no person caring about the result, nothing aspirational for the public to look towards... we used to enjoy those challenges, used to be proud of solving complex problems... now? Yeah, whatever, execute execute commit push, let another LLM "review" and call it a day.

The difference is not that it’s “worthless”. The difference is that now it’s “practical” to implement given the low effort. I wouldn’t be sad about defeating lower complexity challenges. There are always higher complexity challenges that arise once we start operating in a world when you can do more. The bar raises.

The point is the death of the celebration of excellence and technical mastery.

Once insurmountable challenges are now trivial to implement with, as you say, "low effort."

For those who were attracted to computing by the grind and the grand narrative that you, too, with sufficient effort, discipline, and merit, could become a revered craftsman, LLMs trivialize an entire lifetime of practice. I can't think of anything more demoralizing.

Re: Show HN: Building a web server in assembly to give my life (a lack of) meaning

#94

Ten years ago, I would have kowtowed to someone elite enough to build something like this. Today, I just think, "how long would LLMs have taken to write this?" I mourn the death of a human artform.

The answer is "no time at all." I used Gemini Ultra earlier this year to see how well it would do with some really gnarly assembler. I asked it to write a whole flat-shaded 3D engine in 8086 assembler that would run in CGA on an original XT and it one-shotted it in a couple of minutes.

https://imgur.com/a/Dy5rUku

Re: Show HN: Building a web server in assembly to give my life (a lack of) meaning

#95

If it is written in assembly, why is it for MacOS only?

Assembly for the correct architecture is only one part of getting an executable running on a machine.

- Dynamic libraries (e.g. for calling into the kernel, but also user space dynamic libraries) are OS-specific (.so for Linux, .dylib for macOS, .dll for Windows)

- Executable format is OS-specific (ELF for Linux, Mach-O for macOS, PE for Windows)

- Dynamic loading and linkage of both the above are also therefore OS-specific

Re: Show HN: Building a web server in assembly to give my life (a lack of) meaning

#98
post #68

I am attempting to write a software renderer in WebAssembly because, for some reason, I feel the need to go against the direction this vibe coded world is going, and I want to feel challenged again. I don't know if I will ever finish it, it is crazy, and by no means useful. But gosh it feels so good. Congratulations to the OP for the accomplishment.

As in 3D software renderer? I cut my teeth on those throughout my teens and the start of my professional career, in x86 and C.

I wanted to see how an LLM would do writing one in pure 8088 assembler for CGA and it one-shot a nice demo (I fed it the vectors for the Elite ship in the prompt):

https://imgur.com/a/Dy5rUku

Re: Show HN: Building a web server in assembly to give my life (a lack of) meaning

#99
post #92

If you actually start writing big stuff in assembly, esp a macro-assembler, you'd quickly realize it is more verbose, but not fundamentally that different from higher level programming. You basically need to get a hang of how to build abstractions with procedures and macros and you'd be good to go. Reading assembly effectively is often much harder than writing it.

Yeah, that's what I realized during this, too. You need to be much more explicit, but the way any given function works isn't fundamentally different. "strlen" will always iterate through a string searching for a NULL byte whether it's in C, Rust, Assembly, or whatever other language. I think it can feel almost more straightforward than other languages, since you're laying out exactly what the CPU needs to do, in what exact order.

Re: Show HN: Building a web server in assembly to give my life (a lack of) meaning

#100

I feel the guy’s suspicion towards any high level language. I exclusively programmed in assembly on C64, Amiga and the recognized that this ain’t sustainable on PC because there are more and more edge cases or different machine configurations. I had a very hard time simply using and even utilizing C++ or Java. C and Turbo Pascal especially was easier because the compiled code was very much resembling to hand written…

I don't know. Certainly the PC had a lot of options, but it wasn't impossible. My first piece of commercial software was written entirely in x86 assembler and had to navigate things like graphics card options and multiple sound card options. It could be done, it was just a lot more of a PITA.

Once I was doing 3D I quickly started moving everything but the inner loops to Turbo C, because I'm not a total masochist :)

Post reply on HN