Hacker Newsnew | past | comments | ask | show | jobs | submit | lioeters's commentslogin

Some triangles are so acute though.

Link was previously posted by author: https://news.ycombinator.com/item?id=47398749 There are other good quality articles on their site, and maybe deserves the imaginary points.

I love articles like this that show you how to start building something ambitious, like a text editor, your own language, shell, os. This one is lovely in plain C. I see on the site there are more in this style, like making a Lisp, a Forth, a 2D language.. I bookmarked them for later reading, good stuff!

I've been learning to use WebAssembly directly, by hand-writing the Lisp-like assembly text, and also compiling C to Wasm without Emscripten or LLVM. It's given me a deeper appreciation for the original specification, version 1. Its technical design is a solid foundation, a lot of good thought went into it: Briging the Web Up to Speed With WebAssembly - https://github.com/WebAssembly/spec/raw/refs/tags/wg-1.0/pap...

In a way it's a complete instruction set and bytecode format, that could have been frozen in time and still be a useful addition to x86, ARM, RISC-V. It's great that the Wasm v1 specs is small enough for various implementations to arise. There are Wasm interpreters written in C, Zig, Go, Rust, as well as Wasm to C compiler, disassembler, little languages that compile to Wasm.. I see great value in that simplicity and smallness, it contributes to easier cross-platform and cross-language compatibility.

That's why newer features in the specs after v1, like garbage collection, components, interfaces, feel like they're higher-level abstractions that are not so relevant for my use case. Some feel like they could be developed outside of Wasm specs, like you said, dissolved at compile time to existing primitives. I'm guessing much of the benefit is for integrating with Rust ecosystem, and perhaps other languages gradually.


That's the boat I'm in with several static sites, from tens to hundreds of pages, build on Next.js and stuck a few major versions behind because I didn't have the motivation to upgrade them. One of these days I'll roll up my sleeves and convert them to Vite, and finally be free of that awful framework.


“Nobody tells this to people who are beginners, I wish someone told me. All of us who do creative work, we get into it because we have good taste. But there is this gap. For the first couple years you make stuff, it’s just not that good. It’s trying to be good, it has potential, but it’s not. But your taste, the thing that got you into the game, is still killer. And your taste is why your work disappoints you. A lot of people never get past this phase, they quit. Most people I know who do interesting, creative work went through years of this. We know our work doesn’t have this special thing that we want it to have. We all go through this. And if you are just starting out or you are still in this phase, you gotta know its normal and the most important thing you can do is do a lot of work. Put yourself on a deadline so that every week you will finish one story. It is only by going through a volume of work that you will close that gap, and your work will be as good as your ambitions. And I took longer to figure out how to do this than anyone I’ve ever met. It’s gonna take awhile. It’s normal to take awhile. You’ve just gotta fight your way through.” ― Ira Glass


Like the idea, but having just the skull of a white-tailed deer is sad and doesn't seem practical for illustrating an animal. I suppose a service like this requires constant curation to maintain quality, the larger the dataset and more it gets popular.


Fair point. Right now the collection is small and somewhat random as I'm seeding it. The goal is to have multiple views/life stages for popular species over time, not just skulls or single angles.

Quality curation is definitely a challenge as it scales. The community verification system helps, but you're right that it requires active moderation. Thinking about how to balance growth with quality. Open to suggestions.


Grifters gonna grift, and this one is well-connected.


Like in some English-speaking regions of US, Canada, maybe Australia, they end every sentence with a rising intonation like a question? Or some people, perhaps with insecurity about who they are, end their sentences weakly without determination and final authority, so it sounds like a question - like seeking approval of those around them? And then there's the "TED Talk candence" as another comment phrased it, often heard in corporate presentations or speeches, the patronizing tone of engaging with your audience like kindergardeners, asking them a non-question only so the speaker can spoon-feed the answer?


Just wanted to thank you for sharing thoughts here and on your website. The article about making your own text editor, the one about how "toy software" is a joy, another about language models, and this comment.. I've been programming since I was a child, and have gone through ups and downs in the industry as well as personally, how I relate to computing - in the context of that experience, I've appreciated your insight. I often find myself nodding in agreement and glad to see the ideas articulated well.

If notation is a tool of thought, and programming is theory-building, the way you're communicating your experience in words is a kind of knowledge transfer to an audience of indefinite scale, a public service that contributes to collective understanding.


Thanks for your kind words, they mean a lot.

Frankly, I spend a lot of time feeling similarly uncomfortable about my relationship with computers and the industry at large. I think, perhaps surprisingly, I'd call myself a 'technophobe' for this reason.

I think there's a parallel universe out there in which the arc of technology bends toward a future I actually want to live in, but I'm fairly sure we aren't in that universe today. But perhaps if we talk more about how to use the darned things in a manner that enhances the human experience rather than detracts, we can get closer to it.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: