|=== your display should be exactly this width ===| |====== or at least as long as *this* width ======| Welcome to my website! I'm Liese. It's a bit empty here, isn't it? A little... sans-serif? (*) Dare I say, *monospace*? I'm going to keep the bulk of this site as low-fi as I possibly can. The prettier it looks, the more I feel like my writing has to live up to the prettiness -- like it has to be worth your time. But this? This clearly isn't "worth" your time. If you're still reading this, I hope it's because you *want* to be here, not because you think you'll get something in return for your eyeballs. I have two eyeballs of my own, and they're, well -- not perfectly fine, but perfectly serviceable, and I don't know what I'd do with another pair. If and when I add other pages, I might even make you copy links to them into your address bar! >:) An Atom feed of my "posts", if it please you: https://liese.dev/posts.xml (*) i have been informed that there are in fact serifs # About me - She/they. "Liese" is pronounced [ləˈiːs]: one syllable, two morae. - Grad student in CS. Monotropic nerd who spends way too much time with computers (and books (and computer books)). Likes space. - You can email me at (my name) (at) (this domain). I'd be happy for you to treat that address as a "comment on this post/page/etc" button, or if you just want to say hi! # Log ## 2024-09-18 01:00:48 AM UTC-7 dentist is fun ## 2024-09-15 06:21:13 AM UTC-7 Over at my summer day-job, I'm dealing with C++ and CMake and Conan and I just don't understand how everything is so *awful* :( Of all the languages I've ever used, the developer experience of C++ is the most wretched and soul-crushing. (C is *not* better, really, but it must be said that it isn't *worse*.) Working with Rust again recently has been an exercise in contrast: the problems I spend all my time on in Rust are actually relevant to the problem domain. In C++-land, it's a cover-your-a(hem) party from dawn to dusk, checking under every rug and every cushion for the slightest shadow of undefined behavior. CMake... I don't want to talk about CMake. I'm still processing that experience. Conan is the newest kid on the block for me, and I was really hoping it would be something closer to Apache Ivy: something that just focuses on fetching packages so that your actual build system can use those dependencies. That does seem to be true... mostly... but it also seems to have some Maven-ish tendencies? And that scares me deeply, because having Conan on top of CMake on top of ninja on top of gcc/clang, which are *themselves* umbrellas that drive constellations of tools including the *actual* compiler and linker... that is not my idea of a good time. Oh, and don't forget about SWIG! My summer day-job has me working with Python bindings into C++, which are generated from SWIG, and there is an unholy stack of codegen *on top of* SWIG that we are currently attempting to dismantle. It's just leaky abstractions on top of leaky abstractions out here. Halp :( ## 2024-09-14 04:37:09 AM UTC-7 I've just set up an instance of gitten that you can visit at https://liese.dev/gitten/. gitten is a "read-only, light-weight Git frontend" developed by Echo (https://echowritescode.dev/), and I thought it would be neat to try it out for myself. Currently I've got the source for my little MUD project up there, so you can follow along with its development if you feel like it. Speaking of which, I've decided on a codename for that project: Arcturus. It doesn't mean anything in particular to me, other than being the name of a star and sounding *awesome*. ## 2024-09-13 10:06:31 PM UTC-7 ``` $ telnet localhost Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Hello, world! Hello, world! Hello, world! ... Hello, world! ^] telnet> quit Connection closed. ``` Yyyyyep. I went down so many rabbit holes today, and that's all I ended up with. The pace should pick up as I get more comfortable with the tools at my disposal (mio, primarily) and as I figure out what kind of architecture I'm aiming for. But still, for a first day, this is a little lackluster! I did *learn* a lot though, and that's always nice. Spent a lot of time configuring VSCode (actually Codium) -- I usually use Sublime Text for everything except Java, but I finally bit the bullet and am relentlessly reconfiguring anything I don't like. I also learned how to run an integrated debugger in VSCode, which will be super useful as I start building this thing out more. Incidentally, in case anyone was wondering: I *do* want to provide a way to connect to my Telnet server over TLS. The Telnet protocol is infamously conveyed over the network in plain text, leaving it vulnerable to a host of different attacks. That's not really the fault of Telnet, any more than HTTP can be blamed for the same, but it's still important to address properly. The first early deployments of this project will probably be unencrypted though, so keep that in mind if you decide to join in. ## 2024-09-13 12:29:35 AM UTC-7 I've started working on a tiny little personal project, mostly just because I think it could be fun and interesting. Although cohost announced its imminent closure not even two weeks after I signed up, it's already made a big impression on me. It felt a lot more comfortable, a lot easier for me to post without feeling like I was intruding on someone else's space, and a lot easier for me to see interesting ideas and discussions rather than the surface-level bite-sized appeals for *engagement* that every other platform seems to be inundated with. I want to recover something of the kinds of connection that cohost encouraged. There are only a couple of platforms that felt even remotely similar to me, and they're all nearly extinct. The first is the online forum, made famous by the likes of phpBB and vBulletin. I used to spend a *lot* of time on the GameDev.net forums, on the Neopets and RuneScape forums, on the Achaea and MUSHclient and MudBytes forums... forums were the lifeblood of my online social experiences. And they were great! Each one a little self-regulating community -- helped along of course, by site and volunteer moderators who certainly didn't get enough credit for their sacrifice. There's a shadow of this kind of community in things like Twitch chat, but I'm sure I don't need to explain just how different that kind of experience is. The second is the MUD (Multi User Dungeon), a forerunner genre of modern MMOs whose member games are completely plain-text -- very much like this website, in fact! -- though they often heavily leverage VT100 ANSI escape codes to push "text-based" far beyond what you'd naïvely think the term meant. What distinguished most MUDs from MMOs, however, was that they allowed players a *lot* of freedom to express themselves and to influence the game world. In a lot of ways, actually, this makes sense: creating graphical assets is hard, and creating "good" graphical assets is exponentially harder. Writing text, however, is *trivial* in comparison, and even writing "good" text is both easier to do and easier to learn as you go. I think we collectively forget just how incredible even Minecraft was when it was released, and just how incredible it still kind of is. Both of these platforms are, if not dying (forums), at least in late retirement (MUDs). Both of them offered critical virtual "third spaces": places that are neither home nor work, but something different. Early social media still held some of this spirit; even Reddit and Tumblr still have some of that reputation if (heavily, heavily) tarnished. But they've all been taken over by "engagement" and "metrics"; they're not places you go to hang out, they're places where you have to be on guard. Just as bugs can't surive the scrutiny of a thousand eyeballs, neither can humans. And we've gone far beyond mere four-digit numbers. I want something smaller. Small, but open. Like forums, and MUDs. And cohost. Because I'm shy, and I can barely withstand being seen by just one pair of eyeballs that didn't consent to my existence. (I can discuss that with my therapist another time, but I hope my point carries.) So that personal project? For fun and whimsy, I'm toying with a little MUD-style hangout of my own. Something I can attach like a sidecar to this site, that curious folk can connect to through `telnet`, where folks can drop by and say hi. A little collaboratively-constructed world, half wiki and half forum. Somewhere that, maybe, "css crimes" can metamorphose into "VT100 crimes". I dunno. I think we put a lot of emphasis on progress, and moving forward, and doing novel things. And I think we forget about all the cool stuff that already existed. That did well for us, and may still be good for us. Good things don't have to be popular; actually, popularity kind of makes things bad, don't you think? (Mind, things aren't bad *because* they're popular! I made that mistake about enough anime already; I wish I'd watched Toradora five years before I did!) So I guess we'll see how long I keep going with this little project. But I'll mention it again here once it's live enough to kick the tires. I always wanted to make my own MUD anyway :) --- (If you feel like sharing your thoughts, or just want to say hi, please do drop me an email! My address is (my name) (at) (this domain), and it would make my day to hear from you.) ## 2024-09-10 05:49:31 PM UTC-7 Someone on Hacker News mentioned that a *recent* edition of a massive, chonky cellular biology textbook is available on the Internet Archive: https://archive.org/details/alberts-molecular-biology-of-the-cell-7th/ Uh, wow. This is going top of my list of "things I really really really want to read but realistically will never actually end up getting around to". Right next to my physical copy of an early edition of Gray's Anatomy (the textbook, not the TV show). I'm thinking of making another Atom feed consisting just of all the neat things I find out there on the Internet. Kind of like a `browsing-history.xml`, except (extremely) curated. Certainly this chonky boi of a textbook is exactly the kind of thing I'd want to share. ## 2024-09-10 03:06:40 PM UTC-7 This goofy little website is now Mobile-Ready (tm)! Whatever that means for plaintext, anyway. The upshot is that I've added these calibration marks at the top of every page (there's a secret page besides the one you're looking at), so you can easily tell whether you're looking at the page "as intended": |=== your display should be exactly this width ===| |====== or at least as long as *this* width ======| The idea is that you should either see all of that on one line (as on desktop), or see two distinct lines where the pairs of pipes line up vertically, like so: |=== your display should be exactly this width ===| |====== or at least as long as *this* width ======| Now, I could have avoided using hard linebreaks within paragraphs entirely, and allowed mobile devices to automatically reflow text. But that leaves desktop viewers with, typically, extremely long lines unless they resize their browser window to fit. Me personally, my browser is *always* full-screened, and it's a massive pain for me to pull one tab out just to resize it. So this seemed like a reasonable compromise! I could *also* opt for using HTML instead of plaintext, replicate the plaintext vibe with some markup and CSS, and automatically adjust the width of the content based on your display size. But that would be too easy! I want to see how far I can go with no bells or whistles. ## 2024-09-10 02:19:30 AM UTC-7 Oh hey, is that an Atom feed I spy? https://liese.dev/posts.xml And it validates, you say? http://www.feedvalidator.org/check.cgi?url=https%3A//liese.dev/posts.xml (You will forgive me for not embedding an image; this page is text/plain!) ## 2024-09-10 01:27:00 AM UTC-7 Here I am, studying the RFC for the Atom syndication format in the middle of the night. Whee! ;P I was almost tempted to use an emoji there. But I'm typing this in `nano` from an SSH session. I wonder... 👀 oh my god. the marvels of technology. Well, at least I don't need to worry about some Electron-based app autoconverting my :D's into horrifying caricatures. wait what encoding is nginx serving this file with... um. none. k let's fix that real quick brb. (yep, reloaded and that emoji is garbled as hell: "👀". that's not gonna look right either until i fix the encoding, but now it's preserved for posterity) Okay. *Now*, the marvels of technology. Marvel at it! (Why can't I stop typing "marvle"??) 見て、日本語! now back to atom