• 0 Posts
  • 50 Comments
Joined 1 year ago
cake
Cake day: July 9th, 2023

help-circle


  • If not vanilla Ubuntu, I’d still suggest trying an Ubuntu derivative like Linux Mint or POP! OS. Ubuntu has a huge community, so in the event you run into issues it’ll be easier to find fixes for it.

    What you’ll find is that Linux distros are roughly grouped by a “family” (my term for it anyway). Anyone can (theoretically, anyway) start from a given kernel and roll their own distro, but most distros are modified versions of a handful of base distros.

    The major families at the moment are

    • Debian: A classic all-rounder that prioritizes stability over all else. Ubuntu is descended from Debian.

    • Fedora: Another classic all-rounder. I haven’t used it in a decade, so I won’t say much about it here.

    • Arch: If Linux nerds were car people, Arch is for the hot rodders. You can tune and control pretty much any aspect of your system. … Not a good 1st distro if you want to just get something going.

    There are many others, but these are the major desktop-PC distro families at the moment.

    The importance of these families is that techniques that work in one (say) Debian-based distro will tend to work in other Debian-based distros… But not necessarily in distros from other families.



  • How do y’all solve that, out of curiosity?

    I’m a hobbyist game dev and when I was playing with large map generation I ended up breaking the world into a hierarchy of map sections. Tiles in a chunk were locally mapped using floats within comfortable boundaries. But when addressing portions of the map, my global coordinates included the chunk coords as an extra pair.

    So an object’s location in the 2D world map might be ((122, 45), (12.522, 66.992)), where the first elements are the map chunk location and the last two are the precise “offset” coordinates within that chunk.

    It wasn’t the most elegant to work with, but I was still able to generate an essentially limitless map without floating point errors poking holes in my tiling.

    I’ve always been curious how that gets done in real game dev though. if you don’t mind sharing, I’d love to learn!



  • It’s not as good, but running small LLMs locally can work. I’ve been messing around with ollama, which makes it drop dead simple to try out different models locally.

    You won’t be running any model as powerful as ChatGPT - but for quick “stack overflow replacement” style of questions I find it’s usually good enough.

    And before you write off the idea of local models completely, some recent studies indicate that our current models could be made orders of magnitude smaller for the same level of capability. Think Moore’s law but for shrinking the required connections within a model. I do believe we’ll be able to run GPT3.5-level models on consumer grade hardware in the very near future. (Of course, by then GPT-7 may be running the world but we live in hope).


  • I used to work for an imaging satellite company. And yes - spy satellites are crazy powerful. The real problem is one of bandwidth. Crazy powerful spy satellites are expensive - and there aren’t a lot of them.

    So everybody is competing for time on them. Satellite images have been traditionally expensive and rare. We web intelligence agencies have to take turns and sometimes miss important events due to scheduling or timing conflicts.

    The thing these new satellites offer is broad coverage. When you have a few hundred small-sats there’s just many, many more opportunities to have eyes on the part of the world you’re interested in.

    All that said, you want to pay attention to the resolution of the images. The place I worked for was providing imagery about 1-meter resolution. E.g. each pixel in the image corresponded to about 1sq-meter of earth. We figured this was a good compromise between image quality and privacy. Enough to count cars, see weather patterns, make out groups of people, but identifying any given person was right out.

    So if you see an imaging company throwing a bazillion imaging small-sats up - its worth checking what their reported resolution is. 0.5m means a real tall dude would still only be 2 pixels. But 1cm resolution means you could count their teeth.


  • Compilers are a specialized topic - and syntax design is fiddly - but it really is no harder than any other sort of program. A lot of the hard theoretical work was done back in the sixties and seventies. You don’t have to start from scratch. These days it’s “only” a matter of implementing the features you want and making sure your syntax doesn’t leave itself open to multiple interpretations. (just as arithmetic, e.g. ‘5 × 4 - 1’ requires some rules to make sure there’s only one correct interpretation, so do language syntaxes need to be unambiguous to parse. )

    Don’t get me wrong - writing a language is a lot of work and it’s super cool that OP has done this! I just want to stress that language development is 100% doable with an undergrad degree. If you understand recursion and how to parse a string you already have all the theory you need to get started.


  • Fwiw, I setup my pihole at home using docker. I run a full size desktop as my all-the-things server and use it as a docker host. Makes managing my services much easier.

    I could, of course, use an actual raspi for this, but I run a bunch of other services - including my plex host and file server - on the same machine. Using docker makes it dead easy to update my various services as needed and no worries about dependency Hell between them.


  • pushes glasses up nose Ackchually…

    The recent CPRA regulation in CA has essentially mandated automated data deletion requests. Technically it only applies to CA residents, but it’s so hard to disprove residency that most companies will process requests from anybody.

    It only went into effect last year, but yeah - everybody I’m aware of has implemented an api for processing requests.

    I think $9/mo is pretty fair to cover paying for the engineering and infrastructure to support their ongoing integration efforts.

    That said, you could absolutely build something yourself that sends automated requests to every data broker you can find, but… Mozilla already knows where they are and will be looking for more. It’s going to become a game of whack a mole as companies that haven’t received deletion requests will have more complete (and thus more valuable) data sets.

    If you don’t want to just leave it on though - just this a couple times a year as a sort of spring-cleaning event should cut down your presence on ad rolls significantly.


  • I work in an advertising-adjacent industry. My company doesn’t collect data ourselves, but we do purchase and use advertising data on behalf of our direct customers.

    First off, there’s no single “advertising id” in use across the industry. Some companies make up their own, some companies don’t have one at all. Several companies just link by your email address.

    You may be interested to know that the CPRA legislation in CA from 2023 has made it a legal requirement to allow customers to request that businesses:

    a) disclose what data they have about you

    b) allow you to delete your data

    … and a few other things.

    Technically, this only applies to CA residents, but (dis)proving residency is hard enough that most companies will just accept your request regardless of where you live.

    If you poke around, you should be able to find a way to submit CPRA requests to any given advertising company to request to see your data.

    This comes with a big caveat though - the Stalker Problem. What if some asshole goes to AdSense and says “My name is totally Jane Doe, what do you know about me? Recent addresses, especially.” … That gets into scary waters quick.

    The compromise many places have landed on is to confirm what they know about a person, but not volunteer any extra info. E.g. “I’m Jane Doe - what do you know about me?” -> “We know about Jane Doe.” or “We know nothing about Jane Doe.” (and if you provide email addresses etc, those may be individually confirmed or denied.)

    There’s a new framework of intermediaries popping up that will automatically submit your info for deletion across the industry, so if you sign up for one of those you can have your data regularly cleared.








  • As someone with a PS5 since launch… Not really.

    I’ve owned every PlayStation generation since the original. I don’t consider myself a Sony stan, but with the exception of the Xbox 360, I’ve felt each generation of the various PSX’s have had a better lineup for my tastes. (Halo is great, though)

    This time around, not so much. After three years, I have purchased five titles for my PS5. And, by FAR, the game that gets the most play is my PS4-version of Minecraft, so my kids can play multiplayer.

    If you’ve got money to burn, I’d recommend a Steam Deck + Dock and a Bluetooth controller of your choice instead. Most of the same games will run on either platform, with the advantages of PC gaming - mods, forward compatibility, access to the MASSIVE Steam store and library…

    Alternately the Switch has had a great lineup of first party titles - as usual. Just pickup a pro controller too, the “joycons” develop drift so fast it’s not even funny. Every single joycon I’ve purchased (six pairs over five years) has developed drift in under a year. I know I can get them repaired, but at this point, I’m over it. Just buy a pro controller and have done with it.

    (If anybody is curious, my five PS5 titles are

    • Spider-Man: Miles Morales
    • Spider-Man 2
    • Sackboy’s Big Adventure
    • Jedi Survivor
    • Diablo IV

    All but one are available on PC. I bought the Spiderman games before the PC ports arrived. Jedi survivor had a bad port at launch and I really wanted to play it. And Diablo IV I was able to pick up used for cheaper than the PC price. …let’s just say that after hundred plus hours in D3, I’m glad I didn’t pay full price for D4.

    I do also pay for PlayStation Plus, where I’ve downloaded and played a few dozen indie titles, all of which are also on PC.)