The blog of a very opinionated girl who loves coding, writing, and dancing!

size_t and Other Assorted C Data Types


This is sort of a rant? Well, it is to the extent one can seriously rant about a data type in C. Maybe not a rant, but a collection of thoughts, experiences, and caveats about a data type that, in my view, is a double-edged sword like no other data type is in C: size_t. “Ariadna…?” “Yes, sweetie?” “But isn’t size_t a data type that guarantees storing sizes of memory objects in a way that is coherent with your architecture?…
Read more ⟶

30 Years of Linux


On August 25th 1991, a guy whom you may have heard of, Linus Torvalds, sent possibly one of the most quoted emails in history. It started like this: Hello everybody out there using minix - I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones. And the history of operating systems changed forever. Yesterday we celebrated the 30th anniversary of Linux and I saw some people were posting their own personal retrospectives on how they had come to know the OS we all know and cherish… both on social media as well as on their blogs… So, I want to jump in, because it is a fun topic to delve into!…
Read more ⟶

Fun with Static Libraries


Welcome to another episode of Ariadna shows you weird (SFW, though) stuff! It’s sunny here in Pamplona, which is quite nice considering this is the cold and bitter North, and after some days I was feeling sort of in need of disconnecting from programming and FOSS-y things, I’m back with a topic I’ve wanted to write about for quite some time… Static libraries! Warning I’m adding after reading this post myself: LOOOOONG POST!…
Read more ⟶

Coding under the Public Eye


FOSS is all about coding in the open. There are different ways to do that, but all have in common that… well… the process in all of them ends in the code being published for everyone to have a look at. Nowadays, though, with the advent of code hosting platforms (“forges”), the usual thing is that we get to see every single commit,1 every faux-pass, every single step that has led to the current state of the project.…
Read more ⟶

The APIs of Executables


When we speak APIs, we usually speak libraries, right? Or maybe the kernel syscalls, but usually we don’t think of executables having any obvious APIs. This unawareness is sad, because the UNIX Philosophy sort of defines a default framework for defining APIs for executables, and actually you use them quite a lot… even if you don’t think of them as APIs in the library sense of it. So, as today is Sunday and I’m in the mood for some true geekness, let’s uncover one of the most important and possibly lesser known key concepts of UNIX, Unix-y OSs, POSIX, or whatever you call what we use!…
Read more ⟶

Aurea Mediocritas


Excuse me the rather personal post. I guess sometimes it doesn’t hurt? I mean, in the end this is a personal blog, even though I usually talk about stuff I’m always up to… which is a way to talk about myself, but indirectly. Today I’m going to be… direct. It might even be a bit therapeutic for myself. I’ve been through some cloudy days this last week. A couple of things happened; you might’ve noticed I’ve been a bit “rougher” than usual and also less committed to this blog.…
Read more ⟶

Ode to Goto


Oh! Goto, thou who yieldeth immense strength! OK, not a literal ode. But, yes I’d love to take some time to give Goto a moment of appreciation. Goto is so vilified, yet it’s undeserved. The Culprit of Spaghetti Code? Nope! In fact, it might even save you from your code becoming a plate of pasta. Today, your lovely Ariadna is going to (pun intended) demystify Goto for ya. If you don’t like Goto, you don’t like Turing machines… meaning you don’t like computers!…
Read more ⟶

GitHub Copilot and Copyright


It’s all over the news, so I won’t get into stuff everyone seems to know already: GitHub launched Copilot, an IA-powered service that is able to suugest you code, even entire functions, by reading your comments or the code you’re writing… And the FOSS community cried war: “If they used GPL code, then they’re violating GPL!” Disclaimer… and why I know a bit about copyright: I work as Foreign Rights Manager at Next Door Publishers.…
Read more ⟶

Children of the Gods of Old


I’ve been learning about the termios interface… You may know it as a header that allows you to do stuff like switching terminal echo’ing off (for password input, for example) and you may also have heard that it’s arcane as hell, so much that people avoid it like the plague to manipulate it directly. I find it a fascinating piece of software and software history, though… and I think it shows quite some facts that are still relevant today.…
Read more ⟶

Keep the Fun Alive


I wanted to write about static libraries. I had found out that static linking is actually way more advanced that I initially though, only importing the symbols that are actually required, which is a great solution to reduce the size of binaries and avoid name collisions under some circumstances… and I wanted that post to segue into a discussion on why I’m leaning towards never implementing dynamic libraries in my projects, but only static ones… The topic is certainly interesting, but to me it felt like a chore……
Read more ⟶