4 ms·
What blog engine and why did you and I assume your partners feel like the world needed another one? Not being glib. I'm genuinely curious.
by stuntkite 4y ago
What blog engine and why did you and I assume your partners feel like the world needed another one? Not being glib. I'm genuinely curious.
- taubek 4y agoYeah, I'd like also to take a look at it.
- xani_ 4y agoIt didn't need another one which is why I won't be showing it ;p. It was also project where I learned Go and did a bunch of redesigns along the way so it is a but of a mess. I'd also hate idea of someone else actually using it, or worse, reporting bugs, because just using some static site generator would've been much better idea and I kinda designed it for my workflow. It did a lot of performance wankery, like templating system (not my lib, I just used available one) being just Go code embedded in HTML that needed to be compiled with the rest of the app, or pre-generating HTML from Markdown on load. Using same language to write app as to write templates was nice tho. Most of it was mostly "how far I can go without cutting features" because really going from 10ms per page to 0.2 ms per page has no difference after client RTT is involved. Hell, even on localhost for some reasons Chrome always have few ms delay before starting download compared to any cli client, chrome shows anywhere between 3 and 8ms to start downloading, while FF sits at 0ms I originally planned to have some fun with HTTP2.0 PUSH but, well, while I kinda believed on authority that it is useful for something it turned out to be entirely stupid idea which apparently nobody bothered to test before pushing it into standard so I didn't get to do it. Maybe I should try again with HTTP3.0 hints.
- stuntkite 4y agoIt sounds like you learned a lot... but a blog platform to do that? Like why not just pivot to something that might need the enhancements you're providing with go? I'm asking this for rhetorical purposes. I know, I know deeply why. heh. I'm glad you came out of it ok. Thank you for your honest response.
- xani_ 4y agoWell it started after wordpress fucked up my formatting and replaced -- with — (em dash) one too many times. The whole PHP stack isn't exactly pleasant to manage in the best of days, and looming threat of WP having another bug and getting owned of no fault of my own was also a factor. I wanted something simple that was just markdown for actual content, no database or anything more fancy. I have considered static gen and even eventually migrated my old blog to it as archive (not in english, and cringe anyway). But it really started as "well, it looks like fun thing to do and I will be scratching the itch I had, why not". Mind you, that was in 2012, the first version was in asynchronous(!) Perl, Ghost didn't even exist at that point (and I didn't wanted to touch JS anyway), let alone any other alternative. It even did respectable ~3ms per render of the page. I rewrote it in Go to learn some stuff and in the process also yeeted comment processing and just farmed it out to externals (self hosted, not written by me) app, as that's probably the most annoying and thankless part of blog engine when you include all kinds of spam detection that would need to be written. On the nearby cementery I also have unfinished Go z80 emu (I did learn a bit about using Dear ImGui from it) and it rewrite in Rust (because what's better first project than that?), just coz I wanted to see just how much faster C<->Rust is compared to C<->Go interop(answer = a lot, rendering part got from >4ms to below 0.5ms). I did it to the point where it could run some code, and quite fast too, I think it was down to few ns per instruction, and 8 byte prog ran in like 11 ns, which I kinda didn't expect from Go. It didn't emulate instruction delay tho, which would be required to emulate it with peripherals. Program decoder was just...256 byte array with function pointers generated out of operator list, which probably helped
- stuntkite 4y agoYou are a Don Quixote after my own heart. If you ever need a job, get at me. I think we'd work well together. Heh. Not even joking.
- xani_ 4y agoIt's just the way I prefer to learn stuff. Learning for learning sake without making anything out of it isn't for me, I learn best when getting knowledge in process of making something.