%% title = "a curated feed of updates to the house" styles = ["new.css"] feed = "new" visibility = "Private" % id = "01JCGWPM6T73PAC5Q8YHPBEAA1" + hello! if you've been wondering what I've been up to, you've come to the right place. % id = "01JCGWPM6T3W07KAGG3J29JMVF" - posts are sorted from newest to oldest. % id = "01JCGWPM6TGQ17JPSJW8G58SB0" - you can keep track of which posts you've read by looking at the color of the links. % id = "01JDTA3BNHRT3GM61XSXHRKTPB" - there is [an Atom feed](/feed/new.atom) in case you want to add riki's house to your feed reader. % id = "01JDTAEQPT6C6P6RSETHMAKTNH" - hint: unlike this page (for now), the Atom feed exposes _categories_ you can feed to your reader to filter out posts you don't want to see. % id = "01JEPCPH3ZZGC3NQWWDCC7SR1V" - also, the Atom feed does not contain post content. this is due to the house being {-cybernetically enhanced-} better with all my artisanal touches and CSS! if you want to read any of the posts, follow the links. it's like that by design. % tags = ["meow", "shower"] id = "01K05F3E3DN1PY9ZWN98ZE5HVV" - ### [furry! ---w--- (version 2)][page:furry.dj] % id = "01K05F3E3DC8WWGKFE8CQ616X1" - I gave this page the treatment it deserved. (which is: lots and lots of love :heart:) % id = "01K05F3E3DD075BBF0QSF5HVXW" - With the rework of the treehouse to a more document-oriented format, it felt appropriate to narrate my story in a more novel-like way. I sincerely hope you enjoy. % tags = ["design", "treehouse"] id = "01K02XZTW3VYKX0Q5NZ17NRVTF" - ### [Requiem for a Fractal Forest][page:requiem.dj] % id = "01K02XZTW3W08E195CRHJ4XATD" - A retrospect on the treehouse's form factor, and why I'm getting rid of it. (at least partially) % tags = ["programming"] id = "01JX0GYB1D4W3A6FRPBG738N4F" - ### [on changing the Firefox New Tab, and software freedom][page:programming/new-tab] % id = "01JX0GYB1DSPZEKZK9JWZC12FY" - a rant on how we keep locking down our software and taking away our freedom of expression in the name of security. % tags = ["music"] id = "01JQYKYRF2RRY2DEV2Z8MSYJ4F" - ### [Kettel - Dubio][page:music/dubio] % id = "01JQYKYRF2WC0XRD93NX055ZB7" - I wholeheartedly love this album. it makes me think, it makes me imagine. it shows me backgrounds, landscapes, people, events, feelings. % id = "01JQYKYRF2E4ZQR5PQ0YJ0V02F" - this is a set of my synaesthetic interpretations of some of the first tracks. % tags = ["programming", "cxx"] id = "01JN72M4EXSR6M120A6CW2D0X7" - ### [C++ without Classes][page:programming/cxx-without-classes] % id = "01JN72M4EXADCGY5DFS274KBTF" - a joke I cracked at work, except what if I told you I was actually serious. % tags = ["programming", "lua"] id = "01JKKQZRSG5ZRNH530D75E2660" - ### [implementing classes in Lua][page:programming/lua/classes] % id = "01JKKQZRSGXT99FJ7V3BGKE2D5" - one of my absolutely favourite parts of Lua is how tiny, but capable it is. did you know you could implement object-oriented programming without needing any additional syntactic support? % id = "01JKKQZRSGMN81PXJWGP5Y17WY" - this is a remaster of an [old tutorial I published as a Gist](https://gist.github.com/liquidev/3f37f94efdacd14a654a4bdc37c8008f) to explain how object-oriented programming works in Lua to someone on the [LÖVE](https://love2d.org/) Discord server. % id = "01JKKQZRSGMW486TGSXQVM8FV3" - thus there's a high likelihood you've never read it. however, I think it's a pretty nice tutorial, so I'm republishing it here outside the shackles of GitHub. % id = "01JKKQZRSGNA5NRXR5H6WPZKWA" - and the programming trickery in it might just open your third eye a bit, so you should read it even if you're not into Lua! % id = "01JK5SN2ZBDZTFZ27J3KNT4SQV" tags = ["music"] - ### [Floating Points - Tilt Shift / Ablaze][page:music/tilt-shift-ablaze] % id = "01JK5SNYKRK08F5DJM4JGBK4C4" - visions of a city ever living, ever calming. % id = "01JK5SNYKRRXT74YG5DZVHY3RG" - I've been meaning to write about those tracks [for the longest time](https://src.liquidev.net/riki/treehouse/issues/23), but just didn't get around to it. today I was giving the album another listen, and decided to write up my visions. so that I can remember, and so the world can see, too... % id = "01JHXVRT2HR6TXC2V9JG2XTZVB" tags = ["music"] - ### [The Flashbulb - Flacks / aBliss][page:music/flacks] % id = "01JHXVRT2H2CTGBEDYWCMDTTS3" - my most beautiful musical finding this month. % tags = ["design", "treehouse"] id = "01JHGYTZN196N51ZBS4MZGHJ73" - ### [idea: freeing the hobby corners][page:design/freehouse] % id = "01JHGYTZN1NDXBSG4K5HJ8SRAM" - exploring the idea of aggregating pages via tags, rather than manually curating and structuring them out. % tags = ["meow", "shower"] id = "01JGXQ5E8DHAEYFTHG0RB86VNE" - ### [nickname change!][page:philosophy/riki] % id = "01JGXQ5E8DFYA0H7Q9D5M2RZ5Q" - this year, I'm changing my nickname from _liquidex_ to *riki*! so don't be surprised to see a blog you don't recognise in your feed reader, lol. % id = "01JGXQ8C1EN23WGM4A4RKXV3CA" - this is what _liquidex's treehouse_ turned into! % tags = ["games"] id = "01JGSNTVGFX416HFWKFYKR9HZM" - ### [reflections on Minecraft][page:games/minecraft-zen] % id = "01JGSNTVGFTWWK7M9CA40MAH8F" - this holiday season, my friend set up a Minecraft server and invited a bunch of folks to have some good ol' block game fun! % id = "01JGSNYHZNE5N7SH4R4Q0QSTC1" - this is a retrospect on that playthrough. I was playing in a somewhat unusual way for me, learned lots of new lessons, had lots of reflections along the way... so this is a post that summarises most of it. Builds Included. % id = "01JGSNYHZNX9WZFHYFXVPJXQ97" - now that the holidays are over, and I'm out of block game steam, I'll need to move onto something else. who knows what that might be? % tags = ["design", "shower"] id = "01JG6Y6JNRQA4SSK3TEZ0RRTEB" - ### [design for the free soul][page:design/for-the-free-soul] % id = "01JG6Y6JNSYD5C8K4EWETYZX9K" - a little note on how constrains and guard rails can make you feel more "_claustrophobic._" % tags = ["shower"] id = "01JG55SF4FRRF9RDW9KMYHAECF" - ### [my weird stim: writing with light streaks][page:philosophy/light-streaks] % id = "01JG55SF4FNVYJVY6XGVAZ08GE" - I had a conversation with a friend where I was saying how spacey I get sometimes, and this weird little stim of mine came up. % id = "01JG55SF4F5C76TWW1MF78128G" - I wonder if anyone else has ever experienced something similar. % tags = ["design"] id = "01JEPCD4EPZJ2ACJX9J15ZBFSG" - ### [animations & perception of sluggishness][page:design/animations] % id = "01JEPCD4EPGA1Q4D2Z8TPESBH6" - I got a little angry at Windows at work today, because I wanted to close a window via the right-click menu on the taskbar, and ended up clicking during the _tiny_ time window where the animation is playing and your clicks are ignored. % id = "01JEPCD4EP9824XS6FZ2PYSMV0" - so I disabled animations in the entire system, and _wow_ is Windows hella snappy with animations disabled! and that got me thinking: maybe all the crazy people saying "you should disable animations everywhere because they waste your time" weren't so crazy after all :thinking: % id = "01JEPCD4EPCPE6S42VY3RJE618" - but I'm fine with animations on my Google Pixel as well as my GNOME desktop, so what gives? % id = "01JEPCD4EPT9KYDCNZ543MHP1E" - this post aims to explore that. % tags = ["design"] id = "01JE75N3B0Y9H53TMJJV7MJY9V" - ### [touch panels][page:design/touch-panels] % id = "01JE75N3B0QVR0M05SYR9QVWY3" - a few examples of bad touch panels on various kitchen appliances (and also, my headphones.) % id = "01JE75N3B0AER5A3TR2Q5W1WWR" - designers, please stop shoving touch panels into everything. % tags = ["programming", "shower"] id = "01JDZKAP3KT4AD36F6HPJTEM4Z" - ### [Advent of Code feels][page:programming/blog/aoc] % id = "01JDZKAP3KRFZQDP0CQD11Q68A" - I tried time and time again, but can never get into Advent of Code. so here's me overthinking why that's the case. % id = "01JDJJSEWASRWJGKMBNYMFD9B5" tags = ["programming", "treehouse"] - ### [composable virtual file systems][page:programming/blog/vfs] % id = "01JDJJSEWAVZGJN3PWY94SJMXT" - I recently rebuilt the treehouse to use a virtual file system for its source and target directories. % id = "01JDJJSEWA7K5T3Z0Y6NQ8RBGX" - this is an exploration of how I built my abstraction, how it works, and what I learned from it. % tags = ["shower"] id = "01JDJ0RH4DJCNS7TPCRZHRPSRF" - ### [on responsibility & conformity][page:philosophy/responsibility] % id = "01JDJ0RH4DR1G1W4A99E36VA9P" - or, how we cannot do silly things because of herd mentality % tags = ["music"] id = "01JCY18RY6D3CXHQ0JQ56BZH60" - ### [Aphex Twin - Blue Calx][page:music/reviews/aphex-twin/blue-calx] % id = "01JCY18RY60E0X9ES98RGNKY8A" - have you listened to [Selected Ambient Works Volume II (Expanded Edition)](https://aphextwin.bandcamp.com/album/selected-ambient-works-volume-ii-expanded-edition)? (that is a mouthful) % id = "01JCY18RY61SFCC6H803DZ5G29" - it was my first experience listening to SAW2, and boy. it's the best Factorio soundtrack :3 % id = "01JCY18RY67XMT8Z0YHHZVA1TS" - not really related to the post, but just sayin'. % tags = ["shower"] id = "01JCGVBXW42S8G91SGAKYCQZE1" - ### [furry! ---w---][page:furry/v1] % id = "01JDTBGSJ7KB9GYWQZ8G9D97NY" - I'm an adorable little cat boy. purrow! _snuggle snuggle_ % id = "01JDTBGSJ7RVYR0VD693FN10QH" - a lesson in Shock Therapy & Getting Over It {-with Bennett Foddy-} % tags = ["shower"] id = "01JCGVBXW39D0GJTZY53A25TXT" - ### [fear of the unknown][page:philosophy/fear-of-the-unknown] % id = "01JCGVBXW36EW913ZRJER9RW4C" - aka how you will never be able to live in peace % id = "01JCGAM553TJJCEJ96ADEWETQC" tags = ["programming", "c", "cxx"] - ### [prefix matches with C strings][page:programming/blog/cstring-starts-with] % id = "01JCGAM553N0A613MFSWX5XZFK" - a clever trick with C strings: did you know you can match a prefix just by chaining indexing with `&&`? % tags = ["shower"] id = "01JBWHXTMKYRW5XXDJG9VQNF5E" - ### [on nicknames][page:philosophy/nicknames] % id = "01JBWHXTMKEM7XQQ21MV33FMXW" - do you use your real name online? why (not)? % id = "01JBWHXTMK0H6X9DPBHGF710M1" - I know I don't. so here's a little shower thought regarding _why_ that is. % tags = ["shower"] id = "01JBAK3T1ZSSTHRN6TTSXXBAKK" - ### ["I build things"][page:philosophy/i-build-things] % id = "01JBAK3T1ZXJ8C8MKBWHGXABQX" - riki yells at cloud. an insight as to how I believe life ought to be colorful, and how just saying "I build _things_" is gray and empty. % id = "01JBAGZAZ30K443QYPK0XBNZWM" tags = ["music"] - ### [the curious case of Amon Tobin's Creatures][page:music/creatures] % id = "01JBAGZAZ3NKBED4M9FANR5RPZ" - a weird anomaly I noticed while listening to some breaks % id = "01J8ZP2EG9TM8320R9E3K1GQEC" tags = ["music"] - ### [I Don't Love Me Anymore][page:music/reviews/opn/i-dont-love-me-anymore] % id = "01J8ZP2EG96VQ2ZK0XYK0FK1NR" - I was listening to Oneohtrix Point Never's _Magic Oneohtrix Point Never_, and had some retrospective thoughts about the vocals in this song. % id = "01J8ZP2EG92T1SM7F6MTCXZHNJ" - it's also a nice opportunity to say that I've refreshed the music section a bit! % id = "01J7C1KBZ58BR21AVFA1PMWV68" tags = ["programming", "treehouse"] - ### [not quite buildless][page:programming/blog/buildsome] % id = "01J7C1KBZ5XKZRN4V5BWFQTV6Y" - I like lean websites. did you know that? % id = "01J7C1KBZ50EMBK9VPH9CE3F7H" - I also really like lean websites that are simple in construction and deployment. did you know the treehouse is a website like that? % id = "01J7C1KBZ5QCVM6DDT9G5KQGP2" - so I've decided to write up a few anecdotes and other cool stories about the treehouse's inner workings. % id = "01J7C1KBZ5S0XTQXKY41VZNWJZ" - also, it's (way past) its one year anniversary! hooray! % id = "01J73BSWA15KHTQ21T0S14NZW0" tags = ["music", "programming"] - ### [the ListenBrainz data set][page:music/brainz] % id = "01J73BSWA1EX7ZP28KCCG088DD" - I decided to write up some ideas on what sort of cool data analysis I could do on my [ListenBrainz data set][def:social/listenbrainz]. % id = "01J73BSWA1ANRQ31DNYHTNPSP5" - I haven't done any of it yet, but I thought it'd be cool to share my ideas anyways! % id = "01J4J5N6WZQ03VTB3TZ51J7QZK" tags = ["programming", "plt", "haku"] - ### [haku - writing a little programming language for fun][page:programming/blog/haku] % id = "01J4J5N6WZQ1316WKDXB1M5W6E" - I was bored over a weekend, so I decided to write the tiniest programming language I could imagine. % id = "01J4J5N6WZ2RW32HJX1VBJM58X" - it came out looking pretty Lispy, and I'm glad about that! % id = "01J4J5N6WZV6E1AHF65PQ5J6GF" - I learned a ton about Lisps in the process of researching it. even though it didn't end up having macros... % id = "01J293BFEBT15W0Z3XF1HEFGZT" tags = ["programming", "javascript", "plt"] - ### [JavaScript is not as bad as people make it out to be][page:programming/languages/javascript] % id = "01J293BFEB4G7214N20SZA8V7W" - sometimes people call me crazy for saying that bashing JavaScript is senseless and that it's not as bad of a language as people make it out to be. % id = "01J293BFEBYSW4K7YHVN42J3WP" - so I decided to collect my thoughts into a nice little page I can link easily. % tags = ["shower"] id = "01J1Q8SBGFYKDATVF85XYWMSV2" - ### [in wisdom you become old][page:philosophy/in-wisdom-you-become-old] % id = "01J0VNHPTRNC1HFXAQ790Y1EZB" tags = ["programming", "cxx"] - ### [freeing C memory automatically using `std::unique_ptr` and `std::shared_ptr`][page:programming/languages/cxx/shared-unique-ptr-deleter] % id = "01J0VNHPTRP51XYDA4N2RPG58F" - a friend of mine asked if it makes sense to define your own wrapper class for `SDL_Window` the way [Lazy Foo](https://lazyfoo.net/tutorials/SDL/10_color_keying/index.php) does it. % id = "01J0VNHPTRW3XR4YG0GWGFF4N4" - I told him there's no reason to do that in modern C++, because `std::unique_ptr` can do everything for you anyways. % id = "01J0VNHPTRMXFTH3F601R7V1S9" - on another note, I did read a blog post about this once somewhere, but couldn't be bothered to find it. so there you go! I made a post about this too. % id = "01J0KRPMV7SS48B64BFCJZK7VQ" tags = ["meow"] - ### [about me (version 2)][page:about] % id = "01J0KRPMV73K71D3QXFQ3GNY2N" - it's updatin' time! I took some time to clean up old pages and update my _about me_.\ over time I've been learning how to write content on the treehouse effectively, and the new about me reflects that. % id = "01J0KRPMV7KD7X3HHXGKBS0VAX" - [version 1][page:about/v1] % id = "01HY5R1ZW2PYZSSP2J2KAA23DA" tags = ["programming", "c", "cxx", "plt"] - ### [what's up with `*x` not always meaning the same thing in different contexts?][page:programming/blog/lvalues] % id = "01HY5R1ZW24YJ2NF2RYWRZG4ZT" - I recently got a question from my someone telling me they don't understand why `*x` does not read from the pointer `x` when on the left-hand side of an assignment. and that made me think, _why_ is that the case? % id = "01HV1DGFHZ65GJVQRSREKR67J9" tags = ["programming", "shower"] - ### [systems are just a bunch of code][page:programming/blog/systems] % id = "01HV1DGFHZFFZSQNCVWBTJ1VHM" - I've been thinking recently how cool it is to be able to single-step into Unreal Engine's source code and edit it while you're working with it, and how uncool it is that I can't do the same thing easily in the Rust world. % id = "01HV1DGFHZGFYWT5MMM57SEWNN" - after all, aren't we just dealing with a bunch of code running on the computer? why not let me poke at it? % id = "01HV1DGFHZ2SDPDV3VYRR7VBRR" - bonus: [dismantling Unreal Engine's `GENERATED_BODY`][page:programming/technologies/unreal-engine/generated-body] % id = "01HTWNETT2S5NSBF3QR4HYA7HN" tags = ["programming", "plt"] - ### [OR-types][page:programming/blog/or-types] % id = "01HTWNETT2N8NPENETWYFBTXEM" - last night I couldn't sleep because of type theory. in the process of trying to write down my thoughts, I ended up discovering a class of types which, to my knowledge, no language implements. % id = "01HRG3VN091V715A8T54QK5PVX" tags = ["programming", "plt", "lua"] - ### [programming languages: Lua][page:programming/languages/lua] % id = "01HRG3VN095BNHERHWVX1TKS9K" - I really like Lua, did you know that? but I get kind of tired of explaining why a thousand times to people who don't know the language, so here's a page with my thoughts! % tags = ["shower"] id = "01HREVZNAH3PMMN29C6HNFQ7P9" - ### [just shut up sometimes][page:philosophy/shut-up] % id = "01HR9ZTS8RS4VJNJYSNRQYSKHZ" tags = ["design"] - ### [design: sidebars][page:design/sidebars] % id = "01HR9ZTS8RY3N4EJM5W7WBTF0G" - sidebars! also known as, _"enjoying the main content? how about I distract you from it so that you can't focus!"_ % id = "01HR9ZTS8RQ1EN0THYEVNQRY2A" - seriously though. I don't like them. % id = "01HQ8KV8T8GRCVFDJ3EP6QE163" tags = ["design"] - ### [riki's treehouse: design][page:design] % id = "01HQ8KV8T8EEX6XBG2K1X3FGKW" - I started a branch on user interface and user experience design, because I was working with mintty at work and had some thoughts about it. "why does mintty always feel so _out of place_ compared to `cmd.exe`?" % id = "01HQ8KV8T865WKME5R9TD0DSTN" - I also wrote a post summarising my thoughts: [_on digital textures_][page:design/digital-textures] % id = "01HQ6G30PTVT5H0Z04VVRHEZQF" tags = ["programming", "graphics", "javascript"] - ### [tairu - an interactive exploration of 2D autotiling techniques][page:programming/blog/tairu] % id = "01HQ6G30PTG8QA5MAPEJPWSM14" - ever wondered how Terraria renders its worlds? or how editors like Tiled manage to make painting tiles so easy? % id = "01HQ6G30PT1D729Z29NYVDCFDB" - this post explores basically just that. % tags = ["shower"] id = "01HFYZKREV93QY3K7KNNFSW90H" - ### [hedonic treadmill][page:philosophy/hedonic-treadmill] % tags = ["programming", "cxx"] id = "01H9R1KJES6FC89NMC7J0FJT6P" - ### [C++: access modifiers as labels (`private:`, `protected:`, and `public:`)][page:programming/languages/cxx/access-modifiers-as-labels] % tags = ["music"] id = "01H9R1NKBB7NCQM8GJ3907P7F7" - ### [Telefon Tel Aviv - Map of What Is Effortless][page:music/reviews/telefon-tel-aviv/map-of-what-is-effortless] % tags = ["music"] id = "01H9JB094CHQHEYEBKBCHFFCKG" - ### [Radiohead - A Moon Shaped Pool][page:music/reviews/radiohead/a-moon-shaped-pool] % tags = ["music"] id = "01H9DQNG9ARCX91Z15MWTB0A6B" - ### [Aphex Twin - Syro][page:music/reviews/aphex-twin/syro] % tags = ["music"] id = "01H969NN1ACXG26T2NHCM7BHYY" - ### [Radiohead - OK Computer][page:music/reviews/radiohead/ok-computer]