• 0 posts
  • 15 comments
Joined 1 year ago
Cake day: February 6th, 2025
  • In the early 2ks, computer were ugly grey box with noisy fan and a hard drive that gave the impression a cockroach colony were trying to escape your case. I wanted to build a silent computer to watch Divx movies from my bed, but as a broke teen, I just had access to disposed hardwares I could find there and there.

    I dismantled a power supply, stuck mosfets to big mother fucking dissipator, and I had a silent power supply. I put another huge industrial dissipator on CPU (think it was an AMD k6 500Mhz) and had fanless cooling. Remained the hard drive.

    Live CD/USB weren’t common at that time. I’ve discovered a live CD distrib (I think it was Knoppix) that could run entirely from RAM.

    I removed hard drive, boot on live distrib, then replace CD by my Divx and voila.

    Having a fanless-harddriveless computer was pure science fiction for me and my friends at that time.

  • The point of self hosting is not to engage people going in your server. The point of self hosting is to have control over your infrastructure. It’s like renting or buying a home.

    When you buy a home, you don’t complain that no one wants to sleep in your home 😆

  • Small word about OpenGL, as it seems confusing for many peoples:

    OpenGL is a spec written by Kronos group. There is no such thing as OpenGL library, or OpenGL source code. You cannot “download” OpenGL. OpenGL is really just a buch of .txt files explaining how functions should be named and what they should do. This spec define an API.

    Then, this API can be implemented by anyone, by writing code and putting it in a library.

    GPU drivers implement this API. That means that Nvidia, AMD and Intel have their own implementation.

    To have access to this API from your program, you have to “getProcAdress” all function you want to use from GPU driver’s DLL. As this is quite painfull, libs exist, like glew, that do it for you. These libs are really just a long list of getProcAdress for all entry points.

    That’s also why you cannot “static link” with OpenGL. As function can only be retrieved at runtime.

    Another interesting things is MESA. It’s a CPU implementation of OpenGL spec. So MESA is a lib, with source code and so on. You can download it, link against it, etc… This is very useful when you want to do 3D without GPU (yes, this happen, especially in medical domain).